Eric Shu created GEODE-9598:
-------------------------------

             Summary: processEventAndDeliverConflatable in 
clientRegistrationEventQueueManager unnecessarily adds same client routing 
information to the existing HAEventWrapper 
                 Key: GEODE-9598
                 URL: https://issues.apache.org/jira/browse/GEODE-9598
             Project: Geode
          Issue Type: Bug
          Components: client queues
            Reporter: Eric Shu


In processEventAndDeliverConflatable method, following code is executed.

{code:java}
          if (filterRoutingInfo != null) {
            FilterRoutingInfo.FilterInfo filterInfo = 
filterRoutingInfo.getLocalFilterInfo();

            if (filterInfo != null) {
              ClientUpdateMessageImpl clientUpdateMessage = conflatable 
instanceof HAEventWrapper
                  ? (ClientUpdateMessageImpl) ((HAEventWrapper) conflatable)
                      .getClientUpdateMessage()
                  : (ClientUpdateMessageImpl) conflatable;

              internalCacheEvent.setLocalFilterInfo(filterInfo);

              Set<ClientProxyMembershipID> newFilterClientIDs =
                  cacheClientNotifier.getFilterClientIDs(internalCacheEvent, 
filterProfile,
                      filterInfo,
                      clientUpdateMessage);
{code}

In cacheClientNotifier.getFilterClientIDs method, each client information is 
added again to the HAEventWrapper. It is unnecessary. Instead, it should only 
find the client this cacheClientProxy is for, and only add that client info 
into the HAEventWrapper.




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

Reply via email to