docs: public static boolean makePPDDecision(int thisHostId, Set<Integer> previousHosts, Set<Integer> currentHosts, boolean pdEnabled) {
  
          String logLine = String.format("Partition Detection at host %d code sees current hosts [%s] and previous hosts [%s]",
                  thisHostId,
                  StringUtils.join(currentHosts, ','),
                  StringUtils.join(previousHosts, ','));
          tmLog.info(logLine);
  
          // A strict, viable minority is always a partition.
          if ((currentHosts.size() * 2) < previousHosts.size()) {
              if (pdEnabled) {
                  tmLog.fatal("It's possible a network partition has split the cluster into multiple viable clusters. "
                          + "Current cluster contains fewer than half of the previous servers. "
                          + "Shutting down to avoid multiple copies of the database running independently.");
                  return true; // partition detection triggered
              }
              else {
                  tmLog.warn("It's possible a network partition has split the cluster into multiple viable clusters. "
                          + "Current cluster contains fewer than half of the previous servers. "
                          + "Continuing because network partition detection is disabled, but there "
                          + "is significant danger that multiple copies of the database are running "
                          + "independently.");
                  return false; // partition detection not triggered
              }
          }
  
          // Exact 50-50 splits. The set with the lowest survivor host doesn't trigger PPD
          // If the blessed host is in the failure set, this set is not blessed.
          if (currentHosts.size() * 2 == previousHosts.size()) {
              if (pdEnabled) {
                  // find the lowest hostId between the still-alive hosts and the
                  // failed hosts. Which set contains the lowest hostId?
                  // This should be all the pre-partition hosts IDs.  Any new host IDs
                  // (say, if this was triggered by rejoin), will be greater than any surviving
                  // host ID, so don't worry about including it in this search.
                  if (currentHosts.contains(Collections.min(previousHosts))) {
                      tmLog.info("It's possible a network partition has split the cluster into multiple viable clusters. "
                              + "Current cluster contains half of the previous servers, "
                              + "including the \"tie-breaker\" node. Continuing.");
                      return false; // partition detection not triggered
                  }
                  else {
                      tmLog.fatal("It's possible a network partition has split the cluster into multiple viable clusters. "
                              + "Current cluster contains exactly half of the previous servers, but does "
                              + "not include the \"tie-breaker\" node. "
                              + "Shutting down to avoid multiple copies of the database running independently.");
                      return true; // partition detection triggered
                  }
              }
              else {
                  // 50/50 split. We don't care about tie-breakers for this error message
                  tmLog.warn("It's possible a network partition has split the cluster into multiple viable clusters. "
                          + "Current cluster contains exactly half of the previous servers. "
                          + "Continuing because network partition detection is disabled, "
                          + "but there is significant danger that multiple copies of the "
                          + "database are running independently.");
                  return false; // partition detection not triggered
              }
          }
  
          // info message will be printed on every failure that isn't handled above (most cases)
          tmLog.info("It's possible a network partition has split the cluster into multiple viable clusters. "
                  + "Current cluster contains a majority of the prevous servers and is safe. Continuing.");
          return false; // partition detection not triggered
      }