Reduce busy work in main job loop

What does this MR do?

Reduce busy work in main job loop

Re-orders the checks before executing a job. We now:

  • Check to see if we're at the runner limit
  • Check job request concurrency and "hold" a job request
  • Check to see if executor provider has capacity
  • Create session server
  • Perform job request
  • Release "hold" for job request

Why was this MR needed?

What's the best way to test this MR?

What are the relevant issue numbers?

Closes #38570 (closed)

Merge request reports

Loading