[9] RFR 8166253: (ch) FileLock object can get GC'd and result in unexpected release of file lock
Hamlin Li
huaming.li at oracle.com
Thu Feb 1 01:56:18 UTC 2018
Hi Brian,
Thank you for explanation. Yes, you're right, .
-Hamlin
On 01/02/2018 12:01 AM, Brian Burkhalter wrote:
> Hi Hamlin,
>
> On Jan 30, 2018, at 9:32 PM, Hamlin Li <huaming.li at oracle.com
> <mailto:huaming.li at oracle.com>> wrote:
>
>>> http://cr.openjdk.java.net/~bpb/8166253/webrev.04/
>>> <http://cr.openjdk.java.net/%7Ebpb/8166253/webrev.04/>
>> Second, although it will solve JDK-8166253, it will introduce a new
>> issue by line 290("if (!ref.isValid()) {") in FileLockTable.java. I
>> think all the refs in queue will satisfy the condition "ref.isValid()”,
>
> I don’t think so because of lines 210 and 234 which are invoked during
> the explicit release of the lock or the channel close.
>
> Thanks,
>
> Brian
>
>> so there will be no ref be removed by removeStaleEntries, it will
>> increase queue infinitely, finally could get out of memory if long
>> enough. And seems there is workaround for this new issue, because
>> line 290 is the key point to fix the JDK-8166253.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/nio-dev/attachments/20180201/37e6882c/attachment-0001.html>
More information about the nio-dev
mailing list