Skip to content

Conversation

@glindstedt
Copy link

What this PR does / Why we need it:

If a single backfill has expired it would cause the whole FetchMatches call to error out. Now instead the backfill will be skipped, similar to the NotFound case.

The status code returned for attempting to acknowledge or update an expired backfill is changed from Unavailable since the operation is not retryable. I opted for FailedPrecondition, but maybe InvalidArgument could make more sense since you can't "revive" the backfill, only create a new one if it expired.

Special notes for your reviewer:

There are some formatting changes from format-on-save, let me know if I should remove them to make the PR clearer.

})

// Depends on pendingReleaseTimeout
time.Sleep(1 * time.Second)
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a bit ugly, would be nice if we could have something like k8s.io/utils/clock/testing to pass the time

@glindstedt glindstedt force-pushed the skip-expired-backfills branch from 7924516 to f31067d Compare November 7, 2023 13:55
If a single backfill has expired it would cause the whole FetchMatches
call to error out. Now the backfill will be skipped instead similar to
the NotFound case. The status code returned for attempting to
acknowledge or update an expired backfill is changed from Unavailable
since the operation is not retryable.
@glindstedt glindstedt force-pushed the skip-expired-backfills branch from f31067d to 7fc3eb3 Compare November 7, 2023 13:56
if err != nil {
e, ok := status.FromError(err)
if err == errBackfillGenerationMismatch || (ok && e.Code() == codes.NotFound) {
if err == errBackfillGenerationMismatch || (ok && (e.Code() == codes.NotFound || e.Code() == codes.FailedPrecondition)) {
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the main change

govargo added a commit to govargo/open-match that referenced this pull request Jun 24, 2024
govargo added a commit to govargo/open-match that referenced this pull request Jul 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants