jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Klimetschek <aklim...@day.com>
Subject Re: ItemNotFoundException: failed to build path
Date Fri, 25 Dec 2009 13:04:11 GMT
On Tue, Dec 22, 2009 at 12:13, sunild <sunil.dhage@coreobjects.com> wrote:
> I am using jackrabbit and have enabled FileDataStore and using
> MSSQLPersistenceManager.
>
> while Add content I am getting WARNING
>
> [SearchIndex] Exception while creating document for node:
> 956eb525-e81f-4a4e-9037-f193d6080e5f: javax.jcr.RepositoryException: Missing
> child node entry for node with id: 956eb525-e81f-4a4e-9037-f193d6080e5f
>
>
> And While Finding the content I am getting ERROR
>
> Item not found; nested exception is javax.jcr.ItemNotFoundException:
> failed to build path of *64ab495a-c093-4a89-8b86-b9973dd647b6     *:
> *85f65e81-6eed-4c04-8fb5-2e44952b177f* has no child entry for
> 64ab495a-c093-4a89-8b86-b9973dd647b6
>
> I have gone through MSSQL Database tables and found a row with
> _/NODE_ID/_ --- *64AB495AC0934A898B86B9973DD647B6*   _/BUNDLE_DATA/_ ---
> 020000040000000401*85F65E816EED4C048FB52E44952B177F*000A2D373633393437373734FFFFFFFF
> 00000003000000050000000901000A31323733313433363538000000010126B74B14E0AA498B94844EEC950C1C490000000
> 3000000060000000500000A31313638323734393731000000010000001D323030392D31322D32325431363A31363A31342E
> 3034302B30353A33300000000300000007000100090100082D3632323633323300000001015EBF38CE04A9409ABE4D01CF
> EA077C79FFFFFFFF01019ECFFFA2952740B497619DF093D6D8C300000003000A66726F7A656E4E6F646500000100
>
>
> which is very much same as the nodeid being search for.  But the nodeId
> present in database doesnot have hyphens and all the characters are Caps.
>  That is the problem for the ERROR.

No, this is right. The serialization in the db is different from the
plain UUIDs (in order to save space). Also, this is the entry for the
node in question (the "child" node). The problem reported means that
the parent node 85f... does not contain a pointer to the "child" node,
whereas that node points to that parent (see the part after the first
* in the BUNDLE_DATA above - note that this is a binary serialization,
nothing to be touched manually).

It looks like some corruption happened earlier.

You can fix those errors using the consistencyCheck/Fix options for
the persistence manager. See this link for a guide on that:
http://wiki.gxdeveloperweb.com/confluence/display/GXDEV/How+to+repair+a+'corrupt'+JCR

Regards,
Alex

-- 
Alexander Klimetschek
alexander.klimetschek@day.com

Mime
View raw message