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)