Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

Adobe Summit 2023 [19th to 23rd March, Las Vegas and Virtual] | Complete AEM Session & Lab list

merge-paths in crx2oak tool returning blob ID error


Level 6

Hi Team,

Did in-place migration for the AEM5.6 to AEM6.2 version. That was successful now trying delta migration by using the merge-paths option.  

Here is the command which is returning the Blob ID error. 

java -jar ./crx-quickstart/opt/helpers/crx2oak/crx2oak.jar source target --merge-paths=/content-path -copy-versions=true --copy-orphaned-versions=false --copy-binaries 

Retuning the below errror.

26.01.2017 18:57:27.016 [main] *INFO*  org.apache.jackrabbit.core.RepositoryImpl - workspace 'crx.default' has been shutdown
26.01.2017 18:57:28.002 [main] *INFO*  org.apache.jackrabbit.core.RepositoryImpl - Repository has been shutdown
Exception in thread "main" java.lang.RuntimeException: javax.jcr.RepositoryException: Failed to copy content
        at com.adobe.granite.crx2oak.CRX2Oak.migrateCrx2(
        at com.adobe.granite.crx2oak.CRX2Oak.main(
Caused by: javax.jcr.RepositoryException: Failed to copy content
        at org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.copy(
        at com.adobe.granite.crx2oak.CRX2Oak.upgradeFromCrx2(
        at com.adobe.granite.crx2oak.CRX2Oak.migrateCrx2(
        ... 1 more
Caused by: java.lang.IllegalStateException: Attempt to read external blob with blobId [535f5f84a11a97979119336269c6b0affca631c6#6235] without specifying BlobStore
        at org.apache.jackrabbit.oak.plugins.segment.file.FileStore.readBlob(
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getBlob(
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getLength(
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.length(
        at org.apache.jackrabbit.oak.plugins.memory.AbstractBlob.equal(
        at org.apache.jackrabbit.oak.plugins.memory.AbstractBlob.equals(
        at org.apache.jackrabbit.oak.plugins.memory.AbstractPropertyState.equal(
        at org.apache.jackrabbit.oak.plugins.memory.AbstractPropertyState.equals(
        at org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyProperties(
        at org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyNodeState(
        at org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyNodeState(
        at org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyNodeState(


The Same machine able to run the include-paths command. Include-paths working just like the charm. 

Any ideas why the merge-paths command is not working and how to resolve it?

It's very very urgent!!!!!!!!


4 Replies


Level 5

can you make sure both repositories are up ? 


Level 10

This message indicates that the repository is not online: 

workspace 'crx.default' has been shutdown


Level 6

Hi Sandeep,

Both are up and running after that I shut down those and started the merging. 

I am able to run the include-paths command very well. Only I am facing the problem with merge-paths.

I believe that merge-path command needs to run after the shut down of 2 repositories same like include-paths.



Level 6

Hi Scott,

Because of that exception shutdown without merging the data between 2 repositories.