Michael Dürig created OAK-3864:
----------------------------------

             Summary: Filestore cleanup removes referenced segments
                 Key: OAK-3864
                 URL: https://issues.apache.org/jira/browse/OAK-3864
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: segmentmk
            Reporter: Michael Dürig
            Assignee: Michael Dürig
            Priority: Blocker
             Fix For: 1.4


In some situations {{FileStore.cleanup()}} may remove segments that are still 
referenced, subsequently causing a {{SNFE}}. 

This is a regression introduced with OAK-1828. 

{{FileStore.cleanup()}} relies on the ordering of the segments in the tar 
files: later segments only reference earlier segments. As we have seen in other 
places this assumption does not hold any more (e.g. OAK-3794, OAK-3793) since 
OAK-1828.
 {{cleanup}} traverses the segments backwards maintaining a list of referenced 
ids. When a segment is not in that list, it is removed. However, this approach 
does not work with forward references as those are only seen later when the 
segment has been removed already. 




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

Reply via email to