@Override
    public void handleSessionEstablishmentError(Throwable error) {
      // this means we cannot connect to zookeeper to establish a session
      zkSessionMetrics.zkSessionErrors.inc();
      LOG.info("handleSessionEstablishmentError received for processor=" + processorId, error);
      debounceTimer.scheduleAfterDebounceTime(ZK_SESSION_ERROR, 0, () -> stop());
    }
After this event, one amongst the following two things could potentially happen:
A. On successful reconnect to another zookeeper server in ensemble, this processor is going to
join the group again as new processor. In this case, retaining buffered events in debounceTimer will be unnecessary.
B. If zookeeper server is unreachable, handleSessionEstablishmentError callback will be triggered indicating
a error scenario. In this case, retaining buffered events in debounceTimer will be unnecessary.
samza-core/src/main/java/org/apache/samza/zk/ZkJobCoordinator.java