Firestore Android бесконечный цикл

Я пишу Firestore код, который запускается, когда приложение отключено или онлайн.

Следующий код создает документ, а затем обновляет его. При запуске и подключении приложения Firestore переходит в бесконечный цикл, где значение документа циклически изменяется между двумя значениями ключа. (это можно просмотреть на консоли Firestore).

Журнал показывает снова и снова: Starting transaction: Locally write mutations В этот момент нет возможности остановить ее, не переустанавливая приложение (это происходит во внутреннем процессе Firestore).

 fun testAddUpdate() { val data = mapOf("mykey" to "some string") val data2 = mapOf("mykey" to "some new string") val docRef = FF.getInstance().collection("mycollection").document("mydocument") docRef.addSnapshotListener({ snapshot: DocumentSnapshot?, e: FirebaseFirestoreException? -> snapshot?.reference?.set(data) }) docRef.addSnapshotListener({ snapshot: DocumentSnapshot?, e: FirebaseFirestoreException? -> snapshot?.reference?.update(data2) }) } 

Кто-нибудь еще видел это поведение? Это ошибка?

Intereting Posts
Обновить searchView при удалении андроида запроса каков рекомендуемый способ использования двойного удара Kotlin для элемента с нулевым классом Java generics в Kotlin: используйте Java raw type в качестве параметра метода в Kotlin При использовании setcontentview в BottomsheetDialog возникает ошибка, например: «ни одна из следующих функций не может быть вызвана с предоставленными аргументами» Невозможно посмотреть переменную Kotlin в студии Android Как перебирать иерархию классов? Имеет ли Kotlin метод-CALL ярлыки? У меня есть два метода расширения Kotlin для одного и того же класса, но с разными генерическими сигнатурами и компилятор жалуется Пакет 2.2 для Android Studio RC2 Функция расширения kotlin не понимает, как эта вещь работает Как определить параметры типа для основного конструктора в Котлине? Как реализовать dropWhile рекурсивно с помощью foldRight в Котлине Как расширить статические поля Java в kotlin Как обновить виджет Android Studio Kotlin Как инициализировать массив в Котлине?