On 01/10/13 19:59, Brian Burkhalter wrote:
On Oct 1, 2013, at 11:50 AM, Alan Bateman wrote:

On 01/10/2013 11:31, Brian Burkhalter wrote:
Hello net-dev members,

Please review this proposed fix at your convenience.

Summary
When looking up a host and an EAGAIN error is encountered, throw an instance of 
the new HostLookupException subclass of UnknownHostException.

Issue
https://bugs.openjdk.java.net/browse/JDK-8010371

Webrev
http://cr.openjdk.java.net/~bpb/8010371


So is getaddrinfo returning EAGAIN or is it failing with EAI_SYSTEM and errno 
set to EAGAIN?
It seems a bit unclear to me and to depend on which system one is on. There is 
also the possibility apparently of it returning EAI_AGAIN. It might be best to 
test both the return value and if that is EAI_SYSTEM to test errno.

I also wonder if the EAGAIN means the underlying syscall has been interrupted, 
in which case the normal thing to do is to retry.
The approach I initially was going to take was to retry once after a short wait 
and then fail with the proposed exception if the retry failed.

I'm not sure about the short wait. I know the submitter claims that it worked after 50ms, but I don't think we could generalise that behavior in the library. Maybe, there is value in repeating immediately, though
it is less likely the temporary condition will have resolved.

Michael

This webrev was intended to provoke discussion such as this is the first time I 
have looked at this part of the code base and it is not clear how to actually 
test this situation.

Brian

Reply via email to