Apache has announced the release of CouchDB 1.2.0. It brings lots of improvements, some of which mean apps written for older versions of CouchDB will no longer work.
The new version of CouchDB also has optional file compression for database and view index files, with all storage operations being passed through Google's snappy compressor. This means less data has to be transferred, so access is faster.
Alongside these headline changes for performance, the team has also made other changes that take the Erlang runtime system into account to improve concurrency when writing data to databases and view index files.
Security is the other area that has seen improvements, with a range of changes to make it much more secure to run CouchDB as a public database server for CouchApps. This is the area where the changes may well mean your existing apps don’t work with the new version, but as the team points out, it’s probably well worth the trouble of re-coding.
The changes mean that documents in the _users and _replication databases can now only be read by the respective authenticated user and administrators, rather than by everyone as was the case in earlier versions. Password hashes have also been improved in the sense that they are now calculated by CouchDB instead of the client. OAuth secrets within the database and persistent authentication cookies are now supported by CouchDB.
Other improvements include a new replicator system that has been rewritten from scratch to be faster and more reliable, with a wider set of configuration choices to allow for better tuning for particular environments.
Algorithms and computation are at the heart of everything. When cells obey the program in DNA they make a human - but how can they all be following the same instructions and yet do different things? T [ ... ]