[
https://issues.apache.org/jira/browse/OAK-1109?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jukka Zitting resolved OAK-1109.
--------------------------------
Resolution: Fixed
Fixed in http://svn.apache.org/r1535156. The problem was caused by the
SegmentNodeState comparison getting confused about the two separate
SegmentStores. The fix makes sure that the correct SegmentStore gets accessed
for each node state.
A consequence of such a setup is that the SegmentMK is unable to leverage
shared subtrees when comparing trees, and thus it will end up calling
{{childNodeChanged}} on all nodes in the tree even if they're equal. Thus the
failIfNotHidden(name) assertion on {{childNodeChanged}} in the patch still
fails. That's an error in the patched test case, as the implementation is
allowed to call {{childNodeChanged}} in such cases even if the subtrees are
actually equal.
As for OAK-1087, I think that's a different issue.
> SegmentMK: failed to load segment
> ---------------------------------
>
> Key: OAK-1109
> URL: https://issues.apache.org/jira/browse/OAK-1109
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: segmentmk
> Reporter: Michael Dürig
> Assignee: Jukka Zitting
> Attachments: OAK-1109.patch
>
>
> {code}
> java.lang.IllegalStateException: Failed to load segment
> 4d00233a-62bb-4f39-baf2-a3dd4dfeb6fe
> at
> org.apache.jackrabbit.oak.plugins.segment.AbstractStore.readSegment(AbstractStore.java:97)
> at
> org.apache.jackrabbit.oak.plugins.segment.Segment.getSegment(Segment.java:150)
> at
> org.apache.jackrabbit.oak.plugins.segment.Segment.getSegment(Segment.java:161)
> at
> org.apache.jackrabbit.oak.plugins.segment.Template.compareAgainstBaseState(Template.java:285)
> at
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:284)
> at org.apache.jackrabbit.oak.core.RootFuzzIT.fuzzTest(RootFuzzIT.java:137)
> Caused by: java.lang.IllegalArgumentException: Segment not found:
> 4d00233a-62bb-4f39-baf2-a3dd4dfeb6fe
> at
> org.apache.jackrabbit.oak.plugins.segment.memory.MemoryStore.loadSegment(MemoryStore.java:74)
> at
> org.apache.jackrabbit.oak.plugins.segment.AbstractStore.readSegment(AbstractStore.java:92)
> {code}
> Instructions and patch to reproduce in follow up comment
--
This message was sent by Atlassian JIRA
(v6.1#6144)