[
https://issues.apache.org/jira/browse/JCR-3688?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tobias Bocanegra updated JCR-3688:
----------------------------------
Status: Patch Available (was: Open)
the provided patch informs the cache for membership changes which trigger
invalidation of the respective cache entries on the next save. this ensures
that user managers with {{autosave=false}} don't invalidate the cache too early.
> 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
> Attachments: jcr3688-r1538062.patch
>
>
> 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)