[ 
https://issues.apache.org/jira/browse/OAK-5905?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15900983#comment-15900983
 ] 

Tomek Rękawek commented on OAK-5905:
------------------------------------

It seems this is quite a complex task, as reading the copied blob is being done 
in a lazy way. Eg. we can add a PropertyState containing missing blob into 
builder and the exception will be thrown only after invoking 
builder.getNodeState() (and at this point we don't know, which property was 
problematic).

As an alternative we can try to read each copied property, but this would 
affect the migration performance. Also it won't work for binaryless migration.

I can suggest a workaround: the attached groovy script (meant to be run with 
oak-run) display a list of all missing binaries.

> Log the path of the binary property that is not available
> ---------------------------------------------------------
>
>                 Key: OAK-5905
>                 URL: https://issues.apache.org/jira/browse/OAK-5905
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: upgrade
>            Reporter: Arek Kita
>            Assignee: Tomek Rękawek
>            Priority: Minor
>         Attachments: find-missing-blobs.groovy
>
>
> During sidegrade for (Oak) {{oak-upgrade}} throws an exception when the blob 
> could not be found. However it is not meaningful enough and users cannot take 
> actions on the below situations:
> {code:title=No info about the path for fatal state exception}
> IllegalStateException: Attempt to read external blob with blobId [X] without 
> specyfing blobstore
> {code}
> or
> {code:title=No info about JCR path when the fatal repository exception 
> occurred}
> RepositoryException: Failed to copy content
> {code}
> or
> {code:title=The warning without the path when \--ignore-missing-binaries is 
> set}
> WARN org.apache.jackrabbit.oak.upgrade.cli.blob.SafeDataStoreBlobStore - No 
> blob found for id [XXX]
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to