- The server now also signals abort_work if the commit is no longer in
the queue.
- The server now immediately reserves the work it gives to the worker,
so other idle workers won't get the same work.
- The server now chooses a run id, not the worker. The worker can still
submit work under arbitrary run ids when no id is known, for example
when importing runs from another database.