@Override
  public Set<ID> getMembersNotShuttingDown() {
    shutdownMembersReadLock.lock();
    try {
      return latestView.getMembers().stream().filter(id -> !shutdownMembers.contains(id))
          .collect(
              Collectors.toSet());
    } finally {
      shutdownMembersReadLock.unlock();
    }
  }
in order to avoid split-brain occurring when a member is shutting down due to race conditions
in view management we add it as a shutdown member when we receive a shutdown message. This is
not the same as a SHUNNED member.
geode-membership/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSMembership.java