Skip to content

Conversation

@FGasper
Copy link
Collaborator

@FGasper FGasper commented Dec 5, 2024

This improves the retryer in several ways that should aid in debugging such failures as REP-5358:

  • There are now descriptions for each callback and (optionally) the loop itself. Those descriptions go in the relevant log messages.
  • NoteSuccess() also takes a description that goes into logs.
  • Retried failures are now noted at info level rather than debug.
  • The retryer now notes success of a retried operation.
  • Long-running operations that go without a success for >1min will be noted in the log as a warning.
  • The “retry randomly” functionality is removed. (None of the existing tests use it.)

The above requires a revamp of the retryer interface, so all callers into it are rewritten.

@FGasper FGasper changed the title Revamp retryer. REP-5358 Revamp retryer. Dec 5, 2024
@FGasper FGasper requested a review from tdq45gj December 5, 2024 16:38
Copy link
Collaborator

@tdq45gj tdq45gj left a comment

Choose a reason for hiding this comment

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

LGTM

@FGasper FGasper merged commit 709bceb into mongodb-labs:main Dec 6, 2024
147 checks passed
@FGasper FGasper deleted the felipe_add_retry_description branch December 6, 2024 21:55
FGasper added a commit that referenced this pull request Dec 11, 2024
PR #76 missed some changes due to differences between repositories. This changeset restores those:
- NoteSuccess() now requires a description of what succeeded, which will go into the log.
- The retryer logs context cancellation errors at debug level.
- A few more data points go into the logs now.
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