База данных Firebase onCreate не обновляет все записи - PullRequest
0 голосов
/ 23 января 2019

Я новичок в облачных функциях и у меня есть большой блокировщик, который я не могу понять. Я создал обработчик onCreate, и он корректно срабатывает при каждом новом элементе. Если я помещаю несколько элементов в базу данных и мой обратный вызов вызывается много раз, иногда snap.ref.update не обновляет элемент.

Вот мой код:

...
.onCreate(async snap => {
    const item = snap.val()

    const newImageUrl = await asyncFunctionThatMovesImage(item.url1)
    const newImageUrl2 = await asyncFunctionThatMovesImage(item.url2)

    return snap.ref.update({
       img1: newImageUrl,
       img2: newImageUrl2
    })
})

На данный момент 50-75% элементов фактически обновляются, но другие .. я не знаю почему, но у них есть старые данные. Каждая функция возвращает 200 (я проверял в журналах).

Есть ли ограничения для Firebase Storage или я что-то упустил?

1 Ответ

0 голосов
/ 23 января 2019

Я думаю, что ваша проблема здесь в том, что ваша функция обновляет тот же ref, который она прослушивает, поэтому, если в локации нет дочерних объектов img1 или img2, это снова вызовет саму функцию.

...