CouchDB

Tuesday Jun 10, 2014

Apache CouchDB 1.6.0 Released

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

CouchDB is a database that completely embraces the web. Store your data with JSON documents. Access your documents with your web browser, via HTTP. Query, combine, and transform your documents with JavaScript. CouchDB works well with modern web and mobile apps. You can even serve web apps directly out of CouchDB. And you can distribute your data, or your apps, efficiently using CouchDB’s incremental replication. CouchDB supports master-master setups with automatic conflict detection.

Grab your copy here:

http://couchdb.apache.org/

Pre-built packages for Windows and OS X are available.

CouchDB 1.6.0 is a feature release, and was originally published on 2014-06-10.

These release notes are based on the changelog.

Upgrade Notes

The Proxy Authentication handler was renamed to proxy_authentication_handler to follow the *_authentication_handler form of all other handlers. The old proxy_authentification_handler name is marked as deprecated and will be removed in future releases. It’s strongly recommended to update the httpd/authentication_handlers option with the new value if you have this handler configured.

What's New

  • COUCHDB-2200: support Erlang/OTP 17.0 #35e16032
  • Fauxton: many improvements in our experimental new user interface, including switching the code editor from CodeMirror to Ace as well as better support for various browsers.
  • Add the max_count option (UUIDs Configuration) to allow rate-limiting the amount of UUIDs that can be requested from the /_uuids handler in a single request (CVE 2014-2668).
  • COUCHDB-1986: increase socket buffer size to improve replication speed for large documents and attachments, and fix tests on BSD-like systems. #9a0e561b
  • COUCHDB-1953: improve performance of multipart/related requests. #ce3e89dc
  • COUCHDB-2221: verify that authentication-related configuration settings are well-formed. #dbe769c6
  • COUCHDB-1922: fix CORS exposed headers. #4f619833
  • Rename proxy_authentification_handler to proxy_authentication_handler. #c66ac4a8
  • COUCHDB-1795: ensure the startup script clears the pid file on termination. #818ef4f9
  • COUCHDB-1962: replication can now be performed without having write access to the source database (#1d5fe2aa), the replication checkpoint interval is now configurable (#0693f98e).
  • COUCHDB-2025: add support for SOCKS5 proxies for replication. #fcd76c9
  • COUCHDB-1930: redirect to the correct page after submitting a new document with a different ID than the one suggested by Futon. #4906b591
  • COUCHDB-1923: add support for attachments and att_encoding_info options (formerly only available on the documents API) to the view API. #ca41964b
  • COUCHDB-1647: for failed replications originating from a document in the _replicator database, store the failure reason in the document. #08cac68b
  • A number of improvements for the documentation.

Friday Jun 06, 2014

CouchDB Weekly News, June 06

Weekly CouchDB meeting – summary

  • 1.6.0 release status: the vote had passed last week, binaries for Mac and Windows are ready for testing. The release will be very soon, stay tuned!
  • BigCouch merge: significant process has been made; testing is highly important now. We want to encourage everyone to help with testing COUCHDB-1843 branch, especially :5984 API iface. Info: to run the bigcouch from merge branch: clone couchdb.git, checkout 1843-feature-bigcouch, ./configure && make && dev/run. Please report any errors you find during testing on dev@ Mailing list or on IRC #couchdb-dev.
  • Bylaws, Code of Conduct and Diversity Statement: all PMC members are asked for reviewing and commenting the Bylaws and the Code of Conduct and Diversity Statement. A thread about approval models and vetoes will be started on the mailing list.

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

no public answer yet:
For more new questions about CouchDB, see these search results.

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!
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

Friday May 30, 2014

CouchDB Weekly News, May 30

Major Discussions

Vote on release of Apache CouchDB 1.6.0 rc.5 (will be released as Apache CouchDB 1.6.0 — see thread)

The vote passed.

Limiting view access (see thread)

Use case: sharing docs between users with different roles and according access. Goal is to make sure via adding according CouchDB settings that no user can see who the other users of the doc are.

Answer: Natively, CouchDB doesn’t provide this functionality. Thus, the canonical answer is to use a proxy in front of CouchDB that can limit access to certain URLs, or to deploy a middleware layer written in your favourite language that can broker the access.

CouchDB minimum revs_limit and Compaction (see thread)

Use case: limiting the number of revisions stored for a specific document in a database. Setup: setting the revs_limit to a specific number and then running the compaction. This did not work, the number of revisions could not be limited this way, and the enquirer asked why.

Answer: _revs_limit does not do what one may think it does, – CouchDB is not a revision control system. After completion only the latest revision of each document is preserved. _revs_limit refers only to how many old _rev values are retained. Lowering this value will save some storage but can also make replication less efficient as a failure to find a common ancestor will cause CouchDB to copy the document afresh.

Releases in the CouchDB Universe

Special topic: Content Management Systems based on CouchDB

  • Kleks – a pure CouchDB based CMS written as a CouchApp using Kanso, Spine.js, CoffeeScript and Stylus. Supports multi-site setup and Markdown authoring
  • Couchpress – a super lightweight and modular CMS built on NodeJS, Express and CouchDB
  • CMS – a Content Management System written with Ruby on Rails and CouchDB
  • Cmtool – a rails 3.2+ CMS as engine for a CouchDB backend
  • CCMS – a Backend-free, client-side JavaScript and CouchDB based CMS
  • Falkland CMS (Website) – a Curation Management System written in Clojure, ClojureScript and CouchDB

Opinions

Use Cases, Questions and Answers

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!
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

Thursday May 22, 2014

CouchDB Weekly News, May 22

Weekly CouchDB meeting – summary

  • 1.6.0 release: no new issues were found during voting on CouchDB 1.6.0 rc5
  • BigCouch merge: significant progress has been made. Everyone is still encouraged to continue helping with building and testing COUCHDB-1843 branch. Further items for discussions will be sent to the mailing list.
  • CouchDB Meetup Hamburg: the CouchDB user group in Hamburg has its own Google Plus Community and will have their next meetup will be on June 10, 2014.

Major Discussions

Running views return nothing with CouchDB 1.5.1 (ongoing discussion; see thread)
Setup: code that creates database, documents and design documents with views and lists. When views are run, nothing is returned under CouchDB 1.5.1. When the same code is run against another CouchDB server (CouchDB 1.5.0), all views return the right responses and results. Approach: the problem described here could be an error from a library not found while running an external process (CouchJS in this case). It turned out libmozjs.so was either not installed or not in a path searched by the dynamic linker. Once it is added, it should be ensured that CouchJS can be run, afterwards, CouchDB should be able to build the views without restarting CouchDB.
Discussion: Project by-laws (ongoing discussion; see thread)
The discussion about the by-laws is still ongoing, more updates have been made. They can be found here, your feedback is still very welcome.
Release Apache CouchDB 1.6.0 rc5 (see thread)
The testing and voting for all systems is still in progress.

Releases in the CouchDB Universe

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Events

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

Friday May 16, 2014

CouchDB Weekly News, May 16

Blog Posts

Weekly CouchDB meeting – summary

  • BigCouch merge: significant process has been made. We want to encourage everyone to check out the COUCHDB-1843 branch and help with testing. Info: to run the bigcouch from merge branch: clone couchdb.git, checkout 1843-feature-bigcouch, ./configure && make && dev/run. Please report any errors you find during testing on dev@ Mailing list or on IRC #couchdb-dev.
  • 1.6.0 release: 1.6.0 rc5 is still open vor testing and voting. There are now Windows binaries against Erlang 17.0, – Windows users out there, feel free to test them. On the issues with Erlang 17.0, please also see this post on what it takes to use it in production. There'll be a follow-up item on this which will be sent to the mailing list this week.
  • CouchDB Meetups: there have been two CouchDB Meetups in Hamburg and Berlin, Germany, in the last week, and both were amazing. The recap for Hamburg can be found here.

Major Discussions

Discussion: Project by-laws (ongoing discussion; see thread)

The by-laws have been discussed and updated according to the community's comments. They can be found here, your feedback is very welcome.

Release Apache CouchDB 1.6.0 rc5 (see thread)

The testing and voting for all systems is still in progress.

Releases in the CouchDB Universe

  • couch-daemon – helps you write CouchDB workers efficiently that can be implemented and managed by CouchDB as os_daemons; with a Highland streaming interface
  • couchdb2s3 (0.3.0) – export CouchDB databases to line-oriented json files on s3
  • sails-couchdb-orm (0.9.0) – CouchDB adapter for Sails.js and Waterline ORM
  • dimensionist – CouchDB daemon to extract dimensions from image attachments

Opinions

Use Cases, Questions and Answers

Get involved!

If you want to get into working on CouchDB:
  • Help us testing Apache CouchDB 1.6.0 rc5! You'll find all important information on release artefacts and test procedure here.
  • Here's a list of beginner tickets around our currently ongoing Fauxton-implementation. If you have any questions or need help, don't hesitate to contact us in the couchdb-dev IRC room (#couchdb-dev) – Garren (garren) and Sue (deathbear) are happy to help.
We'd be happy to have you!

Job opportunities for people with CouchDB skills

… and also in the news

Posted on behalf of Lena Reinhard.

Thursday May 15, 2014

Recap CouchDB Meetup Hamburg No. 1

This is the recap from our first CouchDB User Group Hamburg Meeting at May 13th 2014.

First of all thanks to everyone for attending. Also a big thank you to Ubilabs for hosting the meetup at their awesome office in Hamburg "Schanzenviertel".

Six people have been attending at this first meeting. Although it was a quite small meeting, we have discussed many things. At the beginning, everybody introduced themselves and dropped some info about what they are doing - especially with CouchDB. Andy spoke about the CouchDB history, the Apache Software Foundation and the ASF CouchDB project. After that, Klaus was giving some insights about coding in CouchDB's core and explained various internals. And Robert showed the new awesome Fauxton webinterface for CouchDB.

Julius attended accidentally, because he originally was thinking about founding a "Hamburg Beamers" - an Erlang user group. He got in touch with Dave Cottlehuber, who is a member from the "Vienna Beamers", pointing Julius to our first meetup (thanks Dave :) ). When digging a bit deeper into CouchDB, Julius was excited about what CouchDB offers.

We were also thinking about putting the Beamers and Couchers together in one user group because we thought that one of the main topics will be Erlang. This is not decided though. We did also look into Elixir and Klaus and Julius gave some basic insights. Elixir looks really cool and promising.

After nearly three hours, we finished our beers (thanks to Ubilabs for sponsering the drinks). Everybody was happy with the first meeting and we are looking forward to the next one. We plan to have the meeting every month. So the next meeting will be in mid June. Klaus will give the first talk where he is introducing a web service he is creating for measuring software complexity with Elixir and CouchDB.

We have now created a G+ Community called CouchDB Meetup Hamburg. We will use this community to announce upcoming events. This is the easiest way at the moment.

Finally, we decided to meet again at June, 10th and again at Ubilabs. Thanks a lot in advance.

Looking forward to see also new interested folks. So please spread the word.

Wednesday May 14, 2014

Board Report (May 2014)

Apache CouchDB is a database that uses JSON for documents, JavaScript for MapReduce queries, and regular HTTP for an API.

Releases

1.5.1 (2014-04-08) http://www.apache.org/dist/couchdb/notes/1.5.1/apache-couchdb-1.5.1.html

Recent Activity

  • Started with weekly news with great success. Also available at https://blogs.apache.org/couchdb/
  • The community is in the process of creating a CoC and bylaws
  • Ongoing work on the release 1.6.0. Actually voting on Apache CouchDB 1.6.0-rc.4
  • Working on the BigCouch merge from Cloudant
  • Good progress in reviewing the rcouch merge
  • Community work on migrating content to the new wiki started
  • Translation work going well

Community

Including the following additions, CouchDB has 35 committers and 12 PMC members.

New committers:

  • Robert Kowalski

New PMC members:

  • Joan Touzet

Mailing list stats:

announce

  • 175 subscribers (+24)
  • 1 message since February (1)

user

  • 1386 subscribers (-19)
  • 750 messages since February (-336)

erlang

  • 167 subscribers (+13)
  • 1 messages since February (-13)

dev

  • 599 subscribers (-3)
  • 2630 messages since February (+1306)

commits

  • 104 subscribers (0)
  • 2655 messages since February (-80)

marketing

  • 31 subscribers
  • 312 messages since February

l10n

  • 36 subscribers (+5)
  • 16 messages since May (-191)

replication

  • 54 subscribers (+7)
  • 53 messages since February (+28)

Issues: None.

Velocity Template Error

  • Unexpected Exception
  • Roller has encountered and logged an unexpected exception.
Exception Velocity template error : standard
Message Invocation of method 'getCommentCount' in class org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper threw exception javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 112,105,376 milliseconds ago. The last packet sent successfully to the server was 112,105,377 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
Error Code: 0
Call: SELECT id, content, contenttype, email, name, notify, plugins, posttime, referrer, remotehost, status, url, useragent, entryid FROM roller_comment WHERE ((entryid = ?) AND (status = ?)) ORDER BY posttime ASC
bind => [2 parameters bound]
Query: ReadAllQuery(referenceClass=WeblogEntryComment sql="SELECT id, content, contenttype, email, name, notify, plugins, posttime, referrer, remotehost, status, url, useragent, entryid FROM roller_comment WHERE ((entryid = ?) AND (status = ?)) ORDER BY posttime ASC") at 8ac42738-8759-4a30-ba03-57e84c8286e1|standard[line 24, column 41]
Type e54e6c4c-06b8-40e4-afc1-fbe7bc682c3c
Exception org.apache.velocity.exception.MethodInvocationException