Github user paul-rogers commented on a diff in the pull request:
https://github.com/apache/drill/pull/925#discussion_r137938116
--- Diff:
exec/rpc/src/main/java/org/apache/drill/exec/rpc/RequestIdMap.java ---
@@ -54,10 +52,14 @@ void channelClosed(Throwable ex) {
isOpen.set(false);
if (ex != null) {
final RpcException e = RpcException.mapException(ex);
+ IntObjectHashMap<RpcOutcome<?>> clonedMap;
synchronized (map) {
- map.forEach(new SetExceptionProcedure(e));
+ clonedMap = map.clone();
map.clear();
}
+ if (clonedMap != null) {
--- End diff --
When would `clonedMap` be `null`?
---