firebase / flutterfire

🔥 A collection of Firebase plugins for Flutter apps.
https://firebase.google.com/docs/flutter/setup
BSD 3-Clause "New" or "Revised" License
8.68k stars 3.97k forks source link

🐛 [cloud_firestore] Internal error in Cloud Firestore (24.4.2) error java.lang.StackOverflowError: stack size 1041KB #10490

Closed NamBuiDanh2001 closed 1 year ago

NamBuiDanh2001 commented 1 year ago

Bug report

Describe the bug

when I open my app, bug Internal error in Cloud Firestore . These bugs don't have to happen on all devices. only one on Android devices, Oppo ... and many on devices running android 12.

Steps to reproduce

Steps to reproduce the behavior:

1.Run app on release mode

  1. firebaseFirestore .collection() .doc(id) .update(data);
  2. App crash
  3. See error or incorrect behavior
    Fatal Exception: java.lang.RuntimeException: Internal error in Cloud Firestore (24.4.2).
       at com.google.firebase.firestore.util.AsyncQueue.lambda$panic$3(AsyncQueue.java:19)
       at com.google.firebase.firestore.util.AsyncQueue.$r8$lambda$jx84dqgUsF4ojecSMurRqFLFD1Y(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$InternalSyntheticLambda$0$51306888f8726021cfeecfbad8f66bf495b1c169ee81da5261383cb2c5ada10b$0.run(AsyncQueue.java:2)
       at android.os.Handler.handleCallback(Handler.java:873)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:233)
       at android.app.ActivityThread.main(ActivityThread.java:7212)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:499)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
    Caused by java.lang.StackOverflowError: stack size 1041KB
       at com.google.protobuf.CodedOutputStream.computeStringSizeNoTag(CodedOutputStream.java:12)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:131)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:3)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java)
       at com.google.firebase.firestore.local.SQLiteDocumentOverlayCache.saveOverlay(SQLiteDocumentOverlayCache.java:58)
       at com.google.firebase.firestore.local.SQLiteDocumentOverlayCache.saveOverlays(SQLiteDocumentOverlayCache.java:46)
       at com.google.firebase.firestore.local.LocalStore.lambda$writeLocally$2(LocalStore.java:138)
       at com.google.firebase.firestore.local.LocalStore.$r8$lambda$cg_93_KSzr574nUI4weqpmjMR0A(LocalStore.java)
       at com.google.firebase.firestore.local.LocalStore$$InternalSyntheticLambda$0$4c2f12a407c7c24be1fac721ccf78f425a58b81d4814baf1da21535d5aef18ae$0.get(LocalStore.java:8)
       at com.google.firebase.firestore.local.SQLitePersistence.runTransaction(SQLitePersistence.java:20)
       at com.google.firebase.firestore.local.LocalStore.writeLocally(LocalStore.java:42)
       at com.google.firebase.firestore.core.SyncEngine.writeMutations(SyncEngine.java:7)
       at com.google.firebase.firestore.core.FirestoreClient.lambda$write$12(FirestoreClient.java:2)
       at com.google.firebase.firestore.core.FirestoreClient.$r8$lambda$EkV-69Na9I9DmQjVN9C_ABIfHUQ(FirestoreClient.java)
       at com.google.firebase.firestore.core.FirestoreClient$$InternalSyntheticLambda$0$36ce1956922dc5e6c149b5ab00d1df926a2f19a7074e9bdebfcdbb8264418b80$0.run(FirestoreClient.java:6)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$2(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue.$r8$lambda$Y9GO7zO2DX6MzQJ5TbKtKW_NzO0(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$InternalSyntheticLambda$0$874fd40977bf8ad08cc57ea3c22523475d0d54b6aa1dc33e464c875554f94703$0.call(AsyncQueue.java:2)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor.lambda$executeAndReportResult$1(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor.$r8$lambda$pKSAgg-ozJ8RbUveSl-44aUfFQw(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor$$InternalSyntheticLambda$0$af3816bf902bab80521275014ca2d71a4d34fb263dd8daa419b6eb02e1d0bf60$0.run(AsyncQueue.java:4)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458)
       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor$DelayedStartFactory.run(AsyncQueue.java:15)
       at java.lang.Thread.run(Thread.java:764)

Additional context

Internal error in Cloud Firestore happen due to java.lang.StackOverflowError: stack size 1041KB at com.google.protobuf I also try https://github.com/firebase/flutterfire/issues/8265#issuecomment-1069563176 but it not working .


Flutter doctor

Run flutter doctor and paste the output below:

Click To Expand ``` Doctor summary (to see all details, run flutter doctor -v): [!] Flutter (Channel stable, 3.7.1, on macOS 12.3.1 21E258 darwin-x64, locale en-VN) ! Warning: `dart` on your path resolves to /usr/local/Cellar/dart/2.14.4/libexec/bin/dart, which is not inside your current Flutter SDK checkout at /Users/buidanhnam/fvm/versions/3.7.1. Consider adding /Users/buidanhnam/fvm/versions/3.7.1/bin to the front of your path. [!] Android toolchain - develop for Android devices (Android SDK version 31.0.0) ✗ cmdline-tools component is missing Run `path/to/sdkmanager --install "cmdline-tools;latest"` See https://developer.android.com/studio/command-line for more details. ✗ Android license status unknown. Run `flutter doctor --android-licenses` to accept the SDK licenses. See https://flutter.dev/docs/get-started/install/macos#android-setup for more details. [✓] Xcode - develop for iOS and macOS (Xcode 13.3.1) [✓] Android Studio (version 2021.1) [✓] VS Code (version 1.75.1) [✓] Connected device (2 available) [✓] HTTP Host Availability ! Doctor found issues in 2 categories. ```

Flutter dependencies

Run flutter pub deps -- --style=compact and paste the output below:

Click To Expand ``` Dart SDK 2.19.1 Flutter SDK 3.7.1 vitus 1.0.1+9 dependencies: - app_settings 4.2.0 [flutter] - cached_network_image 3.2.3 [flutter flutter_cache_manager octo_image cached_network_image_platform_interface cached_network_image_web] - carousel_slider 4.2.1 [flutter] - chewie 1.4.0 [cupertino_icons flutter provider video_player wakelock] - cloud_firestore 4.4.1 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta] - collection 1.17.0 - connectivity_plus 3.0.3 [flutter flutter_web_plugins connectivity_plus_platform_interface js meta nm] - cupertino_icons 1.0.5 - device_info 2.0.3 [flutter device_info_platform_interface] - dio 4.0.6 [http_parser path] - dotted_border 2.0.0+3 [flutter path_drawing] - equatable 2.0.5 [collection meta] - external_path 1.0.3 [flutter] - file_picker 5.2.5 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface ffi path win32] - firebase_auth 4.2.7 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta] - firebase_core 2.6.0 [firebase_core_platform_interface firebase_core_web flutter meta] - firebase_crashlytics 3.0.13 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace] - firebase_dynamic_links 5.0.13 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface] - firebase_messaging 14.2.3 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta] - firebase_storage 11.0.12 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter] - flutter 0.0.0 [characters collection js material_color_utilities meta vector_math sky_engine] - flutter_bloc 8.1.2 [flutter bloc provider] - flutter_cache_manager 3.3.0 [clock collection file flutter http path path_provider pedantic rxdart sqflite uuid] - flutter_cached_pdfview 0.4.1 [flutter flutter_pdfview flutter_cache_manager path_provider path] - flutter_facebook_auth 3.5.7 [flutter flutter_facebook_auth_platform_interface flutter_facebook_auth_web] - flutter_linkify 5.0.2 [flutter linkify] - flutter_local_notifications 13.0.0 [clock flutter flutter_local_notifications_linux flutter_local_notifications_platform_interface timezone] - flutter_localizations 0.0.0 [flutter intl characters clock collection js material_color_utilities meta path vector_math] - flutter_native_image 0.0.6+1 [flutter] - flutter_native_splash 2.2.17 [args flutter flutter_web_plugins js html image meta path universal_io xml yaml] - flutter_pdfview 1.2.5 [flutter] - flutter_share 2.0.0 [flutter] - flutter_slidable 2.0.0 [flutter] - flutter_spinkit 5.1.0 [flutter] - flutter_staggered_grid_view 0.6.2 [flutter] - flutter_typeahead 4.3.3 [flutter flutter_keyboard_visibility] - flutter_widget_from_html 0.10.0 [flutter flutter_widget_from_html_core fwfh_cached_network_image fwfh_chewie fwfh_just_audio fwfh_svg fwfh_url_launcher fwfh_webview html] - fluttertoast 8.1.3 [flutter flutter_web_plugins] - fwfh_text_style 2.22.08+1 [flutter] - google_sign_in 5.4.4 [flutter google_sign_in_android google_sign_in_ios google_sign_in_platform_interface google_sign_in_web] - image 4.0.15 [archive meta xml] - image_cropper 3.0.1 [flutter image_cropper_platform_interface image_cropper_for_web] - image_picker 0.8.6+1 [flutter image_picker_android image_picker_for_web image_picker_ios image_picker_platform_interface] - in_app_purchase 3.1.1 [flutter in_app_purchase_android in_app_purchase_platform_interface in_app_purchase_storekit] - in_app_update 4.0.1 [flutter] - intl 0.17.0 [clock path] - launch_review 3.0.1 [flutter] - linkfy_text 1.1.5 [flutter] - lottie 2.2.0 [archive flutter path vector_math] - open_filex 4.3.2 [flutter ffi] - package_info 2.0.2 [flutter] - page_transition 2.0.9 [flutter] - path_provider 2.0.12 [flutter path_provider_android path_provider_foundation path_provider_linux path_provider_platform_interface path_provider_windows] - percent_indicator 4.2.2 [flutter] - permission_handler 10.2.0 [flutter meta permission_handler_android permission_handler_apple permission_handler_windows permission_handler_platform_interface] - photo_view 0.14.0 [flutter] - provider 6.0.5 [collection flutter nested] - pull_to_refresh 2.0.0 [flutter] - qr_code_scanner 1.0.1 [js flutter flutter_web_plugins] - qr_flutter 4.0.0 [flutter qr] - screenshot 1.3.0 [flutter] - scrollable_positioned_list 0.3.5 [flutter collection] - share 2.0.4 [meta mime flutter] - shared_preferences 2.0.17 [flutter shared_preferences_android shared_preferences_foundation shared_preferences_linux shared_preferences_platform_interface shared_preferences_web shared_preferences_windows] - sign_in_with_apple 4.3.0 [flutter meta sign_in_with_apple_platform_interface sign_in_with_apple_web] - states_rebuilder 6.2.0 [flutter flutter_localizations collection meta navigation_builder] - tree_view 0.0.6 [flutter] - uni_links 0.5.1 [flutter uni_links_platform_interface uni_links_web] - url_launcher 6.1.9 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows] - video_player 2.5.1 [flutter html video_player_android video_player_avfoundation video_player_platform_interface video_player_web] - video_thumbnail 0.5.3 [flutter] - webview_flutter 4.0.2 [flutter webview_flutter_android webview_flutter_platform_interface webview_flutter_wkwebview] - wechat_assets_picker 8.4.0 [flutter extended_image photo_manager provider video_player] - wechat_camera_picker 3.7.0 [flutter camera camera_platform_interface path photo_manager video_player] - youtube_player_flutter 8.1.2 [flutter flutter_inappwebview] dev dependencies: - dart_code_metrics 5.6.0 [analyzer analyzer_plugin ansicolor args collection crypto dart_code_metrics_presets file glob html meta path platform pub_updater source_span xml yaml] transitive dependencies: - _fe_analyzer_shared 50.0.0 [meta] - _flutterfire_internals 1.0.14 [collection firebase_core firebase_core_platform_interface flutter meta] - analyzer 5.2.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml] - analyzer_plugin 0.11.2 [analyzer collection dart_style pub_semver yaml] - ansicolor 2.0.1 - archive 3.3.5 [crypto path pointycastle] - args 2.3.1 - async 2.10.0 [collection meta] - audio_session 0.1.13 [flutter flutter_web_plugins rxdart meta] - bloc 8.1.1 [meta] - boolean_selector 2.1.1 [source_span string_scanner] - cached_network_image_platform_interface 2.0.0 [flutter flutter_cache_manager] - cached_network_image_web 1.0.2 [flutter flutter_cache_manager cached_network_image_platform_interface] - camera 0.10.1 [camera_android camera_avfoundation camera_platform_interface camera_web flutter flutter_plugin_android_lifecycle quiver] - camera_android 0.10.2 [camera_platform_interface flutter flutter_plugin_android_lifecycle stream_transform] - camera_avfoundation 0.9.10 [camera_platform_interface flutter stream_transform] - camera_platform_interface 2.3.2 [cross_file flutter plugin_platform_interface stream_transform] - camera_web 0.3.1 [camera_platform_interface flutter flutter_web_plugins stream_transform] - characters 1.2.1 - clock 1.1.1 - cloud_firestore_platform_interface 5.11.1 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface] - cloud_firestore_web 3.3.1 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js] - connectivity_plus_platform_interface 1.2.4 [flutter meta plugin_platform_interface] - convert 3.1.1 [typed_data] - cross_file 0.3.3+2 [js meta] - crypto 3.0.2 [typed_data] - csslib 0.17.2 [source_span] - dart_code_metrics_presets 1.0.1 - dart_style 2.2.4 [analyzer args path pub_semver source_span] - dbus 0.7.8 [args ffi meta xml] - device_info_platform_interface 2.0.1 [flutter meta plugin_platform_interface] - extended_image 7.0.1 [extended_image_library flutter meta] - extended_image_library 3.4.1 [crypto flutter http_client_helper path path_provider] - fake_async 1.3.1 [clock collection] - ffi 2.0.1 - file 6.1.4 [meta path] - firebase_auth_platform_interface 6.11.9 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface] - firebase_auth_web 5.2.6 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta] - firebase_core_platform_interface 4.5.3 [collection flutter flutter_test meta plugin_platform_interface] - firebase_core_web 2.2.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta] - firebase_crashlytics_platform_interface 3.3.13 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface] - firebase_dynamic_links_platform_interface 0.2.3+28 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface] - firebase_messaging_platform_interface 4.2.12 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface] - firebase_messaging_web 3.2.13 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta] - firebase_storage_platform_interface 4.1.28 [collection firebase_core flutter meta plugin_platform_interface] - firebase_storage_web 3.3.21 [_flutterfire_internals async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta] - flutter_blurhash 0.7.0 [flutter] - flutter_facebook_auth_platform_interface 2.7.1 [flutter plugin_platform_interface] - flutter_facebook_auth_web 2.6.0+2 [flutter flutter_web_plugins js flutter_facebook_auth_platform_interface] - flutter_inappwebview 5.7.2+3 [flutter] - flutter_keyboard_visibility 5.4.0 [meta flutter_keyboard_visibility_platform_interface flutter_keyboard_visibility_linux flutter_keyboard_visibility_macos flutter_keyboard_visibility_web flutter_keyboard_visibility_windows flutter] - flutter_keyboard_visibility_linux 1.0.0 [flutter_keyboard_visibility_platform_interface flutter] - flutter_keyboard_visibility_macos 1.0.0 [flutter_keyboard_visibility_platform_interface flutter] - flutter_keyboard_visibility_platform_interface 2.0.0 [flutter meta plugin_platform_interface] - flutter_keyboard_visibility_web 2.0.0 [flutter_keyboard_visibility_platform_interface flutter_web_plugins flutter] - flutter_keyboard_visibility_windows 1.0.0 [flutter_keyboard_visibility_platform_interface flutter] - flutter_local_notifications_linux 3.0.0 [dbus ffi flutter flutter_local_notifications_platform_interface path xdg_directories] - flutter_local_notifications_platform_interface 6.0.0 [flutter plugin_platform_interface] - flutter_plugin_android_lifecycle 2.0.7 [flutter] - flutter_svg 2.0.0+1 [flutter vector_graphics vector_graphics_codec vector_graphics_compiler] - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection js matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph] - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math] - flutter_widget_from_html_core 0.10.0 [csslib flutter fwfh_text_style html] - fwfh_cached_network_image 0.7.0+4 [cached_network_image flutter flutter_cache_manager flutter_widget_from_html_core] - fwfh_chewie 0.7.1+1 [chewie flutter flutter_widget_from_html_core video_player] - fwfh_just_audio 0.9.0+1 [flutter flutter_widget_from_html_core just_audio] - fwfh_svg 0.8.0+1 [flutter flutter_svg flutter_widget_from_html_core] - fwfh_url_launcher 0.9.0+1 [flutter flutter_widget_from_html_core url_launcher] - fwfh_webview 0.7.0+1 [flutter flutter_widget_from_html_core webview_flutter webview_flutter_android webview_flutter_wkwebview] - glob 2.1.1 [async collection file path string_scanner] - google_sign_in_android 6.1.4 [flutter google_sign_in_platform_interface] - google_sign_in_ios 5.5.1 [flutter google_sign_in_platform_interface] - google_sign_in_platform_interface 2.3.0 [flutter plugin_platform_interface quiver] - google_sign_in_web 0.10.2 [flutter flutter_web_plugins google_sign_in_platform_interface js] - html 0.15.1 [csslib source_span] - http 0.13.5 [async http_parser meta path] - http_client_helper 2.0.3 [http] - http_parser 4.0.2 [collection source_span string_scanner typed_data] - image_cropper_for_web 1.0.3 [flutter flutter_web_plugins image_cropper_platform_interface js] - image_cropper_platform_interface 3.0.3 [flutter plugin_platform_interface http] - image_picker_android 0.8.5+4 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface] - image_picker_for_web 2.1.10 [flutter flutter_web_plugins image_picker_platform_interface] - image_picker_ios 0.8.6+5 [flutter image_picker_platform_interface] - image_picker_platform_interface 2.6.2 [cross_file flutter http plugin_platform_interface] - in_app_purchase_android 0.2.3+7 [collection flutter in_app_purchase_platform_interface json_annotation] - in_app_purchase_platform_interface 1.3.2 [flutter plugin_platform_interface] - in_app_purchase_storekit 0.3.4 [collection flutter in_app_purchase_platform_interface json_annotation] - js 0.6.5 [meta] - json_annotation 4.7.0 [meta] - just_audio 0.9.31 [just_audio_platform_interface just_audio_web audio_session rxdart path path_provider async uuid crypto meta flutter] - just_audio_platform_interface 4.2.0 [flutter plugin_platform_interface] - just_audio_web 0.4.7 [just_audio_platform_interface flutter flutter_web_plugins] - linkify 4.1.0 - matcher 0.12.13 [meta stack_trace] - material_color_utilities 0.2.0 - meta 1.8.0 - mime 1.0.3 - navigation_builder 0.0.2+4 [flutter] - nested 1.0.0 [flutter] - nm 0.5.0 [dbus] - octo_image 1.0.2 [flutter flutter_blurhash] - package_config 2.1.0 [path] - path 1.8.2 - path_drawing 1.0.1 [vector_math meta path_parsing flutter] - path_parsing 1.0.1 [vector_math meta] - path_provider_android 2.0.22 [flutter path_provider_platform_interface] - path_provider_foundation 2.1.1 [flutter path_provider_platform_interface] - path_provider_linux 2.1.7 [ffi flutter path path_provider_platform_interface xdg_directories] - path_provider_platform_interface 2.0.5 [flutter platform plugin_platform_interface] - path_provider_windows 2.1.3 [ffi flutter path path_provider_platform_interface win32] - pedantic 1.11.1 - permission_handler_android 10.2.0 [flutter permission_handler_platform_interface] - permission_handler_apple 9.0.7 [flutter permission_handler_platform_interface] - permission_handler_platform_interface 3.9.0 [flutter meta plugin_platform_interface] - permission_handler_windows 0.1.2 [flutter permission_handler_platform_interface] - petitparser 5.1.0 [meta] - photo_manager 2.5.2 [flutter] - platform 3.1.0 - plugin_platform_interface 2.1.3 [meta] - pointycastle 3.6.2 [collection convert js] - process 4.2.4 [file path platform] - pub_semver 2.1.3 [collection meta] - pub_updater 0.2.3 [http json_annotation process] - qr 2.1.0 [meta] - quiver 3.2.1 [matcher] - rxdart 0.27.7 - shared_preferences_android 2.0.14 [flutter shared_preferences_platform_interface] - shared_preferences_foundation 2.1.3 [flutter shared_preferences_platform_interface] - shared_preferences_linux 2.1.2 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface] - shared_preferences_platform_interface 2.1.0 [flutter plugin_platform_interface] - shared_preferences_web 2.0.4 [flutter flutter_web_plugins shared_preferences_platform_interface] - shared_preferences_windows 2.1.2 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface] - sign_in_with_apple_platform_interface 1.0.0 [flutter plugin_platform_interface meta] - sign_in_with_apple_web 1.0.1 [flutter flutter_web_plugins sign_in_with_apple_platform_interface js] - sky_engine 0.0.99 - source_span 1.9.1 [collection path term_glyph] - sqflite 2.2.2 [flutter sqflite_common path] - sqflite_common 2.4.0+2 [synchronized path meta] - stack_trace 1.11.0 [path] - stream_channel 2.1.1 [async] - stream_transform 2.1.0 - string_scanner 1.2.0 [source_span] - synchronized 3.0.0+3 - term_glyph 1.2.1 - test_api 0.4.16 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher] - timezone 0.9.1 [path] - typed_data 1.3.1 [collection] - uni_links_platform_interface 1.0.0 [flutter plugin_platform_interface] - uni_links_web 0.1.0 [flutter flutter_web_plugins uni_links_platform_interface] - universal_io 2.0.4 [collection crypto meta typed_data] - url_launcher_android 6.0.22 [flutter url_launcher_platform_interface] - url_launcher_ios 6.0.17 [flutter url_launcher_platform_interface] - url_launcher_linux 3.0.1 [flutter url_launcher_platform_interface] - url_launcher_macos 3.0.1 [flutter url_launcher_platform_interface] - url_launcher_platform_interface 2.1.1 [flutter plugin_platform_interface] - url_launcher_web 2.0.13 [flutter flutter_web_plugins url_launcher_platform_interface] - url_launcher_windows 3.0.1 [flutter url_launcher_platform_interface] - uuid 3.0.7 [crypto] - vector_graphics 1.0.1 [flutter vector_graphics_codec] - vector_graphics_codec 1.0.1 - vector_graphics_compiler 1.0.1 [args meta path_parsing xml vector_graphics_codec] - vector_math 2.1.4 - video_player_android 2.3.10 [flutter video_player_platform_interface] - video_player_avfoundation 2.3.8 [flutter video_player_platform_interface] - video_player_platform_interface 6.0.1 [flutter plugin_platform_interface] - video_player_web 2.0.13 [flutter flutter_web_plugins video_player_platform_interface] - wakelock 0.6.2 [flutter meta wakelock_macos wakelock_platform_interface wakelock_web wakelock_windows] - wakelock_macos 0.4.0 [flutter flutter_web_plugins wakelock_platform_interface] - wakelock_platform_interface 0.3.0 [flutter meta] - wakelock_web 0.4.0 [flutter flutter_web_plugins js wakelock_platform_interface] - wakelock_windows 0.2.1 [flutter wakelock_platform_interface win32] - watcher 1.0.2 [async path] - webview_flutter_android 3.2.4 [flutter webview_flutter_platform_interface] - webview_flutter_platform_interface 2.0.1 [flutter meta plugin_platform_interface] - webview_flutter_wkwebview 3.0.5 [flutter path webview_flutter_platform_interface] - win32 3.1.3 [ffi] - xdg_directories 0.2.0+2 [meta path process] - xml 6.1.0 [collection meta petitparser] - yaml 3.1.1 [collection source_span string_scanner] ```

Lyokone commented 1 year ago

Hello @NamBuiDanh2001, can you share the kind of data your putting in the update method? Is this a big object?

Lyokone commented 1 year ago

I'm updating the Firebase Android SDK version. There are mentions of memory improvements in last versions: https://firebase.google.com/support/release-notes/android#firestore_v24-4-3

NamBuiDanh2001 commented 1 year ago

Hello @NamBuiDanh2001, can you share the kind of data your putting in the update method? Is this a big object?

Hi @Lyokone I only update status online user when them login ( change 1 property in user model ) , so it not big value. I will follow PR https://github.com/firebase/flutterfire/pull/10492 , pls let me know if new version cloud_firestore avalible .

Lyokone commented 1 year ago

Latest firebase_core contains the new SDK version, let me know if the issue is still occurring :)

NamBuiDanh2001 commented 1 year ago

Hi @Lyokone I try latest firebase_core , clound_firestore , but issuse is still occurring . You can see log below

Fatal Exception: java.lang.RuntimeException: Internal error in Cloud Firestore (24.4.3).
       at com.google.firebase.firestore.util.AsyncQueue.lambda$panic$3(AsyncQueue.java:19)
       at com.google.firebase.firestore.util.-$$Lambda$AsyncQueue$jx84dqgUsF4ojecSMurRqFLFD1Y.run(-.java:2)
       at android.os.Handler.handleCallback(Handler.java:873)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:214)
       at android.app.ActivityThread.main(ActivityThread.java:7078)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)

