gerrit flush-caches
===================

NAME
----
gerrit flush-caches - Flush some/all server caches from memory

SYNOPSIS
--------
[verse]
'ssh' -p <port> <host> 'gerrit flush-caches' --all
'ssh' -p <port> <host> 'gerrit flush-caches' --list
'ssh' -p <port> <host> 'gerrit flush-caches' --cache <NAME> ...

DESCRIPTION
-----------
Clear an in-memory cache, forcing Gerrit to reconsult the ground
truth when it needs the information again.

Flushing a cache may be necessary if an administrator modifies
database records directly in the database, rather than going through
the Gerrit web interface.

If no options are supplied, defaults to `--all`.

ACCESS
------
Caller must be a member of the privileged 'Administrators' group,
or in a group that have been granted
link:access-control.html#capability_flushCaches[the 'Flush Caches' global capability].

SCRIPTING
---------
This command is intended to be used in scripts.

OPTIONS
-------
--all::
	Flush all known caches.  This is like applying a big hammer,
	it will force everything out, potentially more than was
	necessary for the change made. This option automatically
	skips flushing potentially dangerous caches such as
	"web_sessions".  To flush one of these caches, the caller
	must specifically name them on the command line, e.g. pass
	`--cache web_sessions`.

--list::
	Show a list of the caches.

--cache <NAME>::
	Flush only the cache called <NAME>.  May be supplied more
	than once to flush multiple caches in a single command
	execution.

EXAMPLES
--------
List caches available for flushing:

====
	$ ssh -p 29418 review.example.com gerrit flush-caches --list
	accounts
	accounts_byemail
	diff
	groups
	ldap_groups
	openid
	projects
	sshkeys
	web_sessions
====

Flush all caches known to the server, forcing them to recompute:

====
	$ ssh -p 29418 review.example.com gerrit flush-caches --all
====

or

====
	$ ssh -p 29418 review.example.com gerrit flush-caches
====

Flush only the "sshkeys" cache, after manually editing an SSH key
for a user:

====
	$ ssh -p 29418 review.example.com gerrit flush-caches --cache sshkeys
====

Flush "web_sessions", forcing all users to sign-in again:

====
	$ ssh -p 29418 review.example.com gerrit flush-caches --cache web_sessions
====

SEE ALSO
--------

* link:cmd-show-caches.html[gerrit show-caches]
* link:config-gerrit.html#cache[Cache Configuration]
* link:config-gerrit.html#cache_names[Standard Caches]

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