--- old/make/common/shared/Defs-control.gmk Sun Jun 20 13:30:19 2010 +++ new/make/common/shared/Defs-control.gmk Sun Jun 20 13:30:18 2010 @@ -35,9 +35,6 @@ JDK_MAKE_SHARED_DIR = $(JDK_TOPDIR)/make/common/shared endif -ifndef CONTROL_TOPDIR - CONTROL_TOPDIR=$(TOPDIR) -endif ifndef HOTSPOT_TOPDIR HOTSPOT_TOPDIR=$(TOPDIR)/hotspot endif --- old/make/netbeans/README Sun Jun 20 13:30:21 2010 +++ new/make/netbeans/README Sun Jun 20 13:30:19 2010 @@ -204,8 +204,8 @@ note that pretty much regardless of your hardware, this *will* take a long time, and use *lots* of disk space (more than 3GB). The results of the build are in - *install-dir*/control/build/*platform*-*arch* and - *install-dir*/control/build/*platform*-*arch*-fastdebug. + *install-dir*/build/*platform*-*arch* and + *install-dir*/build/*platform*-*arch*-fastdebug. Consult the project's README file for details. --- old/make/netbeans/world/README Sun Jun 20 13:30:21 2010 +++ new/make/netbeans/world/README Sun Jun 20 13:30:21 2010 @@ -10,6 +10,6 @@ Please note: the results of building this project are *not* put in the place used by other projects. In this case, the results are place in - /control/build/- + /build/- and - /control/build/--fastdebug + /build/--fastdebug --- old/make/netbeans/world/build.xml Sun Jun 20 13:30:22 2010 +++ new/make/netbeans/world/build.xml Sun Jun 20 13:30:22 2010 @@ -34,11 +34,11 @@ - + - + --- old/test/Makefile Sun Jun 20 13:30:23 2010 +++ new/test/Makefile Sun Jun 20 13:30:23 2010 @@ -307,7 +307,7 @@ passc="`$(CAT) $(PASSLIST) | $(WC) -l | $(AWK) '{print $$1;}'`"; \ failc="`$(CAT) $(FAILLIST) | $(WC) -l | $(AWK) '{print $$1;}'`"; \ exclc="`$(CAT) $(EXCLUDELIST) | $(WC) -l | $(AWK) '{print $$1;}'`"; \ - $(ECHO) "TEST STATS: run=$${runc} pass=$${passc} fail=$${failc} excluded=$${exclc}" \ + $(ECHO) "TEST STATS: name=$(UNIQUE_DIR) run=$${runc} pass=$${passc} fail=$${failc} excluded=$${exclc}" \ >> $(STATS_TXT); \ else \ $(ECHO) "Missing file: $${_summary}" >> $(STATS_TXT); \ @@ -326,7 +326,7 @@ # Prep for output prep: clean @$(MKDIR) -p $(ABS_TEST_OUTPUT_DIR) - @$(MKDIR) -p `dirname $(ARCHIVE_BUNDLE)` + @$(MKDIR) -p `$(DIRNAME) $(ARCHIVE_BUNDLE)` # Cleanup clean: @@ -376,7 +376,7 @@ $(EXCLUDELIST): $(PROBLEM_LISTS) $(TESTDIRS) @$(RM) $@ $@.temp1 $@.temp2 @(($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- '$(OS_NAME)-all' ) ;\ - ($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- '$(OS_NAME)-$(OS_ARCH)' ) ;\ + ($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- '$(PLATFORM_OS)' ) ;\ ($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- '$(OS_NAME)-$(OS_ARCH2)' ) ;\ ($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- '$(OS_NAME)-$(OS_VERSION)') ;\ ($(CAT) $(PROBLEM_LISTS) | $(EGREP) -- 'generic-$(OS_ARCH)' ) ;\ @@ -562,7 +562,7 @@ JDK_ALL_TARGETS += jdk_tools2 jdk_tools2: com/sun/tools sun/jvmstat sun/tools tools vm com/sun/servicetag com/sun/tracing $(call SharedLibraryPermissions,tools/launcher) - $(call RunOthervmBatch) + $(call RunSamevmBatch) # All tools tests jdk_tools: jdk_tools1 jdk_tools2 --- old/test/ProblemList.txt Sun Jun 20 13:30:24 2010 +++ new/test/ProblemList.txt Sun Jun 20 13:30:24 2010 @@ -356,15 +356,12 @@ # jdk_management +# Failing, bug was filed: 6959636 +javax/management/loading/LibraryLoader/LibraryLoaderTest.java generic-all + # Access denied messages on windows/mks, filed 6954450 sun/management/jmxremote/bootstrap/RmiSslNoKeyStoreTest.sh windows-all -# Started failing on linux and solaris (filed 6950927) -# com.sun.tools.attach.AttachNotSupportedException: -# Unable to open socket file: -# target process not responding or HotSpot VM not loaded -sun/management/jmxremote/bootstrap/JvmstatCountersTest.java generic-all - # Fails on linux: KO: StringMonitor notification missed or not emitted javax/management/monitor/NonComparableAttributeValueTest.java generic-all @@ -1023,82 +1020,6 @@ # jdk_tools -# Filed bug 6951287, failed on Linux 64bit, sometimes? -com/sun/jdi/PopAndInvokeTest.java generic-all - -# Some of the tools tests kind of require "othervm" or if they don't will -# always be firing up another VM anyway due to the nature of tools testing. -# So most if not all tools tests are now being run with "othervm" mode. -# Some of these tools tests have a tendency to use fixed ports, bad idea. - -# Fails with -ea -esa on Solaris, Assertion error (Solaris specific test) -com/sun/tracing/BasicFunctionality.java generic-all - -# Fails on Fedora 9 32bit, jps output differs problem -sun/tools/jstatd/jstatdDefaults.sh generic-all - -# Fails on Linux Fedora 9 32bit, Could not read data for remote JVM 16133 -# jstat output differs from expected output -sun/tools/jstatd/jstatdExternalRegistry.sh generic-all - -# Output of jps differs from expected output. -# Invalid argument count on solaris-sparc and x64 -sun/tools/jstatd/jstatdPort.sh generic-all - -# othervm mode, Could not synchronize with target -sun/tools/jps/jps-l_1.sh generic-all -sun/tools/jps/jps-l_2.sh generic-all -sun/tools/jps/jps-lm.sh generic-all -sun/tools/jps/jps-Vvml_2.sh generic-all -sun/tools/jps/jps-m_2.sh generic-all - -# Fails on Solaris 10 sparcv9, shell exits with 1 -# Turning off use of shared archive because of choice of garbage collector or large pages -# Could not synchronize with target -sun/tools/jps/jps-v_1.sh generic-all - -# Fails on OpenSolaris "Could not synchronize with target" -sun/tools/jps/jps-Defaults.sh generic-all -sun/tools/jps/jps-V_2.sh generic-all -sun/tools/jps/jps-Vm_2.sh generic-all -sun/tools/jps/jps-Vvm.sh generic-all -sun/tools/jps/jps-Vvml.sh generic-all -sun/tools/jps/jps-m.sh generic-all - -# Server name error, port 2098 problem? -sun/tools/jstatd/jstatdServerName.sh generic-all - -# Problems on windows, jmap.exe hangs? -com/sun/tools/attach/BasicTests.sh windows-all - -# Fails on Solaris 10 sparc, in othervm mode, throws unexpected exception -sun/jvmstat/monitor/MonitoredVm/CR6672135.java generic-all - -# Unexpected Monitor Exception, solaris sparc -client -sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh generic-all - -# Problems on windows, jmap.exe hangs? (these run jmap) -sun/tools/jmap/Basic.sh windows-all - -# Invalid argument count on solaris-sparc and x64 -sun/tools/jstatd/jstatdDefaults.sh solaris-all - -# Solaris sparcv9, jps output does not match, x64 different -sun/tools/jstatd/jstatdExternalRegistry.sh solaris-all - -# Solaris 10 sparc 32bit -client, java.lang.AssertionError: Some tests failed -tools/jar/JarEntryTime.java generic-all - -# Times out on sparc? -tools/launcher/VersionCheck.java generic-all - -# These tests fail on solaris sparc, all the time -tools/jar/ChangeDir.java generic-all - -# Cannot write jar -# Also, possible problems on windows, jmap.exe hangs? -tools/jar/index/MetaInf.java windows-all - ############################################################################ # jdk_util --- old/test/com/sun/jdi/PopAndInvokeTest.java Sun Jun 20 13:30:25 2010 +++ new/test/com/sun/jdi/PopAndInvokeTest.java Sun Jun 20 13:30:25 2010 @@ -24,6 +24,7 @@ /** * @test * @bug 6517249 + * @ignore 6951287 * @summary JDWP: Cannot do an invokeMethod after a popFrames operation * * @author jjh --- old/test/com/sun/servicetag/JavaServiceTagTest1.java Sun Jun 20 13:30:26 2010 +++ new/test/com/sun/servicetag/JavaServiceTagTest1.java Sun Jun 20 13:30:26 2010 @@ -32,7 +32,7 @@ * @author Mandy Chung * * @run build JavaServiceTagTest1 - * @run main JavaServiceTagTest1 + * @run main/othervm JavaServiceTagTest1 */ import com.sun.servicetag.*; --- old/test/com/sun/servicetag/SystemRegistryTest.java Sun Jun 20 13:30:27 2010 +++ new/test/com/sun/servicetag/SystemRegistryTest.java Sun Jun 20 13:30:26 2010 @@ -31,7 +31,7 @@ * @author Mandy Chung * * @run build SvcTagClient SystemRegistryTest Util - * @run main SystemRegistryTest + * @run main/othervm SystemRegistryTest */ import com.sun.servicetag.*; --- old/test/com/sun/tools/attach/BasicTests.sh Sun Jun 20 13:30:28 2010 +++ new/test/com/sun/tools/attach/BasicTests.sh Sun Jun 20 13:30:27 2010 @@ -37,6 +37,21 @@ exit 1 fi +# Windows 2000 is a problem here, so we skip it, see 6962615 +osrev=`uname -a` +if [ "`echo ${osrev} | grep 'CYGWIN'`" != "" ] ; then + if [ "`echo ${osrev} | grep '5.0'`" != "" ] ; then + echo "Treating as a pass, not testing Windows 2000" + exit 0 + fi +fi +if [ "`echo ${osrev} | grep 'Windows'`" != "" ] ; then + if [ "`echo ${osrev} | grep '5 00'`" != "" ] ; then + echo "Treating as a pass, not testing Windows 2000" + exit 0 + fi +fi + . ${TESTSRC}/CommonSetup.sh . ${TESTSRC}/ApplicationSetup.sh . ${TESTSRC}/AgentSetup.sh --- old/test/com/sun/tracing/BasicFunctionality.java Sun Jun 20 13:30:28 2010 +++ new/test/com/sun/tracing/BasicFunctionality.java Sun Jun 20 13:30:28 2010 @@ -24,6 +24,7 @@ /** * @test * @bug 6537506 + * @ignore 6962535 * @summary Basic unit test for tracing framework */ --- old/test/sun/jvmstat/testlibrary/utils.sh Sun Jun 20 13:30:29 2010 +++ new/test/sun/jvmstat/testlibrary/utils.sh Sun Jun 20 13:30:29 2010 @@ -189,3 +189,37 @@ echo "Error sending term signal to ${kpid}!" fi } + +# check to see if a port is free +checkPort() # port +{ + inuse=`netstat -a | egrep "\.$1"` + if [ "${inuse}" = "" ] ; then + echo "free" + else + echo "inuse" + fi +} + +# Get a free port, where port+1 is also free, return 0 when giving up +freePort() +{ + start=3000 + while [ ${start} -lt 3030 ] ; do + port1=`expr ${start} '+' $$ '%' 1000` + port2=`expr ${port1} '+' 1` + if [ "`checkPort ${port1}`" = "inuse" \ + -o "`checkPort ${port2}`" = "inuse" ] ; then + start=`expr ${start} '+' 1` + else + break + fi + done + if [ "`checkPort ${port1}`" = "inuse" \ + -o "`checkPort ${port2}`" = "inuse" ] ; then + port1="0" + fi + echo "${port1}" +} + + --- old/test/sun/tools/jps/jps-Vvml_2.sh Sun Jun 20 13:30:30 2010 +++ new/test/sun/tools/jps/jps-Vvml_2.sh Sun Jun 20 13:30:30 2010 @@ -51,3 +51,9 @@ SLEEPER_PID=$! ${JPS} -J-XX:Flags=${TESTSRC}/vmflags -Vvml | awk -f ${TESTSRC}/jps-Vvml_Output2.awk +RC=$? + +cleanup + +exit ${RC} + --- old/test/sun/tools/jps/jps-m_2.sh Sun Jun 20 13:30:31 2010 +++ new/test/sun/tools/jps/jps-m_2.sh Sun Jun 20 13:30:31 2010 @@ -50,3 +50,9 @@ SLEEPER_PID=$! ${JPS} -m | awk -f ${TESTSRC}/jps-m_Output2.awk +RC=$? + +cleanup + +exit ${RC} + --- old/test/sun/tools/jstatd/jstatdDefaults.sh Sun Jun 20 13:30:32 2010 +++ new/test/sun/tools/jstatd/jstatdDefaults.sh Sun Jun 20 13:30:32 2010 @@ -56,12 +56,11 @@ if [ $? -ne 0 ] then echo "Output of jps differs from expected output. Failed." + cleanup exit 1 fi -TARGET_PID=`${JPS} | grep "Jstatd" | cut -d" " -f1` - -${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk +${JSTAT} -gcutil ${JSTATD_PID}@${HOSTNAME} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk RC=$? if [ ${RC} -ne 0 ] @@ -75,4 +74,6 @@ RC=1 fi +cleanup + exit ${RC} --- old/test/sun/tools/jstatd/jstatdExternalRegistry.sh Sun Jun 20 13:30:33 2010 +++ new/test/sun/tools/jstatd/jstatdExternalRegistry.sh Sun Jun 20 13:30:32 2010 @@ -44,7 +44,11 @@ JSTAT="${TESTJAVA}/bin/jstat" HOSTNAME=`uname -n` -PORT=2099 +PORT=`freePort` +if [ "${PORT}" = "0" ] ; then + echo "Cannot get free port" + exit 1 +fi RMIREGISTRY_OUT="rmiregistry_$$.out" JSTATD_OUT="jstatd_$$.out" @@ -69,12 +73,7 @@ exit 1 fi -# get the process id for the target app (jstatd). note, don't rely -# on JSTATD_PID as mks interposes a shell when starting a process in -# the background -TARGET_PID=`${JPS} | grep "Jstatd" | cut -d" " -f1` - -${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk +${JSTAT} -gcutil ${JSTATD_PID}@${HOSTNAME}:${PORT} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk RC=$? if [ ${RC} -ne 0 ] --- old/test/sun/tools/jstatd/jstatdPort.sh Sun Jun 20 13:30:33 2010 +++ new/test/sun/tools/jstatd/jstatdPort.sh Sun Jun 20 13:30:33 2010 @@ -42,7 +42,11 @@ JSTAT="${TESTJAVA}/bin/jstat" HOSTNAME=`uname -n` -PORT=2099 +PORT=`freePort` +if [ "${PORT}" = "0" ] ; then + echo "Cannot get free port" + exit 1 +fi JSTATD_OUT="jstatd_$$.out" @@ -57,12 +61,11 @@ if [ $? -ne 0 ] then echo "Output of jps differs from expected output. Failed." + cleanup exit 1 fi -TARGET_PID=`${JPS} | grep "Jstatd" | cut -d" " -f1` - -${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk +${JSTAT} -gcutil ${JSTATD_PID}@${HOSTNAME}:${PORT} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk RC=$? if [ ${RC} -ne 0 ] @@ -76,4 +79,6 @@ RC=1 fi +cleanup + exit ${RC} --- old/test/sun/tools/jstatd/jstatdServerName.sh Sun Jun 20 13:30:34 2010 +++ new/test/sun/tools/jstatd/jstatdServerName.sh Sun Jun 20 13:30:34 2010 @@ -43,8 +43,12 @@ JSTAT="${TESTJAVA}/bin/jstat" HOSTNAME=`uname -n` -PORT_1=2098 -PORT_2=2099 +PORT_1=`freePort` +if [ "${PORT_1}" = "0" ] ; then + echo "ERROR: No free port" + exit 1 +fi +PORT_2=`expr ${PORT_1} '+' 1` SERVERNAME="SecondJstatdServer" JSTATD_1_OUT="jstatd_$$_1.out" @@ -68,6 +72,7 @@ if [ $? -ne 0 ] then echo "Output of jps differs from expected output. Failed." + cleanup exit 1 fi @@ -77,13 +82,12 @@ if [ $? -ne 0 ] then echo "Output of jps differs from expected output. Failed." + cleanup exit 1 fi -TARGET_PID=`${JPS} | grep "Jstatd" | cut -d" " -f1 | head -1` - -echo "running: ${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT_1} 250 5" -${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT_1} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk +echo "running: ${JSTAT} -gcutil ${JSTATD_1_PID}@${HOSTNAME}:${PORT_1} 250 5" +${JSTAT} -gcutil ${JSTATD_1_PID}@${HOSTNAME}:${PORT_1} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk RC=$? if [ ${RC} -ne 0 ] @@ -91,8 +95,8 @@ echo "jstat output differs from expected output" fi -echo "running: ${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT_2}/${SERVERNAME} 250 5" -${JSTAT} -gcutil ${TARGET_PID}@${HOSTNAME}:${PORT_2}/${SERVERNAME} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk +echo "running: ${JSTAT} -gcutil ${JSTATD_1_PID}@${HOSTNAME}:${PORT_2}/${SERVERNAME} 250 5" +${JSTAT} -gcutil ${JSTATD_1_PID}@${HOSTNAME}:${PORT_2}/${SERVERNAME} 250 5 2>&1 | awk -f ${TESTSRC}/jstatGcutilOutput1.awk RC=$? if [ ${RC} -ne 0 ] @@ -112,4 +116,6 @@ RC=1 fi +cleanup + exit ${RC} --- old/test/tools/jar/UpdateManifest.java Sun Jun 20 13:30:35 2010 +++ new/test/tools/jar/UpdateManifest.java Sun Jun 20 13:30:35 2010 @@ -143,6 +143,7 @@ } else { fail("did not match specVersion nor specTitle"); } + zf.close(); } // --------------------- Convenience --------------------------- --- old/test/tools/jar/index/MetaInf.java Sun Jun 20 13:30:36 2010 +++ new/test/tools/jar/index/MetaInf.java Sun Jun 20 13:30:36 2010 @@ -62,7 +62,13 @@ static boolean contains(File jarFile, String entryName) throws IOException { - return new ZipFile(jarFile).getEntry(entryName) != null; + ZipFile zf = new ZipFile(jarFile); + if ( zf != null ) { + boolean result = zf.getEntry(entryName) != null; + zf.close(); + return result; + } + return false; } static void checkContains(File jarFile, String entryName) @@ -94,9 +100,13 @@ String line; while ((line = index.readLine()) != null) { if (line.equals(SERVICES)) { + index.close(); + f.close(); return; } } + index.close(); + f.close(); throw new Error(SERVICES + " not indexed."); }