Neo4j 1.2 Milestone 5 – Reference Manual and HA!

Peter Neubauer

Hi there,

In this release, the community and the Neo4j team have been working hard to bring you some really long-term value in the Neo4j project, mainly with documentation and the first glimpse of the High Availability component.

Thanks to all individuals reporting bugs, feedback and patches. A couple of them got into this release, like:
  • Minor Neo4j server script enhancements from Mao Pu
  • REST API feedback form Rick Bullotta, Max De Marci and many others
  • Much feedback on visualization options for graphs from the community


Neo4j now has the beginnings of a one-stop reference manual as both online HTML and PDF, giving you reference documentation on using Neo4j and the related components. We hope this will make it much easier to find relevant information, getting started and look up things that previously have been spread over the wiki, blog posts and other different online sources. This documentation is available online at .

This is work in progress, but please get back to us with feedback on what you want to see more of, things that might be missing and other comments!

Also, this documentation will be versioned, so that for each Neo4j release there will be a corresponding version of the Neo4j Reference Manual. Eventually, we hope to evolve this into a book on Neo4j. If you want to contribute to the effort, let us know!

High Availability

With this milestone, we are proud to release a version of the Highly Available Neo4j cluster to the community for the first time. This component turns Neo4j into a system with a Write-Master and a number of Read-Slaves. Upon mutating operations, at least the master and one slave are committing the transaction before propagating out the changes to the other slaves. In case of the write-master failing, the remaining slaves will automatically elect a new master. Also, the whole cluster infrastructure is transparent to the code that uses the Neo4j API, so that all slaves and masters can be written to and read from transparently. Your code does not need to be aware of the type of HA setup it is running on. Simply do

GraphDatabaseService db = new HighlyAvailableGraphDatabase( path, config );

and off you go as usual!

More on that to come as part of the documentation, but feel free to get it going and give it a spin.

As always, to get the release, download it from or update your pom.xml to


May the source be with you!


Want to learn more about graph databases? Click below to get your free copy of O’Reilly’s Graph Databases ebook and discover how to use graph technologies for your application today.

Download My Ebook