private Set<ServerName> getNotFullyDeadServers(MasterServices services) {
    List<ServerName> onlineServers = services.getServerManager().getOnlineServersList();
    return Stream.concat(onlineServers.stream(),
      services.getMasterProcedureExecutor().getProcedures().stream()
        .filter(p -> p instanceof ServerCrashProcedure).filter(p -> !p.isFinished())
        .map(p -> ((ServerCrashProcedure) p).getServerName()))
      .collect(Collectors.toSet());
  }
Implementation of a log cleaner that checks if a log is still scheduled for replication before
deleting it when its TTL is over.
<p/>
The logic is a bit complicated after we switch to use table based replication queue storage, see
the design doc in HBASE-27109 and the comments in HBASE-27214 for more details.
hbase-server/src/main/java/org/apache/hadoop/hbase/replication/master/ReplicationLogCleaner.java