[ 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)