- Notifications
You must be signed in to change notification settings - Fork952
Add retry#6437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Open
RanVaknin wants to merge2 commits intomasterChoose a base branch fromrvaknin/fix-flakey-test-s3Multipart
base:master
Could not load branches
Branch not found:{{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
Open
Add retry#6437
Uh oh!
There was an error while loading.Please reload this page.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
| returnOptional.ofNullable(contentLength); | ||
| for (inti =0;i <3;i++) { | ||
| try { | ||
| stubUploadPartFailsInitialAttemptSucceedsUponRetryCalls(responseDefinitionBuilder); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Nit: maybe consider put this line out of the for loop to prevent multiple stubs. I'm not sure if this will just overwrite the previous stub or cause multiple stub
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Labels
changelog-not-requiredIndicate changelog entry is not required for a specific PR no-api-surface-area-changeIndicate there is no API surface area change and thus API surface area review is not required
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Uh oh!
There was an error while loading.Please reload this page.
The
mpuDefaultSplitImpl_partsFailOfRetryableError_shouldFailtest intermittently fails in CI environments following PR#6368 which replaced the directSplittingPublisherconstructor with a builder pattern, which likely changed the threading or timing behavior of when theNonRetryableExceptiongets thrown versus when WireMock processes and counts the HTTP requests.This seems to cause a race condition in the test where sometimes the test sees the expected single request and sometimes it sees multiple requests before the exception occurs:
or
When testing this locally, I ran a parameterizedTest with 1000 iterations and saw 100% success rate even when running in parallel. This is probably failing in our CI build for some environment specific reasons. As first low effort measure, I added a simple retryer that will retry each parameterized test 3 times before failing.