Details
-
Sub-task
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
1. I have a question about the following piece of code in QCM:
if (remoteSid == QuorumPeer.OBSERVER_ID) {
/* * Choose identifier at random. We need a value to identify * the connection. */
remoteSid = observerCounter--;
LOG.info("Setting arbitrary identifier to observer: " + remoteSid);
}
Should we allow this? The problem with this code is that if a peer
connects twice with QuorumPeer.OBSERVER_ID, we will end up creating
threads for this peer twice. This could result in redundant
SendWorker/RecvWorker threads.
I haven't used observers yet. The documentation
http://hadoop.apache.org/zookeeper/docs/r3.3.0/zookeeperObservers.html
says that just like followers, observers should have server IDs. In
which case, why do we want to provide a wild-card?
Attachments
Issue Links
- is duplicated by
-
ZOOKEEPER-991 QuoromPeer.OBSERVER_ID
- Open