Tarantool CE/EE Documentation portal logo
Помощь
Обновлена 15 сентября 2026 г. в 08:55

box.savepoint()

box.savepoint()

Возвращает дескриптор точки сохранения (тип = table), который позже можно использовать в box.rollback_to_savepoint(savepoint). Точки сохранения можно создавать только во время активной транзакции, и они уничтожаются по завершении транзакции.

Возвращает

таблица точки сохранения

Тип возвращаемого значения

Lua object

Возвращает

ошибка, если точку сохранения нельзя создать при отсутствии активной транзакции.

Возможные ошибки: ошибка, если по какой-либо причине не удается выделить память.

Пример

-- Вставка тестовых данных --box.space.bands:insert { 1, 'Roxette', 1986 }box.space.bands:insert { 2, 'Scorpions', 1965 }box.space.bands:insert { 3, 'Ace of Base', 1987 }-- Откат транзакции к точке сохранения --box.begin()box.space.bands:insert { 4, 'The Beatles', 1960 }save1 = box.savepoint()box.space.bands:replace { 1, 'Pink Floyd', 1965 }box.rollback_to_savepoint(save1)box.commit()