@Override
  public void started(ServerName sn) {
    Put put =
      new Put(Bytes.toBytes(sn.getServerName())).addColumn(MasterRegionFactory.REGION_SERVER_FAMILY,
        HConstants.STATE_QUALIFIER, Bytes.toBytes(ServerState.ONLINE.name()));
    try {
      region.update(r -> r.put(put));
    } catch (IOException e) {
      LOG.error(HBaseMarkers.FATAL, "Failed to record region server {} as started, aborting...", sn,
        e);
      abortable.abort("Failed to record region server as started");
      throw new UncheckedIOException(e);
    }
  }
{@link MasterRegion} based {@link RegionServerList}.
<p/>
This is useful when we want to restart a cluster with only the data on file system, as when
restarting, we need to get the previous live region servers for scheduling SCP. Before we have
this class, we need to scan the WAL directory on WAL file system to find out the previous live
region servers, which means we can not restart a cluster without the previous WAL file system,
even if we have flushed all the data.
<p/>
Please see HBASE-26245 for more details.
hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRegionServerList.java