Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-5920

Checkpoint migration will fail if the MissingBlobStore is used

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.6.1
    • 1.7.0, 1.6.2, 1.4.16, 1.8.0
    • upgrade
    • None

    Description

      It seems that the checkpoint migration doesn't work with the missing blob store:

      09.03.2017 07:44:22.777 INFO   o.a.j.o.u.RepositorySidegrade: Copying node #26380000: /libs/fd/af/components/panel/cq:styleConfig/items/wizardPanel/items/wizardPanelScrollers
      09.03.2017 07:44:22.813 INFO   o.a.j.o.u.RepositorySidegrade: Copying node #26390000: /apps/acs-commons/components/content/sharethis-buttons/dialog/items/items
      09.03.2017 07:44:31.805 INFO   o.a.j.o.s.f.FileStore: TarMK closed: /mnt/crx/publish/crx-quickstart/repository-segment-tar-20170309-072655/segmentstore
      09.03.2017 07:44:32.051 INFO   o.a.j.o.p.s.f.FileStore: TarMK closed: /mnt/crx/publish/crx-quickstart/repository/segmentstore
      Caused by: 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:81)
      	at com.adobe.granite.crx2oak.engine.MigrationEngine$2.doMigration(MigrationEngine.java:66)
      	at com.adobe.granite.crx2oak.engine.MigrationEngine.process(MigrationEngine.java:91)
      	at com.adobe.granite.crx2oak.pipeline.Pipeline.run(Pipeline.java:103)
      	at com.adobe.granite.crx2oak.CRX2Oak.run(CRX2Oak.java:66)
      	at com.adobe.granite.crx2oak.CRX2Oak.main(CRX2Oak.java:51)
      	... 6 more
      Caused by: javax.jcr.RepositoryException: Failed to copy content
      	at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copy(RepositorySidegrade.java:286)
      	at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copy(RepositorySidegrade.java:242)
      	at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.sidegrade(OakUpgrade.java:92)
      	at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:78)
      	... 11 more
      Caused by: java.lang.UnsupportedOperationException
      	at org.apache.jackrabbit.oak.upgrade.cli.blob.MissingBlobStore.getInputStream(MissingBlobStore.java:62)
      	at org.apache.jackrabbit.oak.plugins.blob.BlobStoreBlob.getNewStream(BlobStoreBlob.java:47)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getNewStream(SegmentBlob.java:276)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getNewStream(SegmentBlob.java:86)
      	at org.apache.jackrabbit.oak.plugins.memory.AbstractBlob$1.openStream(AbstractBlob.java:44)
      	at com.google.common.io.ByteSource.contentEquals(ByteSource.java:344)
      	at org.apache.jackrabbit.oak.plugins.memory.AbstractBlob.equal(AbstractBlob.java:67)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.equals(SegmentBlob.java:227)
      	at com.google.common.base.Objects.equal(Objects.java:60)
      	at org.apache.jackrabbit.oak.plugins.memory.AbstractPropertyState.equal(AbstractPropertyState.java:53)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentPropertyState.equals(SegmentPropertyState.java:242)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareProperties(SegmentNodeState.java:617)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:511)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:551)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:551)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:456)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:551)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:456)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:456)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:456)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:483)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compareBranch(MapRecord.java:561)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:466)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:440)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:483)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:432)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:440)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:483)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:432)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.spi.state.ApplyDiff.childNodeChanged(ApplyDiff.java:87)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:399)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:440)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:483)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:432)
      	at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:390)
      	at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:604)
      	at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copyCheckpoints(RepositorySidegrade.java:403)
      	at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copyState(RepositorySidegrade.java:308)
      	at org.apache.jackrabbit.oak.upgrade.RepositorySidegrade.copy(RepositorySidegrade.java:279)
      	... 14 more
      

      Attachments

        1. OAK-5920.patch
          23 kB
          Tomek Rękawek

        Activity

          People

            tomek.rekawek Tomek Rękawek
            tomek.rekawek Tomek Rękawek
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: