hi shaun, sorry for the late reply...
On 7/31/07, sbarriba <[EMAIL PROTECTED]> wrote: > Hi Stefan et al, > Thanks for the info. I was not aware of the consistency checker. > I tried to run it on our setup but the checker appears to ignore the > schemaObjectPrefix setting e.g. when starting the repository I get: > > 31 Jul 2007 09:40:30,563 INFO > org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager - > foobar: checking workspace consistency.. > 31 Jul 2007 09:40:30,576 ERROR > org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager - > Error in bundle > com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table > 'mydatabase.bundle' doesn't exist > at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936) > at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2934) > at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1616) > at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1708) > at com.mysql.jdbc.Connection.execSQL(Connection.java:3255) > at > com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1293 > ) > at > com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:867) > at > org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.che > ckConsistency(BundleDbPersistenceManager.java:689) > at > org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.ini > t(BundleDbPersistenceManager.java:581) > at > org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager.init(M > ySqlPersistenceManager.java:54) > > Note that the table name is actually "foorbar_bundle" not "bundle". > Are there any other params to the consistency checker I can use to resolve > the above? please create a jira issue and i'll try to fix it ASAP. cheers stefan > > Regards, > Shaun. > > -----Original Message----- > From: Stefan Guggisberg [mailto:[EMAIL PROTECTED] > Sent: 30 July 2007 14:00 > To: [email protected] > Subject: Re: Strange "ignoring nonexistent item" and removeitem fails > > hi shaun, > > On 7/30/07, sbarriba <[EMAIL PROTECTED]> wrote: > > Hi Stefan, > > > > "what persistence manager are you using?" > > We're using MySql 5.0.27, mysql-connector-java-5.0.6-bin.jar and > > > > <PersistenceManager > > > class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager > > "> > > <param name="driver" value="com.mysql.jdbc.Driver"/> > > <param name="url" value="jdbc:mysql://mysql-host:3306/[SID]"/> > > <param name="schemaObjectPrefix" value="${wsp.name}_"/> > > <param name="user" value="[SID]"/> > > <param name="password" value="[SID]"/> > > <param name="schema" value="mysql"/> > > <param name="externalBlobs" value="false"/> > > </PersistenceManager> > > > > The nodes were deleted using the JCR API. > > hmm, i have no idea what could possibly lead to the corruption. the entire > changelog generated by a save() or commit is persisted within a single > jdbc transaction. in the case of an Item#remove(), the changelog includes > the removed item, its parent and its descendants (if any). so dangling > child node entries should never occur. > > however... > > > > > Sounds like I need to open up the bonnet and get the spanners out? > > i suggest you try the following: > > add the following to your persistence manager config: > > <param name="consistencyCheck" value="true"> > > shutdown and restart the repository and check the jackrabbit log file > (you might want to set the log category to "INFO"). this option > tells the pm to perform a consistency check and report and anomalies. > > if there are any inconsistencies, you could try the following option: > > <param name="consistencyCheck" value="true"> > <param name="consistencyFix" value="true"> > > > i hope that this will do the trick. > > cheers > stefan > > > > > Regards, > > Shaun. > > > > -----Original Message----- > > From: Stefan Guggisberg [mailto:[EMAIL PROTECTED] > > Sent: 30 July 2007 11:31 > > To: [email protected] > > Subject: Re: Strange "ignoring nonexistent item" and removeitem fails > > > > hi shaun, > > > > On 7/30/07, sbarriba <[EMAIL PROTECTED]> wrote: > > > Hi all, > > > > > > We have a fairly complex structured node - Node A. Node A contains > various > > > child nodes that have references. > > > > > > > > > > > > When attempting to delete the Node A using removeitem in the command > line: > > > > > > > > > > > > exception: javax.jcr.ItemNotFoundException > > > > > > message: eb76dc5d-4d56-4ceb-9586-fdcedd53a2e7 > > > > > > > > > > > > No exception is reporting in the JackRabbit log. Note that I can find no > > > nodes relating to the above ID (using a query) - the uuid of the node > > we're > > > trying to delete is cd2a933a-1da8-42c0-9236-d128c2cc9825. > > > > > > > > > > > > As further info when performing a 'dump' on the node we see the > following > > in > > > the JackRabbit logs: > > > > > > > > > > > > 30 Jul 2007 11:00:53,472 DEBUG > org.apache.jackrabbit.core.LazyItemIterator > > > - ignoring nonexistent item eb76dc5d-4d56-4ceb-9586-fdcedd53a2e7 > > > > > > > seems like there's a dangling reference, i.e. a child node entry refering > to > > an nonexistent item. that shouldn't happen :-( what persistence manager > > are you using? > > > > > > > > > > > Immediately before this problem occurred some subnodes were successfully > > > deleted from Node A. This is the first time we've seen any kind of > > > corruption issues of this type. > > > > how did you delete the subnodes? using the jcr api or using the cmd line > > tool? > > > > cheers > > stefan > > > > > > > > > > > > > > Any recommendations on how to resolve this issue? > > > > > > > > > > > > Regards, > > > > > > Shaun. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
