Губительная ошибка при запуске jinfo и jmap

Когда я запускаю jinfo или jmap для любого процесса Java, он "приостанавливает" процесс Java. Это 100% воспроизводится для длительных процессов.

Вот подробные шаги:

  1. Выберите процесс Java, который выполняется более 25 дней (он проводной, потому что он не работает для новых процессов).
  2. Запустите ps, чтобы проверить состояние процесса, должно быть "Sl", что ожидается.
  3. Запустите jinfo или jmap для этого процесса (BTY, у jstack нет этой проблемы).
  4. Запустите ps, чтобы проверить состояние процесса. На этот раз он меняется на "Tl", что означает "ОСТАНОВЛЕНО", и процесс не отвечает ни на какие запросы.

Вот результат нашего процесса:

[work @ hadoop ~] $ ps aux | grep "qktst" | grep "RegionServer" работа 36663  0,1  1,7 24157828 1150820?    Sl   Aug06  72:54 /opt/soft/jdk/bin/java -cp /home/work/app/hbase/qktst-qk/regionserver/:/home/work/app/hbase/qktst-qk/regionserver/package//:/home/work/app/hbase/qktst-qk/regionserver/package//lib/*:/home/work/app/hbase/qktst-qk/regionserver/package//* -Djava.library.path=:/home/work/app/hbase/qktst-qk/regionserver/package/lib/native/:/home/work/app/hbase/qktst-qk/regionserver/package/lib/native/Linux-amd64-64 -Xbootclasspath/p:/home/work/app/hbase/qktst-qk/regionserver/package/lib/hadoop-security-2.0.0-mdh1.1.0.jar -Xmx10240m -Xms10240m -Xmn1024m -XX:MaxDirectMemorySize=1024m MaxPermSize=512 м work/app/hbase/qktst-qk/regionserver/log -XX:+PrintGCApplicationStoppedTime -XX:+UseConcMarkSweepGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:SurvivorRatio=6 -XCXC::CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSParallelRemarkEnabled -XX:+UseNUMA -XX:+CMSClassUnloadingEnabled -XX:CMSMaxAbortablePrecleanTime: =128m -XX:CMSWaitDuration=2000 -XX:+CMSScavengeBeforeRemark -XX:+PrintPromotionFailure -XX:ConcGCThreads=16 -XX:ParallelGCThreads=16 -XX:PretenureSizeThreshold=2097088 -XX:+CMSConcurrentXXX: +XX: +XXX: -XXNurxXX:: SafepointTimeout -XX:MonitorBound=16384 -XX:-UseBiasedLocking -XX:MaxTenuringThreshold=3 -Dproc_regionserver -Djava.security.auth.login.config=/home/work/app/hbase/qktst-qk/regionserver/jaas.con Djava.net.preferIPv4Stack=true -Dhbase.log.dir=/home/work/app/hbase/qktst-qk/regionserver/log -Dhbase.pid=36663 -Dhbase.cluster=qktst-qk -Dhbase.log.level=debug -Dhbase.policy.file=hbase-policy.xml -Dhbase.home.dir=/home/work/app/hbase/qktst-qk/regionserver/package -Djava.security.krb5.conf=/home/work/app/hbase/qktst-qk/regionserver/krb5.conf -Dhbase.id.str=work org.apache.hadoop.hbase.regionserver.HRegionServer start
[work@hadoop ~]$ jinfo 36663 > tobe.jinfo Прикрепление к идентификатор процесса 36663, пожалуйста, подождите... Отладчик успешно подключен. Компилятор сервера обнаружен. Версия JVM - 20.12-b01
[work@hadoop ~]$ ps aux |grep "qktst" |grep "RegionServer" работа 36663  0,1  1,7 24157828 1151008?    TL Aug06 72:54 / opt / soft / jdk / bin / java -cp / home / work / app / hbase / qktst-qk / regionserver /: / home / work / app / hbase / qktst-qk / regionserver / package / /: / home / work / app / hbase / qktst-qk / regionserver / package // lib / *: / home / work / app / hbase / qktst-qk / regionserver / package // * -Djava.library.path =: / home / work / app / hbase / qktst-qk / regionserver / package / lib / native /: / home / work / app / hbase / qktst-qk / regionserver / package / lib / native / Linux-amd64-64 - Xbootclasspath / p: /home/work/app/hbase/qktst-qk/regionserver/package/lib/hadoop-security-2.0.0-mdh1.1.0.jar -Xmx10240m -Xms10240m -Xmn1024m -XX: MaxDirectMemorySize = 1024m MaxPermSize=512 м work/app/hbase/qktst-qk/regionserver/log -XX:+PrintGCApplicationStoppedTime -XX:+UseConcMarkSweepGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:SurvivorRatio=6 -XCXC::CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSParallelRemarkEnabled -XX:+UseNUMA -XX:+CMSClassUnloadingEnabled -XX:CMSMaxAbortablePrecleanTime: =128m -XX:CMSWaitDuration=2000 -XX:+CMSScavengeBeforeRemark -XX:+PrintPromotionFailure -XX:ConcGCThreads=16 -XX:ParallelGCThreads=16 -XX:PretenureSizeThreshold=2097088 -XX:+CMSConcurrentXXX: +XX: +XXX: -XXNurxXX:: SafepointTimeout -XX:MonitorBound=16384 -XX:-UseBiasedLocking -XX:MaxTenuringThreshold=3 -Dproc_regionserver -Djava.security.auth.login.config=/home/work/app/hbase/qktst-qk/regionserver/jaas.con Djava.net.preferIPv4Stack = true -Dhbase.log.dir = / home / work / app / hbase / qktst-qk / regionserver / log -Dhbase.pid = 36663 -Dhbase.cluster = qktst-qk -Dhbase.log.level = debug -Dhbase.policy.file = hbase-policy.xml -Dhbase.home.dir = / home / work / app / hbase / qktst-qk / regionserver / package -Djava.security.krb5.conf = / home / wo rk / app / hbase / qktst-qk / regionserver / krb5.conf -Dhbase.id.str = работа org.apache.hadoop.hbase.regionserver.HRegionServer start

Это может быть ошибкой JVM, но я не получаю никакого ответа после того, как сообщил об этом оракулу. Поэтому я надеюсь, что некоторые эксперты JVM здесь могут помочь.

$ java-версия
Java-версия "1.6.0_37"
Java (TM) SE Runtime Environment (сборка 1.6.0_37-b06)
Java HotSpot (ТМ) 64-разрядный сервер ВМ (сборка 20.12-b01, смешанный режим)

0 ответов

Другие вопросы по тегам