code: private void updateClusterRoot()
    {
      ArrayList<ServerHeartbeat> serverList = new ArrayList<>();
      
      for (ServerHeartbeat server : _serverSelf.getCluster().getServers()) {
        serverList.add(server);
      }
      
      Collections.sort(serverList, (x,y)->compareClusterRoot(x,y));
      
      UpdatePodBuilder builder = new UpdatePodBuilder();
      builder.name("cluster_root");
      builder.cluster(_serverSelf.getCluster());
      builder.type(PodType.solo);
      builder.depth(16);
      
      for (ServerHeartbeat server : serverList) {
        builder.server(server.getAddress(), server.port());
      }
      
      long sequence = CurrentTime.currentTime();
      
      sequence = Math.max(sequence, _clusterRoot.getSequence() + 1);
      
      builder.sequence(sequence);
  
      UpdatePod update = builder.build();
      
      updatePodProxy(update);
    }
docs: Compare and merge the cluster_root with an update.
  
  cluster_root is a special case because the root cluster decides on
  the owning server for the entire cluster.