RFR: JDK-8188090 Running tests from make causes spurious mercurial changes
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Thu Sep 28 10:21:32 UTC 2017
Pushed - thx.
One alternate way to handle this would be to use 'hg locate' to see if
the lib file is tracked in a more path-independent way.
Maurizio
On 28/09/17 11:14, Erik Joelsson wrote:
> Looks good enough to me. The long term plan is to migrate to the new
> run-test framework for running tests so I'm fine with this being a bit
> crude.
>
> /Erik
>
>
> On 2017-09-28 11:49, Maurizio Cimadamore wrote:
>> This is a modified patch that takes into account hotspot tests:
>>
>> diff -r 355349babaf4 test/TestCommon.gmk
>> --- a/test/TestCommon.gmk Wed Sep 27 16:47:07 2017 -0700
>> +++ b/test/TestCommon.gmk Thu Sep 28 10:47:00 2017 +0100
>> @@ -273,7 +273,7 @@
>> prep:
>> @$(MKDIR) -p $(ABS_TEST_OUTPUT_DIR)
>> @$(MKDIR) -p `$(DIRNAME) $(ARCHIVE_BUNDLE)`
>> - @if [ ! -d $(TEST_ROOT)/../.hg ] ;
>> then \
>> + @if [ ! -d $(TEST_ROOT)/../../.hg ] && [ ! -d
>> $(TEST_ROOT)/../../../.hg ]; then \
>> $(FIND) $(TEST_ROOT) \( -name \*.dll -o -name \*.DLL -o -name
>> \*.so \) \
>> -exec $(CHMOD) a+rx {} \;
>> ; \
>> fi
>>
>>
>> I've run a find for all test roots and got this:
>>
>> test/langtools/TEST.ROOT
>> test/failure_handler/test/TEST.ROOT
>> test/jaxp/TEST.ROOT
>> test/nashorn/TEST.ROOT
>> test/hotspot/jtreg/TEST.ROOT
>> test/jdk/TEST.ROOT
>>
>> So, it seems like we should cover all cases with the test above
>> (albeit still a bit uncomfortable with the idea that this patch would
>> potentially peek outside the repo).
>>
>> Maurizio
>>
>>
>> On 28/09/17 10:27, Maurizio Cimadamore wrote:
>>>
>>>
>>> On 28/09/17 10:25, Erik Joelsson wrote:
>>>> I think you need to also check for "../../../.hg" as the relative
>>>> path from the hotspot test root is one level deeper than the other
>>>> repositories. The hotspot tests are probably free of such binaries,
>>>> but even so we should avoid running this when not needed.
>>> Isn't that too fragile? What if I'm running jdk tests but my repo is
>>> nested inside some other repo?
>>>
>>> Maurizio
>>>>
>>>> /Erik
>>>>
>>>>
>>>> On 2017-09-28 10:49, Maurizio Cimadamore wrote:
>>>>> Hi,
>>>>> this fixes the problem of the build changing permissions on some
>>>>> library files when executing tests [1, 2].
>>>>>
>>>>> The issue is that a relative path in TestCommon is bogus - jdk
>>>>> tests are now executed in the folder test/jdk, so there's no
>>>>> longer hg repo under ../
>>>>>
>>>>> Patch inline below:
>>>>>
>>>>> diff -r 355349babaf4 test/TestCommon.gmk
>>>>> --- a/test/TestCommon.gmk Wed Sep 27 16:47:07 2017 -0700
>>>>> +++ b/test/TestCommon.gmk Thu Sep 28 09:44:09 2017 +0100
>>>>> @@ -273,7 +273,7 @@
>>>>> prep:
>>>>> @$(MKDIR) -p $(ABS_TEST_OUTPUT_DIR)
>>>>> @$(MKDIR) -p `$(DIRNAME) $(ARCHIVE_BUNDLE)`
>>>>> - @if [ ! -d $(TEST_ROOT)/../.hg ] ;
>>>>> then \
>>>>> + @if [ ! -d $(TEST_ROOT)/../../.hg ] ;
>>>>> then \
>>>>> $(FIND) $(TEST_ROOT) \( -name \*.dll -o -name \*.DLL -o
>>>>> -name \*.so \) \
>>>>> -exec $(CHMOD) a+rx {} \;
>>>>> ; \
>>>>> fi
>>>>>
>>>>>
>>>>> Cheers
>>>>> Maurizio
>>>>>
>>>>>
>>>>> [1] -
>>>>> http://mail.openjdk.java.net/pipermail/build-dev/2017-September/019796.html
>>>>> [2] - https://bugs.openjdk.java.net/browse/JDK-8188090
>>>>>
>>>>
>>>
>>
>
More information about the build-dev
mailing list