As I proposed this change let me work on this and propose a patch.

Thanks for all the replies.

Stay tuned,
Norman

> On 5 Oct 2016, at 10:58, Chris Hegarty <chris.hega...@oracle.com> wrote:
> 
> I filed the following issue to track this:
>  https://bugs.openjdk.java.net/browse/JDK-8167161
> 
> -Chris.
> 
> On 04/10/16 13:52, David M. Lloyd wrote:
>> On 10/04/2016 03:58 AM, Langer, Christoph wrote:
>>> Hi,
>>> 
>>> I think I would also support replacing
>>> sun.net.ConnectionResetException with a publicly available
>>> java.net.ConnectionResetException that subclasses
>>> java.net.SocketException. But, as Chris mentions. a usage example
>>> would be helpful.
>> 
>> At present you're going to be hard-pressed to find exiting code that
>> detects a connection reset IOException.  The reason is that, while you
>> *can* search for "Connection reset by peer" in the exception message,
>> that text varies by platform and, more importantly, by locale.  So it is
>> essentially impossible to detect reliably.
>> 
>> But Norman's use case is dead on: a connection reset happens under
>> common circumstances.  In particular, when a TCP socket is closed by the
>> peer before the peer has read all pending data, an RST is returned. This
>> happens very often - when a peer process is terminated for example, or
>> the peer encounters an unrelated exception and terminates the connection
>> abruptly, both of which happen very, very commonly in networked
>> applications.  For servers the choice today is to fill the log with
>> meaningless exception traces or lose potentially more serious problems
>> (EIO for example is something that almost always indicates Bad Things).
>> 
>> I also support this proposal.
>> 
>>>> -----Original Message-----
>>>> From: net-dev [mailto:net-dev-boun...@openjdk.java.net] On Behalf Of
>>>> Chris
>>>> Hegarty
>>>> Sent: Montag, 12. September 2016 17:07
>>>> To: Florian Weimer <fwei...@redhat.com>; Norman Maurer
>>>> <norman.mau...@googlemail.com>; net-dev@openjdk.java.net
>>>> Subject: Re: Introduce IOException subclass for ECONNRESET
>>>> 
>>>> On 12/09/16 14:50, Florian Weimer wrote:
>>>>> On 08/23/2016 09:40 AM, Norman Maurer wrote:
>>>>>> Hi all,
>>>>>> 
>>>>>> I first asked this on nio-dev[0] but was asked to move this over to
>>>>>> here:
>>>>>> 
>>>>>> I wonder if it would be possible to add a new IOException sub-class
>>>>>> for ECONNRESET. Often you receive these errors if a remote peer closed
>>>>>> the connection and you try to read from it while using NIO. This is
>>>>>> very often not really something that concerns people and can just be
>>>>>> handled the same as a “normal close”.
>>>> 
>>>> So what are the other cases, where ECONNRESET may occur? What is
>>>> equivalent on non-Unix platforms, Windows for example?
>>>> 
>>>> >> At the moment the only way to
>>>>>> detect this is to inspect the IOException message which is really
>>>>>> hacky.
>>>> 
>>>> Do you have examples of code that does this today?
>>>> 
>>>>>> I wonder if we could not add a special IOException sub-class
>>>>>> for this. Something like:
>>>>>> 
>>>>>> ConnectionResetException extends IOException {
>>>>>> }
>>>>> 
>>>>> Shouldn't it be a subclass of SocketException?
>>>> 
>>>> I think it would have to be a subclass of SocketException too, for
>>>> compatibility at least, since that is the type that is thrown
>>>> today.
>>>> 
>>>> sun.net.ConnectionResetException exists today, but I don't think
>>>> that it ever finds its way outside of the implementation. And is
>>>> of course not part of Java SE.
>>>> 
>>>> -Chris.
>>>> 
>>> 
>> 

Reply via email to