Is there an existing issue for this?
Which plugins are affected?
Core
Which platforms are affected?
Android
Description
I got the below stacktrace from a customer (cf. b/375684078). It seems access to firestoreInstanceCache is not synchronized here (and maybe also not here).
Reproducing the issue
- Connect to two Firestore instances using the same project but different databases.
- Use the "Hot restart" in the (Android?) IDE.
Firebase Core version
2.27.0
Flutter Version
3.19.0
Relevant Log Output
22:52:03.707 E [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception:
PlatformException(java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException:
java.util.ConcurrentModificationException, ExecutionException, Cause:
java.util.concurrent.ExecutionException: java.util.ConcurrentModificationException, Stacktrace:
java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException:
java.util.ConcurrentModificationException (Ask Gemini)
at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-
tasks@@18.1.0:5)
at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-
tasks@@18.1.0:9)
at
io.flutter.plugins.firebase.core.FlutterFirebaseCorePlugin.lambda$initializeCore$3$io-flutter-
plugins-firebase-core-FlutterFirebaseCorePlugin(FlutterFirebaseCorePlugin.java:175)
at
io.flutter.plugins.firebase.core.FlutterFirebaseCorePlugin$$ExternalSyntheticLambda1.run(Unknown
Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Caused by: java.util.concurrent.ExecutionException:
java.util.ConcurrentModificationException
at com.google.android.gms.tasks.Tasks.zza(com.google.android.gms:play-services-
tasks@@18.1.0:5)
at com.google.android.gms.tasks.Tasks.await(com.google.android.gms:play-services-
io.flutter.plugins.firebase.core.FlutterFirebasePluginRegistry.lambda$didReinitializeFirebaseCore$1(Fl
at
io.flutter.plugins.firebase.core.FlutterFirebasePluginRegistry$$ExternalSyntheticLambda0.run(Unknown
Source:2)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1603)
at java.util.HashMap$EntryIterator.next(HashMap.java:1636)
at java.util.HashMap$EntryIterator.next(HashMap.java:1634)
at
io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestorePlugin.lambda$didReinitializeFirebaseCor
flutter-plugins-firebase-firestore-
FlutterFirebaseFirestorePlugin(FlutterFirebaseFirestorePlugin.java:204)
at
io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestorePlugin$$ExternalSyntheticLambda13.run(Un
Source:4)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
, null)
Flutter dependencies
N/A
Additional context and comments
N/A
Is there an existing issue for this?
Which plugins are affected?
Core
Which platforms are affected?
Android
Description
I got the below stacktrace from a customer (cf. b/375684078). It seems access to
firestoreInstanceCacheis not synchronized here (and maybe also not here).Reproducing the issue
Firebase Core version
2.27.0
Flutter Version
3.19.0
Relevant Log Output
Flutter dependencies
N/A
Additional context and comments
N/A