Tobias Bocanegra created JCR-3688:
-------------------------------------

             Summary: Optimize MembershipCache invalidation
                 Key: JCR-3688
                 URL: https://issues.apache.org/jira/browse/JCR-3688
             Project: Jackrabbit Content Repository
          Issue Type: Bug
          Components: jackrabbit-core, security
            Reporter: Tobias Bocanegra
            Assignee: Tobias Bocanegra


The current membership cache is invalidated entirely for every membership 
change, i.e. entries that are not affected by the change are invalidated. 
systems with many authorizables tend to have a full membership cache will 
suffer from frequent invalidation.

The way the cache is invalidated today is based on synchronous observation 
event. From the event alone it will be very inefficient to figure out all 
membership changes without extra state keeping. A more direct approach is to 
invalidate the membership changes directly in the cache based on the 
Group.addMember(), Group.removeMember() and Group.remove() methods. If the user 
manager is not autosave enabled, the invalidation needs to be delayed until the 
save call.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to