You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Michael Dürig (JIRA)" <ji...@apache.org> on 2016/09/08 11:44:21 UTC
[jira] [Updated] (OAK-4015) Expedite commits from the compactor
[ https://issues.apache.org/jira/browse/OAK-4015?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Dürig updated OAK-4015:
-------------------------------
Attachment: OAK-4015.m
OAK-4015.pdf
Running the {{SegmentCompactionIT}} for a couple of dozen cycles against above fix and comparing the times it takes for the individual compaction cycles shows a (very) slight improvement. See [^OAK-4015.pdf]. As there is no regression, the fix is simple and might show better numbers for other cases, I will go forward with this.
[^OAK-4015.m] contains the raw data and a Matlab script for creating the presented figures.
> Expedite commits from the compactor
> -----------------------------------
>
> Key: OAK-4015
> URL: https://issues.apache.org/jira/browse/OAK-4015
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: segment-tar
> Reporter: Michael Dürig
> Assignee: Michael Dürig
> Labels: compaction, gc, perfomance
> Fix For: Segment Tar 0.0.12
>
> Attachments: OAK-4015-histo.png, OAK-4015-wait-time.png, OAK-4015.m, OAK-4015.pdf
>
>
> Concurrent commits during compaction cause those to be re-compacted. Currently it seems that the compaction thread can end up waiting for some time to acquire the commit lock [1], which in turn causes more commits to pile up to be re-compacted. I think this could be improved by tweaking the lock such that the compactor could jump ahead of the queue. I.e. use a lock which can be acquired in expedited mode.
> [1] SegmentNodeStore#commitSemaphore
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)