This is an automated email from the ASF dual-hosted git repository.

bschuchardt pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new 74d8c04  GEODE-5780: remove LoggingThreadGroup
74d8c04 is described below

commit 74d8c043d198dcdb4420d7757217f5a09621ec03
Author: Bruce Schuchardt <[email protected]>
AuthorDate: Mon Oct 8 10:06:59 2018 -0700

    GEODE-5780: remove LoggingThreadGroup
    
    Fixed up the PluckStacks expected-thread utility for new
    LoggingThread & associated classes, plus the recently added
    ThreadsMonitor thread.
---
 .../apache/geode/internal/util/PluckStacks.java    | 30 +++++++++++-----------
 1 file changed, 15 insertions(+), 15 deletions(-)

diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/util/PluckStacks.java 
b/geode-core/src/main/java/org/apache/geode/internal/util/PluckStacks.java
index 00dc18a..4663436 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/util/PluckStacks.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/util/PluckStacks.java
@@ -238,7 +238,7 @@ public class PluckStacks {
       return isIdleExecutor(thread);
     }
     if (threadName.startsWith("Geode Failure Detection Server")) {
-      return stackSize < 11 && thread.getFirstFrame().contains("socketAccept");
+      return stackSize < 12 && thread.getFirstFrame().contains("socketAccept");
     }
     if (threadName.startsWith("Geode Membership Timer")) {
       // System.out.println("gf timer stack size = " + stackSize + "; frame = 
" + thread.get(1));
@@ -345,10 +345,10 @@ public class PluckStacks {
       return !thread.isRunnable() && stackSize <= 6;
     }
     if (threadName.startsWith("Replicate/Partition Region Garbage Collector")) 
{
-      return !thread.isRunnable() && (stackSize <= 7);
+      return !thread.isRunnable() && (stackSize <= 9);
     }
     if (threadName.startsWith("Non-replicate Region Garbage Collector")) {
-      return !thread.isRunnable() && (stackSize <= 7);
+      return !thread.isRunnable() && (stackSize <= 9);
     }
     if (threadName.equals("GemFire Time Service")) {
       return !thread.isRunnable();
@@ -419,6 +419,9 @@ public class PluckStacks {
     if (threadName.startsWith("ThresholdEventProcessor")) {
       return isIdleExecutor(thread);
     }
+    if (threadName.startsWith("ThreadsMonitor") && 
thread.getFirstFrame().contains("Object.wait")) {
+      return true;
+    }
     if (threadName.startsWith("Timer-")) {
       if (thread.isRunnable())
         return true;
@@ -444,21 +447,18 @@ public class PluckStacks {
 
 
   boolean isIdleExecutor(ThreadStack thread) {
-    if (thread.isRunnable())
+    if (thread.isRunnable()) {
       return false;
+    }
     int size = thread.size();
-    if (size > 8 && thread.get(7).contains("DMStats.take"))
+    if (size > 8 && thread.get(7).contains("DMStats.take")) {
       return true;
-    if (size > 3 && thread.get(size - 3).contains("getTask"))
-      return true; // locator request thread
-    if (size > 4 && thread.get(size - 4).contains("getTask"))
-      return true; // most executors match this
-    if (size > 5 && thread.get(size - 5).contains("getTask"))
-      return true; // View Message Processor
-    if (size > 6 && thread.get(size - 6).contains("getTask"))
-      return true; // View Message Processor
-    if (size > 7 && thread.get(size - 7).contains("getTask"))
-      return true; // View Message Processor
+    }
+    for (int i = 3; i < 12; i++) {
+      if (size > i && thread.get(size - i).contains("getTask")) {
+        return true;
+      }
+    }
     return false;
   }
 

Reply via email to