Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Fix PR/PW #485
Originally, PR/PW simply checked, in the validate phase of the GET/PUT
However, that was insufficient. Consider PW=2, PR=2, N=3 case; if 2 primaries
It gets worse, even. Because the node_watcher can lag behind the actual
The solution to all this is to simply use the preflist to check we get
This also means that PR/PW will now block a response from returning
Additionally, the rules on how DW relates to W have been changed, DW is
I just re-ran the scenario described here:
I'm unable to reproduce the bad behaviour that was reported. Although, note that test/foo on my ring hashed to a preflist that had 2 members on one node, test2/foo hashed better for me, so that is what I used.
I switched back to the master branch, and the bug came back.