List<ReplicaId> findStarvedReplicas() {
    //TODO: Persist Hydration Start Time on Disks For Replicas in Case Of Restarts
    List<ReplicaId> replicasToDropFromHydration = new ArrayList<>();
    for (ReplicaId replica : replicaToStartTimeMap.keySet()) {
      if (replicaToStartTimeMap.get(replica) != null
          && System.currentTimeMillis() / 1000 - replicaToStartTimeMap.get(replica)
          > fileCopyBasedReplicationConfig.fileCopyReplicaTimeoutSecs) {

        logger.info("Replica: {} is starved for hydration. Time since start: {} seconds",
            replica.getPartitionId().toPathString(),
            System.currentTimeMillis() / 1000 - replicaToStartTimeMap.get(replica));
        replicasToDropFromHydration.add(replica);
      }
    }
    return replicasToDropFromHydration;
  }
Find the replicas that are starved for hydration. Return a list of Replicas
which are stuck in hydration for more than the configured values.
@return the list of {@link ReplicaId} that are starved for hydration.
ambry-file-transfer/src/main/java/com/github/ambry/filetransfer/FileCopyBasedReplicationSchedulerImpl.java