|
[
Permlink
| « Hide
]
Stephen Marquard added a comment - 19-Jun-2009 08:40
Updating to critical because section info can be heavily used and this will cause unnecessary server load and student confusion during signup periods.
Hi Ray,
This is a regression introduced by Please could you have a look at this. Alternately if you're not able to address this in the near future, we could back out As a related symptom, if the student clicks "Switch" to move to a different section in the category, the screen changes to show all sections as joinable. Doing anything to refresh the view (e.g., changing the sort) results in displaying the correct situation (that the student is now a member of the other section).
(Sorry this is taking a while -- I can't get a clean checkout or update over the network today, and my copy of the code is a couple of weeks old.)
Even though the instructor and student views of memberships share a lot of application-layer code, at the service level there's a complete divide: The instructor-adds-a-student code path uses SiteService's saveGroupMembership method; the student-adds-self code path uses AuthzGroupService's joinGroup method. I imagine that's the root issue here., The direct use of AuthzGroupService is because of a requirement to enforce group sizes strictly, and those methods only exist in AuthzGroupService.
So what we probably need to do is make the sections service layer invalid the section site/group caches appropriately after it's called the AuthzGroupService methods. As usual, Stephen is right.
WARNING: Due to the critical nature of the bug, I checked what seems to be a fix into trunk despite not having been able to get a clean check-out of either trunk or 2.6.x. (I tested against a 2.6.x-based build from June 2.) Tested as patch to 2-6-x build
Merged to 2.5.5 branch for 2.5.5-rc01.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||