Skip to content

Conversation

@original-brownbear
Copy link
Contributor

We were incorrectly handling IOExceptions thrown by
the InputStream side of the upload operation, resulting
in a ClassCastException as we expected to never get
IOException from the Azure SDK code but we do in practice.
This PR also sets an assertion on markSupported for the
streams used by the SDK as adding the test for this scenario
revealed that the SDK client would retry uploads for
non-mark-supporting streams on IOException in the InputStream.

back port of #47968

We were incorrectly handling `IOExceptions` thrown by
the `InputStream` side of the upload operation, resulting
in a `ClassCastException` as we expected to never get
`IOException` from the Azure SDK code but we do in practice.
This PR also sets an assertion on `markSupported` for the
streams used by the SDK as adding the test for this scenario
revealed that the SDK client would retry uploads for
non-mark-supporting streams on `IOException` in the `InputStream`.
@original-brownbear original-brownbear added :Distributed Coordination/Snapshot/Restore Anything directly related to the `_snapshot/*` APIs backport labels Oct 15, 2019
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-distributed (:Distributed/Snapshot/Restore)

@original-brownbear
Copy link
Contributor Author

Jenkins run elasticsearch-ci/packaging-sample

@original-brownbear original-brownbear merged commit 5caa101 into elastic:7.x Oct 15, 2019
@original-brownbear original-brownbear deleted the 47968-7.x branch October 15, 2019 10:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport :Distributed Coordination/Snapshot/Restore Anything directly related to the `_snapshot/*` APIs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants