Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Intermittent crash on iOS in DocumentSnapshotInternal::GetData() in 8.5.0 #1171

Closed
nodrock opened this issue Nov 2, 2021 · 2 comments

Comments

@nodrock
Copy link

nodrock commented Nov 2, 2021

[REQUIRED] Please fill in the following fields:

  • Unity editor version: 2020.3.21f1
  • Firebase Unity SDK version: 8.5.0
  • Source you installed the SDK: .unitypackage
  • Problematic Firebase Component: Firestore
  • Other Firebase Components in use: Auth, RT Database, Crashlytics, Messaging, Analytics
  • Additional SDKs you are using: Facebook, AppsFlyer, IronSource (with mediations AdMob, Chartboost, UnityAds, Facebook), TapResearch, Fyber
  • Platform you are using the Unity editor on: Mac
  • Platform you are targeting: iOS
  • Scripting Runtime: IL2CPP

[REQUIRED] Please describe the issue here:

After updating to latest version 8.5.0 app started to crash on Apple devices with iOS 15.1. It happens when I try to convert DocumentSnapshot to dictionary. Everything worked with version 7.2.0.

Relevant Code:

...
        public void Init(DateTime startTime)
        {
            string time = startTime.ToString(DateFormatString, CultureInfo.InvariantCulture);
            DocumentReference PlayerDocument =  FirebaseFirestore.DefaultInstance.Collection("player").Document(_auth.UserId);

            _queueListener = PlayerDocument.Collection("queue")
                .WhereGreaterThan("Time", time).OrderBy("Time").Listen(ProcessCommands);
        }

        private void ProcessCommands(QuerySnapshot snapshot)
        {
            foreach (var document in snapshot.Documents)
            {
                ProcessCommand(document);
            }
        }

        private void ProcessCommand(DocumentSnapshot document)
        {
            try
            {
                var commandDict = document.ToDictionary();
            }
            catch (Exception ex)
            {
                Log.Warning($"Problem in parsing! documentId={document.Id} ex={ex}");
            }
        }
...

Symbolified Native Crash:

Incident Identifier: 83922E87-DE65-49A0-B46B-3A8C7A5D1523
Beta Identifier:     B8A8F1DD-4E2C-40EC-A411-C3E26B8C6DA4
Hardware Model:      iPad6,7
Process:             XXX[540]
Path:                /private/var/containers/Bundle/Application/XXX
Identifier:          XXX
Version:             1.43.0 (2963)
AppStoreTools:       13A1030d
AppVariant:          1:iPad6,7:15
Beta:                YES
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           XXX [424]

