Improve Group performance -- especially Site.getGroupsWithMember() method
GENERAL
TESTING
GENERAL
TESTING
Description
The Site.getGroupsWithMembers() method is incredibly slow – a site with 400 groups may take over 2 seconds to retrieve. The current implementation does not leverage SQL to filter out groups that the user does not belong. This inefficiency is painfully visible wherever groups are used (e.g. Assignments, OSP Matrices).
The attached 2-4-x patch for authz is for an earlier version of this change, so merging the site changes into 2-4-x and applying the 2-4-x authz patch will lead to a mismatch of API calls.
Jean-François Lévêque (old account) May 13, 2008 at 2:47 AM
Why isn't it going to merge cleanly into 2-4-x :
2.4.x merge policy (because it's an API change)
problems with the original 2.4.x diff
Stephen Marquard May 13, 2008 at 1:46 AM
The authz code was refactored from 2.4 to 2.5, so this isn't going to merge cleanly into 2-4-x.
Jean-François Lévêque (old account) May 13, 2008 at 1:39 AM
The Site.getGroupsWithMembers() method is incredibly slow – a site with 400 groups may take over 2 seconds to retrieve. The current implementation does not leverage SQL to filter out groups that the user does not belong. This inefficiency is painfully visible wherever groups are used (e.g. Assignments, OSP Matrices).