Robert Kowalski | 7 Oct 14:48 2015

Fabric worker timeouts and availability of replicas


I am currently taking a look at fabric and rexi.

Given I open a doc, a CouchDB cluster returns the document.

It also returns a doc, given not all replicas (r) are available and the
*cluster is aware of it*: if the co-ordinator knows that there are fewer
than r replicas available, it returns the document with a 200.

When a worker is not available *right now*, and the call to one of them
just times out (so the cluster is not aware that one node is unavailable),
the Cluster will return a general timeout error instead of a result [1],
even if just one of the worker fails.

Should the cluster return a result instead in those cases?

Nick Vatamaniuc | 5 Oct 16:03 2015

EUnit tests status

Hi Everyone,

This past week there was some activity fixing unit tests. If anyone is
interested, here is a quick status on what was working and what was
 not working.

commit da066c4cdf1760b2ed9caffd0ba4ac766fc2fb23
+ couch_fabric pr 32

 App   Pass / Fail
b64url  7 / 0
cassim  1 / 0
chttpd  79 / 0
config 37 / 0
couch  715 / 0
couch_epi  43 / 0
couch_event 0 / 0
couch_index  0 / 0
couch_log  12 / 0
couch_log_lager  5 / 0
couch_mrview 104 / 0
couch_peruser 10 / 0
couch_plugins  0 /  0
couch_replicator  127 / 0
couch_stats  0 / 0
ddoc_cache 0 / 0
ets_lru 43 / 0
fabric  21 / 0 (needs couch_fabric pr 32)
global_changes  4 / 0
(Continue reading)

Ilya Khlopotov | 1 Oct 22:32 2015

[PROPOSAL] Improve testing infrastructure of couchdb


I would like to submit a proposal to improve the way we test couchdb. Here
is the link to rendered version:

Bellow is the source of the proposal

# Testing couchdb

It is quite hard to test couchdb currently. The main difficulties are
to complex setup functions and weak isolation of test cases. There are some
functions in `test_util` module which simplify setup a little bit but not
by much.
The purpose of this proposal is to define some requirements for testing
infrastructure and proposing a solution which satisfy most of these

## Why is it so hard to write certain kinds of tests?

