[
https://issues.apache.org/jira/browse/OAK-1471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13922941#comment-13922941
]
Tobias Bocanegra commented on OAK-1471:
---------------------------------------
Benchmarks with upcoming solution:
{noformat}
Benchmarks: ConcurrentEveryoneACLTest (0.19-SNAPSHOT, no cache, no modcount)
Runtime: 5
Num Items: 1000
Concurrency: 1,2,4,8,10,15,20,50
--------------------------------------
Executing benchmarks as admin: false on Oak-Tar
-----------------------------------------------------------
# ConcurrentEveryoneACLTest , C, min, 10%, 50%, 90%, max,
N
Oak-Tar , 1, 18, 18, 19, 22, 24,
257
Oak-Tar , 2, 20, 21, 22, 24, 45,
452
Oak-Tar , 4, 24, 26, 28, 31, 38,
707
Oak-Tar , 8, 45, 95, 98, 102, 109,
409
Oak-Tar , 10, 52, 118, 122, 129, 197,
405
Oak-Tar , 15, 99, 180, 189, 265, 300,
382
Oak-Tar , 20, 206, 236, 248, 326, 365,
392
Oak-Tar , 50, 518, 605, 697, 759, 795,
400
{noformat}
{noformat}
Benchmarks: ConcurrentReadAccessControlledTreeTest (0.19-SNAPSHOT, no cache, no
modcount)
Runtime: 5
Num Items: 1000
Concurrency: 1,2,4,8,10,15,20,50
--------------------------------------
Executing benchmarks as admin: false on Oak-Tar
-----------------------------------------------------------
# ConcurrentReadAccessContro, C, min, 10%, 50%, 90%, max,
N
Oak-Tar , 1, 20, 21, 22, 24, 26,
226
Oak-Tar , 2, 28, 33, 55, 86, 126,
173
Oak-Tar , 4, 28, 49, 97, 201, 364,
178
Oak-Tar , 8, 27, 72, 189, 406, 938,
181
Oak-Tar , 10, 27, 104, 245, 473, 1015,
182
Oak-Tar , 15, 32, 120, 369, 762, 1442,
187
Oak-Tar , 20, 29, 189, 517, 968, 2185,
192
Oak-Tar , 50, 30, 316, 1265, 2386, 3672,
213
{noformat}
{noformat}
Benchmarks: ConcurrentWriteACLTest (0.19-SNAPSHOT, no cache, no modcount)
Runtime: 10
Num Items: 10
Concurrency: 1,2,4,8,10,15,20,50
--------------------------------------
Executing benchmarks as admin: true on Oak-Mongo
-----------------------------------------------------------
# ConcurrentWriteACLTest , C, min, 10%, 50%, 90%, max,
N
Oak-Mongo , 1, 44, 48, 54, 62, 81,
183
Oak-Mongo , 2, 51, 59, 68, 82, 111,
289
Oak-Mongo , 4, 79, 100, 123, 156, 444,
310
Oak-Mongo , 8, 158, 207, 267, 343, 411,
301
Oak-Mongo , 10, 250, 324, 410, 524, 632,
244
Oak-Mongo , 15, 305, 438, 724, 900, 1065,
217
Oak-Mongo , 20, 409, 663, 855, 1053, 1427,
239
Oak-Mongo , 50, 646, 1990, 2326, 2816, 3495,
239
{noformat}
> Mod count in permission store requires cluster wide synchronization
> -------------------------------------------------------------------
>
> Key: OAK-1471
> URL: https://issues.apache.org/jira/browse/OAK-1471
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: core
> Reporter: Marcel Reutegger
> Assignee: Tobias Bocanegra
> Priority: Critical
> Fix For: 0.19
>
> Attachments: OAK-1471.patch
>
>
> The current permission store implementation keeps a mod count property on
> some of the nodes to detect changes and update/invalidate a cache when
> required. In general this introduces a contention point when there are
> concurrent modifications of access control entries for a given user. Those
> concurrent changes may introduce conflicts and commits may have to be retried
> after a rebase. This still works somewhat OK when there is just a single oak
> instance, because both segment and document store implementation will
> eventually fall back to locking and serialize the commits. However, it does
> not work well in a cluster, unless we apply the same locking cluster wide.
> See also discussion here:
> http://markmail.org/message/k64udmgc3ctaqmn2
--
This message was sent by Atlassian JIRA
(v6.2#6252)