Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/test/sun/tools/jmap/Basic.sh
38838 views
#!/bin/sh12#3# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.4# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.5#6# This code is free software; you can redistribute it and/or modify it7# under the terms of the GNU General Public License version 2 only, as8# published by the Free Software Foundation.9#10# This code is distributed in the hope that it will be useful, but WITHOUT11# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or12# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License13# version 2 for more details (a copy is included in the LICENSE file that14# accompanied this code).15#16# You should have received a copy of the GNU General Public License version17# 2 along with this work; if not, write to the Free Software Foundation,18# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.19#20# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA21# or visit www.oracle.com if you need additional information or have any22# questions.23#242526# @test27# @bug 632128628# @summary Unit test for jmap utility29#30# @library ../common31# @build SimpleApplication ShutdownSimpleApplication32# @run shell Basic.sh3334. ${TESTSRC}/../common/CommonSetup.sh35. ${TESTSRC}/../common/ApplicationSetup.sh3637# Start application and use PORTFILE for coordination38PORTFILE="${TESTCLASSES}"/shutdown.port39startApplication SimpleApplication "${PORTFILE}"4041# all return statuses are checked in this test42set +e4344failed=04546# -histo[:live] option47${JMAP} -J-XX:+UsePerfData -histo $appJavaPid48if [ $? != 0 ]; then failed=1; fi4950${JMAP} -J-XX:+UsePerfData -histo:live $appJavaPid51if [ $? != 0 ]; then failed=1; fi5253# -dump option54DUMPFILE="java_pid${appJavaPid}.hprof"55${JMAP} -J-XX:+UsePerfData -dump:format=b,file=${DUMPFILE} $appJavaPid56if [ $? != 0 ]; then failed=1; fi5758# check that heap dump is parsable59${JHAT} -parseonly true ${DUMPFILE}60if [ $? != 0 ]; then failed=1; fi6162# dump file is large so remove it63rm ${DUMPFILE}6465# -dump:live option66${JMAP} -J-XX:+UsePerfData -dump:live,format=b,file=${DUMPFILE} $appJavaPid67if [ $? != 0 ]; then failed=1; fi6869# check that heap dump is parsable70${JHAT} -parseonly true ${DUMPFILE}71if [ $? != 0 ]; then failed=1; fi7273# dump file is large so remove it74rm -f ${DUMPFILE}7576set -e7778stopApplication "${PORTFILE}"79waitForApplication8081exit $failed828384