i'm not 100% sure about this but AFAIK you should keep the†FileSystem and the†PersistenceManager for a workspace both stored in the DB if this needs to succeed. I have it running like this at least and it works with mysql.

Try with:

† † <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
† † † <param name="url" value="java:comp/env/jdbc/repositoryDS" />
† † † <param name="driver" value="javax.naming.InitialContext" />
† † † <param name="schemaObjectPrefix" value="${wsp.name}_" />
† † † <param name="schema" value="mysql" />
† † </FileSystem>



On Tue, Jul 31, 2012 at 4:55 PM, SCHEDENIG Marian <Marian.Schedenig@qualysoft.com> wrote:


itís been several months since my last (unsuccessful) attempt at Jackrabbit clustering. Now that I finally have time to get back to the issue, Iím still not successful. I set up a fresh new repository on server A, with the file system, persistence managers and journal all stored in a local MySQL database. I made sure the database URLs in the repository.xml uses the serverís internal network IP so that the URLs should still be valid when I copy repository.xml to a new node.

I then copied the repository to server B and changed the cluster ID in the copied repository.xml, then added the node entry to the database (as described in the wiki).

Now that both servers are running, I see that changes on one system increase that systemís revision counter in the database and also triggers the corresponding update on the other server (I can see the entry in the log file, and the second serverís revision counter is updated to match the first one). So that part seems right.

Yet when I access either repository via WebDAV, they seem completely independent. All changes made on server A only show up on server A, and changes on B only show up on B. I can create resources with the same name and different content on both systems, and both systems will return their own content. When I repeat the procedure to set up the second cluster node (delete the old repository directory on B, copy over the one from A, change repository.xml to set Bís cluster ID), B will again show exactly the content it had before, without any of the data from A.

It seems both servers manage to store their directory structures in the same database tables independently and read them again without conflicts. As far as I can tell, I followed the wiki guide correctly, so I canít figure out whatís causing this behaviour.

And hints are appreciated. Iím attaching repository.xml from server A. On B, the fileís content is the same, except for the cluster ID which is changed to ď10.10.12.56Ē. (The security section references several custom classes, so donít try this at home)



DI Marian Schedenig

Senior Developer

Qualysoft GmbH | Saturn Tower, Leonard-Bernstein-StraŖe 10, A-1220 Wien | Fimenbuchnummer 186076t, Handelsgericht Wien

P:† +43 1 409 59 87-26 | F:† +43 1 409 59 87-11 | Mail: marian.schedenig@qualysoft.com | Web: www.qualysoft.at

Description: Description: Description: Description: cid:image001.png@01CC9D34.5CE34440

Austria†-†Germany -†Hungary - Romania - Serbia Ė Slovakia - Ukraine

P Please consider the environment before printing this email

Jeroen Reijn
Solution Architect

Amsterdam - Oosteinde 11, 1017 WT Amsterdam
Boston - 1 Broadway, Cambridge, MA 02142

US +1 877 414 4776 (toll free)
Europe +31(0)20 522 4466