Apache CouchDB 3.2.0 has been released and is available for download.
CouchDB 3.2.0 is a feature release and was originally published on 2021-10-12.
See the official release notes document for an exhaustive list of all changes:
The community would like to thank all contributors for their part in making this release, from the smallest bug report or patch to major contributions in code, design, or marketing, we couldn’t have done it without you!
- The couch_sever module is now sharded. Despite following a high-concurrency process architecture generally, the couch_server module used in previous versions is a single Erlang process that, on busy nodes, could become a bottleneck. CouchDB 3.2.0 introduces a couch_server_N module per CPU core, effectively removing the bottleneck.
- The replication scheduler manages which replications run at any one time. It is important for setups where there are more total replications than are configured to run concurrently. Previously, the replication scheduler would iterate over all replications in a round-robin fashion and give them all equal time to do their work. CouchDB 3.2.0 introduces a fair-share option that allows you to use multiple _replicator databases each with a different relative priority, so your important replications get more time to do their job vs. your less important replications. See the _replicator DB docs for more details: https://docs.couchdb.org/en/stable/replication/replicator.html#replicator
- Support for Erlang versions 23 and 24, dropped support for version 19.
- Support for SpiderMonkey versions 78 and 86.
- Addresses CVE-2021-38295
- Reduced occurrence of the “No DB shards can be opened”
- Support specifying password requirements via regex
- Logs no longer include credentials in almost all cases
- More fine-grained CSP configuration
- Easier development setups via .devcontainer for the 3.x series.
- Makes auto-compaction less aggressive, saves CPU and I/O on busy clusters.
- Includes weatherreport module for advanced diagnostics:
- Includes a dedicated prometheus endpoint for stats and metrics:
- All JS tests have been migrated Elixir and the JS test suite has been retired. 🖖
Find the full list of changes here: https://docs.couchdb.org/en/latest/whatsnew/3.2.html
Apache CouchDB™ lets you access your data where you need it. The Couch Replication Protocol is implemented in a variety of projects and products that span every imaginable computing environment from globally distributed server-clusters, over mobile phones to web browsers.
Store your data safely, on your own servers, or with any leading cloud provider. Your web- and native applications love CouchDB, because it speaks JSON natively and supports binary data for all your data storage needs.
The Couch Replication Protocol lets your data flow seamlessly between server clusters to mobile phones and web browsers, enabling a compelling offline-first user-experience while maintaining high performance and strong reliability. CouchDB comes with a developer-friendly query language, and optionally MapReduce for simple, efficient, and comprehensive data retrieval.
Pre-built packages for Windows, macOS, Debian/Ubuntu and RHEL/CentOS are available.