[Bug] Many crashes in production [libFirebaseCppApp-11_6_0.so] firebase::Mutex::Acquire()
[REQUIRED] Please fill in the following fields:
- Unity editor version: 2021.3.29f1
- Firebase Unity SDK version: 11.6.0
- Source you installed the SDK: .unitypackage (.unitypackage or Unity Package Manager)
- Problematic Firebase Component: Core (Auth, Database, etc.)
- Other Firebase Components in use: Analytics, Crashlytics, Messaging (Auth, Database, etc.)
- Additional SDKs you are using: Applovin (Facebook, AdMob, etc.)
- Platform you are using the Unity editor on: Mac (Mac, Windows, or Linux)
- Platform you are targeting: Android (iOS, Android, and/or desktop)
- Scripting Runtime: IL2CPP (Mono, and/or IL2CPP)
- Pre-built SDK from the website or open-source from this repo: website
[REQUIRED] Please describe the issue here:
Production has many crash reports
Steps to reproduce:
Have you been able to reproduce this issue with just the Firebase Unity quickstarts (this GitHub project)? Not reproduced. Only crash reports on production track. About 4% of all events
What happened? How can we make the problem occur?
[libFirebaseCppApp-11_6_0.so] firebase::Mutex::Acquire()
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
backtrace:
#00 pc 0x00000000000b3c94 /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+8)
#01 pc 0x00000000001a4168 /data/app/~~e91FaJSA3bTRRO8LSZKbmw==/com.hey.color.number.coloring.paint-sE7dz-EnXIkr3vBteON5ng==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::Mutex::Acquire()+8)
#02 pc 0x000000000024ed40 /data/app/~~e91FaJSA3bTRRO8LSZKbmw==/com.hey.color.number.coloring.paint-sE7dz-EnXIkr3vBteON5ng==/lib/arm64/libFirebaseCppApp-11_6_0.so (void firebase::ReferenceCountedFutureImpl::CompleteInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*)>(firebase::FutureHandle const&, int, char const*, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*) const&)+52)
#03 pc 0x00000000002d6124 /data/app/~~e91FaJSA3bTRRO8LSZKbmw==/com.hey.color.number.coloring.paint-sE7dz-EnXIkr3vBteON5ng==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::messaging::CompleteStringCallback(_JNIEnv*, _jobject*, firebase::util::FutureResult, char const*, void*)+352)
#04 pc 0x0000000000199668 /data/app/~~e91FaJSA3bTRRO8LSZKbmw==/com.hey.color.number.coloring.paint-sE7dz-EnXIkr3vBteON5ng==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::util::JniResultCallback_nativeOnResult(_JNIEnv*, _jobject*, _jobject*, unsigned char, unsigned char, _jstring*, long, long)+232)
#05 pc 0x000000000034aa30 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144)
#06 pc 0x00000000005bdb2c /apex/com.android.art/lib64/libart.so (nterp_helper+7468)
#07 pc 0x0000000000000c28 /data/data/com.hey.color.number.coloring.paint/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback.onCompletion+32)
#08 pc 0x00000000005bcd54 /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
#09 pc 0x0000000000000b04 /data/data/com.hey.color.number.coloring.paint/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback$TaskCallback.onSuccess+32)
#10 pc 0x00000000005a3b0c /data/app/~~e91FaJSA3bTRRO8LSZKbmw==/com.hey.color.number.coloring.paint-sE7dz-EnXIkr3vBteON5ng==/oat/arm64/base.odex (com.google.android.gms.tasks.zzm.run+204)
Hi @ab-rdarts,
Does disposing your Firebase instance when quitting the app make any difference?
void OnApplicationQuit(){
Firebase.FirebaseApp.DefaultInstance.Dispose();
}
If it doesn't, could you provide a minimal, reproducible example of your implementation so we can identify what's causing the issue?
No we have no such code, is it necessary for android? We will try to add it in the next version, though as I understand OnApplicationQuit will not be called for mobile applications. Also we have no minimal reproducible example as we see them only in play console production track. Also we have no such crashes with previous version of firebase (10.0.1) but after upgrading to 11.6.0 we see many of them.
@paulinon new app version with OnApplicationQuit still has the same crashes
[libFirebaseCppApp-11_6_0.so] firebase::Mutex::Acquire()
backtrace:
#00 pc 0x00000000000bf79c /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+12)
#01 pc 0x00000000001a4168 /data/app/~~WEcmsZM0VSP5RBDAE2AevA==/com.hey.color.number.coloring.paint-oAF9PTNA-XxJoZ5hyJtoTQ==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::Mutex::Acquire()+8)
#02 pc 0x000000000024ed40 /data/app/~~WEcmsZM0VSP5RBDAE2AevA==/com.hey.color.number.coloring.paint-oAF9PTNA-XxJoZ5hyJtoTQ==/lib/arm64/libFirebaseCppApp-11_6_0.so (void firebase::ReferenceCountedFutureImpl::CompleteInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*)>(firebase::FutureHandle const&, int, char const*, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*) const&)+52)
#03 pc 0x00000000002d6124 /data/app/~~WEcmsZM0VSP5RBDAE2AevA==/com.hey.color.number.coloring.paint-oAF9PTNA-XxJoZ5hyJtoTQ==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::messaging::CompleteStringCallback(_JNIEnv*, _jobject*, firebase::util::FutureResult, char const*, void*)+352)
#04 pc 0x0000000000199668 /data/app/~~WEcmsZM0VSP5RBDAE2AevA==/com.hey.color.number.coloring.paint-oAF9PTNA-XxJoZ5hyJtoTQ==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::util::JniResultCallback_nativeOnResult(_JNIEnv*, _jobject*, _jobject*, unsigned char, unsigned char, _jstring*, long, long)+232)
#05 pc 0x000000000034aa30 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144)
#06 pc 0x00000000005bdb2c /apex/com.android.art/lib64/libart.so (nterp_helper+7468)
#07 pc 0x0000000000000c28 /data/data/com.hey.color.number.coloring.paint/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback.onCompletion+32)
#08 pc 0x00000000005bcd54 /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
#09 pc 0x0000000000000b04 /data/data/com.hey.color.number.coloring.paint/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback$TaskCallback.onSuccess+32)
#10 pc 0x00000000002537ec /data/app/~~WEcmsZM0VSP5RBDAE2AevA==/com.hey.color.number.coloring.paint-oAF9PTNA-XxJoZ5hyJtoTQ==/oat/arm64/base.odex (com.google.android.gms.tasks.zzm.run+204)
#11 pc 0x0000000000a1708c /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Handler.dispatchMessage+76)
#12 pc 0x0000000000a1aeec /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loopOnce+1036)
#13 pc 0x0000000000a1aa38 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loop+1112)
#14 pc 0x00000000007803d0 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.app.ActivityThread.main+2432)
#15 pc 0x0000000000334280 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
#16 pc 0x00000000003883c0 /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1588)
#17 pc 0x0000000000387d7c /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+32)
#18 pc 0x00000000003446a8 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+120)
#19 pc 0x0000000000d83854 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+132)
#20 pc 0x0000000000d8f030 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.ZygoteInit.main+3568)
#21 pc 0x0000000000334280 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
#22 pc 0x00000000004e4298 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+728)
#23 pc 0x00000000005804e4 /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+156)
#24 pc 0x00000000000deab4 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+104)
#25 pc 0x00000000000eaf58 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+852)
#26 pc 0x0000000000002550 /system/bin/app_process64 (main+1276)
#27 pc 0x00000000000526d8 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+104)
We see the same issue in our application, no repro, stack trace from the Google Play Console
pid: 0, tid: 18235 >>> com.dna.solitaireapp <<<
backtrace:
#00 pc 0x00000000000bb578 /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+16)
#01 pc 0x00000000001a4168 /data/app/~~g-rD5gRtnajEOCU8yyMBVg==/com.dna.solitaireapp-BrO0JLQmgnltstRzPyYScg==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::Mutex::Acquire()+8)
#02 pc 0x000000000024ed40 /data/app/~~g-rD5gRtnajEOCU8yyMBVg==/com.dna.solitaireapp-BrO0JLQmgnltstRzPyYScg==/lib/arm64/libFirebaseCppApp-11_6_0.so (void firebase::ReferenceCountedFutureImpl::CompleteInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*)>(firebase::FutureHandle const&, int, char const*, void firebase::ReferenceCountedFutureImpl::CompleteWithResultInternal<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >(firebase::FutureHandle const&, int, char const*, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)::'lambda'(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*) const&)+52)
#03 pc 0x00000000002d6124 /data/app/~~g-rD5gRtnajEOCU8yyMBVg==/com.dna.solitaireapp-BrO0JLQmgnltstRzPyYScg==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::messaging::CompleteStringCallback(_JNIEnv*, _jobject*, firebase::util::FutureResult, char const*, void*)+352)
#04 pc 0x0000000000199668 /data/app/~~g-rD5gRtnajEOCU8yyMBVg==/com.dna.solitaireapp-BrO0JLQmgnltstRzPyYScg==/lib/arm64/libFirebaseCppApp-11_6_0.so (firebase::util::JniResultCallback_nativeOnResult(_JNIEnv*, _jobject*, _jobject*, unsigned char, unsigned char, _jstring*, long, long)+232)
#05 pc 0x000000000034dc30 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144)
#06 pc 0x00000000005d12ac /apex/com.android.art/lib64/libart.so (nterp_helper+7468)
#07 pc 0x0000000000000db0 /data/data/com.dna.solitaireapp/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback.onCompletion+32)
#08 pc 0x00000000005d04d4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
#09 pc 0x0000000000000c24 /data/data/com.dna.solitaireapp/cache/oat/arm64/app_resources_lib.vdex (com.google.firebase.app.internal.cpp.JniResultCallback$TaskCallback.onSuccess+32)
#10 pc 0x000000000063e1ac /data/app/~~g-rD5gRtnajEOCU8yyMBVg==/com.dna.solitaireapp-BrO0JLQmgnltstRzPyYScg==/oat/arm64/base.odex (com.google.android.gms.tasks.zzm.run+204)
#11 pc 0x0000000000a3036c /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Handler.dispatchMessage+76)
#12 pc 0x0000000000a33c68 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loopOnce+1000)
#13 pc 0x0000000000a337d8 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loop+1112)
#14 pc 0x0000000000774880 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.app.ActivityThread.main+2432)
#15 pc 0x0000000000337480 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
#16 pc 0x000000000038a568 /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1588)
#17 pc 0x0000000000389f24 /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+32)
#18 pc 0x00000000003346a8 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+120)
#19 pc 0x00000000009acd38 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+136)
#20 pc 0x00000000009b72cc /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.ZygoteInit.main+3548)
#21 pc 0x0000000000337480 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
#22 pc 0x00000000004eaa3c /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+728)
#23 pc 0x0000000000591e50 /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+156)
#24 pc 0x00000000000c1c04 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+124)
#25 pc 0x00000000000ce470 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+856)
#26 pc 0x0000000000002570 /system/bin/app_process64 (main+1304)
#27 pc 0x000000000004a7d4 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+100)```
We have the same issue. Any news on this?
Any updates?
11.7.0 SDK doesn't seem t have this crash.
@Bogdan-sybo thanks!
Hi folks, just bumping this thread. Is this issue still present in version 11.9.0?
Hey @ab-rdarts. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.
If you have more information that will help us get to the bottom of this, just add a comment!
I am using firebase 12.0.0 version but it shows in play store anr and crash report.
Hey @ab-rdarts. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.
If you have more information that will help us get to the bottom of this, just add a comment!
Since there haven't been any recent updates here, I am going to close this issue.
@ab-rdarts if you're still experiencing this problem and want to continue the discussion just leave a comment here and we are happy to re-open this.