Alex,

That is caused by a bug. The bug has been fixed after 1.2. If you upgrade to
the latest milestone, you will no longer get this exception. Also, the
latest milestone will recover the store to a clean state. Your data will be
safe.

David

On Wed, Mar 9, 2011 at 10:26 AM, Axel Morgner <a...@morgner.de> wrote:

> Hi out there,
>
> is there a caveat when concurrently accessing a lucene index for writing?
>
>  From time to time, in rare cases, I'm getting an exception when
> committing and indexing a series of nodes to Neo4j (1.2). The
> transaction is triggered by a log service thread while the main thread
> (web app) concurrently writes updates to the index, too.
>
> After such an exception, the system is unable to recover unless I
> manually remove the lucene, lucene-fulltext and index folders from the
> neo4j directory and start over. Then the system comes up again, and I
> can sucessfully rebuild the index.
>
> Do I have to take care of locking by myself?
>
> Greetings
>
> Axel
>
> [1]
>
> java.lang.NullPointerException
>     at
>
> org.neo4j.index.impl.lucene.IndexType$CustomType.removeFromDocument(IndexType.java:165)
>     at
>
> org.neo4j.index.impl.lucene.LuceneCommand$RemoveCommand.perform(LuceneCommand.java:228)
>     at
>
> org.neo4j.index.impl.lucene.LuceneTransaction.doCommit(LuceneTransaction.java:231)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaTransaction.commit(XaTransaction.java:319)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceManager.commit(XaResourceManager.java:447)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceHelpImpl.commit(XaResourceHelpImpl.java:65)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.doCommit(TransactionImpl.java:517)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:623)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:586)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.commit(TransactionImpl.java:105)
>     at
> org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:86)
>     at
>
> org.structr.core.node.TransactionCommand.execute(TransactionCommand.java:37)
>     at org.structr.core.entity.AbstractNode.commit(AbstractNode.java:968)
>     at org.structr.core.log.LogService.run(LogService.java:85)
> javax.transaction.xa.XAException: Unknown
> xid[GlobalId[NEOKERNL|-7500914275797900644|1974], BranchId[ 52 49 52 49
> 52 49 ]]
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceManager.rollback(XaResourceManager.java:471)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceHelpImpl.rollback(XaResourceHelpImpl.java:112)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.doRollback(TransactionImpl.java:534)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:650)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:586)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.commit(TransactionImpl.java:105)
>     at
> org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:86)
>     at
>
> org.structr.core.node.TransactionCommand.execute(TransactionCommand.java:37)
>     at org.structr.core.entity.AbstractNode.commit(AbstractNode.java:968)
>     at org.structr.core.log.LogService.run(LogService.java:85)
> 09.03.2011 18:27:07 org.neo4j.kernel.impl.transaction.TxManager commit
> SCHWERWIEGEND: Unable to rollback transaction. Some resources may be
> commited others not. Neo4j kernel should be SHUTDOWN for resource
> maintance and transaction recovery ---->
> java.lang.NullPointerException
>     at
>
> org.neo4j.index.impl.lucene.IndexType$CustomType.removeFromDocument(IndexType.java:165)
>     at
>
> org.neo4j.index.impl.lucene.LuceneCommand$RemoveCommand.perform(LuceneCommand.java:228)
>     at
>
> org.neo4j.index.impl.lucene.LuceneTransaction.doCommit(LuceneTransaction.java:231)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaTransaction.commit(XaTransaction.java:319)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceManager.commit(XaResourceManager.java:447)
>     at
>
> org.neo4j.kernel.impl.transaction.xaframework.XaResourceHelpImpl.commit(XaResourceHelpImpl.java:65)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.doCommit(TransactionImpl.java:517)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:623)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:586)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.commit(TransactionImpl.java:105)
>     at
> org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:86)
>     at
>
> org.structr.core.node.TransactionCommand.execute(TransactionCommand.java:37)
>     at org.structr.core.entity.AbstractNode.commit(AbstractNode.java:968)
>     at org.structr.core.log.LogService.run(LogService.java:85)
> org.neo4j.graphdb.TransactionFailureException: Unable to commit transaction
>     at
> org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:105)
>     at
>
> org.structr.core.node.TransactionCommand.execute(TransactionCommand.java:37)
>     at org.structr.core.entity.AbstractNode.commit(AbstractNode.java:968)
>     at org.structr.core.log.LogService.run(LogService.java:85)
> Caused by: javax.transaction.HeuristicMixedException: Unable to rollback
> ---> error code in commit: -1 ---> error code for rollback: 0
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:664)
>     at
> org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:586)
>     at
>
> org.neo4j.kernel.impl.transaction.TransactionImpl.commit(TransactionImpl.java:105)
>     at
> org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:86)
>     ... 3 more
>
>
> _______________________________________________
> Neo4j mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
>



-- 
David Montag
Neo Technology, www.neotechnology.com
Cell: 650.556.4411
david.mon...@neotechnology.com
_______________________________________________
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to