Date/Time:           2021-10-29 16:32:33.6029 +0200
Launch Time:         2021-10-29 16:01:29.5624 +0200
OS Version:          iPhone OS 15.1 (19B74)
Release Type:        User
Report Version:      104

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x800000001461da0c
Exception Codes: 0x0000000000000001, 0x800000001461da0c
VM Region Info: 0x800000001461da0c is not in any region.  Bytes after previous region: 9223371556160395789  
      REGION TYPE                 START - END      [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      commpage (reserved)     1000000000-7000000000 [384.0G] ---/--- SM=NUL  ...(unallocated)
--->  
      UNUSED SPACE AT END
Exception Note:  EXC_CORPSE_NOTIFY
Termination Reason: SIGNAL; [11]
Terminating Process: exc handler [540]

Terminating Process: exc handler [540]
Triggered by Thread:  51

Thread 0 name:   Dispatch queue: com.apple.main-thread
Thread 0:
0   UnityFramework                	       0x10bf6c840 0x10ad20000 + 19187776 PostCrashCallback(__siginfo*, __darwin_ucontext*, void*) (in UnityFramework) + 152
1   UnityFramework                	       0x10bf6c838 0x10ad20000 + 19187768 PostCrashCallback(__siginfo*, __darwin_ucontext*, void*) (in UnityFramework) + 144
2   UnityFramework                	       0x10c3604b4 0x10ad20000 + 23332020 signal_handler_callback (in UnityFramework) + 180
3   UnityFramework                	       0x10c35cb58 0x10ad20000 + 23317336 internal_callback_iterator(int, __siginfo*, __darwin_ucontext*, void*) (in UnityFramework) + 172
4   UnityFramework                	       0x10c35ca8c Unityplcrash_signal_handler + 24 Unityplcrash_signal_handler (in UnityFramework) + 24
5   libsystem_platform.dylib      	       0x1dae16d48 _sigtramp + 52
6   UnityFramework                	       0x10c4eab0c firebase::firestore::DocumentSnapshotInternal::GetData(firebase::firestore::DocumentSnapshot::ServerTimestampBehavior) const + 84 firebase::firestore::DocumentSnapshotInternal::GetData(firebase::firestore::DocumentSnapshot::ServerTimestampBehavior) const (in UnityFramework) + 84
7   UnityFramework                	       0x10c4eab0c firebase::firestore::DocumentSnapshotInternal::GetData(firebase::firestore::DocumentSnapshot::ServerTimestampBehavior) const + 84 firebase::firestore::DocumentSnapshotInternal::GetData(firebase::firestore::DocumentSnapshot::ServerTimestampBehavior) const (in UnityFramework) + 84
8   UnityFramework                	       0x10c513e40 Firebase_Firestore_ConvertSnapshotToFieldValue + 60 Firebase_Firestore_ConvertSnapshotToFieldValue (in UnityFramework) + 60
9   UnityFramework                	       0x10c8b9c04 0x10ad20000 + 28941316 FirestoreCpp_ConvertSnapshotToFieldValue_m91AAC97D7AB831E534EBBFF23963A2AE6D8474BA (in UnityFramework) (Firebase.Firestore.cpp:24216)
10  UnityFramework                	       0x10ca0ffb8 0x10ad20000 + 30343096 DocumentSnapshot_ConvertTo_TisRuntimeObject_mE16DEABF33C961920032F1EECE9CD30EC1BA7522_gshared (in UnityFramework) (GenericMethods18.cpp:39026)
11  UnityFramework                	       0x10c776ef8 0x10ad20000 + 27619064 CommandsQueue_ProcessCommand_mE5834CD0C8EF45119F6982AD21D3A5CD3F1967F4 (in UnityFramework) (Assembly-CSharp3.cpp:0)
12  UnityFramework                	       0x10c776c30 0x10ad20000 + 27618352 CommandsQueue_ProcessCommands_m0555FEBDDDE963EE68206524001F329D8F307425 (in UnityFramework) (Assembly-CSharp3.cpp:0)
13  UnityFramework                	       0x10d3541a4 0x10ad20000 + 40059300 Action_1_Invoke_m587509C88BB83721D7918D89DF07606BB752D744_gshared (in UnityFramework) (Generics4.cpp:0)
14  UnityFramework                	       0x10c8c3150 0x10ad20000 + 28979536 U3CListenU3Ec__AnonStorey1_U3CU3Em__0_mABAE8AA3896386E97A7B3C2D6916EA134621EC84 (in UnityFramework) (Firebase.Firestore.cpp:36702)
15  UnityFramework                	       0x10d4c8484 0x10ad20000 + 41583748 Func_1_Invoke_m4DB932CB3E45300394D6087DBF4C3D620606F726_gshared (in UnityFramework) (Generics52.cpp:13851)
16  UnityFramework                	       0x10d4745ec 0x10ad20000 + 41240044 Action_3_Invoke_m09989F086885E22DE1497BBCCB2130AE9D5FFB89_gshared (in UnityFramework) (Generics5.cpp:0)
17  UnityFramework                	       0x10c8bcd48 0x10ad20000 + 28953928 Query_QuerySnapshotsHandler_mA299680852F7C4311215EC469EE2673C4DE66288 (in UnityFramework) (Firebase.Firestore.cpp:29580)
18  UnityFramework                	       0x10ad874cc 0x10ad20000 + 423116 ReversePInvokeWrapper_Query_QuerySnapshotsHandler_mA299680852F7C4311215EC469EE2673C4DE66288 (in UnityFramework) (Firebase.Firestore.cpp:29239)
19  UnityFramework                	       0x10c420798 0x10ad20000 + 24119192 firebase::callback::CallbackEntry::Execute() (in UnityFramework) + 72
20  UnityFramework                	       0x10c41fff8 0x10ad20000 + 24117240 firebase::callback::CallbackDispatcher::DispatchCallbacks() (in UnityFramework) + 104
21  UnityFramework                	       0x10c41ff78 firebase::callback::PollCallbacks() + 52 firebase::callback::PollCallbacks() (in UnityFramework) + 52
22  UnityFramework                	       0x10c892168 0x10ad20000 + 28778856 AppUtil_PollCallbacks_m75E222C3BCE3563C9C27265D3AE011E3E342E527 (in UnityFramework) (Firebase.App.cpp:4541)
23  UnityFramework                	       0x10c8c7e54 0x10ad20000 + 28999252 FirebaseHandler_Update_m054C867D529EEC80853232EEAFBCAD18CC287817 (in UnityFramework) (Firebase.Platform.cpp:6410)
24  UnityFramework                	       0x10ae86064 0x10ad20000 + 1466468 RuntimeInvoker_TrueVoid_t700C6383A2A510C2CF4DD86DABD5CA9FF70ADAC5(void (*)(), MethodInfo const*, void*, void**) (in UnityFramework) (Il2CppInvokerTable.cpp:166529)
25  UnityFramework                	       0x10c3de100 0x10ad20000 + 23847168 il2cpp::vm::Runtime::Invoke(MethodInfo const*, void*, void**, Il2CppException**) (in UnityFramework) + 116
26  UnityFramework                	       0x10bc28708 0x10ad20000 + 15763208 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool) (in UnityFramework) + 112
27  UnityFramework                	       0x10bc342a4 0x10ad20000 + 15811236 ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool) (in UnityFramework) + 120
28  UnityFramework                	       0x10bc409f4 0x10ad20000 + 15862260 MonoBehaviour::CallUpdateMethod(int) (in UnityFramework) + 272
29  UnityFramework                	       0x10ba5a638 0x10ad20000 + 13870648 void BaseBehaviourManager::CommonUpdate<BehaviourManager>() (in UnityFramework) + 228
30  UnityFramework                	       0x10bb41920 0x10ad20000 + 14817568 ExecutePlayerLoop(NativePlayerLoopSystem*) (in UnityFramework) + 100
31  UnityFramework                	       0x10bb41960 0x10ad20000 + 14817632 ExecutePlayerLoop(NativePlayerLoopSystem*) (in UnityFramework) + 164
32  UnityFramework                	       0x10bb41c24 0x10ad20000 + 14818340 PlayerLoop() (in UnityFramework) + 272
33  UnityFramework                	       0x10bf6d798 0x10ad20000 + 19191704 UnityPlayerLoopImpl(bool) (in UnityFramework) + 112
34  UnityFramework                	       0x10ad3b618 0x10ad20000 + 112152 -[UnityAppController(Rendering) repaint] (in UnityFramework) (UnityAppController+Rendering.mm:90)
35  UnityFramework                	       0x10ad3b580 0x10ad20000 + 112000 -[UnityAppController(Rendering) repaintDisplayLink] (in UnityFramework) (UnityAppController+Rendering.mm:72)
36  QuartzCore                    	       0x1857fdcc4 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 760 
37  QuartzCore                    	       0x1858041dc display_timer_callback(__CFMachPort*, void*, long, void*) + 368 
38  CoreFoundation                	       0x181ce75fc __CFMachPortPerform + 172
39  CoreFoundation                	       0x181d2744c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 56 
40  CoreFoundation                	       0x181d2aa3c __CFRunLoopDoSource1 + 588 
41  CoreFoundation                	       0x181ce8050 __CFRunLoopRun + 2376 
42  CoreFoundation                	       0x181cfad7c CFRunLoopRunSpecific + 572 
43  GraphicsServices              	       0x19bf6f9a0 GSEventRunModal + 160
44  UIKitCore                     	       0x18452d05c -[UIApplication _run] + 1080 
45  UIKitCore                     	       0x1842c2ce0 UIApplicationMain + 2028 
46  UnityFramework                	       0x10ad3b064 0x10ad20000 + 110692 -[UnityFramework runUIApplicationMainWithArgc:argv:] (in UnityFramework) (main.mm:96)
47  XXX                 	       0x1047cbe00 0x1047c4000 + 32256 main (in XXX) (main.mm:28)
48  dyld                          	       0x104b1c190 start + 444 

