Обновлена 15 сентября 2026 г. в 08:55
before_replace
Параметры:
trigger-function(function) — функция, которая станет функцией-триггером; описание необязательных параметров функции-триггера см. в on_replace.old-trigger-function(function) — существующая функция-триггер, которая будет заменена наtrigger-function
Возвращает
nil или указатель на функцию
Если функция-триггер возвращает значение:
- если возвращаемое значение отсутствует, выполнение продолжается, и новое значение вставляется или заменяется;
- если значение равно nil, кортеж будет удален;
- если значение совпадает со старым параметром, функция
on_replaceне будет вызвана, а изменение данных будет пропущено. Возвращаемое значение будет отсутствовать; - если значение совпадает с новым параметром, это равносильно тому,
что функция
before_replaceне была вызвана; - если значение представляет собой другой кортеж, он используется для вставки/замены.
Тем не менее, если функция-триггер возвращает старый кортеж или вызовет run_triggers(false), это не повлияет на другие триггеры, активируемые в том же запросе вставки, обновления или замены.
function f1 (old, new) return endfunction f2 (old, new) return nil endfunction f3 (old, new) return old endfunction f4 (old, new) return new endfunction f5 (old, new) return box.tuple.new({new[1],'b'}) end