<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-27720</id>
	<title>Nabble - OpenJDK jtreg Test Harness</title>
	<updated>2009-02-19T14:00:12Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/OpenJDK-jtreg-Test-Harness-f27720.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/OpenJDK-jtreg-Test-Harness-f27720.html" />
	<subtitle type="html">We all want the Java platform to be robust, performant, stable, and high quality. &amp;nbsp;You can help contribute to quality development, including review and feedback of test specifications and methodologies, test execution, and in the future development of test suites or test tools.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-22110611</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-19T14:00:12Z</published>
	<updated>2009-02-19T14:00:12Z</updated>
	<author>
		<name>Omair Majid</name>
	</author>
	<content type="html">Hi Jon,
&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt; Thanks for the update; I was expecting something around 
&lt;br&gt;&amp;gt; java.lang.Character myself,
&lt;br&gt;&amp;gt; but definitely that sort of problem. Do you want to file a bug against 
&lt;br&gt;&amp;gt; the XML encoder?
&lt;br&gt;&lt;br&gt;I have filed a bug and proposed a patch at 
&lt;br&gt;&lt;a href=&quot;http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=295&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=295&lt;/a&gt;. This fixes the
&lt;br&gt;test/java/beans/PropertyEditor/TestStringClassJava.java issue, but I 
&lt;br&gt;haven't tested it thoroughly.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Omair
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p22110611.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-22029990</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-15T16:49:39Z</published>
	<updated>2009-02-15T16:49:39Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Martin,
&lt;br&gt;&lt;br&gt;Given the [SNIP] in the middle of the trace, I would think we are seeing
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;invoking itself recursively.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;On Feb 15, 2009, at 4:46 PM, Martin Buchholz wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; There have been recent changes to the
&lt;br&gt;&amp;gt; UTF_8 encoder in OpenJDK that might be responsible.
&lt;br&gt;&amp;gt; You can try to isolate the exact change to UTF_8 that
&lt;br&gt;&amp;gt; could cause this difference, and then create a proper test case.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; changeset: &amp;nbsp; 497:3dcc69147ff9
&lt;br&gt;&amp;gt; user: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sherman
&lt;br&gt;&amp;gt; date: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fri Aug 22 14:37:46 2008 -0700
&lt;br&gt;&amp;gt; summary: &amp;nbsp; &amp;nbsp; 4486841: UTF-8 decoder should adhere to corrigendum to
&lt;br&gt;&amp;gt; Unicode 3.0.1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It is surprising that one can get StackOverflowError without
&lt;br&gt;&amp;gt; a very long stack trace of methods invoking themselves recursively,
&lt;br&gt;&amp;gt; which is not what we're seeing.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Martin
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Wed, Feb 11, 2009 at 10:38, Omair Majid &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=22029990&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;omajid@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Hi all,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I am trying to generate xml reports from jtreg. The problem is that &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; jtreg
&lt;br&gt;&amp;gt;&amp;gt; throws a StackOverflowError when writing the output xml file when &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; running
&lt;br&gt;&amp;gt;&amp;gt; the jdk tests. The xml report works fine for the 16 compiler tests &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; and 1351
&lt;br&gt;&amp;gt;&amp;gt; langtools tests.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I am using Icedtea6 to run the tests. These are the commands it &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; executes:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; $ mkdir -p test/jdk/JTwork test/jdk/JTreport
&lt;br&gt;&amp;gt;&amp;gt; $ /notnfs/omajid/icedtea6/bootstrap/jdk1.6.0/bin/java \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; -Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; -jar test/jtreg.jar -v1 -a -ignore:quiet \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; -w:test/jdk/JTwork -r:test/jdk/JTreport \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; -s -jdk:`pwd`/openjdk/control/build/linux-i586/j2sdk-image \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; `pwd`/openjdk/jdk/test \
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; | tee test/check-jdk.log
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The error appears after the jtreg run completes:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; [ lots of output ]
&lt;br&gt;&amp;gt;&amp;gt; Passed: vm/verifier/VerifyProtectedConstructor.java
&lt;br&gt;&amp;gt;&amp;gt; Passed: vm/verifier/VerifyStackForExceptionHandlers.java
&lt;br&gt;&amp;gt;&amp;gt; Test results: passed: 3,306; failed: 73; error: 5
&lt;br&gt;&amp;gt;&amp;gt; Exception in thread &amp;quot;main&amp;quot; java.lang.StackOverflowError
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at sun.nio.cs.UTF_8.updatePositions(UTF_8.java:76)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:411)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:466)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:561)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at java.lang.StringCoding$StringEncoder.encode(StringCoding.java: 
&lt;br&gt;&amp;gt;&amp;gt; 258)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at java.lang.StringCoding.encode(StringCoding.java:290)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at java.lang.String.getBytes(String.java:954)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com 
&lt;br&gt;&amp;gt;&amp;gt; .sun 
&lt;br&gt;&amp;gt;&amp;gt; .org 
&lt;br&gt;&amp;gt;&amp;gt; .apache 
&lt;br&gt;&amp;gt;&amp;gt; .xml.internal.serializer.EncodingInfo.inEncoding(EncodingInfo.java: 
&lt;br&gt;&amp;gt;&amp;gt; 413)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo.access 
&lt;br&gt;&amp;gt;&amp;gt; $100(EncodingInfo.java:62)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding(EncodingInfo.java:205)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; [...SNIP...]
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; at
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Has anyone ever seen this before?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;&amp;gt; Omair
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p22029990.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-22029952</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-15T16:46:35Z</published>
	<updated>2009-02-15T16:46:35Z</updated>
	<author>
		<name>martinrb</name>
	</author>
	<content type="html">There have been recent changes to the
&lt;br&gt;UTF_8 encoder in OpenJDK that might be responsible.
&lt;br&gt;You can try to isolate the exact change to UTF_8 that
&lt;br&gt;could cause this difference, and then create a proper test case.
&lt;br&gt;&lt;br&gt;changeset: &amp;nbsp; 497:3dcc69147ff9
&lt;br&gt;user: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sherman
&lt;br&gt;date: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fri Aug 22 14:37:46 2008 -0700
&lt;br&gt;summary: &amp;nbsp; &amp;nbsp; 4486841: UTF-8 decoder should adhere to corrigendum to
&lt;br&gt;Unicode 3.0.1
&lt;br&gt;&lt;br&gt;It is surprising that one can get StackOverflowError without
&lt;br&gt;a very long stack trace of methods invoking themselves recursively,
&lt;br&gt;which is not what we're seeing.
&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;&lt;br&gt;On Wed, Feb 11, 2009 at 10:38, Omair Majid &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=22029952&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;omajid@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi all,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I am trying to generate xml reports from jtreg. The problem is that jtreg
&lt;br&gt;&amp;gt; throws a StackOverflowError when writing the output xml file when running
&lt;br&gt;&amp;gt; the jdk tests. The xml report works fine for the 16 compiler tests and 1351
&lt;br&gt;&amp;gt; langtools tests.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I am using Icedtea6 to run the tests. These are the commands it executes:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; $ mkdir -p test/jdk/JTwork test/jdk/JTreport
&lt;br&gt;&amp;gt; $ /notnfs/omajid/icedtea6/bootstrap/jdk1.6.0/bin/java \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-jar test/jtreg.jar -v1 -a -ignore:quiet \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-w:test/jdk/JTwork -r:test/jdk/JTreport \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-s -jdk:`pwd`/openjdk/control/build/linux-i586/j2sdk-image \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;`pwd`/openjdk/jdk/test \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| tee test/check-jdk.log
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The error appears after the jtreg run completes:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [ lots of output ]
&lt;br&gt;&amp;gt; Passed: vm/verifier/VerifyProtectedConstructor.java
&lt;br&gt;&amp;gt; Passed: vm/verifier/VerifyStackForExceptionHandlers.java
&lt;br&gt;&amp;gt; Test results: passed: 3,306; failed: 73; error: 5
&lt;br&gt;&amp;gt; Exception in thread &amp;quot;main&amp;quot; java.lang.StackOverflowError
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8.updatePositions(UTF_8.java:76)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:411)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:466)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:561)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at java.lang.StringCoding$StringEncoder.encode(StringCoding.java:258)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at java.lang.StringCoding.encode(StringCoding.java:290)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at java.lang.String.getBytes(String.java:954)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo.inEncoding(EncodingInfo.java:413)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo.access$100(EncodingInfo.java:62)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:205)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;[...SNIP...]
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;at
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Has anyone ever seen this before?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Omair
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p22029952.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21983319</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-12T11:36:11Z</published>
	<updated>2009-02-12T11:36:11Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Thanks for the update; I was expecting something around 
&lt;br&gt;java.lang.Character myself,
&lt;br&gt;but definitely that sort of problem. Do you want to file a bug against 
&lt;br&gt;the XML encoder?
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;Omair Majid wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Jon,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt;&amp;gt; I suspect there is some specific test or tests in the test suite 
&lt;br&gt;&amp;gt;&amp;gt; causing output that it provoking this error &amp;nbsp;in the xml encoder.
&lt;br&gt;&amp;gt;&amp;gt; I doubt that it is the quantity of tests in the entire jdk suite that 
&lt;br&gt;&amp;gt;&amp;gt; is causing the issue.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Would it be possible for you to try and narrow it down by running 
&lt;br&gt;&amp;gt;&amp;gt; jtreg on (just) each of the top level subdirectories of test/
&lt;br&gt;&amp;gt;&amp;gt; and then if one shows the fault, on the each of the subdirectories of 
&lt;br&gt;&amp;gt;&amp;gt; that, and so on?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks for that bit of advice. The problem seems to be in 
&lt;br&gt;&amp;gt; test/java/beans/PropertyEditor/TestStringClassJava.java. Mark Wielaard 
&lt;br&gt;&amp;gt; pointed out that the test generates a string with characters 0x1000 to 
&lt;br&gt;&amp;gt; 0x1 and prints it to stdout. It appears the xml parser trips over 
&lt;br&gt;&amp;gt; that. Removing the output fixes the problem.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cheers,
&lt;br&gt;&amp;gt; Omair
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21983319.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21981519</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-12T10:04:31Z</published>
	<updated>2009-02-12T10:04:31Z</updated>
	<author>
		<name>Omair Majid</name>
	</author>
	<content type="html">Hi Jon,
&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt; I suspect there is some specific test or tests in the test suite causing 
&lt;br&gt;&amp;gt; output that it provoking this error &amp;nbsp;in the xml encoder.
&lt;br&gt;&amp;gt; I doubt that it is the quantity of tests in the entire jdk suite that is 
&lt;br&gt;&amp;gt; causing the issue.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Would it be possible for you to try and narrow it down by running jtreg 
&lt;br&gt;&amp;gt; on (just) each of the top level subdirectories of test/
&lt;br&gt;&amp;gt; and then if one shows the fault, on the each of the subdirectories of 
&lt;br&gt;&amp;gt; that, and so on?
&lt;br&gt;&lt;br&gt;Thanks for that bit of advice. The problem seems to be in 
&lt;br&gt;test/java/beans/PropertyEditor/TestStringClassJava.java. Mark Wielaard 
&lt;br&gt;pointed out that the test generates a string with characters 0x1000 to 
&lt;br&gt;0x1 and prints it to stdout. It appears the xml parser trips over that. 
&lt;br&gt;Removing the output fixes the problem.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Omair
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21981519.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21978791</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-12T07:54:07Z</published>
	<updated>2009-02-12T07:54:07Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Omair,
