[PATCH] 6822627: NPE at ReferenceTypeImpl.constantPool
Egor Ushakov
egor.ushakov at jetbrains.com
Tue Jul 19 07:07:05 UTC 2016
Hi Serguei,
here's a new webrev with a test included:
http://cr.openjdk.java.net/~avu/JDK-6822627/webrev.01/
Egor
On 15.07.2016 12:22, serguei.spitsyn at oracle.com wrote:
> Hi Egor,
>
> The fix looks good modulo the synchronization issue.
> Do you have a jtreg unit test reproducing this failure mode?
> We have a rule to provide a test coverage for the fixes.
>
> Thanks,
> Serguei
>
>
> On 7/15/16 00:03, Egor Ushakov wrote:
>>
>> Thanks for your comments!
>>
>> I totally agree that the code there requires major refactoring. In
>> the fix I tried not to make it worse and fix the NPE.
>>
>>
>> On 14.07.2016 20:06, Martin Buchholz wrote:
>>> The lack of volatile or synchronization, plus the use of multiple
>>> mutable fields, suggests that a deeper fix is necessary to be truly
>>> correct. For comparison, much of the similar code implementing
>>> reflection has been changed to use volatile. But that's a big job,
>>> for the serviceability team.
>>>
>>> On Thu, Jul 14, 2016 at 2:33 AM, Egor Ushakov
>>> <egor.ushakov at jetbrains.com <mailto:egor.ushakov at jetbrains.com>> wrote:
>>>
>>> Hi,
>>>
>>> I'm a developer from IDEA debugger (we have company OCA).
>>> We've increased usage of ReferenceTypeImpl.constantPool and now
>>> facing
>>> JDK-6822627 more often.
>>> Please review and sponsor the fix.
>>>
>>> The problem was that constantPoolBytesRef SoftReference value
>>> coud be
>>> GCed and there was no check for that.
>>> I've added it to the check inside getConstantPoolInfo to request the
>>> bytes again in this case.
>>>
>>> BUGURL: https://bugs.openjdk.java.net/browse/JDK-6822627
>>> WEBREV: http://cr.openjdk.java.net/~avu/JDK-6822627/webrev.00/
>>> <http://cr.openjdk.java.net/%7Eavu/JDK-6822627/webrev.00/>
>>>
>>> Thanks!
>>>
>>> --
>>> Egor Ushakov
>>> Software Developer
>>> JetBrains
>>> http://www.jetbrains.com
>>> The Drive to Develop
>>>
>>>
>>
>> --
>> Egor Ushakov
>> Software Developer
>> JetBrains
>> http://www.jetbrains.com
>> The Drive to Develop
>
--
Egor Ushakov
Software Developer
JetBrains
http://www.jetbrains.com
The Drive to Develop
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20160719/e026794f/attachment.html>
More information about the serviceability-dev
mailing list