You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Robina Arora <ra...@csc.com> on 2010/04/19 09:50:17 UTC
Migrating repository from File system to DB
Hi,
In my project there is a requirement to migrate the JCR repository from
File system to DB system. I have done the migration successfully. But now
I want to compare the two repositories in order to confirm that all the
documents along with their versions have been migrated without any
failure.
The repository is of huge size(in GBs) and there are thousands of
documents, so it is not possible to test it manually.
Can anybody please provide me the pointers/directions how to compare two
JCR repositories.
Thanks in Advance!
Regards
Robina Arora Jain
Senior Engineer - Application Development
CSC
A-44/45, DLF IT Park Sec-62, Noida.
Applications & Technology Services Group| 0120-4702814 | 9899975651 |
rarora2@csc.com | www.csc.com
CSC • This is a PRIVATE message. If you are not the intended recipient,
please delete without copying and kindly advise us by e-mail of the
mistake in delivery. NOTE: Regardless of content, this e-mail shall not
operate to bind CSC to any order or other contract unless pursuant to
explicit written agreement or government initiative expressly permitting
the use of e-mail for such purpose • Computer Sciences Corporation India
Pvt Ltd • 7th, Floor, Block 1B, DLF IT Park, Sivaji Garden, Nandambakkam
Post, Ramapuram, Chennai-600 089.
Re: Migrating repository from File system to DB
Posted by Robina Arora <ra...@csc.com>.
Thanks Alex for the quick response!
" First of all let me tell you that I am very new to JCR and might have
very basic questions in mind.
Also the repository which I have to migrate has been created using Liferay
Portals, where the meta data for repository is being stored in the
application database and the content is being stored on file system, which
i have to migrate to a db now.
I am migrating it using repositorycopier.java in a stand alone java
program."
Now, when I am trying to compare the two repositories using JCR API, i m
not able to do so. I am able to login to the repository, but it does not
fetch me further values .i.e nodes and properties :(... these values are
null.So at times i doubt whether i am actually getting logged in to the
repository or not :( .
There is a file in my repository named 'repo.properties' and has the
values like :
jcr.specification.version=1.0
jcr.repository.stats.nodes.count=179962
query.xpath.pos.index=true
jcr.repository.version=1.6.0
query.xpath.doc.order=false
jcr.repository.stats.properties.count=831457
(There are some more properties also, but i have copied a few of them
here.)
I hope these nodes.count and properties.count are the actual node and
properties count of my repository. Please confirm.
After migration to DB, I am able to see these properties in one of the
tables, but there the nodes.count and properties.count values are zero :(.
If somehow I could know that where does the 'MySqlPersistenceManager'
stores these values, and if these values match, would that confirm that
all the documents along with their version have been migrated?
Thanks in Advance!
Regards
Robina Arora Jain
Senior Engineer - Application Development
CSC
A-44/45, DLF IT Park Sec-62, Noida.
Applications & Technology Services Group| 0120-4702814 | 9899975651 |
rarora2@csc.com | www.csc.com
CSC • This is a PRIVATE message. If you are not the intended recipient,
please delete without copying and kindly advise us by e-mail of the
mistake in delivery. NOTE: Regardless of content, this e-mail shall not
operate to bind CSC to any order or other contract unless pursuant to
explicit written agreement or government initiative expressly permitting
the use of e-mail for such purpose • Computer Sciences Corporation India
Pvt Ltd • 7th, Floor, Block 1B, DLF IT Park, Sivaji Garden, Nandambakkam
Post, Ramapuram, Chennai-600 089.
From:
Alexander Klimetschek <ak...@day.com>
To:
users@jackrabbit.apache.org
Date:
04/19/2010 02:24 PM
Subject:
Re: Migrating repository from File system to DB
On Mon, Apr 19, 2010 at 09:50, Robina Arora <ra...@csc.com> wrote:
> In my project there is a requirement to migrate the JCR repository from
> File system to DB system. I have done the migration successfully. But
now
> I want to compare the two repositories in order to confirm that all the
> documents along with their versions have been migrated without any
> failure.
First of all, most persistence managers have a consistency check
option that you should run first, because it's probably the fastest:
http://wiki.gxdeveloperweb.com/confluence/display/GXDEV/How+to+repair+a+'corrupt'+JCR
Then, to compare the actual data with the original copy, iterate over
the two repositories and compare the nodes and properties. You would
probably run one repository as transient and the other remotely, using
davex, to reduce delays as much as possible.
If it is only about (nt:)files, you could also mount both as webdav
and have a shell script that does that iteration and uses some
(binary) diff tool to compare the data.
Regards,
Alex
--
Alexander Klimetschek
alexander.klimetschek@day.com
Re: Migrating repository from File system to DB
Posted by Alexander Klimetschek <ak...@day.com>.
On Mon, Apr 19, 2010 at 09:50, Robina Arora <ra...@csc.com> wrote:
> In my project there is a requirement to migrate the JCR repository from
> File system to DB system. I have done the migration successfully. But now
> I want to compare the two repositories in order to confirm that all the
> documents along with their versions have been migrated without any
> failure.
First of all, most persistence managers have a consistency check
option that you should run first, because it's probably the fastest:
http://wiki.gxdeveloperweb.com/confluence/display/GXDEV/How+to+repair+a+'corrupt'+JCR
Then, to compare the actual data with the original copy, iterate over
the two repositories and compare the nodes and properties. You would
probably run one repository as transient and the other remotely, using
davex, to reduce delays as much as possible.
If it is only about (nt:)files, you could also mount both as webdav
and have a shell script that does that iteration and uses some
(binary) diff tool to compare the data.
Regards,
Alex
--
Alexander Klimetschek
alexander.klimetschek@day.com