Hi, We use zookeeper 3.3.5 >From the output of one of our integration tests:
[org.apache.zookeeper.ClientCnxn] [WARN] Session 0x1367bfbdcae0006 for server null, unexpected error, closing socket connection and attempting reconnect java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:567) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1143) [org.apache.zookeeper.ClientCnxn] [INFO] Opening socket connection to server localhost/127.0.0.1:21818 [org.apache.zookeeper.ClientCnxn] [WARN] Session 0x1367bfbdcae0006 for server null, unexpected error, closing socket connection and attempting reconnect java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:567) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1143) [org.apache.hadoop.hbase.regionserver.Leases] [INFO] RegionServer:0;localhost,39260,1333519967365.leaseChecker closing leases [org.apache.hadoop.hbase.regionserver.Leases] [INFO] RegionServer:0;localhost,39260,1333519967365.leaseChecker closed leases [org.apache.zookeeper.ClientCnxn] [INFO] Opening socket connection to server localhost/127.0.0.1:21818 [org.apache.zookeeper.ClientCnxn] [WARN] Session 0x1367bfbdcae0006 for server null, unexpected error, closing socket connection and attempting reconnect java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:567) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1143) ------ In jstack I saw: "main-EventThread" daemon prio=10 tid=0x00007fd8a428e800 nid=0x3b1f waiting on condition [0x00007fd89e4a3000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000000eb569b10> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:498) "main-SendThread(localhost:21818)" daemon prio=10 tid=0x00007fd8a454b000 nid=0x3b1e waiting on condition [0x00007fd89eaa9000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1045) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1101) My question is: should ConnectException be handled in the catch block of ClientCnxn (around line 1183) ? Cheers