Caused by java.lang.StackOverflowError: stack size 1041KB
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:6)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java)
       at com.google.protobuf.FieldSet.computeElementSizeNoTag(FieldSet.java:149)
       at com.google.protobuf.FieldSet.computeElementSize(FieldSet.java:10)
       at com.google.protobuf.MapEntryLite.computeSerializedSize(MapEntryLite.java:10)
       at com.google.protobuf.MapEntryLite.computeMessageSize(MapEntryLite.java:6)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSizeLite(MapFieldSchemaLite.java:40)
       at com.google.protobuf.MapFieldSchemaLite.getSerializedSize(MapFieldSchemaLite.java)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:264)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:15)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.CodedOutputStream.computeMessageSizeNoTag(CodedOutputStream.java:2)
       at com.google.protobuf.CodedOutputStream.computeMessageSize(CodedOutputStream.java:4)
       at com.google.protobuf.SchemaUtil.computeSizeMessage(SchemaUtil.java:13)
       at com.google.protobuf.MessageSchema.getSerializedSizeProto3(MessageSchema.java:802)
       at com.google.protobuf.MessageSchema.getSerializedSize(MessageSchema.java:4)
       at com.google.protobuf.GeneratedMessageLite.computeSerializedSize(GeneratedMessageLite.java:10)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:50)
       at com.google.protobuf.GeneratedMessageLite.getSerializedSize(GeneratedMessageLite.java:1)
       at com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java)
       at com.google.firebase.firestore.local.SQLiteDocumentOverlayCache.saveOverlay(SQLiteDocumentOverlayCache.java:58)
       at com.google.firebase.firestore.local.SQLiteDocumentOverlayCache.saveOverlays(SQLiteDocumentOverlayCache.java:46)
       at com.google.firebase.firestore.local.LocalStore.lambda$writeLocally$2(LocalStore.java:138)
       at com.google.firebase.firestore.local.LocalStore.lambda$writeLocally$2$LocalStore(LocalStore.java)
       at com.google.firebase.firestore.local.-$$Lambda$LocalStore$cg_93_KSzr574nUI4weqpmjMR0A.get(-.java:8)
       at com.google.firebase.firestore.local.SQLitePersistence.runTransaction(SQLitePersistence.java:20)
       at com.google.firebase.firestore.local.LocalStore.writeLocally(LocalStore.java:42)
       at com.google.firebase.firestore.core.SyncEngine.writeMutations(SyncEngine.java:7)
       at com.google.firebase.firestore.core.FirestoreClient.lambda$write$12(FirestoreClient.java:2)
       at com.google.firebase.firestore.core.FirestoreClient.lambda$write$12$FirestoreClient(FirestoreClient.java)
       at com.google.firebase.firestore.core.-$$Lambda$FirestoreClient$EkV-69Na9I9DmQjVN9C_ABIfHUQ.run(-.java:6)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$2(AsyncQueue.java)
       at com.google.firebase.firestore.util.-$$Lambda$AsyncQueue$Y9GO7zO2DX6MzQJ5TbKtKW_NzO0.call(-.java:2)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor.lambda$executeAndReportResult$1(AsyncQueue.java)
       at com.google.firebase.firestore.util.-$$Lambda$AsyncQueue$SynchronizedShutdownAwareExecutor$pKSAgg-ozJ8RbUveSl-44aUfFQw.run(-.java:4)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:459)
       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor$DelayedStartFactory.run(AsyncQueue.java:15)
       at java.lang.Thread.run(Thread.java:764)

