[
https://issues.apache.org/jira/browse/OAK-3748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tomek Rękawek updated OAK-3748:
-------------------------------
Attachment: (was: OAK-3748.patch)
> Heuristic method to decide if the document may be a part of the bulk update
> ---------------------------------------------------------------------------
>
> Key: OAK-3748
> URL: https://issues.apache.org/jira/browse/OAK-3748
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: mongomk, rdbmk
> Reporter: Tomek Rękawek
> Fix For: 1.6
>
> Attachments: OAK-3748.patch
>
>
> OAK-2066 introduces the bulk createOrUpdate method in the DocumentStore
> interface and implements it in the Mongo and RDB DSes. Both implementations
> try to apply the bulk changes in a few iterations. The iteration first reads
> the current documents and then updates them. If there's a concurrent
> modification between read and update, it causes a conflict. Such documents
> will be updated in the next iteration. The documents that can't be updated in
> a few trials are eventually updated in a sequential way.
> Some documents are more probable to cause a fail than other. Eg. the root
> document is very likely to be changed by some other process. We could create
> a list of such "hotspot" documents and exclude them from the bulk updates.
> The list can be self-maintaining, eg. documents which conflicted in more than
> 50% cases in the last 1h.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)