Доброго времени суток
Сабж. Есть хост со старой ОСью, старым tomcat, старым jdk.
jmap -heap виснет. При этом jstat и jmap -histo:live работают без проблем. И точно помню, что пару дней назад я запускал jmap -heap и проблем не было
Почему может виснуть jmap -heap ?
-bash-3.00$ ps -ef | grep -i tomcat
crypto 8861 1 0 Jan01 ? 00:14:08 /usr/local/jdk1.6.0_11/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-6.0.35/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xms2560m -Xmx2560m -Dcom.sun.management.jmxremote.port=3333 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -server -Djava.endorsed.dirs=/usr/local/apache-tomcat-6.0.35/endorsed -classpath /usr/local/apache-tomcat-6.0.35/bin/bootstrap.jar -Dcatalina.base=/usr/local/apache-tomcat-6.0.35 -Dcatalina.home=/usr/local/apache-tomcat-6.0.35 -Djava.io.tmpdir=/usr/local/apache-tomcat-6.0.35/temp org.apache.catalina.startup.Bootstrap start
-bash-3.00$ strings /proc/8861/environ | grep JAVA_HOME
JAVA_HOME=/usr/local/jdk1.6.0_11
-bash-3.00$ whoami
crypto
-bash-3.00$ /usr/local/jdk1.6.0_11/bin/jstat -gc 8861 1000 1
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
5312.0 5120.0 2456.0 0.0 280832.0 193075.0 2330176.0 1773049.6 19968.0 19762.6 680 12.905 37 96.056 108.961
-bash-3.00$ /usr/local/jdk1.6.0_11/bin/jstat -gcutil 8861 1000 1
S0 S1 E O P YGC YGCT FGC FGCT GCT
46.24 0.00 68.75 76.09 98.97 680 12.905 37 96.056 108.961
-bash-3.00$ /usr/local/jdk1.6.0_11/bin/jmap -histo:live 8861 | head
num #instances #bytes class name
----------------------------------------------
1: 23630378 1040187088 [C
2: 23949250 574782000 java.lang.String
3: 657782 138057080 [Ljava.lang.Object;
4: 6667 29761440 [B
5: 656623 15758952 java.util.ArrayList
6: 365054 8761296 java.util.HashMap$Entry
7: 41700 4732688 <constMethodKlass>
-bash-3.00$ /usr/local/jdk1.6.0_11/bin/jmap -heap 8861
Attaching to process ID 8861, please wait...
Killed
-bash-3.00$
убил процесс по kill -9 я. Через 6 минут после запуска. На Ctrl-C не реагировал, на обычный kill -11 тоже
-bash-3.00# ps -ef | grep '[j]map'
crypto 12946 10992 0 17:13 pts/0 00:00:00 /usr/local/jdk1.6.0_11/bin/jmap -heap 8861
-bash-3.00# date
Mon Jan 2 17:19:47 MSK 2017
-bash-3.00# kill -9 12946