Hi there,

I've been playing around with neo4j 1.4.M02 and have come upon an
interesting problem related to indexes relative to 1.4.M01. Under 1.4.M01
the following code always works cleanly:

import org.neo4j.graphdb.*;
import org.neo4j.kernel.EmbeddedGraphDatabase;
import org.neo4j.graphdb.index.Index;

public class NeoTest {
    public static void main(String[] args) {
        GraphDatabaseService graphDb = new
EmbeddedGraphDatabase("test-index.db");
        Index<Node> testIdx = graphDb.index().forNodes("testidx");

        Transaction tx = graphDb.beginTx();
        try {
            Node firstNode = graphDb.createNode();
            testIdx.add(firstNode, "name", "first");
            tx.success();
        }
        finally {
            tx.finish();
            graphDb.shutdown();
        }
    }
}

Run the program twice in a row and you won't see any error messages.

However under 1.4.M02 whenever I do anything that writes to an index I'm
always left with unresolved transactions at the end of execution. The
indexes work fine after recovery, but as soon as a write happens then the
database is left in an inconsistent state. The first run, produces no error
messages, but the second run produces the following problem:

May 24, 2011 9:43:29 AM org.neo4j.kernel.impl.transaction.TxManager init
INFO: Unresolved transactions found, recovery started ...
May 24, 2011 9:43:29 AM org.neo4j.kernel.impl.transaction.TxManager init
INFO: Recovery completed, all transactions have been resolved to a
consistent state.

I didn't see anything in the docs saying that I needed to do anything
special to close out Indexes, so I'm at a bit of a loss for resolving this
problem. Any hints on what I should do shut down databases cleanly under
1.4.M02?

Thanks!

--Patrick
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to