Implement Realm grants Caching
Description
Attachments
is depended on by
is related to
relates to
Activity
Neal Caidin November 26, 2012 at 8:28 AM
bulk close using query: "1.3.x status" in (Resolved, Closed) and status in (Resolved, Verified) and project = "KNL" and fixVersion = "1.3.0" and resolution = Fixed

Hudson CI Server October 1, 2012 at 12:16 PM
Integrated in kernel-trunk #551 (See http://builds.sakaiproject.org:8080/job/kernel-trunk/551/)
Can't join apparently joinable site
Fix related to original patch for
Patch with fixes from Sam O (Longsight) (Revision 113853)
Result = SUCCESS

Sam Ottenhoff September 21, 2012 at 7:41 AM
Merge of all activity since December into 1.3.x in r113271

Sam Ottenhoff September 20, 2012 at 10:08 AM
Tested and working. I filed new issue for the default cache settings.

Hudson CI Server September 20, 2012 at 9:14 AM
Integrated in kernel-trunk #546 (See http://builds.sakaiproject.org:8080/job/kernel-trunk/546/)
minor cleanup of the cache bean to try to get the cache setting to be inherited, it did not help, the default is still being ignored (Revision 113207)
adding default in kernel properties to enable this cache (Revision 113206)
Result = SUCCESS
mail to sakai-dev:
This afternoon we suffred a period of high utalization on our database back end for a period. I'm still investigating to see what caused it but it seelms that at least part of this was a high number of long running query for realm grants:
SELECT SAKAI_REALM_ROLE.ROLE_NAME, SAKAI_REALM_RL_GR.USER_ID, SAKAI_REALM_RL_GR.ACTIVE, SAKAI_REALM_RL_GR.PROVIDED FROM SAKAI_REALM_RL_GR INNER JOIN SAKAI_REALM ON SAKAI_REALM.REALM_KEY = SAKAI_REALM_RL_GR.REALM_KEY AND SAKAI_REALM.REALM_ID = '/site/96dbcba6-01c2-4059-007a-40e484873bb9' INNER JOIN SAKAI_REALM_ROLE ON SAKAI_REALM_ROLE.ROLE_KEY = SAKAI_REALM_RL_GR.ROLE_KEY;
adding a quick cache and visiting roster and site info in a site resulted in 1 miss and 8 hits on this cache. Now while it is easy to add a cache at this point the AuthzGroup code seems to assume that this information is not cached, and making sure we invalidate the cache in a cluster safe way is slightly more complex....