void initiate() { // capture currentNonDurableLastAddConfirmed // remember that we are inside OrderedExecutor, this induces a strict ordering // on the sequence of events this.currentNonDurableLastAddConfirmed = lh.pendingAddsSequenceHead; if (LOG.isDebugEnabled()) { LOG.debug("force {} clientNonDurableLac {}", lh.ledgerId, currentNonDurableLastAddConfirmed); } // we need to send the request to every bookie in the ensamble this.ackSet = lh.distributionSchedule.getEnsembleAckSet(); DistributionSchedule.WriteSet writeSet = lh.getDistributionSchedule() .getEnsembleSet(currentNonDurableLastAddConfirmed); try { for (int i = 0; i < writeSet.size(); i++) { sendForceLedgerRequest(writeSet.get(i)); } } finally { writeSet.recycle(); } }