@Override
  public void waitBootstrapCompleted(String partitionName) throws InterruptedException {
    CountDownLatch latch = partitionToBootstrapLatch.get(partitionName);
    if (latch == null) {
      logger.info("Skipping bootstrap for existing partition {}", partitionName);
    } else {
      logger.info("Waiting for new partition {} to complete bootstrap", partitionName);
      latch.await();
      partitionToBootstrapLatch.remove(partitionName);
      if (!partitionToBootstrapSuccess.remove(partitionName)) {
        throw new StateTransitionException("Partition " + partitionName + " failed to bootstrap.", BootstrapFailure);
      }
      logger.info("Bootstrap is complete on partition {}", partitionName);
    }
  }
{@inheritDoc}
The method is blocked on a {@link java.util.concurrent.CountDownLatch} until the bootstrap is complete
ambry-clustermap/src/main/java/com/github/ambry/clustermap/AmbryReplicaSyncUpManager.java