Firebase-Messaging-Topics-Io:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1120)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.android.gms.common.util.concurrent.zza.run(zza.java:6)
       at java.lang.Thread.run(Thread.java:764)

pool-25-thread-2:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

Sqflite:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

AsyncTask #2:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

awaitEvenIfOnMainThread task continuation executor1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:764)

AppUpdateService:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

flutter-worker-2:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

pool-25-thread-3:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

FinalizerDaemon:
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:422)
       at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
       at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
       at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:232)
       at java.lang.Daemons$Daemon.run(Daemons.java:103)
       at java.lang.Thread.run(Thread.java:764)

1.ui:
       at java.nio.Buffer.<init>(Buffer.java:209)
       at java.nio.ByteBuffer.<init>(ByteBuffer.java:224)
       at java.nio.ByteBuffer.<init>(ByteBuffer.java:232)
       at java.nio.MappedByteBuffer.<init>(MappedByteBuffer.java:96)
       at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:112)

Firebase Background Thread #2:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0(CustomThreadFactory.java:12)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$CustomThreadFactory(CustomThreadFactory.java)
       at com.google.firebase.concurrent.-$$Lambda$CustomThreadFactory$25wFMnJXuxCXflRCTG3ggSOiDOE.run(-.java:4)
       at java.lang.Thread.run(Thread.java:764)

