HangfireIO / HangfireIO/Hangfire
RecurringJobScheduler.TryScheduleJob not checking queue before attempting to deserialise job
- Dominant language
- C#
- Stars
- 10.1k
- Forks
- 1.8k
- Avg merge
- 1h 19m
- Merged PRs (30d)
- 1
Description
This is more of an observation than an issue but why does Hangfire attempt to deserialise the job before checking whether the specific Hangfire instance actually services the queue that is allocated to the job.
I can see that there is a pull request to change this behaviour but it has been sat in limbo for a long time.
We have Hangfire in a busy distributed environment using SQL storage with multiple server instances (different queues) and the job load exceptions produce a lot of unnecessary noise in the logs.
Contributor guide
Research direction
Start by reading RecurringJobScheduler.TryScheduleJob and trace how the assigned queue and job deserialization are handled. Check the long-standing pull request referenced in the issue for existing context. Done should mean servers skip jobs from queues they do not service before deserialization, avoiding unnecessary load exceptions in the logs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- backend, distributed-systems
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100