HDFS-17832. TestNameNodeResourceChecker fails with Java 24 (#7962). Contributed by Istvan Toth.

Signed-off-by: Shilun Fan <slfan1989@apache.org>
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeResourceChecker.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeResourceChecker.java
index 4e4b7b0..764de3f 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeResourceChecker.java
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeResourceChecker.java
@@ -27,6 +27,7 @@
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
+import java.util.regex.Pattern;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
@@ -109,7 +110,7 @@ public void testCheckThatNameNodeResourceMonitorIsRunning()
       boolean isNameNodeMonitorRunning = false;
       Set<Thread> runningThreads = Thread.getAllStackTraces().keySet();
       for (Thread runningThread : runningThreads) {
-        if (runningThread.toString().startsWith("Thread[" + name)) {
+        if (runningThread.toString().matches("Thread\\[(#\\d+,)?" + Pattern.quote(name) + ".*")) {
           isNameNodeMonitorRunning = true;
           break;
         }