box.savepoint()
-
box.
savepoint
()¶ Return a descriptor of a savepoint (type = table), which can be used later by box.rollback_to_savepoint(savepoint). Savepoints can only be created while a transaction is active, and they are destroyed when a transaction ends.
Return: savepoint table Rtype: Lua object Return: error if the savepoint cannot be set in absence of active transaction. Possible errors: error if for some reason memory cannot be allocated.
Example
-- Insert test data -- box.space.bands:insert { 1, 'Roxette', 1986 } box.space.bands:insert { 2, 'Scorpions', 1965 } box.space.bands:insert { 3, 'Ace of Base', 1987 } -- Rollback the transaction to a savepoint -- 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()