[ 
https://issues.apache.org/jira/browse/HADOOP-14596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17182240#comment-17182240
 ] 

Yongjun Zhang edited comment on HADOOP-14596 at 8/22/20, 3:46 AM:
------------------------------------------------------------------

Hi [~ste...@apache.org],

Thank you for the work here! I have a question.

I'm seeing the following exception, which seems to mean that 
SdkFilterInputStream doesn't read the exact number of bytes requested. However, 
a retry is successful.

See relevant code:
https://github.com/frohoff/jdk8u-dev-jdk/blob/master/src/share/classes/sun/security/ssl/InputRecord.java#L596
https://github.com/frohoff/jdk8u-dev-jdk/blob/master/src/share/classes/sun/security/ssl/InputRecord.java#L464

{code}
Caused by: javax.net.ssl.SSLException: SSL peer shut down incorrectly
        at sun.security.ssl.InputRecord.readV3Record(InputRecord.java:596)
        at sun.security.ssl.InputRecord.read(InputRecord.java:532)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:990)
        at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:948)
        at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:137)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.SessionInputBufferImpl.read(SessionInputBufferImpl.java:198)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:176)
        at 
com.amazonaws.thirdparty.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:135)
        at 
com.amazonaws.internal.SdkFilterInputStream.read(SdkFilterInputStream.java:82)
        at 
com.amazonaws.event.ProgressInputStream.read(ProgressInputStream.java:180)
        at 
com.amazonaws.internal.SdkFilterInputStream.read(SdkFilterInputStream.java:82)
{code}

Wonder if you could share some insight on why SdkFilterInputStream doesn't get 
the expected data? And this problem seems to be intermittent. Or I missed 
anything?

Thanks a lot.


was (Author: yzhangal):
Hi [~ste...@apache.org],

Thank you for the work here! I have a question.

I'm seeing the following exception, which seems to mean that 
SdkFilterInputStream doesn't read the exact number of bytes requested. However, 
a retry is successful.

See relevant code:
https://github.com/frohoff/jdk8u-dev-jdk/blob/master/src/share/classes/sun/security/ssl/InputRecord.java#L596
https://github.com/frohoff/jdk8u-dev-jdk/blob/master/src/share/classes/sun/security/ssl/InputRecord.java#L464

{code}
Caused by: javax.net.ssl.SSLException: SSL peer shut down incorrectly
        at sun.security.ssl.InputRecord.readV3Record(InputRecord.java:596)
        at sun.security.ssl.InputRecord.read(InputRecord.java:532)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:990)
        at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:948)
        at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:137)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.SessionInputBufferImpl.read(SessionInputBufferImpl.java:198)
        at 
com.amazonaws.thirdparty.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:176)
        at 
com.amazonaws.thirdparty.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:135)
        at 
com.amazonaws.internal.SdkFilterInputStream.read(SdkFilterInputStream.java:82)
        at 
com.amazonaws.event.ProgressInputStream.read(ProgressInputStream.java:180)
        at 
com.amazonaws.internal.SdkFilterInputStream.read(SdkFilterInputStream.java:82)
{code}

Wonder if you could share some insight on why SdkFilterInputStream doesn't get 
the expected data? Or I missed anything?

Thanks a lot.

> AWS SDK 1.11+ aborts() on close() if > 0 bytes in stream; logs error
> --------------------------------------------------------------------
>
>                 Key: HADOOP-14596
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14596
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>            Priority: Blocker
>             Fix For: 2.9.0, 3.0.0-alpha4
>
>         Attachments: HADOOP-14596-001.patch, HADOOP-14596-002.patch, 
> testlog.txt
>
>
> The latest SDK now tells us off when we do a seek() by aborting the TCP stream
> {code}
> - Not all bytes were read from the S3ObjectInputStream, aborting HTTP 
> connection. This is likely an error and may result in sub-optimal behavior. 
> Request only the bytes you need via a ranged GET or drain the input stream 
> after use.
> 2017-06-27 15:47:35,789 [ScalaTest-main-running-S3ACSVReadSuite] WARN  
> internal.S3AbortableInputStream (S3AbortableInputStream.java:close(163)) - 
> Not all bytes were read from the S3ObjectInputStream, aborting HTTP 
> connection. This is likely an error and may result in sub-optimal behavior. 
> Request only the bytes you need via a ranged GET or drain the input stream 
> after use.
> 2017-06-27 15:47:37,409 [ScalaTest-main-running-S3ACSVReadSuite] WARN  
> internal.S3AbortableInputStream (S3AbortableInputStream.java:close(163)) - 
> Not all bytes were read from the S3ObjectInputStream, aborting HTTP 
> connection. This is likely an error and may result in sub-optimal behavior. 
> Request only the bytes you need via a ranged GET or drain the input stream 
> after use.
> 2017-06-27 15:47:39,003 [ScalaTest-main-running-S3ACSVReadSuite] WARN  
> internal.S3AbortableInputStream (S3AbortableInputStream.java:close(163)) - 
> Not all bytes were read from the S3ObjectInputStream, aborting HTTP 
> connection. This is likely an error and may result in sub-optimal behavior. 
> Request only the bytes you need via a ranged GET or drain the input stream 
> after use.
> 2017-06-27 15:47:40,627 [ScalaTest-main-running-S3ACSVReadSuite] WARN  
> internal.S3AbortableInputStream (S3AbortableInputStream.java:close(163)) - 
> Not all bytes were read from the S3ObjectInputStream, aborting HTTP 
> connection. This is likely an error and may result in sub-optimal behavior. 
> Request only the bytes you need via a ranged GET or drain the input stream 
> after use.
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to