Process batch jobs grouped by email address
We previously processed batch jobs round robin, i.e., one item for each job per round. This is fair from the job point of view, but not from the user point of view when one user has many jobs.
We now process batch jobs one item for each user per round, where we pick the oldest job if a user has more than one. Users are defined by their email address.
Batch jobs submitted via the webservices all have the same email address, so they are effectively throttled as if all from the same user. Adapting the webservices to also allow setting an email address is future work.