zrlw commented on a change in pull request #8701:
URL: https://github.com/apache/dubbo/pull/8701#discussion_r712651258
##########
File path:
dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryDirectory.java
##########
@@ -222,7 +223,14 @@ private void refreshInvoker(List<URL> invokerUrls) {
if (invokerUrls.isEmpty()) {
return;
}
- Map<URL, Invoker<T>> newUrlInvokerMap = toInvokers(invokerUrls);//
Translate url list to Invoker map
+
+ // can't use local reference because this.urlInvokerMap might be
accessed at isAvailable() by main thread concurrently.
+ Map<URL, Invoker<T>> oldUrlInvokerMap = null;
+ if (this.urlInvokerMap != null) {
+ oldUrlInvokerMap = new
LinkedHashMap<>(this.urlInvokerMap.size());
Review comment:
do you mean setting the initial capacity greater than the maximum number
of entries divided by the load factor (default: 0.75) to avoid rehash
operations?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]