You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Nabarun Nag (Jira)" <ji...@apache.org> on 2020/06/16 19:03:00 UTC

[jira] [Created] (GEODE-8261) Do not add proxyID to client interest list if it is null

Nabarun Nag created GEODE-8261:
----------------------------------

             Summary: Do not add proxyID to client interest list if it is null
                 Key: GEODE-8261
                 URL: https://issues.apache.org/jira/browse/GEODE-8261
             Project: Geode
          Issue Type: Task
          Components: client queues
            Reporter: Nabarun Nag


* Sometime during shutdown proxyIDs can be nullĀ 
 * Attempting to add this null value to data structures can cause NPE. For example the below mentioned code snippets may cause NPE if proxyID is null.

{code:java}
protected void addClientCQsAndInterestList(ClientUpdateMessageImpl msg,
      HAEventWrapper haEventWrapper, Map haContainer, String regionName) {    ClientProxyMembershipID proxyID = ((HAContainerWrapper) haContainer).getProxyID(regionName);
    if (proxyID != null) {
      if (haEventWrapper.getClientCqs() != null) {
        CqNameToOp clientCQ = haEventWrapper.getClientCqs().get(proxyID);
        if (clientCQ != null) {
          msg.addClientCqs(proxyID, clientCQ);
        }
      }      // This is a remote HAEventWrapper.
      // Add new Interested client lists.
      ClientUpdateMessageImpl clientMsg =
          (ClientUpdateMessageImpl) haEventWrapper.getClientUpdateMessage();
      if (clientMsg != null) {
        if (clientMsg.isClientInterestedInUpdates(proxyID)) {
          msg.addClientInterestList(proxyID, true);
        } else if (clientMsg.isClientInterestedInInvalidates(proxyID)) {
          msg.addClientInterestList(proxyID, false);
        }
      }
    }
  }

{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)