Manual repairing damaged JCR Repo reference to the Filesystem inside DB

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Manual repairing damaged JCR Repo reference to the Filesystem inside DB

tessa
Dear commmunity,

Somehow file-Nodes in my JCR repo have been deleted.
I am using everything default (LocalFilesystem & Derby)

<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
<PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.DerbyPersistenceManager">

I found that the files are still there on my filesystem e.g.

\repository\datastore\17\51\fc\1751fc9f85cb306583875afebf5ec4222cceeade

is is a PDF (by renaming the extension, having the SHA1 checksum as the filename)

I thought that i could create the missing nodes and the modify the entries inside the derbyDB to  point to that file. It seems to be a tricky problem

Is this a goog idea? which table should i edit to reference the JCR folderstructure to the files on the filesystem?

Thanking you very much in advance for any help

Tessa
Reply | Threaded
Open this post in threaded view
|

Re: Manual repairing damaged JCR Repo reference to the Filesystem inside DB

Clay Ferguson
Tessa,
There probably IS a way to do what you are trying to do, but it would
probably take an incredible amount of knowledge about the internal workings
of the JCR, and it's data formats, so I wouldn't attempt it. Best bet is to
save off any data you have, and use that to reload as if it were new data.
Hacking around in the internal data formats is probably going to create
more problems, imo, and is too dangerous to try to guess how to do that.

Best regards,
Clay Ferguson
[hidden email]


On Mon, Apr 17, 2017 at 9:45 AM, tessa <[hidden email]> wrote:

> Dear commmunity,
>
> Somehow file-Nodes in my JCR repo have been deleted.
> I am using everything default (LocalFilesystem & Derby)
>
> <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
> <PersistenceManager
> class="org.apache.jackrabbit.core.persistence.pool.
> DerbyPersistenceManager">
>
> I found that the files are still there on my filesystem e.g.
>
> \repository\datastore\17\51\fc\1751fc9f85cb306583875afebf5ec4222cceeade
>
> is is a PDF (by renaming the extension, having the SHA1 checksum as the
> filename)
>
> I thought that i could create the missing nodes and the modify the entries
> inside the derbyDB to  point to that file. It seems to be a tricky problem
>
> Is this a goog idea? which table should i edit to reference the JCR
> folderstructure to the files on the filesystem?
>
> Thanking you very much in advance for any help
>
> Tessa
>
>
>
> --
> View this message in context: http://jackrabbit.510166.n4.
> nabble.com/Manual-repairing-damaged-JCR-Repo-reference-to-
> the-Filesystem-inside-DB-tp4666728.html
> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>