JDK-8006164 : [TESTBUG] compact profile hotspot test issues
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: hs25
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2013-01-13
  • Updated: 2014-10-15
  • Resolved: 2013-08-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8 Other
8Fixed hs25Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
The following test cannot be executed against some compact profile configurations.
Some test are not applicable, and should be marked. Other test may be modified to work.
Sub task may be filed for individual tests.

# All compact profiles and full JRE build:
----------------------------------------------------------
# Test bug: native library path:
# assume location:  jre/lib/i386/server
# ejre location: lib/i386/server
runtime/6929067/Test6929067.sh

# Test not applicable: jstack dependency!
runtime/7194254/Test7194254.java

Compact3 and lower:
-----------------------------
#  runtime dependency on: libjdwp.so
closed/compiler/6507107/HeapwalkingTest.java
runtime/6294277/SourceDebugExtension.java

# runtime dependency on: com/sun/corba/se/impl/encoding/ByteBufferWithInfo
compiler/6852078/Test6852078.java

# runtime dependency on: java/awt/geom/Line2D
compiler/7047069/Test7047069.java


Compact2 and lower:
------------------------------
# Test not applicable due to static dependencies
closed/runtime/metaspace/FragmentMetaspace.java
gc/6581734/Test6581734.java
gc/7072527/TestFullGCCount.java
gc/7168848/HumongousAlloc.java
runtime/6819213/TestBootNativeLibraryPath.java
runtime/6925573/SortMethodsTest.java


Compact1:
---------------
# Not applicable - static dependencies
closed/compiler/4907999/Uidtest.java
closed/compiler/5043395/T5043395.java
closed/compiler/6457611/log.sh

# runtime dependency: java.rmi.RMISecurityException
compiler/6589834/Test_ia32.java








Comments
This change introduces the TEST.groups file to allow jtreg to run regression tests by groups - where the groups are defined to support testing of compact profiles and the minimal VM. The primary groups are: - jdk - jre - compact3 - compact2 - compact2_minimal - compact1 - compact1_minimal The minimal VM is only supported on compact1 and compact2. To select a group of tests you use :<group-name> Eg to run only those tests that can run on compact1 use: jtreg :compact1 Of course you still need to point jtreg at the right kind of runtime image (and give it a full JDK as the compile-jdk!); and if testing the minimal VM you need to tell jtreg to select it using -javaoptions:-minimal The full jtreg group facility is only available in the most recent jtreg builds, so you will need to grab the latest nightly build, or latest sources. It is expected that these group definitions will need some tweaking. So far testing has been limited to linux, but we want to get this in ASAP to extend the testing. Note: once this is in place, anyone writing regression tests will need to be aware of whether that test is limited to certain profiles and update the group file accordingly. Sometimes it is not the item being tested that determines the minimum needed profile, but the test infrastructure eg if it uses XML. See TEST.groups for more information.
28-08-2013

This is one of a number of bugs filed against tests due to the inability of the tests to run on all possible "runtimes" these days (eg JDK, JRE, compact profiles, minimalVM or something more specific like lack of NMT detail availability). I expect to take point on the hotspot side for dealing with this. But this is being coordinated across the VM and JDK groups and will take time to put together.
24-07-2013

SQE have probably filed other bugs to cover these test "failures". The means by which these constraints should be expressed is still under debate with SQE.
20-07-2013

At this time more work is needed to find a more practical way of implementing test groups instead of updating each and every test.
19-07-2013

QE and Engineering needs more work on this one. Updating each and every testcase is not practical. Need to raise this one with Joe and Jonathan and eng team.
19-07-2013

The b79 test results at http://www.java.net/download/jdk8/testresults/testresults.html shows error for the following tests on the @headless list, so these failures, at least, may have a different cause. All headless failures should be individually confirmed, before marked with @headless. compiler/whitebox/DeoptimizeAllTest.java compiler/whitebox/DeoptimizeMethodTest.java compiler/whitebox/IsMethodCompilableTest.java compiler/whitebox/MakeMethodNotCompilableTest.java compiler/whitebox/SetDontInlineMethodTest.java runtime/NMT/AllocTestType.java runtime/NMT/PrintNMTStatistics.java runtime/NMT/SummarySanityCheck.java sanity/WBApi.java serviceability/ParserTest.java
04-03-2013

@compact1 Test failing with b79/embedded/bundles/jre-8-ea-b79-compact1-linux-i586-28_feb_2013.tar.gz excluding ProblemList.txt, @headless list, *marked tesst from @jre list, @compact3 list, and @compact2 list. closed/compiler/4907999/Uidtest.java closed/compiler/5043395/T5043395.java closed/compiler/6457611/log.sh compiler/6589834/Test_ia32.java
04-03-2013

