basho / riak_pipe

Riak Pipelines
Apache License 2.0
162 stars 60 forks source link

assume handoff if vnode exits 'normal' during queue requeuest #64

Closed beerriot closed 11 years ago

beerriot commented 11 years ago

The pipe_verify_handoff_blocking test in basho/riak_test#154 demonstrated that the monitor used by riak_pipe_vnode:queue_work_send may fire while handoff is taking place. This situation is further described in

63.

This PR addresses the problem by first checking whether the Reason for the vnode's exit was normal. If it was not normal, the vnode_down error is returned as before. If it was normal, then it is assumed that handoff happened, and the monitor is moved to the new vnode, as indicated by riak_core_ring:next_owner/2.

This PR targets bwf-riak_test, because commits in that branch are needed to run the riak_test proof, but I wanted this PR to be clear about what it was.

russelldb commented 11 years ago

re-opened as https://github.com/basho/riak_pipe/pull/68