Перейти к основному содержанию
Существует два вида операторов KILL: для завершения запроса и для завершения мутации

KILL QUERY

Попытка принудительно завершить выполняющиеся в данный момент запросы. Запросы для завершения выбираются из таблицы system.processes по критериям, заданным в условии WHERE запроса KILL. Примеры: Сначала нужно получить список незавершённых запросов. Этот SQL-запрос выводит их, начиная с тех, которые выполняются дольше всего: Список с одного узла ClickHouse:
Список в кластере ClickHouse:
Завершите запрос:
Если вы завершаете запрос в ClickHouse Cloud или в самоуправляемом кластере, обязательно используйте предложение ON CLUSTER [cluster-name], чтобы запрос был завершён на всех репликах.
Пользователи в режиме только для чтения могут останавливать только собственные запросы. По умолчанию используется асинхронная версия запросов (ASYNC), которая не ждёт подтверждения остановки запросов. Синхронная версия (SYNC) ждёт остановки всех запросов и показывает информацию о каждом процессе по мере его остановки. Ответ содержит столбец kill_status, который может принимать следующие значения:
  1. finished – Запрос был успешно завершён.
  2. waiting – Ожидание завершения запроса после отправки ему сигнала на завершение.
  3. Другие значения объясняют, почему запрос не удаётся остановить.
Тестовый запрос (TEST) только проверяет права пользователя и показывает список запросов для остановки.

KILL MUTATION

Наличие долго выполняющихся или незавершённых мутаций часто указывает на то, что сервис ClickHouse работает некорректно. Асинхронная природа мутаций может приводить к тому, что они потребляют все доступные ресурсы системы. Вам может потребоваться:
  • Приостановить все новые мутации, INSERTы и SELECTы и дождаться обработки очереди мутаций.
  • Или вручную завершить некоторые из этих мутаций, отправив команду KILL.
Пытается отменить и удалить мутации, которые выполняются в данный момент. Мутации для отмены выбираются из таблицы system.mutations с помощью фильтра, заданного в условии WHERE запроса KILL. Тестовый запрос (TEST) лишь проверяет права пользователя и выводит список мутаций, которые будут остановлены. Примеры: Получить count() незавершённых мутаций: Количество мутаций на отдельном узле ClickHouse:
Количество мутаций в кластере реплик ClickHouse:
Запросите список незавершённых мутаций: Список мутаций на одном узле ClickHouse:
Список мутаций в кластере ClickHouse:
При необходимости завершите мутации:
Запрос полезен, когда мутация зависла и не может завершиться (например, если какая-либо функция в запросе мутации генерирует исключение при применении к данным, содержащимся в таблице). Изменения, уже внесённые мутацией, не откатываются.
столбец is_killed=1 (Только в ClickHouse Cloud) в таблице system.mutations не обязательно означает, что мутация полностью завершена. В некоторых случаях мутация может долго оставаться в состоянии, когда is_killed=1, а is_done=0. Это может происходить, если другая долго выполняющаяся мутация блокирует завершённую мутацию. Это нормальная ситуация.
Последнее изменение 25 июня 2026 г.