- Setup / teardown overhead.
- Difficult-to-reproduce failure modes.
- Tests which require clusters rather than single nodes.
- Tests for issues that only manifest at scale (e.g. >100 nodes).
- Verifying/manipulating aspects of internal state during / after a test.
- PRs for functional changes are not isolated to single repositories which
makes integration with CI (required to enforce any must-have-passing-tests
(Continue reading)

Katharina Jockenhöfer | 1 Oct 21:13 2015

[BLOG] The CouchDB Weekly News, October 1st, is out!

Hi everybody! 

Here we go with the CouchDB Weekly News: <>
Design <at>  Mailing List
Allow rewrites to be JS function
Releases in the CouchDB and PouchDB Universe
News and Opinions
Patricia Garcia on “Good Tech for Hard Places: Fighting Ebola with Javascript Offline Apps”, 2015
 Talk: “Decentralized Document Delivery” at ApacheCon: Big Data 2015
Lots of Q&As on Stack Overflow
Read and relax 
You're welcome to share the news in the social networks of your choice and help us promote CouchDB: <>
<> <> <> <>

Thank you all for your support!
Ying Bian | 1 Oct 15:31 2015

Re: pouchdb-find and couchdb 2.0

Sorry if I posted to the wrong list. I should have posted to the user list.

- Ying

> 在 2015年10月1日,21:20,Ying Bian <ybian@...> 写道:
> Dear couchdb developers and users,
> I’m new to couchdb & pouchdb and I’m looking forward to some comments to the following problem:
> I want to setup a couchdb service in the cloud and provide an SDK to my users for them to use in their apps. They
can also use pouchdb as a local replication of their data. An important part of the SDK is the query
interface. I want it to be developer-friendly as much as possible. The map/reduce API is too complex for
developers with no similar experience. After some investigation, I think maybe
[pouchdb-find]( is worth to try. Its mongodb like
query language is more intuitive in my mind.
> My questions are:
> 1. Pouchdb-find is still in beta and its documents says "This API is modeled after the Cloudant query API,
soon to be merged into CouchDB 2.0.”  Is the support already merged into couchdb 2.0? What’s the
delivery plan for couchdb 2.0? Is it to safe to switch to 2.0 now?
> 2. I want the query interface to be “couch & pouch” transparent: the same query API would be used for
both local pouchdb and remote couchdb. I suppose this is not a problem. Am I right?
> Any comments would be much appreciated.
> -Ying
(Continue reading)

Katharina Jockenhöfer | 30 Sep 19:17 2015

Submissions – CouchDB Weekly News

Hello all!

please send me submissions for tomorrow's CouchDB Weekly News, if you have any..

Especially for 
- News in the CouchDB and PouchDB universe
- Opinions, good articles/talks 
- Interesting use cases
- CouchDB related events

Thank you all for your support. 

Happy Wednesday!
Klaus Trainer | 29 Sep 19:19 2015

notification emails

Hi everybody,

you may have noticed that for some repositories, notification emails
have been misrouted.  More precisely, GitHub notifications have been
sent to commits@..., and commit notifications to
notifications@...  So in order to have that fixed, I've
recently filed infrastructure requests for several repositories [1, 2].

For the future, let's be a bit more careful, so that notification emails
are being routed correctly, and we don't have to bother infrastructure
folks unnecessarily!

Please note:

* If you're filing a "GitHub Integration" request, make sure that the
"Git Notification Mailing List" list is notifications@...

* If you're filing a "New Git Repository" request, make sure that the
"Git Notification Mailing List" is commits@...




ermouth | 28 Sep 00:11 2015

[PROPOSAL] Allow rewrites to be JS function

TLDR: Extend design doc `rewrites` section functionality, enabling it to be
both list (array of rules, current format) and JS function (string).
Function receives request, userCtx and security obj, returns rewritten
path, and, optionally, method, headers and body.

Solves a lot of inherent couchapp problems: enables access control on early
stage, query-based rewrites, userCtx-based rewites, timeframe-based
policies and so on.


Was proposed several times. There exist 3 years old PR,
that was rejected because of ‘terrible performance’.

I‘ve taken that PR, cleaned it up, modified for chttpd and fixed several
most hitting performance issues. Right now performance isn‘t so terrible.

If we denote list-based rewrite timing as X, JS-based rewrite takes approx
3*X + JS function run time (relatively modest, if fn is written carefully,
generally much less then X).

For comparison: validate_doc_update call takes approx 2*X, list call 3.5*X.

So 3*X isn‘t so high, especially taking in consideration these facts:

* We gain high flexibility and remove one of most serious bottlenecks of
* Right now requst validity check is often performed in couchapp‘s list
function – approach of awful performance; we eliminate this approach
(Continue reading)

Giovanni Lenzi | 22 Sep 11:51 2015

PMC members list

Hi all!

I'm here since some time now, but I still haven't fully understood how many
members are in the PMC?

I think it would be useful for the community to have this discussion filled
in with the full PMC members list and have this discussion updated each
time someone leaves or is elected.

It would also be useful to mention who the Chairman is and his/her term

Thanks and Best Regards,
Jan Lehnardt | 18 Sep 16:21 2015

make check fails

Hi everyone,

we are getting into the hot phase for 2.0. I noticed make check fails on CI
<>). We really must make sure that our tests
suites are working now. Who can find out what is broken here?


Katharina Jockenhöfer | 17 Sep 22:40 2015

[BLOG] The CouchDB Weekly News, September 17, is out!

Hi everybody! 

Here we go with the CouchDB Weekly News: <>
It's been a busy week!!
A place for designers in CouchDB
Remove oAuth for 2.0
Implementation of ‘_bulk_get’ into CouchDB
PouchDB 4.0.2
Lots of releases!!
Q&As from Stack Overflow
ApacheCon: Big Data 20145 and ApacheCon: Core Europe 2015
Read, relax and check out "Your first PR"
You're welcome to share the news in the social networks of your choice and help us promote CouchDB: <> <>
<> <>

Thank you all for your support!