COMMIT DELTA
Содержание раздела
Поддерживается в версиях: 6.1 / 6.0 / 5.8 / 5.7 / 5.6.1 / 5.5 / 5.4 / 5.3 / 5.2 / 5.1 / 5.0.
Запрос закрывает открытую (горячую) дельту. Дата и время закрытия дельты могут быть указаны в запросе или установлены системой.
Время закрытия дельты указывается с точностью до секунд.
Минимально допустимая разница во времени между закрытием дельт — 1 секунда.
Перед закрытием дельты выберите логическую базу данных, используемую по умолчанию, если она еще не выбрана.
В ответе возвращается:
- объект ResultSet c одной записью, содержащей информацию о дате и времени закрытия дельты, при успешном выполнении запроса;
- исключение при неуспешном выполнении запроса.
Для дельты устанавливаются следующие дата и время закрытия:
- указанные в запросе, если они указаны и корректны,
- определенные системой, если дата и время не указаны в запросе.
При успешном выполнении запроса дельта закрывается и становится недоступна для изменения.
Горячую дельту невозможно закрыть или откатить, пока в ней есть незавершенные операции записи.
Чтобы проверить наличие незавершенных операций, выполните GET_WRITE_OPERATIONS. Способы обработки незавершенных операций описаны в разделе Управление операциями записи.
Последние закрытые дельты можно удалить запросом ERASE DELTA.
Синтаксис
Закрытие дельты:
COMMIT DELTA
Закрытие дельты с указанными датой и временем закрытия:
COMMIT DELTA SET date_time_expression
Параметры:
Ключевое слово SET
Ключевое слово SET
задает метку времени — дату и время закрытия дельты. Если ключевое слово и метка времени не указаны, система устанавливает в качестве метки времени дельты текущее время сервера. См. также параметр date_time_expression.
Ограничения
- Если в запросе указаны дата и время закрытия дельты, они должны быть больше, чем дата и время последней закрытой дельты в логической базе данных.
- Минимально допустимая разница во времени между закрытием дельт — 1 секунда.
- Дельту невозможно закрыть, пока в ней есть незавершенные операции записи.
Дату и время последней закрытой дельты можно узнать с помощью запроса GET_DELTA_OK или GET-метода /datamarts/{datamart}/deltas/latest/ok.
Пример
COMMIT DELTA SET '2021-03-21 09:29:54'