Dear community,

Apache CouchDB 2.3.0 has been released and is available for download.

Update 2018-12-17: This Update includes a fix for CVE-2018-17188.

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.

CouchDB 2.3.0 is a feature release, and was originally published on 2018-12-06.

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!

See the official release notes document for an exhaustive list of all changes:


Release Notes highlights:

  • (Multiple) Clustered purge is now available. This feature restores the CouchDB 1.x ability to completely remove any record of a document from a database. Conditions apply; to use the feature safely, and for full details, read the complete Clustered Purge documentation.

  • A new config setting is available, allowing an administrator to configure an initial list of nodes that should be contacted when a node boots up. Nodes in the seedlist that are successfully reached will be added to that node’s _nodes database automatically, triggering a distributed Erlang connection and replication of the internal system databases to the new node. This can be used instead of manual config or the cluster setup wizard to bootstrap a cluster. The progress of the initial seeding of new nodes is exposed at the GET /_up endpoint.

  • Replication supports ipv6-only peers.

  • The UUID of the server/cluster is once again exposed in the GET / response. This was a regression from CouchDB 1.x.

  • Stats counts between job runs of the replicator are no longer reset on job restart.

  • CouchDB’s _bulk_get implementation now supports the multipart/mixed and multipart/related content types if requested, extending compatibility with third-party replication clients.

  • CouchDB no longer forces the TCP receive buffer to a fixed size of 256KB, allowing the operating system to dynamically adjust the buffer size. This can lead to significantly improved network performance when transferring large attachments.

  • To improve security, there have been major changes in the configuration of query servers, SSL support, and HTTP global handlers. See the release notes for important upgrade information.

  • All python scripts shipped with CouchDB, including couchup and the dev/run development cluster script, now specify and require Python 3.x.

  • CouchDB is now compatible with Erlang 21.x.

  • The embedded version of rebar used to build CouchDB has been updated to the last version of rebar2 available. This assists in building on non-x86 platforms.

  • Plus many other performance improvements, bugfixes, and UI improvements!

On behalf of the CouchDB PMC,
Joan Touzet

CouchDB Weekly News, September 13, 2018

Releases in the CouchDB Universe

Opinions and other News in the CouchDB Universe

CouchDB Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

PouchDB Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results and about PouchDB, see these.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!


Job opportunities for people with CouchDB skills

… and also in the news

Submit news to the CouchDB Weekly

Reach out to us with your news suggestions by sending us an email or by contacting us on Twitter @CouchDB.