Tobias Bocanegra created JCR-3892:
-------------------------------------

             Summary: Selective invalidation of MembershipCache
                 Key: JCR-3892
                 URL: https://issues.apache.org/jira/browse/JCR-3892
             Project: Jackrabbit Content Repository
          Issue Type: Improvement
          Components: jackrabbit-core
    Affects Versions: 2.8, 2.6
            Reporter: Tobias Bocanegra
            Assignee: Tobias Bocanegra


The MembershipCache is invalidated whenever any group membership changes. this 
was a simple way to avoid complex transitive invalidation strategies.

In a system with a large user, group and member based, the lookup of group 
memberships can be especially slow, due to the reverse lookup of the 
weak-references of the members - in those systems, a good cache is essential.

If additionally the group memberships change ofter, maybe due to changing 
entitlements of groups, or when synchronizing with an external IDP, the cache 
is constantly flushed, thus causing performance problems for each membership 
lookup.

there can be other remedies to speed up lookup, for example to properly enable 
the group-split-size; or to implement a custom principal provider for highly 
dynamic memberships.

nevertheless, if the membership cache would only invalidate what has changed, 
it would help the performance for those authorizables that weren't affected.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to