ROLLBACK DELTA

Содержание раздела
  1. Синтаксис
  2. Ограничения
  3. Пример

Поддерживается в версиях:  6.5 / 6.4 / 6.3 / 6.2 / 6.1 / 6.0 / 5.8 / 5.7 / 5.6 / 5.5 / 5.4 / 5.3 / 5.2 / 5.1 / 5.0.

Запрос откатывает горячую (открытую) дельту и отменяет внесенные в ней изменения.

Запрос отменяет следующие операции горячей дельты:

Запрос не отменяет незавершенные операции, запущенные запросами обновления данных, а также операции записи, выполненные до дельты.

Перед выполнением запроса необходимо выбрать логическую базу данных, используемую по умолчанию, если она еще не выбрана.

После запуска запроса будет невозможно закрыть дельту, даже если запрос вернет ошибку.

Система откатывает горячую дельту в следующем порядке:

  1. Останавливает незавершенные операции записи, запущенные запросами загрузки данных.
    Операции останавливаются асинхронно, поэтому система с заданной периодичностью проверяет, остались ли неостановленные операции. Периодичность проверки регулируется параметром конфигурации DELTA_ROLLBACK_STATUS_CALLS_MS.
  2. Отменяет операции горячей дельты:
    • все завершенные операции,
    • операции, остановленные на шаге 1.
  3. Удаляет горячую дельту из сервисной базы данных и освобождает номер горячей дельты, зарезервированный ранее. Номера операций записи, выполненных ранее в этой дельте, НЕ освобождаются.

В ответе возвращается:

  • объект ResultSet c одной записью, содержащей номер последней закрытой дельты, при успешном выполнении запроса;
  • исключение при неуспешном выполнении запроса.

При успешном выполнении запроса система снимает блокировку DDL-операций, действующую в горячей дельте. Изменение логической схемы данных вновь становится доступным.

Горячую дельту невозможно откатить, пока в ней есть незавершенные операции записи.
Чтобы проверить наличие незавершенных операций записи, выполните GET_WRITE_OPERATIONS. Способы обработки таких операций см. в разделе Управление операциями записи.

Синтаксис

ROLLBACK DELTA

Ограничения

  • Выполнение запроса недоступно, если есть незавершенные операции записи или другой незавершенный запрос ROLLBACK DELTA.
  • После запуска запроса дельту невозможно закрыть, даже если запрос вернул ошибку.
  • Запрос не отменяет незавершенные операции записи, запущенные запросами обновления данных, и операции записи, выполненные до дельты.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

Пример

USE marketing;
ROLLBACK DELTA;