[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16365694#comment-16365694 ]
Francesco Mari commented on OAK-7259: ------------------------------------- [~dulceanu], the foundation of the patch looks good to me, but I'm concerned about {{SegmentNodeStoreStats#updateCommitsCountMap}} and, in general, about the accesses to {{uniqueWriters}}, {{orderedWriters}}, and to the newly introduced fields of {{SegmentNodeStoreStats}}. While those fields are thread-safe when taken singularly, they are not thread-safe when used together. For some concurrent access to those fields, some constraints on the data might be violated. I suggest encapsulating these fields in another class and making this new class thread-safe. This should make it easier to reason about how the constraints hold under multi-threaded access. > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > -------------------------------------------------------------------------------------------------------------------- > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar > Reporter: Andrei Dulceanu > Assignee: Andrei Dulceanu > Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)