Review request for bug 8015762: java/nio/channels/DatagramChannel/AdaptDatagramSocket.java fails intermittently
Eric Wang
yiming.wang at oracle.com
Wed Sep 11 03:44:39 PDT 2013
On 2013/9/11 18:06, Daniel Fuchs wrote:
> On 9/11/13 11:47 AM, Eric Wang wrote:
>>
>> On 2013/9/11 17:23, Alan Bateman wrote:
>>> On 11/09/2013 09:58, Eric Wang wrote:
>>>> Hi Alan,
>>>>
>>>> Sorry for late. I have re-fixed this failure, Can you please help to
>>>> review?
>>>> I executed the tests on the host jsn-vm49.us for thousands times and
>>>> found the test failed as setting SO_TIMEOUT for 5 seconds is not
>>>> enough to wait response sent by a new created thread of
>>>> UdpEchoRequest. It may caused by thread schedule as there's maybe
>>>> more than 3 threads executing at sametime or full GC as lots of
>>>> UdpEchoRequest created in runtime.
>>>>
>>>> The fix is to change the SO_TIMEOUT from 5 seconds to 10 and not
>>>> create a new thread of UdpEchoRequest to send response. I have run
>>>> the fix for 20000 times, it works fine.
>>>> http://cr.openjdk.java.net/~ewang/8015762/webrev.01/
>>>> <http://cr.openjdk.java.net/%7Eewang/8015762/webrev.01/>
>>>>
>>> Thanks for confirming that the 5 second timeout is insufficient, that
>>> part is clear now.
>>>
>>> The webrev also updates TestServers so that start runs the task
>>> directly. Is this meant to be part of this change?
>>>
>>> -Alan.
>>>
>> Yes, it is a part of the fix, i have tested if only update timeout to 10
>> sec, the test maybe still failed as the new created thread of
>> UdpEchoRequest doesn't get chance to run. so I workaround the thread.
>
> Hi Eric,
>
> This looks very strange - I had to look twice to convince me that
> the UDP packet would not be sent twice.
>
> Did you double check whether there were other tests using the
> UdpEchoServer - and whether such a change might affect them
> too?
>
>
> best regards,
>
> -- daniel
>
>
>>
>> Thanks,
>> Eric
>>
>
I have searched the test repo using keyword "UdpEchoServer", I didn't
find other test references it.
Thanks,
Eric
More information about the nio-dev
mailing list