В моем бессерверном бэкэнде у меня есть таблица DynamoDB для сбора данных. Лямбда-функция присоединяется к DynamoDB с помощью триггера - когда таблица обновляется, триггер запускает лямбда-функцию.
Проблема: Лямбда-функции выполняют Обновлять в той же строке, таким образом вызывая лямбда-функцию снова (и снова и снова ...)
Вопрос: Есть ли способ выполнить обновление DynamoDB без, включив триггер?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Функция Lambda должна проверять что-то, возможно, новое поле, которое ей нужно добавить к любым записям, которые она обновляет, чтобы при повторном запуске она знала, что это было инициировано ее собственным обновлением, и ей не нужно обновлять запись. опять таки.
Также в моем случае «чего-то» не существует. Невозможно определить, было ли последнее обновление выполнено функцией Lambda или сторонней системой.
Я согласен, что это кажется ненужным, однако DynamoDB не может условно запускать лямбда-функцию. Он будет запускать функцию при каждом обновлении. Есть ли у вас какой-либо контроль над тем, какие конкретные обновления делает сторонняя система, например, можете ли вы добавить дополнительное поле для обновления?
@Vingtoft, хотя вы, возможно, не сможете управлять системой 3p, вы определенно можете контролировать лямбда, поэтому в худшем случае вы можете разорвать цикл после одного обновления из вашей лямбда.
Я надеялся найти более элегантное решение. Выполнять ненужную лямбда-функцию (если ее можно избежать) - пустая трата денег.