AWS / AWS SDK for Java 2.x
Accepted via maintainer mergeCorrectnessMerged Jun 18, 2026

Fix streaming timeout exception decoration

AWS merged the Netty NIO HTTP Client streaming timeout fix through maintainer PR #7048, explicitly linking it to original PR #6975 and preserving contributor credit in the changelog.

aws/aws-sdk-java-v2 · #7048

Problem

For streamed S3AsyncClient#getObject responses, Netty ReadTimeoutException could surface through ResponseHandler.PublisherAdapter.onError without the same SDK exception decoration used by the channel exception path. That raw Netty exception could bypass retry-oriented IOException handling.

Approach

Decorated publisher errors with NettyUtils.decorateException before notifying the downstream subscriber and response handler, with a regression test proving streamed read timeouts become retryable IOException failures.

Impact and scope

  • Improves retry reliability for AWS SDK Java v2 streaming S3 responses when Netty read timeouts occur during publisher delivery.
  • Aligns streamed publisher error handling with the existing channel exception path, reducing inconsistent timeout behavior in the Netty NIO client.
  • Provides strong attribution evidence: maintainer PR #7048 says it is the merge PR for #6975, and the merged changelog lists contributor "goutamadwant".

Validation

  • Original PR #6975 included focused PublisherAdapterTest coverage for streaming read-timeout exception decoration.
  • Maintainer merge #7048 incorporated the production ResponseHandler change, regression test, and Netty NIO HTTP Client changelog entry.
  • The merged changelog entry credits contributor "goutamadwant" while the final merge was performed through the AWS maintainer branch.