Github user Randgalt commented on a diff in the pull request: https://github.com/apache/zookeeper/pull/377#discussion_r163746348 --- Diff: src/java/main/org/apache/zookeeper/server/ZooKeeperServer.java --- @@ -476,9 +474,12 @@ public ZooKeeperServerListener getZooKeeperServerListener() { return listener; } + // Visible for testing + static volatile int serverId = 1; --- End diff -- Here's the issue @phunt - `serverId` is consumed by `ZooKeeperServer.createSessionTracker()`. For tests, the ZooKeeperServer is created by the **static** method `ClientBase.startServerInstance()`. So, _I'm_ the person down the road that has to deal with the static method created long ago. It would take significant re-write for `ClientBase.startServerInstance()` to be non-static and parameterized.
---