We're using ZK 3.5.3-beta.
When using literal IPv6 addresses in the zoo.cfg.dynamic file, ZK fails to come up with the connection to the peer ZKs keeps getting reset.
zookeeper.log indicates a badly formed address is the cause.
Our zoo.cfg.dynamic uses literal IPv6 addresses which according to
ZOOKEEPER-1460 is supported.
Digging into QuorumCnxManager.java, InitialMessage.parse attemps to seperate the host portion from the port portion using ":" as a delimeter, which is a problem for IPv6 IPs. And there's this comment:
So it looks like peers address:port is failing to be parsed if they are specified as literal IPv6 addresses. To confirm a workaround, I replaced my zoo.cfg.dynamic with hostnames instead, and everything worked as expected.