How does one handled skipped event numbers with Paxos? -



How does one handled skipped event numbers with Paxos? -

if running multi-paxos node may see:

propose(n) accept!(n,vn) accept!(n+1,vm) accept!(n+4,vo) // huh? +2, +3? accept!(n+5,vp)

this may because either:

there stable leader network local node dropped else delayed +2 , +3. there outage such there 2 attempts propose such +2 , +3 failed rounds proposals

in general operations on distributed finite state machine wont commute such node should apply operations in order. implies node needs able distinguish between 2 cases. if failed rounds of proposals node has no problems. if lost messages suggests node should wait till turn else seek recover lost info (e.g. request snapshot reinitialise , catchup).

what options or strategies handle , overhead create?

this question inspired in paxos, can acceptor take different value after has accepted one?

i can think of 2 methods deal this.

the simplest approach have node missing +2 , +3 go , seek propose no-ops in slots. if there decisions there, node larn info in prepare round. otherwise, no-ops decided.

another approach have out-of-band re-learning process. may necessary anyway: how node grab if joins scheme after others?

or can utilize combination of both. leader can propose no-ops holes in history, others can utilize re-learning process. how paxos scheme works.

paxos

Comments

Popular posts from this blog

Delphi change the assembly code of a running process -

json - Hibernate and Jackson (java.lang.IllegalStateException: Cannot call sendError() after the response has been committed) -

C++ 11 "class" keyword -