GitHub user shanthoosh opened a pull request: https://github.com/apache/samza/pull/416
SAMZA-1568: Handle ZkInterruptedException in zkclient.close. When zookeeper session failures occur in a stream processor, leaves the group(zkClient is closed) and joins the group again. The last step in that shutdown sequence is zkClient.close(). In some scenarios, it throws the following exception, org.I0Itec.zkclient.exception.ZkInterruptedException: java.lang.InterruptedException at org.I0Itec.zkclient.ZkClient.close(ZkClient.java:1278) at org.apache.samza.zk.ZkControllerImpl.stop(ZkControllerImpl.java:92) at org.apache.samza.zk.ZkJobCoordinator.stop(ZkJobCoordinator.java:141) In existing implementation this is not handled, there by killing the stream processor. The following codepath triggers this exception: `StreamProcessor.stop -> ZkJobCoordinator.stop() -> zkController.stop() -> zkUtils.close` This exception causes the integration test to fail occasionally and can cause LocalApplicationRunner.waitForFinish method call to block indefinitely(since this callback event success, updates the latch state required for waitForFinish to end). You can merge this pull request into a Git repository by running: $ git pull https://github.com/shanthoosh/samza zk_utils_close Alternatively you can review and apply these changes as the patch at: https://github.com/apache/samza/pull/416.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #416 ---- commit 2542a0ad1bee19927761eaf0171a6f637f21ac3a Author: Shanthoosh Venkataraman <svenkataraman@...> Date: 2018-01-25T19:44:55Z SAMZA-1568: Handle ZkInterruptedException in zkclient.close. ---- ---