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

Content migration from Jackrabbit to Oak - Issues - Needs better docs

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.42.0
    • None
    • doc, upgrade
    • None

    Description

      (above components list dropdown for creating issues needs oak-migration as an entry).

      Attempting to use oak-upgrade-1.42.0 against Jackrabbit 2.20.4 to Oak 1.42.0. Have been following these resources:

      https://jackrabbit.apache.org/oak/docs/migration.html
      https://jackrabbit.apache.org/oak/docs/nodestore/document/rdb-document-store.html

      I have created a new schema named Oak in Oracle 12.2c and created user oak_user with grants to this schema.

      When attempting to run the migration jar file I see various errors depending on the options being used. Here is an example:

      #!/bin/bash

      java -jar ./oak-upgrade-1.42.0.jar \
      ./jcr-repo-lcl-1-draft \
      --user=OAK_USER --password=something \
      jdbc:oracle:thin:@localhost:1523:ORCL

      Output is like this:

      18.05.2022 14:38:49.621 [main] INFO org.apache.jackrabbit.oak.segment.file.FileStore - Creating file store FileStoreBuilder{version=1.42.0, directory=./repo-admincentral-lcl-1-draft/segmentstore, blobStore=null, binariesInlineThreshold=16512, maxFileSize=256, segmentCacheSize=256, stringCacheSize=256, templateCacheSize=64, stringDeduplicationCacheSize=15000, templateDeduplicationCacheSize=3000, nodeDeduplicationCacheSize=1048576, memoryMapping=false, offHeapAccess=false, gcOptions=SegmentGCOptions{paused=false, estimationDisabled=false, gcSizeDeltaEstimation=1073741824, retryCount=5, forceTimeout=60, retainedGenerations=2, gcType=FULL, compactorType=CHECKPOINT_COMPACTOR}}
      18.05.2022 14:38:49.772 [main] INFO org.apache.jackrabbit.oak.segment.file.ReadOnlyFileStore - TarMK ReadOnly opened: ./repo-admincentral-lcl-1-draft/segmentstore (mmap=false)
      Exception in thread "main" java.lang.IllegalStateException: Cannot start readonly store from empty journal
      at org.apache.jackrabbit.oak.segment.file.ReadOnlyRevisions.bind(ReadOnlyRevisions.java:65)
      at org.apache.jackrabbit.oak.segment.file.ReadOnlyFileStore.bind(ReadOnlyFileStore.java:91)
      at org.apache.jackrabbit.oak.segment.file.FileStoreBuilder.buildReadOnly(FileStoreBuilder.java:494)
      at org.apache.jackrabbit.oak.upgrade.cli.node.SegmentTarFactory.hasExternalBlobReferences(SegmentTarFactory.java:102)
      at org.apache.jackrabbit.oak.upgrade.cli.node.StoreFactory.hasExternalBlobReferences(StoreFactory.java:67)
      at org.apache.jackrabbit.oak.upgrade.cli.parser.StoreArguments.srcUsesEmbeddedDatastore(StoreArguments.java:115)
      at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:64)
      at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.main(OakUpgrade.java:48)

      Currently the values in the repository.xml are from a good/working local JCR repository. I assume that these values should be pointed to the existing legacy RDBMS data schema and not to the new OAK schema? But I am not certain.

      What would really help is a prototype set of Jackrabbit 2 repository test files in the Oak git repository along with a specific scripted example that is known to work against that prototype.

      I am unable to determine what needs changing based on the current output I am seeing.

      I do not see much in the way of current documentation for Oak and/or migrations that would help. Most of the doc examples for Oak seem to be from 2013. Other videos on youtube do not seem to cover Oak topics like migrations very well.

      Attachments

        Activity

          People

            Unassigned Unassigned
            bluejaguar john tal
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: