-
Bug
-
Resolution: Won't Fix
-
Major
-
None
-
2.0.4
-
php 5.2
-
MOODLE_20_STABLE
External database enrolments end up firing off a user_enrolled event (as you'd expect), this event is picked up by the forum mod in order to subscribe the user to any relevant forums.
The process used for looking up the forums to subscribe them to uses get_fast_modinfo. In MDL-25191 the cache wasn't properly destroying the entries when unsetting them because the cache was full.
Here, when enrolling, say, 1000 users in a course, its calling get_fast_modinfo for the same course, but for 1000 users. When it already has an entry in the cache for the course, but the user doesn't match, it's doing a simple "unset($cache[$course->id]);" instead of destroying the object properly.
This issue is reproducible on php5.2 where the php gc doesn't properly clean up recursively linked objects. The memory isn't as quickly freed in php5.3, but testing has shown that by destroying it properly earlier, memory usage is kept down.
- has a non-specific relationship to
-
MDL-30151 fix default forum subscription regression caused by MDL-29964
-
- Closed
-