Expected Behavior
Idle groups should be stopped and removed after a configurable timeout. Groups with running or queued work must remain active, and stale timers must not remove groups that have been reused.
Actual Behavior
GroupByScheduler retains one scheduler per group key for the lifetime of the process. High-cardinality outbound traffic can therefore retain idle groups and their resources after traffic stops.
Steps to Reproduce the Problem
- Submit tasks using many unique group keys.
- Stop submitting tasks for those keys.
- Observe that the group schedulers remain retained indefinitely.
Specifications
- Version: main
- Platform: Server-side behavior
Expected Behavior
Idle groups should be stopped and removed after a configurable timeout. Groups with running or queued work must remain active, and stale timers must not remove groups that have been reused.
Actual Behavior
GroupBySchedulerretains one scheduler per group key for the lifetime of the process. High-cardinality outbound traffic can therefore retain idle groups and their resources after traffic stops.Steps to Reproduce the Problem
Specifications