private boolean attemptToSendDestroyRegionMessage(RegionEventImpl event, int[] serials) {
    if (getPRRoot() == null) {
      if (logger.isDebugEnabled()) {
        logger.debug(
            "Partition region {} failed to initialize. Remove its profile from remote members.",
            this);
      }
      new UpdateAttributesProcessor(this, true).distribute(false);
      return false;
    }
    final HashSet configRecipients = new HashSet(getRegionAdvisor().adviseAllPRNodes());

    // It's possible this instance has not been initialized
    // or hasn't gotten through initialize() far enough to have
    // sent a CreateRegionProcessor message, bug 36048
    try {
      final PartitionRegionConfig prConfig = getPRRoot().get(getRegionIdentifier());

      if (prConfig != null) {
        // Fix for bug#34621 by Tushar
        for (final Node value : prConfig.getNodes()) {
          InternalDistributedMember idm = value.getMemberId();
          if (!idm.equals(getMyId())) {
            configRecipients.add(idm);
          }
        }
      }
    } catch (CancelException ignore) {
      // ignore
    }

    try {
      DestroyPartitionedRegionResponse resp =
          DestroyPartitionedRegionMessage.send(configRecipients, this, event, serials);
      resp.waitForRepliesUninterruptibly();
    } catch (ReplyException e) {
      if (e.getRootCause() instanceof ForceReattemptException) {
        return true;
      }
      logger.warn(
          "PartitionedRegion#sendDestroyRegionMessage: Caught exception during DestroyRegionMessage send and waiting for response",
          e);
    }
    return false;
  }
Sends the partitioned region specific destroy region message and waits for any responses. This
message is also sent in close/localDestroyRegion operation. When it is sent in Cache
close/Region close/localDestroyRegion operations, it results in updating of RegionAdvisor on
recipient nodes.

@param event the destruction event
@param serials the bucket serials hosted locally
@see Region#destroyRegion()
@see Region#close()
@see Region#localDestroyRegion()
@see GemFireCacheImpl#close()
geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java