&lt;br&gt;&lt;br&gt;I suspect there is some specific test or tests in the test suite &amp;nbsp;
&lt;br&gt;causing output that it provoking this error &amp;nbsp;in the xml encoder.
&lt;br&gt;I doubt that it is the quantity of tests in the entire jdk suite that &amp;nbsp;
&lt;br&gt;is causing the issue.
&lt;br&gt;&lt;br&gt;Would it be possible for you to try and narrow it down by running &amp;nbsp;
&lt;br&gt;jtreg on (just) each of the top level subdirectories of test/
&lt;br&gt;and then if one shows the fault, on the each of the subdirectories of &amp;nbsp;
&lt;br&gt;that, and so on?
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;On Feb 12, 2009, at 7:33 AM, Omair Majid wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Jon,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt;&amp;gt; Since you're using IcedTea to run jtreg, I would suggest you &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; investigate the
&lt;br&gt;&amp;gt;&amp;gt; possibility that this is an IcedTea issue.
&lt;br&gt;&amp;gt;&amp;gt; The bug would appear to be in
&lt;br&gt;&amp;gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo 
&lt;br&gt;&amp;gt;&amp;gt; $EncodingImpl.isInEncoding so it does not look like a jtreg or &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; jtharness issue.
&lt;br&gt;&amp;gt;&amp;gt; Can I suggest you try and use Sun's JDK to run jtreg, while still &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; using the
&lt;br&gt;&amp;gt;&amp;gt; JDK of your choice to execute the tests.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I was wondering if you have run the entire jdk suite using jtreg &amp;nbsp;
&lt;br&gt;&amp;gt; with the -Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; option. It is only &amp;nbsp;
&lt;br&gt;&amp;gt; when using this option that the jtreg crashes.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Omair
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21978791.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21978369</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-12T07:33:03Z</published>
	<updated>2009-02-12T07:33:03Z</updated>
	<author>
		<name>Omair Majid</name>
	</author>
	<content type="html">Hi Jon,
&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Since you're using IcedTea to run jtreg, I would suggest you investigate 
&lt;br&gt;&amp;gt; the
&lt;br&gt;&amp;gt; possibility that this is an IcedTea issue.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The bug would appear to be in
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; so it does not look like a jtreg or jtharness issue.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Can I suggest you try and use Sun's JDK to run jtreg, while still using the
&lt;br&gt;&amp;gt; JDK of your choice to execute the tests.
&lt;/div&gt;&lt;br&gt;I was wondering if you have run the entire jdk suite using jtreg with 
&lt;br&gt;the -Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; option. It is only when 
&lt;br&gt;using this option that the jtreg crashes.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Omair
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21978369.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21977966</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-12T07:12:49Z</published>
	<updated>2009-02-12T07:12:49Z</updated>
	<author>
		<name>Omair Majid</name>
	</author>
	<content type="html">Hi Jon,
&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Since you're using IcedTea to run jtreg, I would suggest you investigate 
&lt;br&gt;&amp;gt; the
&lt;br&gt;&amp;gt; possibility that this is an IcedTea issue.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The bug would appear to be in
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; so it does not look like a jtreg or jtharness issue.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Can I suggest you try and use Sun's JDK to run jtreg, while still using the
&lt;br&gt;&amp;gt; JDK of your choice to execute the tests.
&lt;/div&gt;&lt;br&gt;I get the exact same behaviour when using Sun's JDK (build 1.6.0_12-b04) 
&lt;br&gt;to run jtreg.
&lt;br&gt;&lt;br&gt;Omair
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21977966.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21961815</id>
	<title>Re: jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-11T10:57:51Z</published>
	<updated>2009-02-11T10:57:51Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Omair,
&lt;br&gt;&lt;br&gt;Since you're using IcedTea to run jtreg, I would suggest you investigate the
&lt;br&gt;possibility that this is an IcedTea issue.
&lt;br&gt;&lt;br&gt;The bug would appear to be in
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding
&lt;br&gt;so it does not look like a jtreg or jtharness issue.
&lt;br&gt;&lt;br&gt;Can I suggest you try and use Sun's JDK to run jtreg, while still using the
&lt;br&gt;JDK of your choice to execute the tests.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;Omair Majid wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi all,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I am trying to generate xml reports from jtreg. The problem is that 
&lt;br&gt;&amp;gt; jtreg throws a StackOverflowError when writing the output xml file 
&lt;br&gt;&amp;gt; when running the jdk tests. The xml report works fine for the 16 
&lt;br&gt;&amp;gt; compiler tests and 1351 langtools tests.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I am using Icedtea6 to run the tests. These are the commands it executes:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; $ mkdir -p test/jdk/JTwork test/jdk/JTreport
&lt;br&gt;&amp;gt; $ /notnfs/omajid/icedtea6/bootstrap/jdk1.6.0/bin/java \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -jar test/jtreg.jar -v1 -a -ignore:quiet \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -w:test/jdk/JTwork -r:test/jdk/JTreport \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -s -jdk:`pwd`/openjdk/control/build/linux-i586/j2sdk-image \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; `pwd`/openjdk/jdk/test \
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | tee test/check-jdk.log
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The error appears after the jtreg run completes:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [ lots of output ]
&lt;br&gt;&amp;gt; Passed: vm/verifier/VerifyProtectedConstructor.java
&lt;br&gt;&amp;gt; Passed: vm/verifier/VerifyStackForExceptionHandlers.java
&lt;br&gt;&amp;gt; Test results: passed: 3,306; failed: 73; error: 5
&lt;br&gt;&amp;gt; Exception in thread &amp;quot;main&amp;quot; java.lang.StackOverflowError
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at sun.nio.cs.UTF_8.updatePositions(UTF_8.java:76)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:411)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:466)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:561)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at java.lang.StringCoding$StringEncoder.encode(StringCoding.java:258)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at java.lang.StringCoding.encode(StringCoding.java:290)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at java.lang.String.getBytes(String.java:954)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo.inEncoding(EncodingInfo.java:413) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo.access$100(EncodingInfo.java:62) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:205) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; [...SNIP...]
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; at 
&lt;br&gt;&amp;gt; com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181) 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Has anyone ever seen this before?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Omair
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21961815.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21961474</id>
	<title>jtreg throws StackOverflowError when writing xml report</title>
	<published>2009-02-11T10:38:17Z</published>
	<updated>2009-02-11T10:38:17Z</updated>
	<author>
		<name>Omair Majid</name>
	</author>
	<content type="html">Hi all,
&lt;br&gt;&lt;br&gt;I am trying to generate xml reports from jtreg. The problem is that 
&lt;br&gt;jtreg throws a StackOverflowError when writing the output xml file when 
&lt;br&gt;running the jdk tests. The xml report works fine for the 16 compiler 
&lt;br&gt;tests and 1351 langtools tests.
&lt;br&gt;&lt;br&gt;I am using Icedtea6 to run the tests. These are the commands it executes:
&lt;br&gt;&lt;br&gt;$ mkdir -p test/jdk/JTwork test/jdk/JTreport
&lt;br&gt;$ /notnfs/omajid/icedtea6/bootstrap/jdk1.6.0/bin/java \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Djavatest.report.kinds=&amp;quot;xml text html&amp;quot; \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-jar test/jtreg.jar -v1 -a -ignore:quiet \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-w:test/jdk/JTwork -r:test/jdk/JTreport \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-s -jdk:`pwd`/openjdk/control/build/linux-i586/j2sdk-image \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;`pwd`/openjdk/jdk/test \
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| tee test/check-jdk.log
&lt;br&gt;&lt;br&gt;The error appears after the jtreg run completes:
&lt;br&gt;&lt;br&gt;[ lots of output ]
&lt;br&gt;Passed: vm/verifier/VerifyProtectedConstructor.java
&lt;br&gt;Passed: vm/verifier/VerifyStackForExceptionHandlers.java
&lt;br&gt;Test results: passed: 3,306; failed: 73; error: 5
&lt;br&gt;Exception in thread &amp;quot;main&amp;quot; java.lang.StackOverflowError
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8.updatePositions(UTF_8.java:76)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:411)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:466)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:561)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at java.lang.StringCoding$StringEncoder.encode(StringCoding.java:258)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at java.lang.StringCoding.encode(StringCoding.java:290)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at java.lang.String.getBytes(String.java:954)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo.inEncoding(EncodingInfo.java:413)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo.access$100(EncodingInfo.java:62)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:205)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[...SNIP...]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;at 
&lt;br&gt;com.sun.org.apache.xml.internal.serializer.EncodingInfo$EncodingImpl.isInEncoding(EncodingInfo.java:181)
&lt;br&gt;&lt;br&gt;&lt;br&gt;Has anyone ever seen this before?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Omair
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jtreg-throws-StackOverflowError-when-writing-xml-report-tp21961474p21961474.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21802818</id>
	<title>Re: What's up with jdk/test/TestEnv.java?</title>
	<published>2009-02-02T18:10:10Z</published>
	<updated>2009-02-02T18:10:10Z</updated>
	<author>
		<name>Joseph D. Darcy</name>
	</author>
	<content type="html">On 02/02/09 01:37 AM, Alan Bateman wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Martin Buchholz wrote:
