Skip to content

Prevent RoundRobin wrap-around in recovery sequences #5033

@DylanDeCoeyer-Quimesis

Description

@DylanDeCoeyer-Quimesis

Issue:
The RoundRobin node currently wraps around to its first child after the last one succeeds. When used as recovery within a RecoveryNode (e.g., here), its index can become misaligned with the RecoveryNode’s retry counter. This happens because RoundRobin skips children that return FAILURE, while the RecoveryNode assumes each attempt corresponds to a distinct child. If the RecoveryNode’s number_of_retries equals the number of RoundRobin children, there is a risk that RoundRobin wraps around and executes some children more than once.

Proposed enhancement:
Introduce a boolean parameter that, when enabled, causes RoundRobin to return FAILURE instead of wrapping around. This would signal to the RecoveryNode that all recovery actions have been exhausted, allowing the failure to propagate appropriately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions