Skip to content

Test PR for new Retry Framework #19

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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

kakwok
Copy link

@kakwok kakwok commented Apr 2, 2025

PR description:

Implements a RetryActionBase class for different types of action to be taken upon the need to retry.
SonicClientBase will have a list of RetryAction pointers initialized at construction.
The client will retry the list of actions one-by-one until every actions is no-longer suitable to retry.

An example configuration may look like this:

   Client = cms.PSet(
        mode = cms.string("Sync"),
        factor = cms.int32(-1),
        wait = cms.int32(10),
        allowedTries = cms.untracked.uint32(0),
        fails = cms.uint32(0),
        Retry = cms.VPSet(
              Action1 = cms.PSet(
                  retryType = cms.string("RetrySameServerAction"),
                  allowedTries = cms.untracked.uint32(4)
              ),
                Action2 = cms.PSet(
                  retryType = cms.string("RetrySomeOthersAction"),
                    ...
              ),
        )
    ),

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