[ 
https://issues.apache.org/jira/browse/GEODE-8955?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17507778#comment-17507778
 ] 

ASF subversion and git services commented on GEODE-8955:
--------------------------------------------------------

Commit fb5c9c197226b705cf049bbe561e35d197dcf57e in geode's branch 
refs/heads/develop from Jacob Barrett
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=fb5c9c1 ]

GEODE-10127: Reverts changes from GEODE-8955. (#7450)

Reverts 516bdc9322e1068c14e901879a7fb4afeac9b181

The change from toString to marshal results in the loss of hostname-for-clients 
or bind-address as the name sent remotely.

> 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.1#820001)

Reply via email to