Chetan Mehrotra created OAK-5041:
------------------------------------

             Summary: AbstractPropertyState.toString should handle case when 
BlobStore is not configured
                 Key: OAK-5041
                 URL: https://issues.apache.org/jira/browse/OAK-5041
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: core
            Reporter: Chetan Mehrotra
            Assignee: Chetan Mehrotra
            Priority: Minor
             Fix For: 1.6


While using oak-run console against a repository which is configured with 
blobstore displaying the node content throws exception if blobstore is not 
configured while launching oak-run

{noformat}
/jcr:system/jcr:versionStorage/cb/c4/6a/cbc46ae0-bf55-4033-a0c9-15316fd31f3f/1.1/jcr:frozenNode/jcr:content>
 pn
ERROR java.lang.IllegalStateException:
Attempt to read external blob with blobId 
[b885eaf812d1efa57170dc70337a5d815bcba087#5000000] without specifying BlobStore
        at org.apache.jackrabbit.oak.plugins.segment.file.FileStore.readBlob 
(FileStore.java:1324)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getBlob 
(SegmentBlob.java:261)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getLength 
(SegmentBlob.java:269)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.length 
(SegmentBlob.java:109)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentPropertyState.size 
(SegmentPropertyState.java:209)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentPropertyState.size 
(SegmentPropertyState.java:156)
        at 
org.apache.jackrabbit.oak.plugins.memory.AbstractPropertyState.toString 
(AbstractPropertyState.java:70)
        at 
org.apache.jackrabbit.oak.plugins.segment.SegmentPropertyState.toString 
(SegmentPropertyState.java:242)
        at org.apache.jackrabbit.oak.spi.state.AbstractNodeState.toString 
(AbstractNodeState.java:208)
        at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.toString 
(SegmentNodeState.java:620)
        at org.apache.jackrabbit.oak.spi.state.AbstractChildNodeEntry.toString 
(AbstractChildNodeEntry.java:37)
        at org.apache.jackrabbit.oak.spi.state.AbstractNodeState.toString 
(AbstractNodeState.java:213)
        at org.apache.jackrabbit.oak.console.commands.PnCommand.execute 
(PnCommand.groovy:38)
{noformat}

{{AbstractPropertyState#toString(org.apache.jackrabbit.oak.api.PropertyState)}} 
should handle such scenario gracefully and return some marker value

This would simplify analysing repository content where we only have access to 
NodeStore content



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to