&lt;br&gt;&amp;gt;&amp;gt; I've been trying to get the jtreg tests
&lt;br&gt;&amp;gt;&amp;gt; currently failing with UnknownHostException
&lt;br&gt;&amp;gt;&amp;gt; to start passing instead.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I looked at jdk/test/TestEnv.java
&lt;br&gt;&amp;gt;&amp;gt; which looks perfectly designed for our needs.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; But it's not in openjdk7...!?!?
&lt;br&gt;&amp;gt;&amp;gt; (normally I would expect to see things the other way around)
&lt;br&gt;&amp;gt;&amp;gt; In openjdk7 I just see the hostnames hardcoded into
&lt;br&gt;&amp;gt;&amp;gt; jdk/test/java/nio/channels/TestUtil.java
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Do y'all plan to forward-port jdk/test/TestEnv.java to openjdk7?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Martin
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; TestEnv was my attempt to centralize the host dependencies so that 
&lt;br&gt;&amp;gt; they could be specified to jtreg as a properties file (and make it a 
&lt;br&gt;&amp;gt; bit easier to run them outside of Sun's network). Joe was anxious we 
&lt;br&gt;&amp;gt; do something about this in 6open so that is why it was pushed there 
&lt;br&gt;&amp;gt; first (back in 6open-b12). It's on my list to push this to the jdk7/tl 
&lt;br&gt;&amp;gt; repository.
&lt;/div&gt;&lt;br&gt;For the curious, this is bug 6720349 &amp;quot;(ch) Channels tests depending on 
&lt;br&gt;hosts inside Sun.&amp;quot;
&lt;br&gt;&lt;br&gt;-Joe
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/What%27s-up-with-jdk-test-TestEnv.java--tp21780696p21802818.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21792875</id>
	<title>Re: What's up with jdk/test/TestEnv.java?</title>
	<published>2009-02-02T01:37:00Z</published>
	<updated>2009-02-02T01:37:00Z</updated>
	<author>
		<name>Alan Bateman</name>
	</author>
	<content type="html">Martin Buchholz wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I've been trying to get the jtreg tests
&lt;br&gt;&amp;gt; currently failing with UnknownHostException
&lt;br&gt;&amp;gt; to start passing instead.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I looked at jdk/test/TestEnv.java
&lt;br&gt;&amp;gt; which looks perfectly designed for our needs.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; But it's not in openjdk7...!?!?
&lt;br&gt;&amp;gt; (normally I would expect to see things the other way around)
&lt;br&gt;&amp;gt; In openjdk7 I just see the hostnames hardcoded into
&lt;br&gt;&amp;gt; jdk/test/java/nio/channels/TestUtil.java
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Do y'all plan to forward-port jdk/test/TestEnv.java to openjdk7?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Martin
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;TestEnv was my attempt to centralize the host dependencies so that they 
&lt;br&gt;could be specified to jtreg as a properties file (and make it a bit 
&lt;br&gt;easier to run them outside of Sun's network). Joe was anxious we do 
&lt;br&gt;something about this in 6open so that is why it was pushed there first 
&lt;br&gt;(back in 6open-b12). It's on my list to push this to the jdk7/tl 
&lt;br&gt;repository.
&lt;br&gt;&lt;br&gt;-Alan.
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/What%27s-up-with-jdk-test-TestEnv.java--tp21780696p21792875.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21780696</id>
	<title>What's up with jdk/test/TestEnv.java?</title>
	<published>2009-02-01T13:36:58Z</published>
	<updated>2009-02-01T13:36:58Z</updated>
	<author>
		<name>martinrb</name>
	</author>
	<content type="html">I've been trying to get the jtreg tests
&lt;br&gt;currently failing with UnknownHostException
&lt;br&gt;to start passing instead.
&lt;br&gt;&lt;br&gt;I looked at jdk/test/TestEnv.java
&lt;br&gt;which looks perfectly designed for our needs.
&lt;br&gt;&lt;br&gt;But it's not in openjdk7...!?!?
&lt;br&gt;(normally I would expect to see things the other way around)
&lt;br&gt;In openjdk7 I just see the hostnames hardcoded into
&lt;br&gt;jdk/test/java/nio/channels/TestUtil.java
&lt;br&gt;&lt;br&gt;Do y'all plan to forward-port jdk/test/TestEnv.java to openjdk7?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/What%27s-up-with-jdk-test-TestEnv.java--tp21780696p21780696.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21465762</id>
	<title>Re: Allowing partial jtreg samejvm safe runs</title>
	<published>2009-01-14T13:38:12Z</published>
	<updated>2009-01-14T13:38:12Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Mark,
&lt;br&gt;&lt;br&gt;Thanks for the idea behind this patch, and for the patch too.
&lt;br&gt;&lt;br&gt;To you and other jtreg users,
&lt;br&gt;&lt;br&gt;I'd be interested in comments regarding the relative merits of
&lt;br&gt;white-listing vs black-listing. &amp;nbsp;
&lt;br&gt;&lt;br&gt;I'd also be interested in comments regarding the feature of
&lt;br&gt;only using the whitelist when running the whole test suite.
&lt;br&gt;An alternative proposal would be to only use the whitelist
&lt;br&gt;in a default mode, where neither -othervm or -samevm is
&lt;br&gt;defined. &amp;nbsp;Specifying either switch would disable the whitelist
&lt;br&gt;(or blacklist?) lookup.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Mark Wielaard wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Jonathan Gibbons has been extending jtreg so that tests can be run in
&lt;br&gt;&amp;gt; the same vm. He also made it so that most langtools tests are run that
&lt;br&gt;&amp;gt; way. That brings an enormous speed up. Since running all jdk tests takes
&lt;br&gt;&amp;gt; ages it would be great if we could use this same speedup there.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Problem is that -samevm only works if all tests have been adapted to
&lt;br&gt;&amp;gt; behave well (or marked as needing /othervm). So my idea was to add a
&lt;br&gt;&amp;gt; &amp;quot;whitelist mechanism&amp;quot; so you can indicate which (sub)dirs are ready to
&lt;br&gt;&amp;gt; be run with samevm.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Luckily jtreg has mostly been setup for this already. All Actions ask
&lt;br&gt;&amp;gt; their Script whether or not they should be running in an othervm. So we
&lt;br&gt;&amp;gt; hook into that to check the scripts location against a whitelist.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I choose the TEST.ROOT file as the location of the whitelist. Since that
&lt;br&gt;&amp;gt; is also the root of the test suite. I made the code so that the
&lt;br&gt;&amp;gt; whitelist is only used when running the full test suite from the root.
&lt;br&gt;&amp;gt; That way you can still experiment with -samevm or -othervm when running
&lt;br&gt;&amp;gt; subtrees of tests.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Also CCed &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21465762&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jdk-regtest@...&lt;/a&gt; since that address is mentioned in the
&lt;br&gt;&amp;gt; TEST.ROOT file with an request to contact them if you change anything in
&lt;br&gt;&amp;gt; that file.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Below is the implementation as I checked into icedtea6 (patch also
&lt;br&gt;&amp;gt; attached).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21465762&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/Main.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (createParameters): Set same jvm safe dirs when non-null.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (getSameJVMSafeDirs): New method that reads samejvmsafe property
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; from TEST.ROOT.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (sameJVMSafeDirs): New private field.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/RegressionParameters.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (SAME_JVM_SAFE_DIRS): New static final field.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (load): Read same jvm safe dirs.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (save0): Write same jvm safe dirs.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (getSameJVMSafeDirs): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (setSameJVMSafeDirs): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/RegressionScript.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (run): Set testDirPath.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (isOtherJVM): Take same jvm safe into account.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (isSameJVMSafe): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (testDirPath): New private field.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; For icedtea6 I did a quick scan of the openjdk/jdk/test subdirs and
&lt;br&gt;&amp;gt; listed an initial set that work with -samejvm and added a patch to
&lt;br&gt;&amp;gt; augment the TEST.ROOT file (attached).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21465762&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * patches/icedtea-samejvm-safe.patch: New patch.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * Makefile.am (ICEDTEA_PATCHES): Add new patch.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; (check-jdk): Run jtreg with -samevm.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; * HACKING: Document new patch.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Comments on the idea and the implementation very appreciated.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; With this 'make check-jdk' takes a little bit less than 3 hours on my
&lt;br&gt;&amp;gt; machine now. It was almost 3.5 hours, so it already saves a lot of time.
&lt;br&gt;&amp;gt; But we need to make much more tests work with samevm to bring the total
&lt;br&gt;&amp;gt; test running time down to something an ordinary developer would be
&lt;br&gt;&amp;gt; comfortable with running every day.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; We have to see whether or not that is really possible. It seems jdi, rmi
&lt;br&gt;&amp;gt; and awt take up a lot of the time needed to run all tests, and I am not
&lt;br&gt;&amp;gt; sure those tests can be speed up much.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cheers,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Mark
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Allowing-partial-jtreg-samejvm-safe-runs-tp20648424p21465762.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21025560</id>
	<title>Re: RFE: compile/fail tag to recognize compiler failures</title>
	<published>2008-12-15T17:22:39Z</published>
	<updated>2008-12-15T17:22:39Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Mahmood,
&lt;br&gt;&lt;br&gt;This is not possible because of a combination of reasons, but there are 
&lt;br&gt;workarounds.
&lt;br&gt;&lt;br&gt;The problem is that jtreg can potentially invoke the compiler in another 
&lt;br&gt;JVM, and so it
&lt;br&gt;would require cooperation from the compiler to get the information you 
&lt;br&gt;require. &amp;nbsp;
&lt;br&gt;But jtreg is also spec-ed to work with older versions of the compiler, 
&lt;br&gt;where we cannot
&lt;br&gt;retrofit any such behavior.
&lt;br&gt;&lt;br&gt;There are two workarounds.
&lt;br&gt;&lt;br&gt;One is to write the test using &amp;quot;@run main&amp;quot; instead of &amp;quot;@compile/fail&amp;quot; 
&lt;br&gt;and to use
&lt;br&gt;JSR 199 to drive the compiler. &amp;nbsp; You can get significantly better 
&lt;br&gt;control of the compiler
&lt;br&gt;using JSR 199. &amp;nbsp;You can have the code to invoke the compiler in a 
&lt;br&gt;library class,
&lt;br&gt;and have the library class put on the the classpath with the @library tag.
&lt;br&gt;You can run this sort of test with something like this
&lt;br&gt;&amp;nbsp; &amp;nbsp; @library ../lib
&lt;br&gt;&amp;nbsp; &amp;nbsp; @build MyCompilerWrapper
&lt;br&gt;&amp;nbsp; &amp;nbsp; @run main MyCompilerWrapper args
&lt;br&gt;&lt;br&gt;The second workaround is to use golden file testing. &amp;nbsp;To avoid dependence on
&lt;br&gt;the localization of error messages, you can use a hidden compiler option
&lt;br&gt;-XDrawDiagnostics, which prints the error message in a &amp;quot;raw&amp;quot; 
&lt;br&gt;non-localized form.
&lt;br&gt;You can run this sort of test with
&lt;br&gt;&amp;nbsp; &amp;nbsp; @compile/fail/ref=MyGolden.out -XDrawDiagnostics MyTest.java
&lt;br&gt;&lt;br&gt;&lt;br&gt;You should be able to find examples of both types of test in the langtools
&lt;br&gt;repository. &amp;nbsp; For use of @library, see, for example, javadoc tests and 
&lt;br&gt;JavadocTester (sp?)
&lt;br&gt;For use of -XDrawDiagnostics, grep the javac tests.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Mahmood Ali wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Greetings,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I would like to request changing compile/fail tag semantics a bit.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Currently if the compile fails to compile the provided class, the test 
&lt;br&gt;&amp;gt; passes regardless of the reason of the failure. &amp;nbsp;jtreg does not 
&lt;br&gt;&amp;gt; distinguish between failures due to compiler reported errors or 
&lt;br&gt;&amp;gt; unexpected exceptions in the compiler.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I request that jtreg to recognize these unexpected errors and treat 
&lt;br&gt;&amp;gt; them differently from expected errors and not ignore them silently.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt; Mahmood
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/RFE%3A-compile-fail-tag-to-recognize-compiler-failures-tp21025440p21025560.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21025440</id>
	<title>RFE: compile/fail tag to recognize compiler failures</title>
	<published>2008-12-15T17:00:27Z</published>
	<updated>2008-12-15T17:00:27Z</updated>
	<author>
		<name>Mahmood Ali-3</name>
	</author>
	<content type="html">Greetings,
&lt;br&gt;&lt;br&gt;I would like to request changing compile/fail tag semantics a bit.
&lt;br&gt;&lt;br&gt;Currently if the compile fails to compile the provided class, the test &amp;nbsp;
&lt;br&gt;passes regardless of the reason of the failure. &amp;nbsp;jtreg does not &amp;nbsp;
&lt;br&gt;distinguish between failures due to compiler reported errors or &amp;nbsp;
&lt;br&gt;unexpected exceptions in the compiler.
&lt;br&gt;&lt;br&gt;I request that jtreg to recognize these unexpected errors and treat &amp;nbsp;
&lt;br&gt;them differently from expected errors and not ignore them silently.
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Mahmood
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/RFE%3A-compile-fail-tag-to-recognize-compiler-failures-tp21025440p21025440.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-20648869</id>
	<title>Re: Allowing partial jtreg samejvm safe runs</title>
	<published>2008-11-23T09:57:13Z</published>
	<updated>2008-11-23T09:57:13Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Mark,
&lt;br&gt;&lt;br&gt;I like this approach in that we don't mess up the tests with /othervm &amp;nbsp;
&lt;br&gt;keywords
&lt;br&gt;unnecessarily. &amp;nbsp;I think it is worth distinguishing tests which are &amp;nbsp;
&lt;br&gt;inherently
&lt;br&gt;&amp;quot;othervm&amp;quot; from those which are &amp;quot;currently othervm but potentially &amp;nbsp;
&lt;br&gt;samevm with
&lt;br&gt;a bit of effort&amp;quot;.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;On Nov 23, 2008, at 9:17 AM, Mark Wielaard wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Jonathan Gibbons has been extending jtreg so that tests can be run in
&lt;br&gt;&amp;gt; the same vm. He also made it so that most langtools tests are run that
&lt;br&gt;&amp;gt; way. That brings an enormous speed up. Since running all jdk tests &amp;nbsp;
&lt;br&gt;&amp;gt; takes
&lt;br&gt;&amp;gt; ages it would be great if we could use this same speedup there.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Problem is that -samevm only works if all tests have been adapted to
&lt;br&gt;&amp;gt; behave well (or marked as needing /othervm). So my idea was to add a
&lt;br&gt;&amp;gt; &amp;quot;whitelist mechanism&amp;quot; so you can indicate which (sub)dirs are ready to
&lt;br&gt;&amp;gt; be run with samevm.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Luckily jtreg has mostly been setup for this already. All Actions ask
&lt;br&gt;&amp;gt; their Script whether or not they should be running in an othervm. So &amp;nbsp;
&lt;br&gt;&amp;gt; we
&lt;br&gt;&amp;gt; hook into that to check the scripts location against a whitelist.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I choose the TEST.ROOT file as the location of the whitelist. Since &amp;nbsp;
&lt;br&gt;&amp;gt; that
&lt;br&gt;&amp;gt; is also the root of the test suite. I made the code so that the
&lt;br&gt;&amp;gt; whitelist is only used when running the full test suite from the root.
&lt;br&gt;&amp;gt; That way you can still experiment with -samevm or -othervm when &amp;nbsp;
&lt;br&gt;&amp;gt; running
&lt;br&gt;&amp;gt; subtrees of tests.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Also CCed &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648869&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jdk-regtest@...&lt;/a&gt; since that address is mentioned in the
&lt;br&gt;&amp;gt; TEST.ROOT file with an request to contact them if you change &amp;nbsp;
&lt;br&gt;&amp;gt; anything in
&lt;br&gt;&amp;gt; that file.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Below is the implementation as I checked into icedtea6 (patch also
&lt;br&gt;&amp;gt; attached).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648869&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* test/jtreg/com/sun/javatest/regtest/Main.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(createParameters): Set same jvm safe dirs when non-null.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(getSameJVMSafeDirs): New method that reads samejvmsafe property
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;from TEST.ROOT.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(sameJVMSafeDirs): New private field.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* test/jtreg/com/sun/javatest/regtest/RegressionParameters.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(SAME_JVM_SAFE_DIRS): New static final field.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(load): Read same jvm safe dirs.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(save0): Write same jvm safe dirs.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(getSameJVMSafeDirs): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(setSameJVMSafeDirs): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* test/jtreg/com/sun/javatest/regtest/RegressionScript.java
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(run): Set testDirPath.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(isOtherJVM): Take same jvm safe into account.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(isSameJVMSafe): New method.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(testDirPath): New private field.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; For icedtea6 I did a quick scan of the openjdk/jdk/test subdirs and
&lt;br&gt;&amp;gt; listed an initial set that work with -samejvm and added a patch to
&lt;br&gt;&amp;gt; augment the TEST.ROOT file (attached).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648869&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* patches/icedtea-samejvm-safe.patch: New patch.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* Makefile.am (ICEDTEA_PATCHES): Add new patch.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(check-jdk): Run jtreg with -samevm.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* HACKING: Document new patch.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Comments on the idea and the implementation very appreciated.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; With this 'make check-jdk' takes a little bit less than 3 hours on my
&lt;br&gt;&amp;gt; machine now. It was almost 3.5 hours, so it already saves a lot of &amp;nbsp;
&lt;br&gt;&amp;gt; time.
&lt;br&gt;&amp;gt; But we need to make much more tests work with samevm to bring the &amp;nbsp;
&lt;br&gt;&amp;gt; total
&lt;br&gt;&amp;gt; test running time down to something an ordinary developer would be
&lt;br&gt;&amp;gt; comfortable with running every day.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; We have to see whether or not that is really possible. It seems jdi, &amp;nbsp;
&lt;br&gt;&amp;gt; rmi
&lt;br&gt;&amp;gt; and awt take up a lot of the time needed to run all tests, and I am &amp;nbsp;
&lt;br&gt;&amp;gt; not
&lt;br&gt;&amp;gt; sure those tests can be speed up much.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cheers,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Mark
&lt;br&gt;&amp;gt; diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/Main.java
&lt;br&gt;&amp;gt; --- a/test/jtreg/com/sun/javatest/regtest/Main.java	Fri Nov 21 &amp;nbsp;
&lt;br&gt;&amp;gt; 18:35:27 2008 -0500
&lt;br&gt;&amp;gt; +++ b/test/jtreg/com/sun/javatest/regtest/Main.java	Sun Nov 23 &amp;nbsp;
&lt;br&gt;&amp;gt; 16:56:34 2008 +0100
&lt;br&gt;&amp;gt; @@ -29,6 +29,7 @@
&lt;br&gt;&amp;gt; import java.io.BufferedReader;
&lt;br&gt;&amp;gt; import java.io.BufferedWriter;
&lt;br&gt;&amp;gt; import java.io.File;
&lt;br&gt;&amp;gt; +import java.io.FileInputStream;
&lt;br&gt;&amp;gt; import java.io.FileNotFoundException;
&lt;br&gt;&amp;gt; import java.io.FileReader;
&lt;br&gt;&amp;gt; import java.io.FileWriter;
&lt;br&gt;&amp;gt; @@ -52,6 +53,7 @@
&lt;br&gt;&amp;gt; import java.util.Iterator;
&lt;br&gt;&amp;gt; import java.util.List;
&lt;br&gt;&amp;gt; import java.util.Map;
&lt;br&gt;&amp;gt; +import java.util.Properties;
&lt;br&gt;&amp;gt; import java.util.TreeMap;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; import com.sun.javatest.CompositeFilter;
&lt;br&gt;&amp;gt; @@ -1354,6 +1356,10 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (ignoreKind != null)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rp.setIgnoreKind(ignoreKind);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sameJVMSafeDirs = getSameJVMSafeDirs(ts);
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sameJVMSafeDirs != null)
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rp.setSameJVMSafeDirs(sameJVMSafeDirs);
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return rp;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } catch (TestSuite.Fault f) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; f.printStackTrace();
&lt;br&gt;&amp;gt; @@ -1372,6 +1378,35 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } catch (IOException e) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return file.getAbsoluteFile();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// Returns directory (prefix) for tests that are same jvm safe
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// read from amejvmsafe property in TEST.ROOT file. Returning &amp;nbsp;
&lt;br&gt;&amp;gt; null
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// means all tests are considered same jvm safe. null is returned
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// when there is no samejvmsafe property, or there was a problem
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// reading it, and when anything else than the test root was &amp;nbsp;
&lt;br&gt;&amp;gt; given
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// as test file argument. Meaning that this only returns &amp;nbsp;
&lt;br&gt;&amp;gt; something
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// non-null if anything was actually specified as same jvm safe &amp;nbsp;
&lt;br&gt;&amp;gt; and
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// the whole test suite is being tested.
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; getSameJVMSafeDirs(File testRoot) {
&lt;br&gt;&amp;gt; +	// Only use the same jvm safe dirs when running from the root.
&lt;br&gt;&amp;gt; +	if (testFileArgs.size() != 1
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;|| ! 
&lt;br&gt;&amp;gt; canon(testFileArgs.iterator().next()).equals(canon(testRoot)))
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;return null;
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; +	try {
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;File file = new File(testRoot, &amp;quot;TEST.ROOT&amp;quot;);
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (file.exists()) {
&lt;br&gt;&amp;gt; +		Properties testRootProps = new Properties();
&lt;br&gt;&amp;gt; +		testRootProps.load(new FileInputStream(file));
&lt;br&gt;&amp;gt; +		String safedirs = testRootProps.getProperty(&amp;quot;samejvmsafe&amp;quot;);
&lt;br&gt;&amp;gt; +		if ((safedirs != null) &amp;&amp; (safedirs.trim().length() &amp;gt; 0))
&lt;br&gt;&amp;gt; +		 &amp;nbsp; &amp;nbsp;return Arrays.asList(StringArray.splitWS(safedirs));
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; +	} catch (IOException ioe) {
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;// Bah, then just assume everything is safe.
&lt;br&gt;&amp;gt; +	}
&lt;br&gt;&amp;gt; +	return null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private String getRelativePath(File base, File f) {
&lt;br&gt;&amp;gt; @@ -1762,6 +1797,7 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; // these args are jtreg extras
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private File baseDirArg;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private boolean sameJVMFlag;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; sameJVMSafeDirs;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private JDK jdk;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private boolean guiFlag;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private boolean reportOnlyFlag;
&lt;br&gt;&amp;gt; diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/ 
&lt;br&gt;&amp;gt; RegressionParameters.java
&lt;br&gt;&amp;gt; --- a/test/jtreg/com/sun/javatest/regtest/RegressionParameters.java	 
&lt;br&gt;&amp;gt; Fri Nov 21 18:35:27 2008 -0500
&lt;br&gt;&amp;gt; +++ b/test/jtreg/com/sun/javatest/regtest/RegressionParameters.java	 
&lt;br&gt;&amp;gt; Sun Nov 23 16:56:34 2008 +0100
&lt;br&gt;&amp;gt; @@ -139,6 +139,7 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private static final String TEST_JAVA_OPTIONS = &amp;quot;.testJavaOpts&amp;quot;;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private static final String IGNORE = &amp;quot;.ignore&amp;quot;;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private static final String RETAIN_ARGS = &amp;quot;.retain&amp;quot;;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;private static final String SAME_JVM_SAFE_DIRS = &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;quot;.samejvmsafedirs&amp;quot;;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; @Override
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; public void load(Map data, boolean checkChecksum) throws &amp;nbsp;
&lt;br&gt;&amp;gt; Interview.Fault {
&lt;br&gt;&amp;gt; @@ -182,6 +183,10 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v = (String) data.get(prefix + RETAIN_ARGS);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (v != null)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;gt; setRetainArgs(Arrays.asList(StringArray.splitSeparator(&amp;quot;\n&amp;quot;, v)));
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;v = (String) data.get(prefix + SAME_JVM_SAFE_DIRS);
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (v != null)
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt; setSameJVMSafeDirs(Arrays.asList(StringArray.splitSeparator(&amp;quot;\n&amp;quot;, &amp;nbsp;
&lt;br&gt;&amp;gt; v)));
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; @SuppressWarnings(&amp;quot;unchecked&amp;quot;)
&lt;br&gt;&amp;gt; @@ -203,6 +208,9 @@
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (jdk != null)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data.put(prefix + JDK, jdk.getPath());
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sameJVMSafeDirs != null)
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;data.put(prefix + SAME_JVM_SAFE_DIRS, &amp;nbsp;
&lt;br&gt;&amp;gt; StringUtils.join(sameJVMSafeDirs, &amp;quot;\n&amp;quot;));
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (retainArgs != null)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data.put(prefix + RETAIN_ARGS, &amp;nbsp;
&lt;br&gt;&amp;gt; StringUtils.join(retainArgs, &amp;quot;\n&amp;quot;));
&lt;br&gt;&amp;gt; @@ -592,6 +600,18 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private Pattern retainFilesPattern;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; //---------------------------------------------------------------------
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;List&amp;lt;String&amp;gt; getSameJVMSafeDirs() {
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return sameJVMSafeDirs;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;void setSameJVMSafeDirs(List&amp;lt;String&amp;gt; sameJVMSafeDirs) {
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.sameJVMSafeDirs= sameJVMSafeDirs;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; sameJVMSafeDirs;
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; //---------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private static final String PATHSEP &amp;nbsp;= &amp;nbsp;
&lt;br&gt;&amp;gt; System.getProperty(&amp;quot;path.separator&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private static final String LINESEP &amp;nbsp;= &amp;nbsp;
&lt;br&gt;&amp;gt; System.getProperty(&amp;quot;line.separator&amp;quot;);
&lt;br&gt;&amp;gt; diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/ 
&lt;br&gt;&amp;gt; RegressionScript.java
&lt;br&gt;&amp;gt; --- a/test/jtreg/com/sun/javatest/regtest/RegressionScript.java	Fri &amp;nbsp;
&lt;br&gt;&amp;gt; Nov 21 18:35:27 2008 -0500
&lt;br&gt;&amp;gt; +++ b/test/jtreg/com/sun/javatest/regtest/RegressionScript.java	Sun &amp;nbsp;
&lt;br&gt;&amp;gt; Nov 23 16:56:34 2008 +0100
&lt;br&gt;&amp;gt; @@ -69,6 +69,10 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; public Status run(String[] argv, TestDescription td, &amp;nbsp;
&lt;br&gt;&amp;gt; TestEnvironment env) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!(env instanceof RegressionEnvironment))
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw new AssertionError();
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; +	String testFilePath = td.getRootRelativePath();
&lt;br&gt;&amp;gt; +	int lastSlash = testFilePath.lastIndexOf('/');
&lt;br&gt;&amp;gt; +	testDirPath = testFilePath.substring(0, lastSlash);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; regEnv = (RegressionEnvironment) env;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; params = regEnv.params;
&lt;br&gt;&amp;gt; @@ -833,7 +837,26 @@
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; boolean isOtherJVM() {
&lt;br&gt;&amp;gt; - &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return params.isOtherJVM();
&lt;br&gt;&amp;gt; +	boolean samevm = !params.isOtherJVM();
&lt;br&gt;&amp;gt; +	if (samevm)
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;return !isSameJVMSafe();
&lt;br&gt;&amp;gt; +	else
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;return true;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// Whether the actions of this script can safely run in the &amp;nbsp;
&lt;br&gt;&amp;gt; same jvm.
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// No same jvm safe dirs given means they are all assumed safe.
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;// If our actions come from a file in a subdir of a safe dir &amp;nbsp;
&lt;br&gt;&amp;gt; that is ok.
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;boolean isSameJVMSafe() {
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;List&amp;lt;String&amp;gt; dirs = params.getSameJVMSafeDirs();
&lt;br&gt;&amp;gt; +	if (dirs == null)
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;return true;
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; +	for (String dir : dirs)
&lt;br&gt;&amp;gt; +	 &amp;nbsp; &amp;nbsp;if (testDirPath.startsWith(dir))
&lt;br&gt;&amp;gt; +		return true;
&lt;br&gt;&amp;gt; +
&lt;br&gt;&amp;gt; +	return false;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; String getJavaProg() {
&lt;br&gt;&amp;gt; @@ -921,5 +944,6 @@
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private RegressionEnvironment regEnv;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; private RegressionParameters params;
&lt;br&gt;&amp;gt; + &amp;nbsp; &amp;nbsp;private String testDirPath;
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;icedtea-samejvm-safe.patch&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Allowing-partial-jtreg-samejvm-safe-runs-tp20648424p20648869.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-20648649</id>
	<title>Re: Allowing partial jtreg samejvm safe runs</title>
	<published>2008-11-23T09:37:19Z</published>
	<updated>2008-11-23T09:37:19Z</updated>
	<author>
		<name>Mark Wielaard</name>
	</author>
	<content type="html">On Sun, 2008-11-23 at 18:17 +0100, Mark Wielaard wrote:
&lt;br&gt;&amp;gt; Also CCed &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648649&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jdk-regtest@...&lt;/a&gt; since that address is mentioned in the
&lt;br&gt;&amp;gt; TEST.ROOT file with an request to contact them if you change anything in
&lt;br&gt;&amp;gt; that file.
&lt;br&gt;&lt;br&gt;This address bounces. Should we change it to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648649&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;discuss@...&lt;/a&gt;?
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;&lt;br&gt;Mark
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Allowing-partial-jtreg-samejvm-safe-runs-tp20648424p20648649.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-20648424</id>
	<title>Allowing partial jtreg samejvm safe runs</title>
	<published>2008-11-23T09:17:54Z</published>
	<updated>2008-11-23T09:17:54Z</updated>
	<author>
		<name>Mark Wielaard</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;Jonathan Gibbons has been extending jtreg so that tests can be run in
&lt;br&gt;the same vm. He also made it so that most langtools tests are run that
&lt;br&gt;way. That brings an enormous speed up. Since running all jdk tests takes
&lt;br&gt;ages it would be great if we could use this same speedup there.
&lt;br&gt;&lt;br&gt;Problem is that -samevm only works if all tests have been adapted to
&lt;br&gt;behave well (or marked as needing /othervm). So my idea was to add a
&lt;br&gt;&amp;quot;whitelist mechanism&amp;quot; so you can indicate which (sub)dirs are ready to
&lt;br&gt;be run with samevm.
&lt;br&gt;&lt;br&gt;Luckily jtreg has mostly been setup for this already. All Actions ask
&lt;br&gt;their Script whether or not they should be running in an othervm. So we
&lt;br&gt;hook into that to check the scripts location against a whitelist.
&lt;br&gt;&lt;br&gt;I choose the TEST.ROOT file as the location of the whitelist. Since that
&lt;br&gt;is also the root of the test suite. I made the code so that the
&lt;br&gt;whitelist is only used when running the full test suite from the root.
&lt;br&gt;That way you can still experiment with -samevm or -othervm when running
&lt;br&gt;subtrees of tests.
&lt;br&gt;&lt;br&gt;Also CCed &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648424&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jdk-regtest@...&lt;/a&gt; since that address is mentioned in the
&lt;br&gt;TEST.ROOT file with an request to contact them if you change anything in
&lt;br&gt;that file.
&lt;br&gt;&lt;br&gt;Below is the implementation as I checked into icedtea6 (patch also
&lt;br&gt;attached).
&lt;br&gt;&lt;br&gt;2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648424&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/Main.java
&lt;br&gt;&amp;nbsp; &amp;nbsp; (createParameters): Set same jvm safe dirs when non-null.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (getSameJVMSafeDirs): New method that reads samejvmsafe property
&lt;br&gt;&amp;nbsp; &amp;nbsp; from TEST.ROOT.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (sameJVMSafeDirs): New private field.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/RegressionParameters.java
&lt;br&gt;&amp;nbsp; &amp;nbsp; (SAME_JVM_SAFE_DIRS): New static final field.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (load): Read same jvm safe dirs.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (save0): Write same jvm safe dirs.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (getSameJVMSafeDirs): New method.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (setSameJVMSafeDirs): New method.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * test/jtreg/com/sun/javatest/regtest/RegressionScript.java
&lt;br&gt;&amp;nbsp; &amp;nbsp; (run): Set testDirPath.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (isOtherJVM): Take same jvm safe into account.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (isSameJVMSafe): New method.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (testDirPath): New private field.
&lt;br&gt;&lt;br&gt;For icedtea6 I did a quick scan of the openjdk/jdk/test subdirs and
&lt;br&gt;listed an initial set that work with -samejvm and added a patch to
&lt;br&gt;augment the TEST.ROOT file (attached).
&lt;br&gt;&lt;br&gt;2008-11-23 &amp;nbsp;Mark Wielaard &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=20648424&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * patches/icedtea-samejvm-safe.patch: New patch.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Makefile.am (ICEDTEA_PATCHES): Add new patch.
&lt;br&gt;&amp;nbsp; &amp;nbsp; (check-jdk): Run jtreg with -samevm.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * HACKING: Document new patch.
&lt;br&gt;&lt;br&gt;Comments on the idea and the implementation very appreciated.
&lt;br&gt;&lt;br&gt;With this 'make check-jdk' takes a little bit less than 3 hours on my
&lt;br&gt;machine now. It was almost 3.5 hours, so it already saves a lot of time.
&lt;br&gt;But we need to make much more tests work with samevm to bring the total
&lt;br&gt;test running time down to something an ordinary developer would be
&lt;br&gt;comfortable with running every day.
&lt;br&gt;&lt;br&gt;We have to see whether or not that is really possible. It seems jdi, rmi
&lt;br&gt;and awt take up a lot of the time needed to run all tests, and I am not
&lt;br&gt;sure those tests can be speed up much.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;&lt;br&gt;Mark
&lt;br&gt;&lt;br /&gt;diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/Main.java
&lt;br&gt;--- a/test/jtreg/com/sun/javatest/regtest/Main.java	Fri Nov 21 18:35:27 2008 -0500
&lt;br&gt;+++ b/test/jtreg/com/sun/javatest/regtest/Main.java	Sun Nov 23 16:56:34 2008 +0100
&lt;br&gt;@@ -29,6 +29,7 @@
&lt;br&gt;&amp;nbsp;import java.io.BufferedReader;
&lt;br&gt;&amp;nbsp;import java.io.BufferedWriter;
&lt;br&gt;&amp;nbsp;import java.io.File;
&lt;br&gt;+import java.io.FileInputStream;
&lt;br&gt;&amp;nbsp;import java.io.FileNotFoundException;
&lt;br&gt;&amp;nbsp;import java.io.FileReader;
&lt;br&gt;&amp;nbsp;import java.io.FileWriter;
&lt;br&gt;@@ -52,6 +53,7 @@
&lt;br&gt;&amp;nbsp;import java.util.Iterator;
&lt;br&gt;&amp;nbsp;import java.util.List;
&lt;br&gt;&amp;nbsp;import java.util.Map;
&lt;br&gt;+import java.util.Properties;
&lt;br&gt;&amp;nbsp;import java.util.TreeMap;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;import com.sun.javatest.CompositeFilter;
&lt;br&gt;@@ -1354,6 +1356,10 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (ignoreKind != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rp.setIgnoreKind(ignoreKind);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sameJVMSafeDirs = getSameJVMSafeDirs(ts);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sameJVMSafeDirs != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rp.setSameJVMSafeDirs(sameJVMSafeDirs);
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return rp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (TestSuite.Fault f) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;f.printStackTrace();
&lt;br&gt;@@ -1372,6 +1378,35 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (IOException e) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return file.getAbsoluteFile();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// Returns directory (prefix) for tests that are same jvm safe
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// read from amejvmsafe property in TEST.ROOT file. Returning null
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// means all tests are considered same jvm safe. null is returned
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// when there is no samejvmsafe property, or there was a problem
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// reading it, and when anything else than the test root was given
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// as test file argument. Meaning that this only returns something
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// non-null if anything was actually specified as same jvm safe and
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// the whole test suite is being tested.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; getSameJVMSafeDirs(File testRoot) {
&lt;br&gt;+	// Only use the same jvm safe dirs when running from the root.
&lt;br&gt;+	if (testFileArgs.size() != 1
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;|| !canon(testFileArgs.iterator().next()).equals(canon(testRoot)))
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;return null;
&lt;br&gt;+
&lt;br&gt;+	try {
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;File file = new File(testRoot, &amp;quot;TEST.ROOT&amp;quot;);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (file.exists()) {
&lt;br&gt;+		Properties testRootProps = new Properties();
&lt;br&gt;+		testRootProps.load(new FileInputStream(file));
&lt;br&gt;+		String safedirs = testRootProps.getProperty(&amp;quot;samejvmsafe&amp;quot;);
&lt;br&gt;+		if ((safedirs != null) &amp;&amp; (safedirs.trim().length() &amp;gt; 0))
&lt;br&gt;+		 &amp;nbsp; &amp;nbsp;return Arrays.asList(StringArray.splitWS(safedirs));
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+	} catch (IOException ioe) {
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;// Bah, then just assume everything is safe.
&lt;br&gt;+	}
&lt;br&gt;+	return null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private String getRelativePath(File base, File f) {
&lt;br&gt;@@ -1762,6 +1797,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;// these args are jtreg extras
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private File baseDirArg;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private boolean sameJVMFlag;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; sameJVMSafeDirs;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private JDK jdk;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private boolean guiFlag;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private boolean reportOnlyFlag;
&lt;br&gt;diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/RegressionParameters.java
&lt;br&gt;--- a/test/jtreg/com/sun/javatest/regtest/RegressionParameters.java	Fri Nov 21 18:35:27 2008 -0500
&lt;br&gt;+++ b/test/jtreg/com/sun/javatest/regtest/RegressionParameters.java	Sun Nov 23 16:56:34 2008 +0100
&lt;br&gt;@@ -139,6 +139,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private static final String TEST_JAVA_OPTIONS = &amp;quot;.testJavaOpts&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private static final String IGNORE = &amp;quot;.ignore&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private static final String RETAIN_ARGS = &amp;quot;.retain&amp;quot;;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;private static final String SAME_JVM_SAFE_DIRS = &amp;quot;.samejvmsafedirs&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;@Override
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;public void load(Map data, boolean checkChecksum) throws Interview.Fault {
&lt;br&gt;@@ -182,6 +183,10 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;v = (String) data.get(prefix + RETAIN_ARGS);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (v != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setRetainArgs(Arrays.asList(StringArray.splitSeparator(&amp;quot;\n&amp;quot;, v)));
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;v = (String) data.get(prefix + SAME_JVM_SAFE_DIRS);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (v != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setSameJVMSafeDirs(Arrays.asList(StringArray.splitSeparator(&amp;quot;\n&amp;quot;, v)));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;@SuppressWarnings(&amp;quot;unchecked&amp;quot;)
&lt;br&gt;@@ -203,6 +208,9 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (jdk != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;data.put(prefix + JDK, jdk.getPath());
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sameJVMSafeDirs != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;data.put(prefix + SAME_JVM_SAFE_DIRS, StringUtils.join(sameJVMSafeDirs, &amp;quot;\n&amp;quot;));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (retainArgs != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;data.put(prefix + RETAIN_ARGS, StringUtils.join(retainArgs, &amp;quot;\n&amp;quot;));
&lt;br&gt;@@ -592,6 +600,18 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private Pattern retainFilesPattern;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;//---------------------------------------------------------------------
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;List&amp;lt;String&amp;gt; getSameJVMSafeDirs() {
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return sameJVMSafeDirs;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;void setSameJVMSafeDirs(List&amp;lt;String&amp;gt; sameJVMSafeDirs) {
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.sameJVMSafeDirs= sameJVMSafeDirs;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;private List&amp;lt;String&amp;gt; sameJVMSafeDirs;
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;//---------------------------------------------------------------------
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private static final String PATHSEP &amp;nbsp;= System.getProperty(&amp;quot;path.separator&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private static final String LINESEP &amp;nbsp;= System.getProperty(&amp;quot;line.separator&amp;quot;);
&lt;br&gt;diff -r 9aae858397f9 test/jtreg/com/sun/javatest/regtest/RegressionScript.java
&lt;br&gt;--- a/test/jtreg/com/sun/javatest/regtest/RegressionScript.java	Fri Nov 21 18:35:27 2008 -0500
&lt;br&gt;+++ b/test/jtreg/com/sun/javatest/regtest/RegressionScript.java	Sun Nov 23 16:56:34 2008 +0100
&lt;br&gt;@@ -69,6 +69,10 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;public Status run(String[] argv, TestDescription td, TestEnvironment env) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!(env instanceof RegressionEnvironment))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;throw new AssertionError();
&lt;br&gt;+
&lt;br&gt;+	String testFilePath = td.getRootRelativePath();
&lt;br&gt;+	int lastSlash = testFilePath.lastIndexOf('/');
&lt;br&gt;+	testDirPath = testFilePath.substring(0, lastSlash);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;regEnv = (RegressionEnvironment) env;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;params = regEnv.params;
&lt;br&gt;@@ -833,7 +837,26 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;boolean isOtherJVM() {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return params.isOtherJVM();
&lt;br&gt;+	boolean samevm = !params.isOtherJVM();
&lt;br&gt;+	if (samevm)
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;return !isSameJVMSafe();
&lt;br&gt;+	else
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;return true;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// Whether the actions of this script can safely run in the same jvm.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// No same jvm safe dirs given means they are all assumed safe.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;// If our actions come from a file in a subdir of a safe dir that is ok.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;boolean isSameJVMSafe() {
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;List&amp;lt;String&amp;gt; dirs = params.getSameJVMSafeDirs();
&lt;br&gt;+	if (dirs == null)
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;return true;
&lt;br&gt;+
&lt;br&gt;+	for (String dir : dirs)
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;if (testDirPath.startsWith(dir))
&lt;br&gt;+		return true;
&lt;br&gt;+
&lt;br&gt;+	return false;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;String getJavaProg() {
&lt;br&gt;@@ -921,5 +944,6 @@
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private RegressionEnvironment regEnv;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;private RegressionParameters params;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;private String testDirPath;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br /&gt;&lt;tt&gt;[icedtea-samejvm-safe.patch]&lt;/tt&gt;&lt;br /&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;tt&gt;--- openjdk.orig/jdk/test/TEST.ROOT	2008-11-06 09:44:52.000000000 +0100
&lt;br&gt;+++ openjdk/jdk/test/TEST.ROOT	2008-11-23 16:15:53.000000000 +0100
&lt;br&gt;@@ -4,3 +4,9 @@
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;# The list of keywords supported in the entire test suite
&lt;br&gt;&amp;nbsp;keys=2d dnd i18n
&lt;br&gt;+
&lt;br&gt;+# List if directory (prefixes) that contain test that are safe to run in
&lt;br&gt;+# -samejvm mode. Only used if the test root (dir containing this file) is
&lt;br&gt;+# given to jtreg and the -samejvm argument is used, ignored otherwise
&lt;br&gt;+# (meaning all tests are assumed to be same jvm safe).
&lt;br&gt;+samejvmsafe=com/sun/crypto com/sun/management com/sun/media com/sun/security java/beans/beancontext java/beans/PropertyChangeSupport java/beans/Statement java/beans/VetoableChangeSupport java/lang/Boolean java/lang/Byte java/lang/Double java/lang/Float java/lang/Integer java/lang/Long java/lang/Short java/lang/Math java/lang/StrictMath java/lang/String java/lang/Throwable java/lang/instrument java/math java/net/URI java/net/URLDecoder java/net/URLEncoder java/nio/Buffer java/nio/ByteOrder java/nio/MappedByteBuffer java/nio/channels/Channels java/nio/channels/DatagramChannel java/nio/channels/spi java/security/cert java/security/Provider java/text java/util/jar java/util/zip java/util/Array java/util/BitSet java/util/Collection java/util/List javax/crypto/Cipher javax/imageio javax/management/openmbean javax/naming javax/rmi javax/sound sun/net/www/protocol sun/misc sun/nio sun/rmi sun/security/pkcs11 sun/security/rsa sun/security/util sun/security/x509 sun/util
&lt;br&gt;&lt;/tt&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Allowing-partial-jtreg-samejvm-safe-runs-tp20648424p20648424.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-20100043</id>
	<title>New jtreg version, 4.0 b02</title>
	<published>2008-10-21T14:45:20Z</published>
	<updated>2008-10-21T14:45:20Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">We've released a new build of jtreg, which fixes a number of minor issues.
&lt;br&gt;See my blog entry at &lt;a href=&quot;http://blogs.sun.com/jjg/entry/jtreg_update&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blogs.sun.com/jjg/entry/jtreg_update&lt;/a&gt;&amp;nbsp;for 
&lt;br&gt;details.
&lt;br&gt;&lt;br&gt;Thanks to those folk that reported issues and made suggestions, and to
&lt;br&gt;Xiomara for helping finally get the bits published.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New-jtreg-version%2C-4.0-b02-tp20100043p20100043.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19975840</id>
	<title>Re: Setting PATH for jtreg</title>
	<published>2008-10-14T06:50:36Z</published>
	<updated>2008-10-14T06:50:36Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Volker,
&lt;br&gt;&lt;br&gt;Thank you for the update and suggestions.
&lt;br&gt;&lt;br&gt;Your comment about it being more of a general option
&lt;br&gt;and not a JDK option and your suggestion about
&lt;br&gt;the FAQ are noted.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;On Oct 14, 2008, at 12:30 AM, Volker Simonis wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi John,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; thank you for the fast help. &amp;quot;-e:PATH&amp;quot; indeed solved the problem.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Now that you pointed me to the option I must admit that it is really
&lt;br&gt;&amp;gt; there. Unfortunately, I didn't found it before, although I did &amp;quot;jtreg
&lt;br&gt;&amp;gt; -help&amp;quot; several times. This may be perhaps because it is in the
&lt;br&gt;&amp;gt; &amp;quot;JDK-related Options&amp;quot;. For me, this is not strictly a JDK-related
&lt;br&gt;&amp;gt; option and would better fit into the &amp;quot;General Options&amp;quot;. But this is of
&lt;br&gt;&amp;gt; course purely a matter of taste:)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; However I think a small advice in the FAQ section 4.1 cited below that
&lt;br&gt;&amp;gt; PATH can be overriden with the &amp;quot;-e:PATH&amp;quot; option may be helpfull to
&lt;br&gt;&amp;gt; others as well.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Once again thank you and best regards,
&lt;br&gt;&amp;gt; Volker
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On 10/13/08, Jonathan Gibbons &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19975840&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Jonathan.Gibbons@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Volker,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; jtreg has a -e option for tunnelling env variables into scripts.
&lt;br&gt;&amp;gt;&amp;gt; Use &amp;quot;jtreg -help -e&amp;quot; for info. &amp;nbsp; Any values specified with -e
&lt;br&gt;&amp;gt;&amp;gt; override any defaults set up for the test. So, it should work
&lt;br&gt;&amp;gt;&amp;gt; to use -e:PATH to override the system default value of PATH
&lt;br&gt;&amp;gt;&amp;gt; with the value from your current environment.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -- Jon
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On Oct 13, 2008, at 8:23 AM, Volker Simonis wrote:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; the jtreg FAQ states in point 4.1:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; As per spec, the only shell environment variables that are &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; propagated
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; into the test's JVM are:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;nbsp;* Linux and Solaris:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;o PATH is set to /bin:/usr/bin
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; However in our environment, the compilers are installed on a global
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; NFS-share. I have the problem that all the tests which use gcc to
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; compile native JNI files fail because they get a wrong version of &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; gcc
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; from /usr/bin.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Is there any possibility how I can override the PATH variable for &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; jtreg?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Volker
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Setting-PATH-for-jtreg-tp19957162p19975840.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19968400</id>
	<title>Re: Setting PATH for jtreg</title>
	<published>2008-10-14T00:30:15Z</published>
	<updated>2008-10-14T00:30:15Z</updated>
	<author>
		<name>Volker Simonis</name>
	</author>
	<content type="html">Hi John,
&lt;br&gt;&lt;br&gt;thank you for the fast help. &amp;quot;-e:PATH&amp;quot; indeed solved the problem.
&lt;br&gt;&lt;br&gt;Now that you pointed me to the option I must admit that it is really
&lt;br&gt;there. Unfortunately, I didn't found it before, although I did &amp;quot;jtreg
&lt;br&gt;-help&amp;quot; several times. This may be perhaps because it is in the
&lt;br&gt;&amp;quot;JDK-related Options&amp;quot;. For me, this is not strictly a JDK-related
&lt;br&gt;option and would better fit into the &amp;quot;General Options&amp;quot;. But this is of
&lt;br&gt;course purely a matter of taste:)
&lt;br&gt;&lt;br&gt;However I think a small advice in the FAQ section 4.1 cited below that
&lt;br&gt;PATH can be overriden with the &amp;quot;-e:PATH&amp;quot; option may be helpfull to
&lt;br&gt;others as well.
&lt;br&gt;&lt;br&gt;Once again thank you and best regards,
&lt;br&gt;Volker
&lt;br&gt;&lt;br&gt;&lt;br&gt;On 10/13/08, Jonathan Gibbons &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19968400&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Jonathan.Gibbons@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Volker,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;jtreg has a -e option for tunnelling env variables into scripts.
&lt;br&gt;&amp;gt; &amp;nbsp;Use &amp;quot;jtreg -help -e&amp;quot; for info. &amp;nbsp; Any values specified with -e
&lt;br&gt;&amp;gt; &amp;nbsp;override any defaults set up for the test. So, it should work
&lt;br&gt;&amp;gt; &amp;nbsp;to use -e:PATH to override the system default value of PATH
&lt;br&gt;&amp;gt; &amp;nbsp;with the value from your current environment.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;-- Jon
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;On Oct 13, 2008, at 8:23 AM, Volker Simonis wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Hi,
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; the jtreg FAQ states in point 4.1:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; As per spec, the only shell environment variables that are propagated
&lt;br&gt;&amp;gt; &amp;gt; into the test's JVM are:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; * Linux and Solaris:
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; o PATH is set to /bin:/usr/bin
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; However in our environment, the compilers are installed on a global
&lt;br&gt;&amp;gt; &amp;gt; NFS-share. I have the problem that all the tests which use gcc to
&lt;br&gt;&amp;gt; &amp;gt; compile native JNI files fail because they get a wrong version of gcc
&lt;br&gt;&amp;gt; &amp;gt; from /usr/bin.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Is there any possibility how I can override the PATH variable for jtreg?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Regards,
&lt;br&gt;&amp;gt; &amp;gt; Volker
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Setting-PATH-for-jtreg-tp19957162p19968400.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19958263</id>
	<title>Re: Setting PATH for jtreg</title>
	<published>2008-10-13T09:30:42Z</published>
	<updated>2008-10-13T09:30:42Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Volker,
&lt;br&gt;&lt;br&gt;jtreg has a -e option for tunnelling env variables into scripts.
&lt;br&gt;Use &amp;quot;jtreg -help -e&amp;quot; for info. &amp;nbsp; Any values specified with -e
&lt;br&gt;override any defaults set up for the test. So, it should work
&lt;br&gt;to use -e:PATH to override the system default value of PATH
&lt;br&gt;with the value from your current environment.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Oct 13, 2008, at 8:23 AM, Volker Simonis wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; the jtreg FAQ states in point 4.1:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As per spec, the only shell environment variables that are propagated
&lt;br&gt;&amp;gt; into the test's JVM are:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;* Linux and Solaris:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;o PATH is set to /bin:/usr/bin
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; However in our environment, the compilers are installed on a global
&lt;br&gt;&amp;gt; NFS-share. I have the problem that all the tests which use gcc to
&lt;br&gt;&amp;gt; compile native JNI files fail because they get a wrong version of gcc
&lt;br&gt;&amp;gt; from /usr/bin.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Is there any possibility how I can override the PATH variable for &amp;nbsp;
&lt;br&gt;&amp;gt; jtreg?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt; Volker
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Setting-PATH-for-jtreg-tp19957162p19958263.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19957162</id>
	<title>Setting PATH for jtreg</title>
	<published>2008-10-13T08:23:17Z</published>
	<updated>2008-10-13T08:23:17Z</updated>
	<author>
		<name>Volker Simonis</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;the jtreg FAQ states in point 4.1:
&lt;br&gt;&lt;br&gt;As per spec, the only shell environment variables that are propagated
&lt;br&gt;into the test's JVM are:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * Linux and Solaris:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; o PATH is set to /bin:/usr/bin
&lt;br&gt;&lt;br&gt;However in our environment, the compilers are installed on a global
&lt;br&gt;NFS-share. I have the problem that all the tests which use gcc to
&lt;br&gt;compile native JNI files fail because they get a wrong version of gcc
&lt;br&gt;from /usr/bin.
&lt;br&gt;&lt;br&gt;Is there any possibility how I can override the PATH variable for jtreg?
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Volker
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Setting-PATH-for-jtreg-tp19957162p19957162.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19785997</id>
	<title>Re: More careful identification of @ignore</title>
	<published>2008-10-02T12:26:41Z</published>
	<updated>2008-10-02T12:26:41Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
I'm sorry; that is&amp;nbsp; ... disappointing.&amp;nbsp; I'll raise the priority to fix
this.&lt;br&gt;
&lt;br&gt;
-- Jon&lt;br&gt;
&lt;br&gt;
Martin Buchholz wrote:
&lt;blockquote cite=&quot;mid:1ccfd1c10810021217u20c3f994u70f9290bdea3e5ac@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;On Thu, Oct 2, 2008 at 11:47, Jonathan Gibbons &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19785997&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Jonathan.Gibbons@...&lt;/a&gt; wrote:
  &lt;/pre&gt;
  &lt;blockquote type=&quot;cite&quot;&gt;
    &lt;pre wrap=&quot;&quot;&gt;Egads, 'twould appear t'be true.

As a workaround, I suggest you use the -ignore switch (e.g. -ignore:quiet)
instead of -k:\!ignore.
    &lt;/pre&gt;
  &lt;/blockquote&gt;
  &lt;pre wrap=&quot;&quot;&gt;&lt;!----&gt;
I tried -ignore:quiet,
but that appears to have the same bug;
that is, it is not a workaround.

Martin
  &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;br&gt;
&lt;/body&gt;
&lt;/html&gt;
</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/More-careful-identification-of-%40ignore-tp19784779p19785997.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19785836</id>
	<title>Re: More careful identification of @ignore</title>
	<published>2008-10-02T12:17:53Z</published>
	<updated>2008-10-02T12:17:53Z</updated>
	<author>
		<name>martinrb</name>
	</author>
	<content type="html">On Thu, Oct 2, 2008 at 11:47, Jonathan Gibbons &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19785836&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Jonathan.Gibbons@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Egads, 'twould appear t'be true.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As a workaround, I suggest you use the -ignore switch (e.g. -ignore:quiet)
&lt;br&gt;&amp;gt; instead of -k:\!ignore.
&lt;br&gt;&lt;br&gt;I tried -ignore:quiet,
&lt;br&gt;but that appears to have the same bug;
&lt;br&gt;that is, it is not a workaround.
&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/More-careful-identification-of-%40ignore-tp19784779p19785836.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19785325</id>
	<title>Re: More careful identification of @ignore</title>
	<published>2008-10-02T11:47:37Z</published>
	<updated>2008-10-02T11:47:37Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Egads, 'twould appear t'be true.
&lt;br&gt;&lt;br&gt;As a workaround, I suggest you use the -ignore switch (e.g. -ignore:quiet)
&lt;br&gt;instead of -k:\!ignore.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Eeeek, so noted. I'll investigate.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -- Jon
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Martin Buchholz wrote:
&lt;br&gt;&amp;gt;&amp;gt; Hi jtreg maintainers,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; This is a bug report.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; If I try to test &amp;nbsp;jdk/test/sun/net/idn/PunycodeTest.java,
&lt;br&gt;&amp;gt;&amp;gt; with @ignore'd tests suppressed, I get:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp;jdk/test/sun/net/idn &amp;nbsp;$ ~/jct-tools/3.2.2_03/linux/bin/jtreg
&lt;br&gt;&amp;gt;&amp;gt; -v:nopass,fail -automatic &amp;quot;-k:\!ignore&amp;quot;
&lt;br&gt;&amp;gt;&amp;gt; -testjdk:$FOREST/jdk/../build/linux-i586/j2sdk-image PunycodeTest.java
&lt;br&gt;&amp;gt;&amp;gt; Test results: no tests selected
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; This is due to the occurrence of the string &amp;quot;ignore&amp;quot; in
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp;* @compile -XDignore.symbol.file PunycodeTest.java
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; as any mangling of that string in the sources and retesting 
&lt;br&gt;&amp;gt;&amp;gt; demonstrates.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Probably the original coder was lazy and simply searched for the
&lt;br&gt;&amp;gt;&amp;gt; &amp;quot;ignore&amp;quot; substring,
&lt;br&gt;&amp;gt;&amp;gt; whereas a more disciplined search for @ignore or maybe @key WORD ...
&lt;br&gt;&amp;gt;&amp;gt; is necessary.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Martin
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/More-careful-identification-of-%40ignore-tp19784779p19785325.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19785025</id>
	<title>Re: More careful identification of @ignore</title>
	<published>2008-10-02T11:29:13Z</published>
	<updated>2008-10-02T11:29:13Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Eeeek, so noted. I'll investigate.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;&lt;br&gt;Martin Buchholz wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi jtreg maintainers,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This is a bug report.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; If I try to test &amp;nbsp;jdk/test/sun/net/idn/PunycodeTest.java,
&lt;br&gt;&amp;gt; with @ignore'd tests suppressed, I get:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;jdk/test/sun/net/idn &amp;nbsp;$ ~/jct-tools/3.2.2_03/linux/bin/jtreg
&lt;br&gt;&amp;gt; -v:nopass,fail -automatic &amp;quot;-k:\!ignore&amp;quot;
&lt;br&gt;&amp;gt; -testjdk:$FOREST/jdk/../build/linux-i586/j2sdk-image PunycodeTest.java
&lt;br&gt;&amp;gt; Test results: no tests selected
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This is due to the occurrence of the string &amp;quot;ignore&amp;quot; in
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;* @compile -XDignore.symbol.file PunycodeTest.java
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; as any mangling of that string in the sources and retesting demonstrates.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Probably the original coder was lazy and simply searched for the
&lt;br&gt;&amp;gt; &amp;quot;ignore&amp;quot; substring,
&lt;br&gt;&amp;gt; whereas a more disciplined search for @ignore or maybe @key WORD ...
&lt;br&gt;&amp;gt; is necessary.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Martin
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/More-careful-identification-of-%40ignore-tp19784779p19785025.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19784779</id>
	<title>More careful identification of @ignore</title>
	<published>2008-10-02T11:14:17Z</published>
	<updated>2008-10-02T11:14:17Z</updated>
	<author>
		<name>martinrb</name>
	</author>
	<content type="html">Hi jtreg maintainers,
&lt;br&gt;&lt;br&gt;This is a bug report.
&lt;br&gt;&lt;br&gt;If I try to test &amp;nbsp;jdk/test/sun/net/idn/PunycodeTest.java,
&lt;br&gt;with @ignore'd tests suppressed, I get:
&lt;br&gt;&lt;br&gt;&amp;nbsp;jdk/test/sun/net/idn &amp;nbsp;$ ~/jct-tools/3.2.2_03/linux/bin/jtreg
&lt;br&gt;-v:nopass,fail -automatic &amp;quot;-k:\!ignore&amp;quot;
&lt;br&gt;-testjdk:$FOREST/jdk/../build/linux-i586/j2sdk-image PunycodeTest.java
&lt;br&gt;Test results: no tests selected
&lt;br&gt;&lt;br&gt;This is due to the occurrence of the string &amp;quot;ignore&amp;quot; in
&lt;br&gt;&lt;br&gt;&amp;nbsp;* @compile -XDignore.symbol.file PunycodeTest.java
&lt;br&gt;&lt;br&gt;as any mangling of that string in the sources and retesting demonstrates.
&lt;br&gt;&lt;br&gt;Probably the original coder was lazy and simply searched for the
&lt;br&gt;&amp;quot;ignore&amp;quot; substring,
&lt;br&gt;whereas a more disciplined search for @ignore or maybe @key WORD ...
&lt;br&gt;is necessary.
&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/More-careful-identification-of-%40ignore-tp19784779p19784779.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19680382</id>
	<title>Re: Reporting into hudson</title>
	<published>2008-09-25T16:52:22Z</published>
	<updated>2008-09-25T16:52:22Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Well, the initial experiment to enable XML reports is clearly easy.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;On Sep 25, 2008, at 4:07 PM, David Herron wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; sheesh, I clicked SEND a moment too soon..
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It occurred to me the real request may not be javatest-compatible &amp;nbsp;
&lt;br&gt;&amp;gt; XML reports as that might not work out right, and it might be &amp;nbsp;
&lt;br&gt;&amp;gt; necessary to instead teach hudson how to understand jtreg results.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; - David
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; David Herron wrote:
&lt;br&gt;&amp;gt;&amp;gt; Oh, I see.
&lt;br&gt;&amp;gt;&amp;gt; So, pretty please, with sugar on top, I'd love it if jtreg were to &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; produce javatest-compatible XML report files we can display in &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; hudson? ;-)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; - David
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Not until someone asks.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; -- Jon
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; David Herron wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi, I'm fiddling with running openjdk builds &amp; jtreg under &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; hudson ... (see &lt;a href=&quot;http://home.7gen.com:8080&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.7gen.com:8080&lt;/a&gt;&amp;nbsp;..)
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What I'm looking at right now is how to get jtreg test results to &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; display in hudson.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; My question is.. since jtreg is a wrapper around javatest, &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; shouldn't there be a way to use the hudson plugin for javatest &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; results to make a pretty graph on the hudson dashboard?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; I have the javatest plugin installed &amp; enabled, and in the &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; configuration it wants the work directory (easy) plus the fileset &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; for the XML files. &amp;nbsp;Uh... There isn't a jtreg option to produce a &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; report in XML files. &amp;nbsp;Is there?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; - David Herron
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Reporting-into-hudson-tp19679709p19680382.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19679988</id>
	<title>Re: Reporting into hudson</title>
	<published>2008-09-25T16:07:55Z</published>
	<updated>2008-09-25T16:07:55Z</updated>
	<author>
		<name>David Herron @ Sun</name>
	</author>
	<content type="html">sheesh, I clicked SEND a moment too soon..
&lt;br&gt;&lt;br&gt;It occurred to me the real request may not be javatest-compatible XML 
&lt;br&gt;reports as that might not work out right, and it might be necessary to 
&lt;br&gt;instead teach hudson how to understand jtreg results.
&lt;br&gt;&lt;br&gt;&lt;br&gt;- David
&lt;br&gt;&lt;br&gt;&lt;br&gt;David Herron wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Oh, I see.
&lt;br&gt;&amp;gt; So, pretty please, with sugar on top, I'd love it if jtreg were to 
&lt;br&gt;&amp;gt; produce javatest-compatible XML report files we can display in hudson? 
&lt;br&gt;&amp;gt; ;-)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; - David
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Jonathan Gibbons wrote:
&lt;br&gt;&amp;gt;&amp;gt; Not until someone asks.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -- Jon
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; David Herron wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Hi, I'm fiddling with running openjdk builds &amp; jtreg under hudson 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; ... (see &lt;a href=&quot;http://home.7gen.com:8080&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.7gen.com:8080&lt;/a&gt;&amp;nbsp;..)
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; What I'm looking at right now is how to get jtreg test results to 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; display in hudson.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; My question is.. since jtreg is a wrapper around javatest, shouldn't 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; there be a way to use the hudson plugin for javatest results to make 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; a pretty graph on the hudson dashboard?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; I have the javatest plugin installed &amp; enabled, and in the 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; configuration it wants the work directory (easy) plus the fileset 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; for the XML files. &amp;nbsp;Uh... There isn't a jtreg option to produce a 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; report in XML files. &amp;nbsp;Is there?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; - David Herron
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Reporting-into-hudson-tp19679709p19679988.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19679940</id>
	<title>Re: Reporting into hudson</title>
	<published>2008-09-25T16:03:10Z</published>
	<updated>2008-09-25T16:03:10Z</updated>
	<author>
		<name>David Herron @ Sun</name>
	</author>
	<content type="html">Oh, I see. 
&lt;br&gt;&lt;br&gt;So, pretty please, with sugar on top, I'd love it if jtreg were to 
&lt;br&gt;produce javatest-compatible XML report files we can display in hudson? ;-)
&lt;br&gt;&lt;br&gt;- David
&lt;br&gt;&lt;br&gt;&lt;br&gt;Jonathan Gibbons wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Not until someone asks.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -- Jon
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; David Herron wrote:
&lt;br&gt;&amp;gt;&amp;gt; Hi, I'm fiddling with running openjdk builds &amp; jtreg under hudson ... 
&lt;br&gt;&amp;gt;&amp;gt; (see &lt;a href=&quot;http://home.7gen.com:8080&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.7gen.com:8080&lt;/a&gt;&amp;nbsp;..)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; What I'm looking at right now is how to get jtreg test results to 
&lt;br&gt;&amp;gt;&amp;gt; display in hudson.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; My question is.. since jtreg is a wrapper around javatest, shouldn't 
&lt;br&gt;&amp;gt;&amp;gt; there be a way to use the hudson plugin for javatest results to make 
&lt;br&gt;&amp;gt;&amp;gt; a pretty graph on the hudson dashboard?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I have the javatest plugin installed &amp; enabled, and in the 
&lt;br&gt;&amp;gt;&amp;gt; configuration it wants the work directory (easy) plus the fileset for 
&lt;br&gt;&amp;gt;&amp;gt; the XML files. &amp;nbsp;Uh... There isn't a jtreg option to produce a report 
&lt;br&gt;&amp;gt;&amp;gt; in XML files. &amp;nbsp;Is there?
&lt;br&gt;&amp;gt;&amp;gt; - David Herron
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Reporting-into-hudson-tp19679709p19679940.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19679804</id>
	<title>Re: Reporting into hudson</title>
	<published>2008-09-25T15:53:18Z</published>
	<updated>2008-09-25T15:53:18Z</updated>
	<author>
		<name>jonathan.gibbons</name>
	</author>
	<content type="html">Not until someone asks.
&lt;br&gt;&lt;br&gt;-- Jon
&lt;br&gt;&lt;br&gt;David Herron wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi, I'm fiddling with running openjdk builds &amp; jtreg under hudson ... 
&lt;br&gt;&amp;gt; (see &lt;a href=&quot;http://home.7gen.com:8080&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.7gen.com:8080&lt;/a&gt;&amp;nbsp;..)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; What I'm looking at right now is how to get jtreg test results to 
&lt;br&gt;&amp;gt; display in hudson.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My question is.. since jtreg is a wrapper around javatest, shouldn't 
&lt;br&gt;&amp;gt; there be a way to use the hudson plugin for javatest results to make a 
&lt;br&gt;&amp;gt; pretty graph on the hudson dashboard?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I have the javatest plugin installed &amp; enabled, and in the 
&lt;br&gt;&amp;gt; configuration it wants the work directory (easy) plus the fileset for 
&lt;br&gt;&amp;gt; the XML files. &amp;nbsp;Uh... There isn't a jtreg option to produce a report 
&lt;br&gt;&amp;gt; in XML files. &amp;nbsp;Is there?
&lt;br&gt;&amp;gt; - David Herron
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Reporting-into-hudson-tp19679709p19679804.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19679709</id>
	<title>Reporting into hudson</title>
	<published>2008-09-25T15:43:40Z</published>
	<updated>2008-09-25T15:43:40Z</updated>
	<author>
		<name>David Herron @ Sun</name>
	</author>
	<content type="html">Hi, I'm fiddling with running openjdk builds &amp; jtreg under hudson ... 
&lt;br&gt;(see &lt;a href=&quot;http://home.7gen.com:8080&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.7gen.com:8080&lt;/a&gt;&amp;nbsp;..)
&lt;br&gt;&lt;br&gt;What I'm looking at right now is how to get jtreg test results to 
&lt;br&gt;display in hudson.
&lt;br&gt;&lt;br&gt;My question is.. since jtreg is a wrapper around javatest, shouldn't 
&lt;br&gt;there be a way to use the hudson plugin for javatest results to make a 
&lt;br&gt;pretty graph on the hudson dashboard?
&lt;br&gt;&lt;br&gt;I have the javatest plugin installed &amp; enabled, and in the configuration 
&lt;br&gt;it wants the work directory (easy) plus the fileset for the XML files. &amp;nbsp;
&lt;br&gt;Uh... There isn't a jtreg option to produce a report in XML files. &amp;nbsp;Is 
&lt;br&gt;there? 
&lt;br&gt;&lt;br&gt;- David Herron
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Reporting-into-hudson-tp19679709p19679709.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17414497</id>
	<title>Re: jtreg testing integrated</title>
	<published>2008-05-22T15:04:47Z</published>
	<updated>2008-05-22T15:04:47Z</updated>
	<author>
		<name>Mark Wielaard</name>
	</author>
	<content type="html">Hi Kelly,
&lt;br&gt;&lt;br&gt;On Thu, 2008-05-22 at 11:59 -0700, Kelly O'Hair wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Mark Wielaard wrote:
&lt;br&gt;&amp;gt; &amp;gt; I am not sure. It does take about 3 hours to run all the included tests
&lt;br&gt;&amp;gt; &amp;gt; (and I assume that when we add more tests or integrate things like mauve
&lt;br&gt;&amp;gt; &amp;gt; it will rise). But I do hope people, not just integrators, will run them
&lt;br&gt;&amp;gt; &amp;gt; regularly. Especially when they are working on/integrating larger
&lt;br&gt;&amp;gt; &amp;gt; patches. And we can always fall back on autobuilders so we have a full
&lt;br&gt;&amp;gt; &amp;gt; report at least soon after something bad happens so there is some chance
&lt;br&gt;&amp;gt; &amp;gt; to revert a change relatively quickly.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 3 hours for runs with:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; -client and -server?
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; one OS?
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; 32bit and 64bit?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; And you are only talking about the tests in the jdk/test area I assume.
&lt;/div&gt;&lt;br&gt;No all the jtreg based test (-a -ignore:quiet) currently included in
&lt;br&gt;langtools, jdk and hotspot. On a x86_64, dual core, 3.2Ghz, Fedora 8.
&lt;br&gt;&lt;br&gt;&amp;gt; The issue I have seen with the testing is that if it isn't done on a good
&lt;br&gt;&amp;gt; spread of options and platforms and variations, something gets missed,
&lt;br&gt;&amp;gt; there is little consistency between developers as to what the official
&lt;br&gt;&amp;gt; requires test matrix is. Once we have a 100% pass list, and a required
&lt;br&gt;&amp;gt; matrix, I have a system to help enforce these tests being run, but so
&lt;br&gt;&amp;gt; far, nobody has given me a way to run just that list.
&lt;br&gt;&amp;gt; Once I have it, I think we can keep all or most repositories golden.
&lt;br&gt;&lt;br&gt;Yes, that would be ideal.
&lt;br&gt;&lt;br&gt;&amp;gt; The Hotspot team runs many many variations, using options like -Xcomp
&lt;br&gt;&amp;gt; and -Xbatch and loads more. But they are trying to stress the VM.
&lt;br&gt;&lt;br&gt;I assume there are many more hotspot tests than the 4 currently
&lt;br&gt;included. Hopefully they can be liberated so more people can run them.
&lt;br&gt;&lt;br&gt;&amp;gt; I'm more of a 'test before integrate' person, with streamlining and
&lt;br&gt;&amp;gt; automating the testing process, making it part of the developer push process,
&lt;br&gt;&amp;gt; adapting the tests as major regressions sneak by (you can never catch all
&lt;br&gt;&amp;gt; regressions, no matter what you do). Blocking pushes on any failure.
&lt;br&gt;&amp;gt; So I'm trying to throw hardware at the problem until we can possible do
&lt;br&gt;&amp;gt; the &amp;quot;exhaustive testing&amp;quot; that Martin mentions, as part of a developer
&lt;br&gt;&amp;gt; pushing a change in, before anyone else sees it, all automated.
&lt;br&gt;&lt;br&gt;With a more distributed version control system a lot more can be
&lt;br&gt;separated I guess. Your idea of a core test of tests that should always
&lt;br&gt;pass 100% is good. Then autobuilders could take over. And everybody that
&lt;br&gt;cares about a particular architecture/setup/configuration could add
&lt;br&gt;their own autobuilder to the mix and make sure the full blown testsuite
&lt;br&gt;keeps passing completely.
&lt;br&gt;&lt;br&gt;For GCC there is a nice system where when someone commits something on a
&lt;br&gt;platform that they don't have access to a build machine runs and send
&lt;br&gt;email to that person &amp;quot;After your latest commit the gnats Ada compiler
&lt;br&gt;cross compiled from mips64 to ppc AIX failed the following tests. GO FIX
&lt;br&gt;IT!&amp;quot;.
&lt;br&gt;&lt;br&gt;&amp;gt; But for automation, I want a test guarantee:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;quot;these tests should pass 100% of the time on all platforms in all situations&amp;quot;
&lt;br&gt;&amp;gt; and then we can think about enforcing it.
&lt;br&gt;&amp;gt; None of this wishy washy &amp;quot;this test fails sometimes due to the phase of
&lt;br&gt;&amp;gt; the moon&amp;quot; crap. ... &amp;nbsp;oops, can I say crap in a public email??... &amp;nbsp;;^}
&lt;br&gt;&lt;br&gt;Yes, that is the biggest danger &amp;quot;flaky tests&amp;quot;. With Mauve we actually
&lt;br&gt;have that problem. And we are constantly fighting it. It is a huge cost
&lt;br&gt;to all involved :{
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;&lt;br&gt;Mark
&lt;br&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-jtreg-testing-integrated-tp17321498p17414497.html" />
</entry>

</feed>
