Hi, 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? [1] https://github.com/apache/couchdb-fabric/blob/405922c5dff36e0f5822e9a3422243f217d8d0e4/src/fabric_doc_open.erl#L61
