[ 
https://issues.apache.org/jira/browse/GEODE-8955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Owen Nichols closed GEODE-8955.
-------------------------------

> WAN location service uses DistributedLocatorId.toString() to represent a 
> locator
> --------------------------------------------------------------------------------
>
>                 Key: GEODE-8955
>                 URL: https://issues.apache.org/jira/browse/GEODE-8955
>             Project: Geode
>          Issue Type: Improvement
>          Components: wan
>            Reporter: Bruce J Schuchardt
>            Assignee: Mario Kevo
>            Priority: Minor
>              Labels: pull-request-available
>             Fix For: 1.15.0
>
>
> This code in LocatorHelper, and probably code in other parts of the WAN 
> location service, uses DistributionLocatorId.toString() to track whether 
> other locators have the WAN location service available.  It should use the 
> DistributionLocatorId.marshal() method instead.  We should never use the 
> toString() representation of an object in this way as it may change over time.
>  
> {code:java}
> private static void addServerLocator(Integer distributedSystemId,
>     LocatorMembershipListener locatorListener, DistributionLocatorId locator) 
> {
>   ConcurrentHashMap<Integer, Set<String>> allServerLocatorsInfo =
>       (ConcurrentHashMap<Integer, Set<String>>) 
> locatorListener.getAllServerLocatorsInfo();
>   Set<String> locatorsSet = new CopyOnWriteHashSet<String>();
>   locatorsSet.add(locator.toString());
>   Set<String> existingValue = 
> allServerLocatorsInfo.putIfAbsent(distributedSystemId, locatorsSet);
>   if (existingValue != null) {
>     if (!existingValue.contains(locator.toString())) {
>       existingValue.add(locator.toString());
>     }
>   }
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to