[
https://issues.apache.org/jira/browse/OAK-1471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13921877#comment-13921877
]
Tobias Bocanegra edited comment on OAK-1471 at 3/6/14 2:28 AM:
---------------------------------------------------------------
here's the result on my box before the changes:
{noformat}
Benchmarks: ConcurrentEveryoneACLTest (oak 0.19-SNAPSHOT with everyone cache.
modcount)
Fixtures: Oak-Tar
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, 11, 12, 13, 14, 19,
391
Oak-Tar , 2, 12, 13, 14, 17, 27,
675
Oak-Tar , 4, 15, 16, 19, 23, 55,
1020
Oak-Tar , 8, 31, 50, 53, 56, 114,
743
Oak-Tar , 10, 56, 66, 70, 76, 142,
708
Oak-Tar , 15, 74, 104, 110, 117, 132,
687
Oak-Tar , 20, 92, 136, 145, 154, 169,
698
Oak-Tar , 50, 156, 353, 384, 411, 476,
670
{noformat}
{noformat}
Benchmarks: ConcurrentReadAccessControlledTreeTest (oak 0.19-SNAPSHOT with
everyone cache. modcount)
Fixtures: Oak-Tar
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, 21, 22, 22, 24, 27,
221
Oak-Tar , 2, 27, 37, 57, 90, 133,
168
Oak-Tar , 4, 30, 43, 96, 223, 538,
173
Oak-Tar , 8, 27, 80, 202, 400, 883,
178
Oak-Tar , 10, 28, 86, 253, 485, 935,
177
Oak-Tar , 15, 27, 120, 381, 767, 1557,
183
Oak-Tar , 20, 33, 150, 536, 980, 2185,
188
Oak-Tar , 50, 28, 337, 1349, 2518, 4114,
210
{noformat}
{noformat}
Benchmarks: ConcurrentWriteACLTest (oak 0.19-SNAPSHOT with everyone cache.
modcount)
Fixtures: Oak-Mongo
Runtime: 5
Num Items: 1000
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, 200, 202, 218, 257, 273,
23
Oak-Mongo , 2, 194, 216, 270, 1150, 2534,
23
Oak-Mongo , 4, 202, 217, 350, 4032, 5944,
24
Oak-Mongo , 8, 198, 203, 1184, 5737, 6241,
27
Oak-Mongo , 10, 196, 207, 1385, 6019, 6476,
29
Oak-Mongo , 15, 198, 749, 2738, 7368, 8534,
32
Oak-Mongo , 20, 532, 895, 4155, 8322, 11022,
34
Oak-Mongo , 50, 2588, 6824, 10932, 14862, 15609,
53
{noformat}
{noformat}
Model Name: MacBook Pro
Model Identifier: MacBookPro10,1
Processor Name: Intel Core i7
Processor Speed: 2.6 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Memory: 16 GB
{noformat}
was (Author: tripod):
here's the result on my box before the changes:
{noformat}
Benchmarks: ConcurrentEveryoneACLTest (oak 0.19-SNAPSHOT with everyone cache)
Fixtures: Oak-Tar
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, 11, 12, 13, 14, 19,
391
Oak-Tar , 2, 12, 13, 14, 17, 27,
675
Oak-Tar , 4, 15, 16, 19, 23, 55,
1020
Oak-Tar , 8, 31, 50, 53, 56, 114,
743
Oak-Tar , 10, 56, 66, 70, 76, 142,
708
Oak-Tar , 15, 74, 104, 110, 117, 132,
687
Oak-Tar , 20, 92, 136, 145, 154, 169,
698
Oak-Tar , 50, 156, 353, 384, 411, 476,
670
{noformat}
{noformat}
Benchmarks: ConcurrentReadAccessControlledTreeTest
Fixtures: Oak-Tar
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, 21, 22, 22, 24, 27,
221
Oak-Tar , 2, 27, 37, 57, 90, 133,
168
Oak-Tar , 4, 30, 43, 96, 223, 538,
173
Oak-Tar , 8, 27, 80, 202, 400, 883,
178
Oak-Tar , 10, 28, 86, 253, 485, 935,
177
Oak-Tar , 15, 27, 120, 381, 767, 1557,
183
Oak-Tar , 20, 33, 150, 536, 980, 2185,
188
Oak-Tar , 50, 28, 337, 1349, 2518, 4114,
210
{noformat}
{noformat}
Model Name: MacBook Pro
Model Identifier: MacBookPro10,1
Processor Name: Intel Core i7
Processor Speed: 2.6 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Memory: 16 GB
{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
>
>
> 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)