AsyncTask #3:
       at com.google.android.gms.providerinstaller.ProviderInstallerImpl.b(ProviderInstallerImpl.java:13)
       at com.google.android.gms.providerinstaller.ProviderInstallerImpl.insertProvider(ProviderInstallerImpl.java:5)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.google.android.gms.common.security.ProviderInstallerImpl.insertProvider(ProviderInstallerImpl.java:2)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.google.android.gms.security.ProviderInstaller.zzc(ProviderInstaller.java:27)
       at com.google.android.gms.security.ProviderInstaller.installIfNeeded(ProviderInstaller.java:143)
       at com.google.firebase.firestore.remote.GrpcCallProvider.initChannel(GrpcCallProvider.java)
       at com.google.firebase.firestore.remote.GrpcCallProvider.lambda$initChannelTask$6(GrpcCallProvider.java:4)
       at com.google.firebase.firestore.remote.GrpcCallProvider.lambda$initChannelTask$6$GrpcCallProvider(GrpcCallProvider.java)
       at com.google.firebase.firestore.remote.-$$Lambda$GrpcCallProvider$SCD5iiibQ8l4haiO8ofSfE0wIJg.call(-.java:2)
       at com.google.android.gms.tasks.zzz.run(zzz.java:4)
       at com.google.firebase.firestore.util.ThrottledForwardingExecutor.lambda$execute$0(ThrottledForwardingExecutor.java)
       at com.google.firebase.firestore.util.ThrottledForwardingExecutor.lambda$execute$0$ThrottledForwardingExecutor(ThrottledForwardingExecutor.java)
       at com.google.firebase.firestore.util.-$$Lambda$ThrottledForwardingExecutor$MfIJbVuxZtLwosAgPzPA-cU66Ko.run(-.java:4)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

