@Override
  public void logWaitingForMembers() {
    // We only log the bucket level information at fine level.
    if (logger.isDebugEnabled(LogMarker.PERSIST_ADVISOR_VERBOSE)) {
      Set<String> membersToWaitForPrettyFormat = new HashSet<>();

      if (offlineMembersWaitingFor != null && !offlineMembersWaitingFor.isEmpty()) {
        TransformUtils.transform(offlineMembersWaitingFor, membersToWaitForPrettyFormat,
            TransformUtils.persistentMemberIdToLogEntryTransformer);
        logger.debug(LogMarker.PERSIST_ADVISOR_VERBOSE,
            "Region {}, bucket {} has potentially stale data.  It is waiting for another member to recover the latest data.My persistent id: {} Members with potentially new data:{}  Use the gfsh show missing-disk-stores command to see all disk stores that are being waited on by other members.",
            proxyBucket.getPartitionedRegion().getFullPath(), proxyBucket.getBucketId(),
            TransformUtils.persistentMemberIdToLogEntryTransformer.transform(getPersistentID()),
            membersToWaitForPrettyFormat);
      } else {
        TransformUtils.transform(allMembersWaitingFor, membersToWaitForPrettyFormat,
            TransformUtils.persistentMemberIdToLogEntryTransformer);
        if (logger.isDebugEnabled()) {
          logger.debug(LogMarker.PERSIST_ADVISOR_VERBOSE,
              "All persistent members being waited on are online, but they have not yet initialized");
        }
        logger.debug(LogMarker.PERSIST_ADVISOR_VERBOSE,
            "Region {}, bucket {} has potentially stale data.  It is waiting for another member to recover the latest data. My persistent id: {} Members with potentially new data:{}  Use the gfsh show missing-disk-stores command to see all disk stores that are being waited on by other members.",
            proxyBucket.getPartitionedRegion().getFullPath(), proxyBucket.getBucketId(),
            TransformUtils.persistentMemberIdToLogEntryTransformer.transform(getPersistentID()),
            membersToWaitForPrettyFormat);
      }
    }
  }
A listener to watch for removes during the recovery process. After recovery is done, we know
longer need to worry about removes.
geode-core/src/main/java/org/apache/geode/internal/cache/BucketPersistenceAdvisor.java