RFR [8193596]: java/net/DatagramPacket/ReuseBuf.java failed due to timeout

mark sheppard macanaoire at hotmail.com
Sat Aug 24 11:33:34 UTC 2019


Hi Alan, Daniel

a couple of observations on the assertion for test failure that you may wish to consider.
​
If there is a BindException for  the DatagramSocket instantiations​
then this would suggest that there is an operating system​ issue.
The sockets are being bound to an ephemeral port,  allocated by the OS, which would mean​
that the OS is choosing a port that it has  already allocated ! ​
​
It may be worth checking that the ephemeral port range in the test environments are appropriately configured,​
as per IANA recommendations.​
​
One potential extreme condition is that IFF there are many thousands of concurrent tests executing,​
there could be ephemeral port exhaustion ?
​
Another observation is that this is a UDP test, as such, it is unreliable in its outcome.​
That is to say, UDP sends are not guaranteed to be successful.​
This could be especially true in a very heavily loaded system, which may have some resource contention,​
such as available UDP buffer space. As such, there is no guarantee that any send will succeed.​
It may be an extreme exaggeration, but the OS may accept a message to send, copy from user space to kernel space,​
but because of some extreme exceptional conditions in the kernel, drops the message without notification.​
​
Another point to keep in mind is that the test is multi threaded, and again in heavily loaded system the scheduling of​
a thread may not be as prompt as expected ?

best regards
Mark

________________________________
From: net-dev <net-dev-bounces at openjdk.java.net> on behalf of Daniel Fuchs <daniel.fuchs at oracle.com>
Sent: Friday 23 August 2019 09:42
To: Alan Bateman <Alan.Bateman at oracle.com>; Patrick Concannon <patrick.concannon at oracle.com>; OpenJDK Network Dev list <net-dev at openjdk.java.net>
Subject: Re: RFR [8193596]: java/net/DatagramPacket/ReuseBuf.java failed due to timeout

Hi Alan,

On 23/08/2019 10:25, Alan Bateman wrote:
> On 23/08/2019 10:10, Patrick Concannon wrote:
>> Hi,
>>
>> Would it be possible to have my fix for JDK-8193596 reviewed?
>>
>> The test fails intermittently due to binding to wildcard addresses --
>> similar to those that have been fixed under the umbrella of
>> JDK-8222938 <https://bugs.openjdk.java.net/browse/JDK-8222938>. This
>> fix changes the binding from using a wildcard address to localhost.
>>
> It's hard to see from the bug report if this interference due to binding
> to the wildcard address but the change looks okay to me.

Yes I agree - but it fails again then at least that's one thing we
won't have to put in question :-)

best regards,

-- daniel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/net-dev/attachments/20190824/bcfdce99/attachment-0001.html>


More information about the net-dev mailing list