pool-25-thread-4:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

MessengerIpcClient:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1132)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.android.gms.common.util.concurrent.zza.run(zza.java:6)
       at java.lang.Thread.run(Thread.java:764)

flutter-worker-0:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

TokenRefresher:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

AsyncTask #4:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

AudioPortEventHandler:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

Firebase Background Thread #1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0(CustomThreadFactory.java:12)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$CustomThreadFactory(CustomThreadFactory.java)
       at com.google.firebase.concurrent.-$$Lambda$CustomThreadFactory$25wFMnJXuxCXflRCTG3ggSOiDOE.run(-.java:4)
       at java.lang.Thread.run(Thread.java:764)

pool-26-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1132)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

OkHttp ConnectionPool:
       at java.lang.Object.wait(Object.java)
       at com.android.okhttp.ConnectionPool$1.run(ConnectionPool.java:101)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

flutter-worker-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

ReferenceQueueDaemon:
       at java.lang.Object.wait(Object.java)
       at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:178)
       at java.lang.Daemons$Daemon.run(Daemons.java:103)
       at java.lang.Thread.run(Thread.java:764)

Firebase Background Thread #3:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0(CustomThreadFactory.java:12)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$CustomThreadFactory(CustomThreadFactory.java)
       at com.google.firebase.concurrent.-$$Lambda$CustomThreadFactory$25wFMnJXuxCXflRCTG3ggSOiDOE.run(-.java:4)
       at java.lang.Thread.run(Thread.java:764)

