jchen21 commented on a change in pull request #6051:
URL: https://github.com/apache/geode/pull/6051#discussion_r582416387
##########
File path:
geode-core/src/main/java/org/apache/geode/internal/cache/DistributedCacheOperation.java
##########
@@ -1107,6 +1107,10 @@ protected void process(final ClusterDistributionManager
dm) {
final LocalRegion lclRgn = getLocalRegionForProcessing(dm);
sendReply = false;
+ if (lclRgn != null && lclRgn.getScope().isDistributedNoAck()) {
+ dm.getExecutors().getWaitingThreadPool().execute(() ->
basicProcess(dm, lclRgn));
Review comment:
I have the same concern. When a thread runs, if it throws an exception
that is not caught, then that exception will just silently kill the thread.
This can make it very hard to diagnose what is happening. The current thread
has a few `catch` blocks and a `finally` block (line 1115-1147). If the newly
spawned thread does not have the `catch` and `finally` blocks, I would like to
understand why.
Another question is why use `getWaitingThreadPool()` and not the other
pool, e.g. `getThreadPool()`?
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]