@compact2 Test failing with b79/embedded/bundles/jre-8-ea-b79-compact2-linux-i586-28_feb_2013.tar.gz excluding ProblemList.txt, test from @headless list, and *marked tesst from @jre list, and @compact3 list. Note: eight test here are on the @jre list, and fails for compact2 when jdk dependency is resolved by linking the required jdk binaries. closed/runtime/metaspace/FragmentMetaspace.java gc/6581734/Test6581734.java gc/7072527/TestFullGCCount.java gc/7168848/HumongousAlloc.java gc/startup_warnings/TestCMSIncrementalMode.java gc/startup_warnings/TestCMS.java gc/startup_warnings/TestCMSNoIncrementalMode.java gc/startup_warnings/TestDefNewCMS.java gc/startup_warnings/TestIncGC.java gc/startup_warnings/TestParallelGC.java gc/startup_warnings/TestParallelScavengeSerialOld.java gc/startup_warnings/TestParNewCMS.java gc/startup_warnings/TestParNewSerialOld.java gc/startup_warnings/TestSerialGC.java runtime/6819213/TestBootNativeLibraryPath.java runtime/6925573/SortMethodsTest.java runtime/CommandLine/BooleanFlagWithInvalidValue.java runtime/CommandLine/UnrecognizedVMOption.java runtime/NMT/BaselineWithParameter.java runtime/NMT/CommandLineDetail.java runtime/NMT/CommandLineEmptyArgument.java runtime/NMT/CommandLineInvalidArgument.java runtime/NMT/CommandLineSummary.java runtime/NMT/CommandLineTurnOffNMT.java runtime/NMT/JcmdScale.java runtime/NMT/JcmdWithNMTDisabled.java runtime/NMT/PrintNMTStatisticsWithNMTDisabled.java runtime/NMT/ShutdownTwice.java runtime/NMT/SummaryAfterShutdown.java testlibrary/OutputAnalyzerTest.java
04-03-2013

@compact3 Test failing with b79/embedded/bundles/jre-8-ea-b79-compact3-linux-i586-28_feb_2013.tar.gz excluding ProblemList.txt, test from @headless list, and *marked tesst from @jre list. Note: two test here are on the @jre list, and fails for compact3 when jdk dependency is resolved by linking the required jdk binaries. closed/compiler/6507107/HeapwalkingTest.java compiler/6852078/Test6852078.java compiler/7047069/Test7047069.java runtime/6294277/SourceDebugExtension.java runtime/7158988/FieldMonitor.java
04-03-2013

@jre Test failing with b79/embedded/bundles/jre-8-ea-b79-linux-i586-28_feb_2013.tar.gz excluding ProblemList.txt plus all test from @headless list All, but three test (marked with *), are confirmed to fail due to jdk dependency. The * marked test also most likely failed due to jdk dependency. However, they also failed in a run with the jre patched with links to jdk binaries, so the dependencies may be more intricate. closed/compiler/4770828/Bug4770828.java closed/compiler/5049410/Test.java closed/compiler/6272923/Test6272923.sh closed/compiler/6507107/HeapwalkingTest.java closed/runtime/4243535/paper.sh closed/runtime/4243535/simple.sh closed/runtime/4433658/Test4433658.sh closed/runtime/4510682/FlawDemo.java closed/runtime/4734966/Test4734966.sh closed/runtime/4735734/Test4735734.sh closed/runtime/4765733/Test4765733.sh closed/runtime/4784574/Test4784574.java closed/runtime/4784641/CheckedIsSameObjectTest.java closed/runtime/4791798/jnitest.sh closed/runtime/4791798/TestExceptions.sh closed/runtime/4845371/DBB.java closed/runtime/4865460/Test4865460.sh closed/runtime/4879051/Test4879051.sh closed/runtime/4927116/test4927116.java closed/runtime/metaspace/FragmentMetaspace.java compiler/5091921/Test6890943.java compiler/7068051/Test7068051.java compiler/7070134/Stemmer.java *runtime/6626217/Test6626217.sh runtime/6819213/TestBootNativeLibraryPath.java runtime/6925573/SortMethodsTest.java *runtime/6929067/Test6929067.sh runtime/7158988/FieldMonitor.java *runtime/7194254/Test7194254.java runtime/NMT/BaselineWithParameter.java runtime/NMT/JcmdScale.java runtime/NMT/JcmdWithNMTDisabled.java runtime/NMT/ShutdownTwice.java runtime/NMT/SummaryAfterShutdown.java
04-03-2013

@headless Test failing running b79/embedded/bundles/jdk-8-ea-b79-linux-i586-28_feb_2013.tar.gz with -Djava.awt.headless=true, and excluding current ProblemList.txt closed/runtime/4363638/Test4363638.sh closed/runtime/4413696/tstc.java closed/runtime/4475963/Test4475963.sh closed/runtime/4804447/ZeroLengthArray.java closed/runtime/4825523/Test4825523.sh closed/runtime/classunload/KeepAlive.java closed/runtime/classunload/UnloadTest.java closed/runtime/metaspace/FragmentMetaspaceSimple.java compiler/5091921/Test7005594.java compiler/whitebox/DeoptimizeAllTest.java compiler/whitebox/DeoptimizeMethodTest.java compiler/whitebox/IsMethodCompilableTest.java compiler/whitebox/MakeMethodNotCompilableTest.java compiler/whitebox/SetDontInlineMethodTest.java gc/8000311/Test8000311.java gc/startup_warnings/TestG1.java gc/TestG1ZeroPGCTJcmdThreadPrint.java runtime/7196045/Test7196045.java runtime/CommandLine/FlagWithInvalidValue.java runtime/CommandLine/NonBooleanFlagWithInvalidBooleanPrefix.java runtime/NMT/AllocTestType.java runtime/NMT/PrintNMTStatistics.java runtime/NMT/SummarySanityCheck.java sanity/WBApi.java serviceability/ParserTest.java
04-03-2013

The exclude option for running on compact2, for instance, would then become: -k:!headless&!jre&!compact3&!compact2
02-03-2013

List in description do not include test that fails due to headless mode, or (most) test failing due to testing jre, since the run was done with patched runtime, with links to jdk binaries (e.g. javac). I'm in the process of rerunning with b79, and expect to have list of test to be marked @key headless, if failing due to headless mode. @key jre, if failing due to testing jre (most of these can probably be fixed). @key compact3, if failing on compact3 or lower @key compact2, if failing on compact2 or lower @key compact1, if failing on compact1 only
02-03-2013