On Aug 11, 2011, at 23:26 , dhsieh wrote: > According to http://docs.neo4j.org/chunked/stable/ha-architecture.html, this > is my understanding and I would like for confirmation from Neo4j: > > A slave will handle writes by synchronizing with the master to preserve > consistency. >>> It sounds like 2-phase commit between write initiated slave & master >>> nodes. >
Actually it would seem that the 2PC stuff in Neo4j is not related to HA at all. > Updates will however propagate from the master to other slaves eventually so > a write from one slave is not immediately visible on all other slaves. >>> It sounds like eventual consistency from master to other slaves. if so, I >>> am interested in finding out details about Neo4j HA member nodes voting >>> quorum & arbitrater setup (assuming using zookeeper) Looking at the code, it seems that the transaction is first prepare()'d on the slave, then the prepared log shipped to the master, applied and committed there, and the master txid shipped back and used to commit the transaction on slave. However, the locks seem to be held (both on slave and master) until the slave finishes committing or rolling back, so no visibility problems should occur. _______________________________________________ Neo4j mailing list [email protected] https://lists.neo4j.org/mailman/listinfo/user

