Skip to content
Snippets Groups Projects
  • Georgy Moshkin's avatar
    08a9d0a8
    fix: bug in conf_test when demoting excess voters · 08a9d0a8
    Georgy Moshkin authored
    The bug was introduced when I changed the behaviour of conf_change in
    regard to instances with target_state Expelled. As a result we would
    sometimes arbitrarily demote healthy voters in presence of degenerate
    ones.
    
    For example we could have this situation:
    
    instance i1: raft_id=1, target_state=Online, raft_configuration=voter
    instance i2: raft_id=2, target_state=Expelled, raft_configuration=voter (!)
    instance i3: raft_id=3, target_state=Offline, raft_configuration=voter (!)
    instance i4: raft_id=4, target_state=Online, raft_configuration=learner (!)
    instance i5: raft_id=5, target_state=Online, raft_configuration=learner (!)
    08a9d0a8
    History
    fix: bug in conf_test when demoting excess voters
    Georgy Moshkin authored
    The bug was introduced when I changed the behaviour of conf_change in
    regard to instances with target_state Expelled. As a result we would
    sometimes arbitrarily demote healthy voters in presence of degenerate
    ones.
    
    For example we could have this situation:
    
    instance i1: raft_id=1, target_state=Online, raft_configuration=voter
    instance i2: raft_id=2, target_state=Expelled, raft_configuration=voter (!)
    instance i3: raft_id=3, target_state=Offline, raft_configuration=voter (!)
    instance i4: raft_id=4, target_state=Online, raft_configuration=learner (!)
    instance i5: raft_id=5, target_state=Online, raft_configuration=learner (!)