RFR: JDK-8172912 JTReg concurrency value must be limited

Jonathan Gibbons jonathan.gibbons at oracle.com
Mon Feb 6 19:38:51 UTC 2017


Magnus,

Hmmm, you're correct, according to what I consider to the the reference 
sources for jtharness.

The following method is the one you quote.
http://hg.openjdk.java.net/code-tools/jtharness/file/9927669dc36f/src/com/sun/javatest/interview/BasicInterviewParameters.java#l370

The confusion comes from looking at this line
http://hg.openjdk.java.net/code-tools/jtharness/file/9927669dc36f/src/com/sun/javatest/Parameters.java#l882

which says:

         /**
          * The highest allowed value for the concurrency.
          */
         static int MAX_CONCURRENCY = 256;


I will work to get this fixed.

-- Jon


On 02/06/2017 01:11 AM, Magnus Ihse Bursie wrote:
> On 2017-02-03 16:39, Martin Buchholz wrote:
>> Does your jtreg have the latest javatest?
>>
>> https://bugs.openjdk.java.net/browse/CODETOOLS-7183756
>
> I can't tell how that bug was fixed, but the code I checked in did have:
>     protected int getMaxConcurrency() {
>         // return Parameters.ConcurrencyParameters.MAX_CONCURRENCY;
>         return 50;
>     }
> in BasicInterviewParameters.java.
>
> /Magnus
>
>>
>> On Fri, Feb 3, 2017 at 4:59 AM, Magnus Ihse Bursie 
>> <magnus.ihse.bursie at oracle.com 
>> <mailto:magnus.ihse.bursie at oracle.com>> wrote:
>>
>>     There is a limitation in jtreg that causes it to fail if called
>>     with -concurrency:X where X is > 50. This can happen on a
>>     multi-core machine, were we set the JOBS value to e.g. 64.
>>
>>     Bug: https://bugs.openjdk.java.net/browse/JDK-8172912
>>     <https://bugs.openjdk.java.net/browse/JDK-8172912>
>>
>>     Patch inline:
>>     diff --git a/test/Makefile b/test/Makefile
>>     --- a/test/Makefile
>>     +++ b/test/Makefile
>>     @@ -60,7 +60,12 @@
>>      -include $(TOPDIR)/closed/test/Makefile
>>
>>      ifeq ($(TEST_JOBS), 0)
>>     -  JDK_TEST_JOBS=$(JOBS)
>>     +  ifeq ($(shell $(EXPR) $(JOBS) \> 50), 1)
>>     +    # JTReg cannot handle more than 50 in concurrency
>>     +    JDK_TEST_JOBS=50
>>     +  else
>>     +    JDK_TEST_JOBS=$(JOBS)
>>     +  endif
>>      else
>>        JDK_TEST_JOBS=$(TEST_JOBS)
>>      endif
>>
>>     /Magnus
>>
>>
>




More information about the build-dev mailing list