RFR 9: 8146012: CleanerTest fails: Cleanable should have been freed
Chris Hegarty
chris.hegarty at oracle.com
Tue Dec 22 19:09:26 UTC 2015
Thanks for your reply Roger. I’m fine with the changes are they are.
-Chris.
On 22 Dec 2015, at 18:10, Roger Riggs <Roger.Riggs at Oracle.com> wrote:
> Hi Chris,
>
> Thanks for the review
>
> On 12/22/2015 12:01 PM, Chris Hegarty wrote:
>> Hi Roger,
>>
>> On 22 Dec 2015, at 16:35, Roger Riggs
>> <Roger.Riggs at oracle.com>
>> wrote:
>>
>>
>>> Please review improvements to the CleanerTest to improve the reliability of the test.
>>>
>>> Webrev:
>>>
>>> http://cr.openjdk.java.net/~rriggs/webrev-cleanertest-8146012/
>>
>> The use of WhiteBox should make the test more reliable ( rather than relying
>> on generating garbage ).
>>
>> Is @library /lib/testlibrary necessary? I don’t see any usage of types from it.
>>
> yes, the ClassFileInstaller that enables the WhiteBox is there.
>>
>> Is '-Xbootclasspath/a:.’ necessary? Is this for WhiteBox, or the test itself? I
>> don’t see why it is necessary.
>>
> yes, That's how the share library for the whitebox native code is found.
>>
>> Moving from a varargs of Semaphore to just a single Semaphore does simplify
>> the code, since it is always called with a single Semaphore.
>>
>> The new checkCleaned does not enforce availablePermits == 1, just that a permit
>> is available. Should it assert 1 ?
>>
> The tryAdvance method consumes the expected permit and the method does not wait around to
> see if it will get incremented again. So checking again would be hit or miss. The check completes
> when the semaphore is triggered.
> The running time of the test would increase and I can't see it paying off since the Cleaner
> implementation is written to call it only once, so it would require some unexpected case to trigger that bug.
>
> Roger
>
>>
>> -Chris.
>>
>>
>>> Issue:
>>>
>>> https://bugs.openjdk.java.net/browse/JDK-8146012
>>>
>>>
>>> Thanks, Roger
>>>
>
More information about the core-libs-dev
mailing list