Thread 51 name:   Dispatch queue: com.google.firebase.firestore
Thread 51 Crashed:
0   libsystem_platform.dylib      	       0x1dae15e30 _platform_memcmp + 96
1   FirebaseFirestore             	       0x1064c4188 firebase::firestore::util::Comparator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Compare(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const + 96 firebase::firestore::util::Comparator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Compare(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const (in FirebaseFirestore) (comparison.cc:39)
2   FirebaseFirestore             	       0x1064a3de8 0x10649c000 + 32232 firebase::firestore::util::ComparisonResult firebase::firestore::util::CompareContainer<std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) (in FirebaseFirestore) (comparison.h:296)
3   FirebaseFirestore             	       0x1064d1248 0x10649c000 + 217672 firebase::firestore::immutable::impl::ArraySortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::util::Empty, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::contains(firebase::firestore::model::DocumentKey const&) const (in FirebaseFirestore) (array_sorted_map.h:231)
4   FirebaseFirestore             	       0x1065bd110 firebase::firestore::core::View::ShouldBeInLimbo(firebase::firestore::model::DocumentKey const&) const + 32 firebase::firestore::core::View::ShouldBeInLimbo(firebase::firestore::model::DocumentKey const&) const (in FirebaseFirestore) (view.cc:322)
5   FirebaseFirestore             	       0x1065bc6f0 firebase::firestore::core::View::UpdateLimboDocuments() + 360 firebase::firestore::core::View::UpdateLimboDocuments() (in FirebaseFirestore) (view.cc:375)
6   FirebaseFirestore             	       0x1065bb7f4 firebase::firestore::core::View::ApplyChanges(firebase::firestore::core::ViewDocumentChanges const&, absl::lts_2020_02_25::optional<firebase::firestore::remote::TargetChange> const&) + 308 firebase::firestore::core::View::ApplyChanges(firebase::firestore::core::ViewDocumentChanges const&, absl::lts_2020_02_25::optional<firebase::firestore::remote::TargetChange> const&) (in FirebaseFirestore) (view.cc:279)
7   FirebaseFirestore             	       0x1065a49fc firebase::firestore::core::SyncEngine::EmitNewSnapshotsAndNotifyLocalStore(firebase::firestore::immutable::SortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::Document, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> > const&, absl::lts_2020_02_25::optional<firebase::firestore::remote::RemoteEvent> const&) + 936 firebase::firestore::core::SyncEngine::EmitNewSnapshotsAndNotifyLocalStore(firebase::firestore::immutable::SortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::Document, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> > const&, absl::lts_2020_02_25::optional<firebase::firestore::remote::RemoteEvent> const&) (in FirebaseFirestore) (sync_engine.cc:496)
8   FirebaseFirestore             	       0x1065a5a3c firebase::firestore::core::SyncEngine::ApplyRemoteEvent(firebase::firestore::remote::RemoteEvent const&) + 408 firebase::firestore::core::SyncEngine::ApplyRemoteEvent(firebase::firestore::remote::RemoteEvent const&) (in FirebaseFirestore) (sync_engine.cc:306)
9   FirebaseFirestore             	       0x10658f9ec firebase::firestore::remote::RemoteStore::RaiseWatchSnapshot(firebase::firestore::model::SnapshotVersion const&) + 2716 firebase::firestore::remote::RemoteStore::RaiseWatchSnapshot(firebase::firestore::model::SnapshotVersion const&) (in FirebaseFirestore) (remote_store.cc:352)
10  FirebaseFirestore             	       0x1065c7660 firebase::firestore::remote::WatchStream::NotifyStreamResponse(grpc::ByteBuffer const&) + 332 firebase::firestore::remote::WatchStream::NotifyStreamResponse(grpc::ByteBuffer const&) (in FirebaseFirestore) (watch_stream.cc:105)
11  FirebaseFirestore             	       0x10659f11c firebase::firestore::remote::Stream::OnStreamRead(grpc::ByteBuffer const&) + 240 firebase::firestore::remote::Stream::OnStreamRead(grpc::ByteBuffer const&) (in FirebaseFirestore) (stream.cc:210)
12  FirebaseFirestore             	       0x10651dbb8 0x10649c000 + 531384 std::__1::__function::__func<firebase::firestore::remote::GrpcCompletion::Complete(bool)::$_0, std::__1::allocator<firebase::firestore::remote::GrpcCompletion::Complete(bool)::$_0>, void ()>::operator()() (in FirebaseFirestore) (functional:1732)
13  FirebaseFirestore             	       0x1064a198c firebase::firestore::util::AsyncQueue::ExecuteBlocking(std::__1::function<void ()> const&) + 68 firebase::firestore::util::AsyncQueue::ExecuteBlocking(std::__1::function<void ()> const&) (in FirebaseFirestore) (async_queue.cc:90)
14  FirebaseFirestore             	       0x1065af3e0 firebase::firestore::util::Task::ExecuteAndRelease() + 184 firebase::firestore::util::Task::ExecuteAndRelease() (in FirebaseFirestore) (task.cc:107)
15  libdispatch.dylib             	       0x181a3b198 _dispatch_client_callout + 16
16  libdispatch.dylib             	       0x1819e10d4 _dispatch_lane_serial_drain$VARIANT$mp + 644
17  libdispatch.dylib             	       0x1819e1b84 _dispatch_lane_invoke$VARIANT$mp + 408
18  libdispatch.dylib             	       0x1819eb750 _dispatch_workloop_worker_thread + 632
19  libsystem_pthread.dylib       	       0x1dae25e84 _pthread_wqthread + 284
20  libsystem_pthread.dylib       	       0x1dae259f0 start_wqthread + 8

Thread 51 crashed with ARM Thread State (64-bit):
    x0: 0x800000001461da0c   x1: 0x800000001461da0c   x2: 0x0000000000000006   x3: 0x0000000000000000
    x4: 0x0000000000000000   x5: 0x0000000000000000   x6: 0x0000000000000000   x7: 0x000000014f699088
    x8: 0x0000000000000007   x9: 0x00000000ffffffe0  x10: 0x800000001461da0c  x11: 0x800000001461da0c
   x12: 0x0000000000000000  x13: 0x0000000000000018  x14: 0x0000000000000100  x15: 0x0000000000002455
   x16: 0x00000001dae15dd0  x17: 0x0000000014000240  x18: 0x0000000000000000  x19: 0x0000000000000007
   x20: 0x0000000000000007  x21: 0x0000000148ce3c22  x22: 0x0000000148ce3c0a  x23: 0x0000000148ce3c0a
   x24: 0x000000016cd59160  x25: 0x000000016cd591f8  x26: 0x000000016cd59198  x27: 0x0000000146f27018
   x28: 0x00000001310c23c0   fp: 0x000000016cd58f70   lr: 0x00000001064c4188
    sp: 0x000000016cd58f60   pc: 0x00000001dae15e30 cpsr: 0x20000000
   far: 0x800000001461da0c  esr: 0x92000006 (Data Abort) byte read Translation fault

Binary Images:
       0x10ad20000 -        0x10eed7fff UnityFramework arm64  <c5cdbe9168d43d8593c9cca2ed9ac350> /private/var/containers/Bundle/Application/XXX.app/Frameworks/UnityFramework.framework/UnityFramework
       0x1dae14000 -        0x1dae1ffff libsystem_platform.dylib arm64  <8778c2d0938935f3874b31a260760922> /usr/lib/system/libsystem_platform.dylib
       0x1857ee000 -        0x185aaafff QuartzCore arm64  <e31fb9090fd03f0991a559b91bad2c7f> /System/Library/Frameworks/QuartzCore.framework/QuartzCore
       0x181cdd000 -        0x182117fff CoreFoundation arm64  <ea9c1df294c7379bbf8d970335b1552f> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
       0x19bf6e000 -        0x19bf76fff GraphicsServices arm64  <af306dd576573f63912fabc225106419> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
       0x184041000 -        0x1857cafff UIKitCore arm64  <fb5c2d366a053355b898d8d3c163d02e> /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore
       0x1047c4000 -        0x1047cbfff XXX arm64  <04dea1ad088f3d68b4d29b76abe7092e> /private/var/containers/Bundle/Application/XXX.app/XXX
       0x104b04000 -        0x104b57fff dyld arm64  <5e7ef5771cc5369aa04d28fbba883086> /usr/lib/dyld
       0x1babc0000 -        0x1babf1fff libsystem_kernel.dylib arm64  <28a82cbdb2103662af9e636819d8909a> /usr/lib/system/libsystem_kernel.dylib
       0x1068d0000 -        0x106a1bfff grpc arm64  <c10aa50ef0723c96b9e918aa09e63427> /private/var/containers/Bundle/Application/D7F403ED-1057-44D5-A393-B4EE89428F4B/XXX.app/Frameworks/grpc.framework/grpc
       0x106364000 -        0x10639ffff grpcpp arm64  <5a2ea73450fe337685293021008d5e7c> /private/var/containers/Bundle/Application/D7F403ED-1057-44D5-A393-B4EE89428F4B/XXX.app/Frameworks/grpcpp.framework/grpcpp
       0x10649c000 -        0x106673fff FirebaseFirestore arm64  <8a0d453cb4d03c6bbf8ee5134177dfb7> /private/var/containers/Bundle/Application/D7F403ED-1057-44D5-A393-B4EE89428F4B/XXX.app/Frameworks/FirebaseFirestore.framework/FirebaseFirestore
       0x1819d7000 -        0x181a59fff libdispatch.dylib arm64  <56aa6e938d8e32feac73d3e79b1ba2f5> /usr/lib/system/libdispatch.dylib
       0x1dae21000 -        0x1dae34fff libsystem_pthread.dylib arm64  <ce7eb78851553c3888d812f1419fa5fa> /usr/lib/system/libsystem_pthread.dylib
       0x18341b000 -        0x1836fbfff Foundation arm64  <86d8a58db71f34c683e0014b2b835f1d> /System/Library/Frameworks/Foundation.framework/Foundation
       0x18a878000 -        0x18a89ffff AudioSession arm64  <12427ae9e9e23966989f711c820e7125> /System/Library/PrivateFrameworks/AudioSession.framework/AudioSession
       0x1bf1ab000 -        0x1bf2a5fff libEmbeddedSystemAUs.dylib arm64  <74912894656d3599aed1caa71db01950> /System/Library/Frameworks/AudioToolbox.framework/libEmbeddedSystemAUs.dylib
       0x1824b3000 -        0x182948fff CFNetwork arm64  <d47c42c4e8f531babf5e074a91376b00> /System/Library/Frameworks/CFNetwork.framework/CFNetwork
       0x18c1c9000 -        0x18c243fff libsystem_c.dylib arm64  <5700e26c19b735c9b739e62c325f4fcc> /usr/lib/system/libsystem_c.dylib
       0x18e0c2000 -        0x18e3abfff CoreMotion arm64  <dc86c14d59d231b99421110b1cad7b9c> /System/Library/Frameworks/CoreMotion.framework/CoreMotion
       0x104f64000 -        0x104fa3fff FirebaseCrashlytics arm64  <ca71571d814835aaa62baad09d6bba6e> /private/var/containers/Bundle/Application/XXX.app/Frameworks/FirebaseCrashlytics.framework/FirebaseCrashlytics
       0x198fac000 -        0x199004fff libc++.1.dylib arm64  <0b3e0b571a513ec98680bd398555aeeb> /usr/lib/libc++.1.dylib
       0x18c297000 -        0x18d3befff JavaScriptCore arm64  <c9068a147fe935909fd2c07e82a16a8e> /System/Library/Frameworks/JavaScriptCore.framework/JavaScriptCore
               0x0 - 0xffffffffffffffff ??? unknown-arch  <00000000000000000000000000000000> ???

EOF
@dconeybe
Copy link

dconeybe commented Nov 2, 2021

Hi @nodrock. Thank you for reporting this issue. We actually just discovered the same issue and spent days investigating! We have a fix that will be included in the next release.

The root cause is an ODR violation where incompatible versions of absl were being used in two of the different binaries. Googlers can check out b/204429003 for details.

Unfortunately, there is no workaround that we know of so you will need to either (a) downgrade to Unity SDK 8.4.0 or (b) wait until the next release, which is planned for a couple of weeks from now.

I'm going to mark this issue as "closed" since the fix is already implemented. Feel free to comment further if you'd like to discuss more. Again, apologies for this bug. It really snuck up on us too.

@dconeybe dconeybe closed this as completed Nov 2, 2021
@dconeybe dconeybe changed the title [Bug] [Bug] Intermittent crash on iOS in DocumentSnapshotInternal::GetData() in 8.5.0 Nov 2, 2021
@dconeybe
Copy link

dconeybe commented Nov 9, 2021

The fix was just released in the Firebase Unity SDK 8.6.0.

@dconeybe dconeybe added type: bug and removed type: question new New issue. labels Nov 9, 2021
@firebase firebase locked and limited conversation to collaborators Dec 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants