temporal
temporal copied to clipboard
Respect priority levels in rescheduler
What changed?
Right now reshceulder picks task queues randomly in the reschedule loop. This can make it send low priority tasks before sending high priority tasks. It has to process high priority tasks before processing low priority tasks. This change introduces a btree of taskQueueKeys. Tasks queues are sorted in the order of priority inside this btree. This makes it easy for reschduler to iterate in the order of decreasing priority.
Why?
Better priority enforcement at task scheduler.
How did you test it?
- [x] built
- [ ] run locally and tested manually
- [x] covered by existing tests
- [x] added new unit test(s)
- [ ] added new functional test(s)
This PR was marked as stale. Please update or close it.