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