# X_JOB_SLOT_LOST

## Means

the fleet concurrency slot this run held was taken by another worker

## Typical cause

this worker stalled past the slot TTL and a second worker renewed slot 0 for itself, so `job.concurrency` was about to be exceeded. Its own code and not `X_JOB_LEASE_LOST` because the queue may still consider this worker the owner of the *job* — the two are different rows on different clocks (`x_job_leases` vs `x_jobs.visible_at`), and only one of them was lost. The run is aborted rather than left to double up

## Fix

`x jobs show <id> --json` — a run that keeps losing its slot is slower than its slot TTL, so raise the TTL or make the job shorter

[Jobs](/error-codes#jobs)
