Job Queues
The Administration → Job Queues page monitors and manages the background processing queues that power TestPlanIt's asynchronous work — notifications, emails, issue sync, imports, reindexing, audit logging, AI jobs, and more. You can view queue counts, pause or resume processing, clean out old jobs, and drill into individual jobs to retry, promote, or remove them.
Only system administrators can open this page.
How to access
- Open the Admin area from the top navigation.
- Select Job Queues under System in the admin menu.
Queue overview
The overview table refreshes automatically and lists every queue with these columns:
| Column | Description |
|---|---|
| Queue | The queue's display name. |
| Status | Active, Idle, Paused, or Error. |
| Concurrency | How many jobs the worker processes in parallel. |
| Waiting | Jobs queued and waiting to run. |
| Active | Jobs currently running. |
| Completed | Successfully finished jobs. |
| Failed | Jobs that errored. |
| Delayed | Jobs scheduled to run later. |
| Actions | Pause/resume and clean (see below). |
Queues monitored include forecast updates, notifications, emails, issue sync, Testmo imports, Elasticsearch reindex, audit logs, budget alerts, AI auto-tag, repository cache, copy & move, duplicate scan, smart selection, step-sequence scan, and automated execution dispatch.
Concurrency is read-only here. To change how many jobs a worker processes in parallel, set the relevant *_CONCURRENCY environment variable and restart the workers.
Queue actions
Each queue row offers:
- Pause — stop processing new jobs; jobs already running finish.
- Resume — resume processing waiting jobs.
- Clean — remove completed and failed jobs from the queue. This cannot be undone.
Managing individual jobs
Click a queue row to open the Queue Jobs panel, filterable by state (Waiting, Active, Completed, Failed, Delayed). Each job lists its ID, name, state, attempts, creation time, and duration. Per-job actions:
- View details — inspect job data, return value, options, timestamps, and (for failures) the failure reason and stack trace.
- Retry — re-run a failed job.
- Promote — move a delayed job to the front of the queue to run now.
- Cancel — for an active job whose worker checks for it (the code repository jobs — ticket scans, stale pin checks, cache refreshes and the nightly sweep — and impact analyses), asks the worker to stop at its next check. The job leaves the queue once it has stopped, and the connection or analysis records that it was cancelled.
- Remove — delete a job that is not being processed. An active job cannot be removed: the worker keeps its lock and keeps running it, so the page refuses and offers Cancel where the job supports it. Force Remove retries the removal for a lock left by a worker that has died; it reports success only when the job was actually removed.
Scheduled (repeatable) jobs are prefixed repeat:. Removing one first removes its schedule so it won't recur, then removes the current instance. If the instance is still locked, the response says the schedule was removed but the instance was not — cancel it, or restart the worker to release the lock. The scheduler recreates the schedule when it next starts.
Related pages
- Background Processes — how workers and the scheduler run.
- Multi-Tenant Workers — queue behavior in multi-tenant deployments.