Am I misunderstand read and write quorum? Or am I losing writes?
rob at luminoso.com
Thu Apr 11 22:29:05 EDT 2013
My understanding is that if you write a document to a cluster of 4 riak
servers with w='quorum', then read from that same cluster with r='quorum',
that the read should reflect the result of the right.
My understanding is also that, in the Python client (version 5525f4f3, from
master), w = r = 'quorum' by default.
And yet, the following check in my code fails occasionally:
riak_obj = bucket.new(docid, doc)
echo_doc = bucket.get(docid).data
for field in doc:
assert doc[field] == echo_doc[field], (doc, echo_doc)
I thought perhaps my W and R settings were wrong and I was just getting
"eventual consistency", so I tried a very slow version where I waited five
seconds before reading the updated document. This seems to fail just as
often. So it doesn't just seem like I'm reading a write that hasn't
happened yet; it seems that the occasional write may _never happen at all_.
Have I misunderstood something? If not, why would this happen, and how can
I track it down?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the riak-users