ConnectivityThread:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

pool-25-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:868)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1021)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1328)
       at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:232)
       at com.google.android.gms.tasks.zzad.zza(zzad.java:2)
       at com.google.android.gms.tasks.Tasks.await(Tasks.java:28)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestorePlugin.lambda$documentUpdate$8(FlutterFirebaseFirestorePlugin.java:91)
       at io.flutter.plugins.firebase.firestore.-$$Lambda$FlutterFirebaseFirestorePlugin$JdhTlUR5rsi6W_Xl2nqAlVEP-08.run(-.java:4)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

pool-23-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

com.google.firebase.crashlytics.startup1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:764)

pool-17-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1120)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

GoogleApiHandler:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

Firebase-Messaging-Init:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1120)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.android.gms.common.util.concurrent.zza.run(zza.java:6)
       at java.lang.Thread.run(Thread.java:764)

AsyncTask #1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

pool-18-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1132)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

Crashlytics Exception Handler1:
       at dalvik.system.VMStack.getThreadStackTrace(VMStack.java)
       at java.lang.Thread.getStackTrace(Thread.java:1538)
       at java.lang.Thread.getAllStackTraces(Thread.java:1588)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsReportDataCapture.populateThreadsList(CrashlyticsReportDataCapture.java:16)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsReportDataCapture.populateExecutionData(CrashlyticsReportDataCapture.java:4)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsReportDataCapture.populateEventApplicationData(CrashlyticsReportDataCapture.java:45)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsReportDataCapture.captureEventData(CrashlyticsReportDataCapture.java:44)
       at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistEvent(SessionReportingCoordinator.java:19)
       at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistFatalEvent(SessionReportingCoordinator.java:32)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsController$2.call(CrashlyticsController.java:49)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsController$2.call(CrashlyticsController.java)
       at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:2)
       at com.google.android.gms.tasks.zze.run(zze.java:8)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:764)

