RFR(S) : 8219139 : move hotspot tests from test/jdk/vm
Igor Ignatyev
igor.ignatyev at oracle.com
Thu Mar 14 21:38:08 UTC 2019
Hi Misha,
thanks for your suggestions, I have moved all runtime tests into subdirectories. here is the updated webrev: http://cr.openjdk.java.net/~iignatyev//8219139/webrev.01/index.html <http://cr.openjdk.java.net/~iignatyev//8219139/webrev.01/index.html>
Thanks,
-- Igor
> On Mar 4, 2019, at 1:57 PM, mikhailo.seledtsov at oracle.com wrote:
>
> Hi Igor,
>
> Sorry it took a while to get back to you on this one. See my comment below
>
>
> On 2/22/19 10:35 AM, mikhailo.seledtsov at oracle.com <mailto:mikhailo.seledtsov at oracle.com> wrote:
>> Overall the change looks good; thank you Igor for doing this. I have couple of comments:
>>
>> - I am in favor of the approach where we move tests first under corresponding sub-component directories in
>> test/hotspot sub-tree, and then figure out whether to keep them. Even though in general I am in favor
>> of removing tests that are obsolete or of questionable value, this requires time, consideration and discussions.
>> Hence, I recommend filing an RFE for that, which can be addressed after the migration.
>>
>> - Runtime normally avoids tests directly in test/hotspot/jtreg/runtime
>> The tests should go into underlying sub-directories which best match functional area or topic of that test.
>> In most cases you did it in your change, but there are several tests that your change places directly under
>> test/hotspot/jtreg/runtime/:
>>
>> ExplicitArithmeticCheck.java
>> MonitorCacheMaybeExpand_DeadLock.java
>> ReflectStackOverflow.java
>> ShiftTest.java - David commented this can go under compiler (a jit test)
>> WideStrictInline.java
> I have looked at the tests in more detail, and here are my recommendation of placements:
> ExplicitArithmeticCheck
> This test checks that ArithmeticException is thrown when appropriate
> I would recommend placing it under runtime/ErrorHandling
> MonitorCacheMaybeExpand_DeadLock
> Existing folder: runtime/Thread (it does have a locking test)
> Or, alternatively, create a new folder: 'locking' or 'monitors'
> ReflectStackOverflow
> Uses recursive reflection attempting to provoke stack overflow
> Can go under: runtime/reflect
> WideStrictInline:
> checks for correct FP inlining by the interpreter
> I could not find existing sections; perhaps create 'interpreter'
> folder under 'runtime'
>
> Thank you,
> Misha
>>
>> Since we plan (as discussed) to follow up this work with an RFE to review and consider removal of old and
>> not-that-useful tests, you could place them under 'misc' for now. Alternatively, find the best match
>> or create new sub-directories under runtime/ if necessary.
>>
>>
>> Thank you,
>> Misha
>>
>>
>> On 2/21/19 11:53 AM, Igor Ignatyev wrote:
>>>
>>>> On Feb 21, 2019, at 12:11 AM, David Holmes <david.holmes at oracle.com> wrote:
>>>>
>>>> Hi Igor,
>>>>
>>>> On 21/02/2019 3:19 pm, Igor Ignatyev wrote:
>>>>> http://cr.openjdk.java.net/~iignatyev//8219139/webrev.00/index.html
>>>>>> 40 lines changed: 17 ins; 2 del; 21 mod;
>>>>> Hi all,
>>>>> could you please review this small patch which moves tests from test/jdk/vm?
>>>> I find some of these tests - the runtime ones at least - of extremely dubious value. They either cover basic functionality that is already well covered, or are regression tests for bugs in code that hasn't existed for many many years!
>>> as I wrote in another related email: "one of the reason I'm proposing this move is exactly questionable value of these tests, I want to believe that having these tests in hotspot/ test directories will bring more attention to them from corresponding component teams and hence they will be removed/reworked/re-whatever faster and better. and I also believe that one of the reason we got duplications exactly because these tests were located in jdk test suite."
>>>
>>>> BTW:
>>>>
>>>> test/hotspot/jtreg/runtime/ShiftTest.java
>>>>
>>>> is actually a jit test according to the test comment.
>>> sure, I will move it to hotspot/compiler.
>>>>> there are 16 tests in test/jdk/vm directory. all but JniInvocationTest are hotspot tests, so they are moved to test/hotspot test suite; JniInvocationTest is a launcher test
>>>> No its a JNI invocation API test - nothing to do with our launcher. It belongs in runtime/jni. But we already have tests in runtime that use the JNI invocation API so this test adds no new coverage.
>>> this is actually was my first reaction, and I even have the webrev which moves it to runtime/jni, but then I looked at the associated bug and it is filed against tools/launcher. and I even got a false (as I know by now) memory that I saw JLI_ method being called from the test. there is actually another test (dk/tools/launcher/exeJliLaunchTest.c) associated w/ this bug which calls JLI_Launch. anyhow, I'll move this test to hotspot/runtime/jni.
>>>
>>>> I really think the value of these tests needs to be examined before they are brought over.
>>> I'd prefer to have follow-up RFEs/tasks, b/c the longer we keep jdk/vm directory the more tests can end up there and the more rotten these tests become.
>>>
>>> Thanks,
>>> -- Igor
>>>> Thanks,
>>>> David
>>>> -----
>>>>
>>>>> and hence it's moved to test/jdk/tools/launcher. as hotspot/compiler and hotspot/gc tests use packages, the tests moved there have been updated to have a package statement.
>>>>> webrev: http://cr.openjdk.java.net/~iignatyev//8219139/webrev.00/index.html
>>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8219139
>>>>> testing: tier[1-2] (in progress), all the touched tests locally
>>>>> Thanks,
>>>>> -- Igor
More information about the core-libs-dev
mailing list