[ 
https://issues.apache.org/jira/browse/OAK-2546?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stefan Egli updated OAK-2546:
-----------------------------
    Description: 
Currently there's one config for the DocumentNodeStore's (actually DocumentMk) 
caches (Documents, Diff, DocChildren, NodeChildren, NodeState) as a whole, and 
it distributes to each of those subcaches in a [hard-coded 
way|https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentMK.java#L732].
 It would be good to be able to configure the individual sub-caches 
individually (be it in percentage or absolute)

The reason I bring this up is where I think it might be useful to try out 
giving the NodeChildren relatively more cache as it turned out during a 
heavy-load test that observation queues were starting to grow at the same point 
in time when the NodeChildren cache started to perform badly. While the problem 
there is relative bad performance of one or a few observation listeners, it 
could nevertheless help bridge a situation when the NodeChildren cache contains 
a longer 'history' so that the slow listener could catch up.

PS: Leaving it up to discussion as to whether this goes into 1.0 branch or not

  was:
Currently there's one config for the DocumentNodeStore's (actually DocumentMk) 
caches (Documents, Diff, DocChildren, NodeChildren, NodeState) as a whole, and 
it distributes to each of those subcaches in a [hard-coded 
way|https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentMK.java#L732].

The reason I bring this up is where I think it might be useful to try out 
giving the NodeChildren relatively more cache as it turned out during a 
heavy-load test that observation queues were starting to grow at the same point 
in time when the NodeChildren cache started to perform badly. While the problem 
there is relative bad performance of one or a few observation listeners, it 
could nevertheless help bridge a situation when the NodeChildren cache contains 
a longer 'history' so that the slow listener could catch up.

PS: Leaving it up to discussion as to whether this goes into 1.0 branch or not


> allow configuring subcaches of documentnodestore individually
> -------------------------------------------------------------
>
>                 Key: OAK-2546
>                 URL: https://issues.apache.org/jira/browse/OAK-2546
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mongomk
>    Affects Versions: 1.0.11, 1.1.6
>            Reporter: Stefan Egli
>
> Currently there's one config for the DocumentNodeStore's (actually 
> DocumentMk) caches (Documents, Diff, DocChildren, NodeChildren, NodeState) as 
> a whole, and it distributes to each of those subcaches in a [hard-coded 
> way|https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentMK.java#L732].
>  It would be good to be able to configure the individual sub-caches 
> individually (be it in percentage or absolute)
> The reason I bring this up is where I think it might be useful to try out 
> giving the NodeChildren relatively more cache as it turned out during a 
> heavy-load test that observation queues were starting to grow at the same 
> point in time when the NodeChildren cache started to perform badly. While the 
> problem there is relative bad performance of one or a few observation 
> listeners, it could nevertheless help bridge a situation when the 
> NodeChildren cache contains a longer 'history' so that the slow listener 
> could catch up.
> PS: Leaving it up to discussion as to whether this goes into 1.0 branch or not



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to