CANCEL SESSION

On this page Carat arrow pointing down
Warning:
CockroachDB v22.2 is no longer supported as of June 5, 2024. For more details, refer to the Release Support Policy.

The CANCEL SESSION statement lets you stop long-running sessions. CANCEL SESSION will attempt to cancel the currently active query and end the session.

Required privileges

To view and cancel a session, the user must be a member of the admin role or must have the VIEWACTIVITY system privilege (or the legacy VIEWACTIVITY role option) and the CANCELQUERY system privilege (or the legacy CANCELQUERY role option) defined. Non-admin users cannot cancel admin users' sessions.

Synopsis

CANCEL SESSION IF EXISTS session_id SESSIONS IF EXISTS select_stmt

Parameters

Parameter Description
session_id The ID of the session you want to cancel, which can be found with SHOW SESSIONS.

CANCEL SESSION accepts a single session ID. If a subquery is used and returns multiple IDs, the CANCEL SESSION statement will fail. To cancel multiple sessions, use CANCEL SESSIONS.
select_stmt A selection query that returns session_id(s) to cancel.

Example

Cancel a single session

In this example, we use the SHOW SESSIONS statement to get the ID of a session and then pass the ID into the CANCEL SESSION statement:

icon/buttons/copy
> SHOW SESSIONS;
+---------+----------------------------------+-----------+...
| node_id |            session_id            | user_name |...
+---------+----------------------------------+-----------+...
|       1 | 1530c309b1d8d5f00000000000000001 | root      |...
+---------+----------------------------------+-----------+...
|       1 | 1530fe0e46d2692e0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...
icon/buttons/copy
> CANCEL SESSION '1530fe0e46d2692e0000000000000001';

You can also cancel a session using a subquery that returns a single session ID:

icon/buttons/copy
> CANCEL SESSIONS (WITH x AS (SHOW SESSIONS) SELECT session_id FROM x
      WHERE user_name = 'root');

Cancel multiple sessions

Use the SHOW SESSIONS statement to view all active sessions:

icon/buttons/copy
> SHOW SESSIONS;
+---------+----------------------------------+-----------+...
| node_id |            session_id            | user_name |...
+---------+----------------------------------+-----------+...
|       1 | 1530c309b1d8d5f00000000000000001 | root      |...
+---------+----------------------------------+-----------+...
|       1 | 1530fe0e46d2692e0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...
|       1 | 15310cc79671fc6a0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...

To cancel multiple sessions, nest a SELECT clause that retrieves session_id(s) inside the CANCEL SESSIONS statement:

icon/buttons/copy
> CANCEL SESSIONS (WITH x AS (SHOW SESSIONS) SELECT session_id FROM x
      WHERE user_name = 'maxroach');

All sessions created by maxroach will be cancelled.

See also


Yes No
On this page

Yes No