[
https://issues.apache.org/jira/browse/OAK-1044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13782152#comment-13782152
]
Marcel Reutegger commented on OAK-1044:
---------------------------------------
Introduced a _modCount field and optimized conditional updates in revision
http://svn.apache.org/r1527751
This further improves the SetPropertyTest from:
{noformat}
# SetPropertyTest min 10% 50% 90% max N
Oak-Mongo 6904 6906 6977 7183 7200 10
{noformat}
to:
{noformat}
# SetPropertyTest min 10% 50% 90% max N
Oak-Mongo 4975 4988 5076 5513 5535 12
{noformat}
on my machine.
> Reduce traffic between MongoMK and MongoDB
> ------------------------------------------
>
> Key: OAK-1044
> URL: https://issues.apache.org/jira/browse/OAK-1044
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core, mongomk
> Reporter: Marcel Reutegger
> Assignee: Marcel Reutegger
>
> There is quite some redundant traffic going on between MongoMK and MongoDB,
> which can have a major impact on performance. One of the problems we already
> saw in the past when there are many changes on a node. The document in
> MongoDB grows and with every modification to the node the cost increases
> because MongoMK always requests the complete old document from MongoDB in the
> response. This is done for several reasons:
> 1) MongoMK looks at the returned old document and checks if the updates
> applied do not conflict.
> 2) MongoMK updates its cache with the old document and the updates it applied.
> Splitting the documents when they reach a certain size keeps the cost for an
> update within bounds, but most of the time the response just contains
> redundant information already present in MongoMK. E.g. when no other MongoMK
> instance modified the node, the returned document is the same as the one
> potentially already in the cache.
--
This message was sent by Atlassian JIRA
(v6.1#6144)