Hi, We (twitter) zookeeper cluster ( based on 3.4.x) recently encountered a
prolonged leader election downtime because of the lead machine was accidentally
wiped. After looking at the logs, we noticed that the observer was trying to
connect to the wrong leader for a prolonged time. The specific bug of taking
too long to connect to the lead was fixed in the trunk. However, I wonder why
should the observer accept the lead sid when the notifications that it get are
all from the “LOOKING” quorum machine? The election algorithm (lookForLeader)
seems to be same for the observer or participants. Is that on purpose? Would it
be good to have a specific observer logic to only act on notifications from
“LEADING” and “FOLLOWING” machine? Thanks.