[ https://issues.apache.org/jira/browse/OAK-4260?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15313889#comment-15313889 ]
Alex Parvulescu commented on OAK-4260: -------------------------------------- another discussion point. what happens with external binaries when the filedatastore is not present? We discussed this as a part of OAK-4279 in the context of offline compaction as it should work without having the external datastore attached, but what about upgrades? I'm trying one now and it fails because the filedatastore is not there [0], but I think it should gracefully handle this, maybe it already does? For reference the {{SegmentBlob.getReference}} fails, so there's no easy way of identifying if a {{SegmentBlob}} is external or not. [~tomek.rekawek], [~mduerig] thoughts? [0] {code} Exception in thread "main" java.lang.RuntimeException: javax.jcr.RepositoryException: Failed to copy content at com.google.common.io.Closer.rethrow(Closer.java:149) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:58) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.main(OakUpgrade.java:42) Caused by: javax.jcr.RepositoryException: Failed to copy content at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copy(RepositorySidegrade.java:254) at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copy(RepositorySidegrade.java:214) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.sidegrade(OakUpgrade.java:69) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:55) ... 1 more Caused by: java.lang.IllegalStateException: Attempt to read external blob with blobId [6c7f61ed907f481c4417c1a31a406707a1f552f1#6720] without specifying BlobStore at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getReference(SegmentBlob.java:129) at org.apache.jackrabbit.oak.segment.SegmentWriter$SegmentWriteOperation.writeBlob(SegmentWriter.java:646) at org.apache.jackrabbit.oak.segment.SegmentWriter$SegmentWriteOperation.writeProperty(SegmentWriter.java:763) at org.apache.jackrabbit.oak.segment.SegmentWriter$SegmentWriteOperation.writeProperty(SegmentWriter.java:750) at org.apache.jackrabbit.oak.segment.SegmentWriter$SegmentWriteOperation.writeNodeUncached(SegmentWriter.java:957) at org.apache.jackrabbit.oak.segment.SegmentWriter$SegmentWriteOperation.writeNode(SegmentWriter.java:883) {code} > Define and implement migration from oak-segment to oak-segment-tar > ------------------------------------------------------------------ > > Key: OAK-4260 > URL: https://issues.apache.org/jira/browse/OAK-4260 > Project: Jackrabbit Oak > Issue Type: Task > Components: segment-tar, segmentmk, upgrade > Reporter: Michael Dürig > Assignee: Tomek Rękawek > Labels: migration > Fix For: 1.6 > > > We need to come up with a plan, implementation and documentation for how we > deal with migrating from {{oak-segment}} to {{oak-segment-next}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)