Add priority field to queue
In this PR:
- the jobs have a new field called `priority`: `normal` (default) or `low`
- the `normal` jobs are fetched before the `low` ones (but respecting `max_jobs_per_namespace`)
- when updating a job, i.e., if a dataset has been updated again, the priority is inherited, never lowered, even if the priority field is set. This way: when launching backfill (with a low priority) on a dataset that was already waiting for update, we don't deprioritize it.
- same logic with the existing "force" field: when updating a job, if force was true, we maintain it.
Add priority field to queue: In this PR:
- the jobs have a new field called `priority`: `normal` (default) or `low`
- the `normal` jobs are fetched before the `low` ones (but respecting `max_jobs_per_namespace`)
- when updating a job, i.e., if a dataset has been updated again, the priority is inherited, never lowered, even if the priority field is set. This way: when launching backfill (with a low priority) on a dataset that was already waiting for update, we don't deprioritize it.
- same logic with the existing "force" field: when updating a job, if force was true, we maintain it.