gerrit show-queue
=================

NAME
----
gerrit show-queue - Display the background work queues, including replication

SYNOPSIS
--------
[verse]
'ssh' -p <port> <host> 'gerrit show-queue'
'ssh' -p <port> <host> 'ps'

DESCRIPTION
-----------
Presents a table of the pending activity the Gerrit daemon
is currently performing, or will perform in the near future.
Gerrit contains an internal scheduler, similar to cron, that it
uses to queue and dispatch both short and long term activity.

Tasks that are completed or canceled exit the queue very quickly
once they enter this state, but it can be possible to observe tasks
in these states.

ACCESS
------
End-users may see a task in the queue only if they can also see
the project the task is associated with. Tasks operating on other
projects, or that do not have a specific project are hidden.

Members of the group 'Administrators', or any group that has been
granted
link:access-control.html#capability_viewQueue[the 'View Queue' capability]
can see all queue entries.

SCRIPTING
---------
Intended for interactive use only.

OPTIONS
-------
--wide::
-w::
	Do not format the output to the terminal width (default of
	80 columns).

DISPLAY
-------

Task::
	Unique task identifier on this server.	May be passed into
	link:cmd-kill.html[kill] to cancel or terminate the task.
	Task identifiers have a period of 2^32-1, and start from
	a random value.

State::
	If running, blank.
+
If the task has completed, but has not yet been reaped, 'done'.
If the task has been killed, but has not yet halted or been removed
from the queue, 'killed'.
+
If the task is ready to execute but is waiting for an idle thread
in its associated thread pool, 'waiting'.
+
Otherwise the time (local to the server) that this task will begin
execution.

Command::
	Short text description of the task that will be performed
	at the given time.

EXAMPLES
--------

The following queue contains two tasks scheduled to replicate the
`tools/gerrit.git` project to two different remote systems, `dst1`
and `dst2`:

====
	$ ssh -p 29418 review.example.com gerrit show-queue
	Task     State                 Command
	------------------------------------------------------------------------------
	7aae09b2 14:31:15.435          mirror dst1:/home/git/tools/gerrit.git
	9ad09d27 14:31:25.434          mirror dst2:/var/cache/tools/gerrit.git
	------------------------------------------------------------------------------
	  2 tasks
====

GERRIT
------
Part of link:index.html[Gerrit Code Review]
