You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Refinery’s trace redistribution logic can trigger multiple redistribution events when cluster size changes occur back-to-back in a short time frame. Each cluster size change immediately triggers a redistribution, leading to increased traffic on nodes, which can worsen their stability, especially in environments with frequent scaling events.
Proposed Solution:
Introduce an initial delay using a timer before starting the redistribution process. The behavior will be as follows:
A timer will start after a cluster size change is detected.
Redistribution will only begin once the timer expires.
If another cluster size change occurs before the timer finishes, the timer will reset.
This ensures that redistribution only happens once the cluster has stabilized, reducing unnecessary redistribution events.
The text was updated successfully, but these errors were encountered:
## Which problem is this PR solving?
- #1389
## Short description of the changes
- moved `redistributeNotifier` to its own file since `collect.go` is
getting big
- only notify the `triggered` channel when `timer` fires
- reset `timer` when receiving a peer membership change from `r.reset`
- added tests
---------
Co-authored-by: Kent Quirk <[email protected]>
Description
Currently, Refinery’s trace redistribution logic can trigger multiple redistribution events when cluster size changes occur back-to-back in a short time frame. Each cluster size change immediately triggers a redistribution, leading to increased traffic on nodes, which can worsen their stability, especially in environments with frequent scaling events.
Proposed Solution:
Introduce an initial delay using a timer before starting the redistribution process. The behavior will be as follows:
The text was updated successfully, but these errors were encountered: