john tal created OAK-9774:
-----------------------------

             Summary: Content migration from Jackrabbit to Oak - Issues - Needs 
better docs
                 Key: OAK-9774
                 URL: https://issues.apache.org/jira/browse/OAK-9774
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: upgrade
    Affects Versions: 1.42.0
            Reporter: john tal


(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 very well.







--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to