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/06/13 07:45:21 UTC
[jira] [Resolved] (OAK-4464) Move FileStore.ChangeDispatcher to
TarRevisions
[ https://issues.apache.org/jira/browse/OAK-4464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Dürig resolved OAK-4464.
--------------------------------
Resolution: Won't Fix
On a second though, this isn't such a good idea: {{TarRevisions}} is a lower level concept pertaining to the {{SegmentStore}} implementation. The change dispatching however should be related to the changes relevant to the {{SegmentNoderStore}}.
So in contrary to what I initially wrote in the issue description I thing the change dispatcher should ultimately stay in the realm of the {{SegmentNodeStore}}. Same goes for the {{commitLock}} and the {{refreshHead}} method. (Ultimately all this logic might somehow end up in a commit scheduler, but this is the topic of OAK-4122).
> Move FileStore.ChangeDispatcher to TarRevisions
> -----------------------------------------------
>
> Key: OAK-4464
> URL: https://issues.apache.org/jira/browse/OAK-4464
> Project: Jackrabbit Oak
> Issue Type: Technical task
> Components: segment-tar
> Reporter: Michael Dürig
> Labels: technical_debt
> Fix For: 1.6
>
>
> {{ChangeDispatcher}} should move from {{SegmentNodeStore}} to {{TarRevisions}}. With this change we should be able to remove the additional tracking of the head state in {{SegmentNodeStore}} and fully rely on the {{TarRevisions}} instance. The {{commitSemaphore}} and {{refreshHead}} method would disappear from {{SegmentNodeStore}} as they would be now implementation details of {{TarRevisions}}.
> AFAIK, this is the last missing piece to be able to replace the commit semaphore with a real scheduler (OAK-4122).
> /cc [~frm], [~alex.parvulescu]
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)