Firebase Background Thread #0:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0(CustomThreadFactory.java:12)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$CustomThreadFactory(CustomThreadFactory.java)
       at com.google.firebase.concurrent.-$$Lambda$CustomThreadFactory$25wFMnJXuxCXflRCTG3ggSOiDOE.run(-.java:4)
       at java.lang.Thread.run(Thread.java:764)

FinalizerWatchdogDaemon:
       at java.lang.Thread.sleep(Thread.java)
       at java.lang.Thread.sleep(Thread.java:373)
       at java.lang.Thread.sleep(Thread.java:314)
       at java.lang.Daemons$FinalizerWatchdogDaemon.sleepFor(Daemons.java:342)
       at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization(Daemons.java:364)
       at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal(Daemons.java:281)
       at java.lang.Daemons$Daemon.run(Daemons.java:103)
       at java.lang.Thread.run(Thread.java:764)

pool-5-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2059)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)

queued-work-looper:
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:326)
       at android.os.Looper.loop(Looper.java:181)
       at android.os.HandlerThread.run(HandlerThread.java:65)

Firebase Blocking Thread #0:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:461)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0(CustomThreadFactory.java:12)
       at com.google.firebase.concurrent.CustomThreadFactory.lambda$newThread$0$CustomThreadFactory(CustomThreadFactory.java)
       at com.google.firebase.concurrent.-$$Lambda$CustomThreadFactory$25wFMnJXuxCXflRCTG3ggSOiDOE.run(-.java:4)
       at java.lang.Thread.run(Thread.java:764)

pool-19-thread-1:
       at java.lang.Object.wait(Object.java)
       at java.lang.Thread.parkFor$(Thread.java:2137)
       at sun.misc.Unsafe.park(Unsafe.java:358)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2101)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1132)
       at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:764)
ynmain commented 1 year ago

I'm in trouble as well.

java.lang.RuntimeException: Internal error in Cloud Firestore (24.4.3)

ynmain commented 1 year ago

gradle

classpath 'com.android.tools.build:gradle:4.2.2'

This fixed the problem.

Please keep the description of this dependency in the docs. And I would like a more detailed error message.

russellwheatley commented 1 year ago

The exception is caused by a stack overflow. This isn't an issue with Firestore, but more like the design of your app. It could occur for a number of reasons. Massive data structures, some recursive data handling, infinite loop or perhaps too many snapshot listeners. I would investigate where this is occurring and refactor the implementation to eliminate the possibility of a stack overflow.