You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Bruce J Schuchardt (Jira)" <ji...@apache.org> on 2021/02/17 22:49:00 UTC

[jira] [Created] (GEODE-8951) Unnecessary messaging in WAN locator discovery

Bruce J Schuchardt created GEODE-8951:
-----------------------------------------

             Summary: Unnecessary messaging in WAN locator discovery
                 Key: GEODE-8951
                 URL: https://issues.apache.org/jira/browse/GEODE-8951
             Project: Geode
          Issue Type: Improvement
          Components: wan
    Affects Versions: 1.15.0
            Reporter: Bruce J Schuchardt


While debugging another issue I noticed that a locator was trying to send a notice to another locator in its cluster telling it that the recipient had joined.

 

[warn 2021/02/16 15:16:56.195 PST locatorgemfire_4_3_host2_9736 <LocatorsDistributorThread1> tid=0x153] Locator Membership listener permanently failed to exchange locator information *rs-GEM-3188-VJ1459-1a0i3large-hydra-client-1:27878* with *rs-GEM-3188-VJ1459-1a0i3large-hydra-client-2:28778* after 3 retry attempts

 

This messaging is unnecessary.  The locator that this message was being sent to already knows about itself.   This is being done in _DistributeLocatorsRunnable.run()._ 

 
{code:java}
        for (DistributionLocatorId remoteLocator : entry.getValue()) {
          // Notify known remote locator about the advertised locator.
          LocatorJoinMessage advertiseNewLocatorMessage = new LocatorJoinMessage(
              joiningLocatorDistributedSystemId, joiningLocator, localLocatorId, "");
          sendMessage(remoteLocator, advertiseNewLocatorMessage, failedMessages);

          // Notify the advertised locator about remote known locator.
          LocatorJoinMessage advertiseKnownLocatorMessage =
              new LocatorJoinMessage(entry.getKey(), remoteLocator, localLocatorId, "");
          sendMessage(joiningLocator, advertiseKnownLocatorMessage, failedMessages);
        }
{code}
It should check to see if the joiningLocator ID is equal to the remoteLocator ID and, if so, not create messages in that iteration.



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