Как предотвратить возможные RC

Я использую процедуры Tarantool 1.5 и lua.

Документация говорит, что процедура lua может привести к выполнению другой после сетевой операции или операции ввода-вывода, например, вызову box.update.

Мой главный вопрос: если я получаю возвратный кортеж из box.update, содержит ли он информацию "после обновления, до выхода" или "после обновления, после выхода"?

Кроме того, каковы лучшие методы предотвращения возможных условий гонки?

1 ответ

Решение

Если вам нужно сделать что-то вроде транзакции в 1.5, вы можете выполнить либо идемпотентную операцию, либо выполнить повторный выбор и проверки после любой операции выхода (обновить / удалить / заменить)

Другие вопросы по тегам