firebase / firebase-ios-sdk

Firebase SDK for Apple App Development
https://firebase.google.com
Apache License 2.0
5.62k stars 1.47k forks source link

Fatal Exception: NSInternalInconsistencyException. Foundation _userInfoForFileAndLine #12711

Closed SPHthabib closed 6 months ago

SPHthabib commented 6 months ago

Description

We are experiencing a consistent crash on Firebase Crashlytics which is in Firebase SDK with the Foundation framework on iOS and iPadOS.

95% of the crashes happen on iPhones, 5% on iPad devices, and 77% on iOS 17 devices. Less than 1% of devices on the background state.

Reproducing the issue

Only reported in production, not able to replicate on local.

Firebase SDK Version

10.22

Xcode Version

15.2

Installation Method

CocoaPods

Firebase Product(s)

AB Testing, Analytics, Crashlytics, Database, In-App Messaging, Messaging, Performance, Remote Config

Targeted Platforms

iOS, App Extensions

Relevant Log Output

# Crashlytics - Stack trace

Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0xecb28 __exceptionPreprocess
1  libobjc.A.dylib                0x2af78 objc_exception_throw
2  Foundation                     0x6ba920 _userInfoForFileAndLine
3  UIKitCore                      0x7c464 -[UICollectionView _updateLayoutAttributesForExistingVisibleViewsFadingForBoundsChange:]
4  UIKitCore                      0x7b858 -[UICollectionView _updateVisibleCellsNow:]
5  UIKitCore                      0x7ab2c -[UICollectionView layoutSubviews]
6  UIKitCore                      0x330f8 -[UIView(CALayerDelegate) layoutSublayersOfLayer:]
7  QuartzCore                     0x66e30 CA::Layer::layout_if_needed(CA::Transaction*)
8  QuartzCore                     0x669b4 CA::Layer::layout_and_display_if_needed(CA::Transaction*)
9  QuartzCore                     0x6cbb4 CA::Context::commit_transaction(CA::Transaction*, double, double*)
10 QuartzCore                     0x661bc CA::Transaction::commit()
11 UIKitCore                      0xa69c14 ___UIUpdateCycleNotifyIdle_block_invoke
12 libdispatch.dylib              0x213c _dispatch_call_block_and_release
13 libdispatch.dylib              0x3dd4 _dispatch_client_callout
14 libdispatch.dylib              0x125a4 _dispatch_main_queue_drain
15 libdispatch.dylib              0x121b8 _dispatch_main_queue_callback_4CF
16 CoreFoundation                 0x3751c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
17 CoreFoundation                 0x34218 __CFRunLoopRun
18 CoreFoundation                 0x33968 CFRunLoopRunSpecific
19 GraphicsServices               0x34e0 GSEventRunModal
20 UIKitCore                      0x22aedc -[UIApplication _run]
21 UIKitCore                      0x22a518 UIApplicationMain
22 MyApp                  0xf5d64 main + 26 (AppDelegate.swift:26)
23 ???                            0x1bc89ed84 (Missing)

Crashed: com.google.firebase.crashlytics.ios.exception
0  FirebaseCrashlytics            0x214cc FIRCLSProcessRecordAllThreads + 393 (FIRCLSProcess.c:393)
1  FirebaseCrashlytics            0x218ac FIRCLSProcessRecordAllThreads + 424 (FIRCLSProcess.c:424)
2  FirebaseCrashlytics            0x1895c FIRCLSHandler + 34 (FIRCLSHandler.m:34)
3  FirebaseCrashlytics            0x13674 __FIRCLSExceptionRecord_block_invoke + 232 (FIRCLSException.mm:232)
4  libdispatch.dylib              0x3dd4 _dispatch_client_callout + 20
5  libdispatch.dylib              0x132c4 _dispatch_lane_barrier_sync_invoke_and_complete + 56
6  FirebaseCrashlytics            0x126ac FIRCLSExceptionRecord + 234 (FIRCLSException.mm:234)
7  FirebaseCrashlytics            0x13194 FIRCLSExceptionRecordNSException + 126 (FIRCLSException.mm:126)
8  FirebaseCrashlytics            0x12304 FIRCLSTerminateHandler() + 398 (FIRCLSException.mm:398)
9  libc++abi.dylib                0x14090 std::__terminate(void (*)()) + 16
10 libc++abi.dylib                0x14034 std::terminate() + 108
11 libobjc.A.dylib                0x3c88c objc_terminate + 16
12 libdispatch.dylib              0x3de8 _dispatch_client_callout + 40
13 libdispatch.dylib              0x125a4 _dispatch_main_queue_drain + 988
14 libdispatch.dylib              0x121b8 _dispatch_main_queue_callback_4CF + 44
15 CoreFoundation                 0x3751c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16
16 CoreFoundation                 0x34218 __CFRunLoopRun + 1996
17 CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
18 GraphicsServices               0x34e0 GSEventRunModal + 164
19 UIKitCore                      0x22aedc -[UIApplication _run] + 888
20 UIKitCore                      0x22a518 UIApplicationMain + 340
21 MyApp                  0xf5d64 main + 26 (AppDelegate.swift:26)
22 ???                            0x1bc89ed84 (Missing)

com.apple.uikit.eventfetch-thread
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  CoreFoundation                 0x3601c __CFRunLoopServiceMachPort + 160
5  CoreFoundation                 0x33f04 __CFRunLoopRun + 1208
6  CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
7  Foundation                     0x2b4a8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212
8  Foundation                     0x554e8 -[NSRunLoop(NSRunLoop) runUntilDate:] + 64
9  UIKitCore                      0x18dac8 -[UIEventFetcher threadMain] + 420
10 Foundation                     0x9ca9c __NSThread__start__ + 732
11 libsystem_pthread.dylib        0x2a90 _pthread_start + 136
12 libsystem_pthread.dylib        0x1fcc thread_start + 8

com.apple.NSURLConnectionLoader
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  CoreFoundation                 0x3601c __CFRunLoopServiceMachPort + 160
5  CoreFoundation                 0x33f04 __CFRunLoopRun + 1208
6  CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
7  CFNetwork                      0x25ac48 estimatedPropertyListSize + 38228
8  Foundation                     0x9ca9c __NSThread__start__ + 732
9  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
10 libsystem_pthread.dylib        0x1fcc thread_start + 8

com.google.firebase.crashlytics.MachExceptionServer
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  FirebaseCrashlytics            0x1af98 FIRCLSMachExceptionServer + 192 (FIRCLSMachException.c:192)
5  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
6  libsystem_pthread.dylib        0x1fcc thread_start + 8

JavaScriptCore libpas scavenger
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x1596db0 scavenger_thread_main + 1512
3  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
4  libsystem_pthread.dylib        0x1fcc thread_start + 8

Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  libc++.1.dylib                 0xd504 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28
3  NewRelic                       0x84dc8 NewRelic::WorkQueue::task_thread() + 101568
4  NewRelic                       0x8534c std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::__execute() + 102980
5  NewRelic                       0x854ec void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::*)(), std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>*>>(void*) + 103396
6  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
7  libsystem_pthread.dylib        0x1fcc thread_start + 8

Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  libc++.1.dylib                 0xd504 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28
3  NewRelic                       0x84dc8 NewRelic::WorkQueue::task_thread() + 101568
4  NewRelic                       0x8534c std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::__execute() + 102980
5  NewRelic                       0x854ec void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::*)(), std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>*>>(void*) + 103396
6  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
7  libsystem_pthread.dylib        0x1fcc thread_start + 8

ComScore-Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  libc++.1.dylib                 0xd598 std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > >) + 100
3  ComScore                       0x942b8 juce::WaitableEvent::wait(int) const + 264
4  ComScore                       0x510f8 comscore::ContextTasksThread<comscore::Core>::run() + 256
5  ComScore                       0x94a60 juce::Thread::threadEntryPoint() + 104
6  ComScore                       0x9dcc4 juce::threadEntryProc(void*) + 32
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

ComScore-NetworkThread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  libc++.1.dylib                 0xd598 std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > >) + 100
3  ComScore                       0x942b8 juce::WaitableEvent::wait(int) const + 264
4  ComScore                       0x510f8 comscore::ContextTasksThread<comscore::Core>::run() + 256
5  ComScore                       0x94a60 juce::Thread::threadEntryPoint() + 104
6  ComScore                       0x9dcc4 juce::threadEntryProc(void*) + 32
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Realm notification listener
0  libsystem_kernel.dylib         0xf8cc kevent + 8
1  Realm                          0x3c8b50 realm::_impl::ExternalCommitHelper::listen() + 156
2  Realm                          0x3c8ca0 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&, realm::RealmConfig const&)::$_0>>(void*) + 52
3  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
4  libsystem_pthread.dylib        0x1fcc thread_start + 8

Realm notification listener
0  libsystem_kernel.dylib         0xf8cc kevent + 8
1  Realm                          0x3c8b50 realm::_impl::ExternalCommitHelper::listen() + 156
2  Realm                          0x3c8ca0 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&, realm::RealmConfig const&)::$_0>>(void*) + 52
3  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
4  libsystem_pthread.dylib        0x1fcc thread_start + 8

com.squareup.SocketRocket.NetworkThread
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  CoreFoundation                 0x3601c __CFRunLoopServiceMachPort + 160
5  CoreFoundation                 0x33f04 __CFRunLoopRun + 1208
6  CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
7  Foundation                     0x2b4a8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212
8  FirebaseDatabase               0x457cc -[_FSRRunLoopThread main] + 1870 (FSRWebSocket.m:1870)
9  Foundation                     0x9ca9c __NSThread__start__ + 732
10 libsystem_pthread.dylib        0x2a90 _pthread_start + 136
11 libsystem_pthread.dylib        0x1fcc thread_start + 8

com.apple.CFSocket.private
0  libsystem_kernel.dylib         0xe220 __select + 8
1  libsystem_kernel.dylib         0xe220 select$DARWIN_EXTSN + 8
2  CoreFoundation                 0xdfbf0 __CFSocketManager + 640
3  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
4  libsystem_pthread.dylib        0x1fcc thread_start + 8

Realm notification listener
0  libsystem_kernel.dylib         0xf8cc kevent + 8
1  Realm                          0x3c8b50 realm::_impl::ExternalCommitHelper::listen() + 156
2  Realm                          0x3c8ca0 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&, realm::RealmConfig const&)::$_0>>(void*) + 52
3  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
4  libsystem_pthread.dylib        0x1fcc thread_start + 8

WebThread
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  CoreFoundation                 0x3601c __CFRunLoopServiceMachPort + 160
5  CoreFoundation                 0x33f04 __CFRunLoopRun + 1208
6  CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
7  WebCore                        0xe90110 <redacted> + 780
8  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
9  libsystem_pthread.dylib        0x1fcc thread_start + 8

GAIThread
0  libsystem_kernel.dylib         0x1af8 mach_msg2_trap + 8
1  libsystem_kernel.dylib         0x1890 mach_msg2_internal + 80
2  libsystem_kernel.dylib         0x17a8 mach_msg_overwrite + 436
3  libsystem_kernel.dylib         0x15e8 mach_msg + 24
4  CoreFoundation                 0x3601c __CFRunLoopServiceMachPort + 160
5  CoreFoundation                 0x33f04 __CFRunLoopRun + 1208
6  CoreFoundation                 0x33968 CFRunLoopRunSpecific + 608
7  Foundation                     0x2b4a8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212
8  Foundation                     0x29ff0 -[NSRunLoop(NSRunLoop) run] + 64
9  MyApp                          0x1fedb4 +[GAI threadMain:] + 4376079796
10 Foundation                     0x9ca9c __NSThread__start__ + 732
11 libsystem_pthread.dylib        0x2a90 _pthread_start + 136
12 libsystem_pthread.dylib        0x1fcc thread_start + 8

Thread
0  libsystem_kernel.dylib         0xa084 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1f6c _pthread_wqthread + 364
2  libsystem_pthread.dylib        0x1fc0 start_wqthread + 8

Thread
0  libsystem_kernel.dylib         0xa084 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1f6c _pthread_wqthread + 364
2  libsystem_pthread.dylib        0x1fc0 start_wqthread + 8

Thread
0  libsystem_kernel.dylib         0xa084 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1f6c _pthread_wqthread + 364
2  libsystem_pthread.dylib        0x1fc0 start_wqthread + 8

Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  libc++.1.dylib                 0xd504 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28
3  NewRelic                       0x84dc8 NewRelic::WorkQueue::task_thread() + 101568
4  NewRelic                       0x8534c std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::__execute() + 102980
5  NewRelic                       0x854ec void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>::*)(), std::__1::__async_assoc_state<void, std::__1::__async_func<void (NewRelic::WorkQueue::*)(), NewRelic::WorkQueue*>>*>>(void*) + 103396
6  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
7  libsystem_pthread.dylib        0x1fcc thread_start + 8

Thread
0  libsystem_kernel.dylib         0xa084 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1f6c _pthread_wqthread + 364
2  libsystem_pthread.dylib        0x1fc0 start_wqthread + 8

Thread
0  libsystem_kernel.dylib         0xa084 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1f6c _pthread_wqthread + 364
2  libsystem_pthread.dylib        0x1fc0 start_wqthread + 8

JSC Heap Collector Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Heap Helper Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Heap Helper Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Heap Helper Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Heap Helper Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

Heap Helper Thread
0  libsystem_kernel.dylib         0x249c __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1590 _pthread_cond_wait + 1228
2  JavaScriptCore                 0x7d648 WTF::ThreadCondition::timedWait(WTF::Mutex&, WTF::WallTime) + 240
3  JavaScriptCore                 0x51d78 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2072
4  JavaScriptCore                 0xa3c4 WTF::Detail::CallableWrapper<WTF::AutomaticThread::start(WTF::AbstractLocker const&)::$_0, void>::call() + 460
5  JavaScriptCore                 0x7a894 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 352
6  JavaScriptCore                 0x7cd34 WTF::wtfThreadEntryPoint(void*) + 16
7  libsystem_pthread.dylib        0x2a90 _pthread_start + 136
8  libsystem_pthread.dylib        0x1fcc thread_start + 8

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
```json Replace this line with the contents of your Package.resolved. ```

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
```yml - Firebase (10.22.0): - Firebase/Core (= 10.22.0) - Firebase/Analytics (10.22.0): - Firebase/Core - Firebase/Auth (10.22.0): - Firebase/CoreOnly - FirebaseAuth (~> 10.22.0) - Firebase/Core (10.22.0): - Firebase/CoreOnly - FirebaseAnalytics (~> 10.22.0) - Firebase/CoreOnly (10.22.0): - FirebaseCore (= 10.22.0) - Firebase/Crashlytics (10.22.0): - Firebase/CoreOnly - FirebaseCrashlytics (~> 10.22.0) - Firebase/Database (10.22.0): - Firebase/CoreOnly - FirebaseDatabase (~> 10.22.0) - Firebase/InAppMessaging (10.22.0): - Firebase/CoreOnly - FirebaseInAppMessaging (~> 10.22.0-beta) - Firebase/Messaging (10.22.0): - Firebase/CoreOnly - FirebaseMessaging (~> 10.22.0) - Firebase/Performance (10.22.0): - Firebase/CoreOnly - FirebasePerformance (~> 10.22.0) - Firebase/RemoteConfig (10.22.0): - Firebase/CoreOnly - FirebaseRemoteConfig (~> 10.22.0) - FirebaseABTesting (10.22.0): - FirebaseCore (~> 10.0) - FirebaseAnalytics (10.22.0): - FirebaseAnalytics/AdIdSupport (= 10.22.0) - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseAnalytics/AdIdSupport (10.22.0): - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleAppMeasurement (= 10.22.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.11) - GoogleUtilities/MethodSwizzler (~> 7.11) - GoogleUtilities/Network (~> 7.11) - "GoogleUtilities/NSData+zlib (~> 7.11)" - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseAppCheckInterop (10.22.0) - FirebaseAuth (10.22.0): - FirebaseAppCheckInterop (~> 10.17) - FirebaseCore (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.8) - GoogleUtilities/Environment (~> 7.8) - GTMSessionFetcher/Core (< 4.0, >= 2.1) - RecaptchaInterop (~> 100.0) - FirebaseCore (10.22.0): - FirebaseCoreInternal (~> 10.0) - GoogleUtilities/Environment (~> 7.12) - GoogleUtilities/Logger (~> 7.12) - FirebaseCoreExtension (10.22.0): - FirebaseCore (~> 10.0) - FirebaseCoreInternal (10.22.0): - "GoogleUtilities/NSData+zlib (~> 7.8)" - FirebaseCrashlytics (10.22.0): - FirebaseCore (~> 10.5) - FirebaseInstallations (~> 10.0) - FirebaseSessions (~> 10.5) - GoogleDataTransport (~> 9.2) - GoogleUtilities/Environment (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - PromisesObjC (~> 2.1) - FirebaseDatabase (10.22.0): - FirebaseAppCheckInterop (~> 10.17) - FirebaseCore (~> 10.0) - FirebaseSharedSwift (~> 10.0) - leveldb-library (~> 1.22) - FirebaseInAppMessaging (10.22.0-beta): - FirebaseABTesting (~> 10.0) - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleUtilities/Environment (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseInstallations (10.22.0): - FirebaseCore (~> 10.0) - GoogleUtilities/Environment (~> 7.8) - GoogleUtilities/UserDefaults (~> 7.8) - PromisesObjC (~> 2.1) - FirebaseMessaging (10.22.0): - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleDataTransport (~> 9.3) - GoogleUtilities/AppDelegateSwizzler (~> 7.8) - GoogleUtilities/Environment (~> 7.8) - GoogleUtilities/Reachability (~> 7.8) - GoogleUtilities/UserDefaults (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - FirebasePerformance (10.22.0): - FirebaseCore (~> 10.5) - FirebaseInstallations (~> 10.0) - FirebaseRemoteConfig (~> 10.0) - FirebaseSessions (~> 10.5) - GoogleDataTransport (~> 9.2) - GoogleUtilities/Environment (~> 7.8) - GoogleUtilities/ISASwizzler (~> 7.8) - GoogleUtilities/MethodSwizzler (~> 7.8) - nanopb (< 2.30911.0, >= 2.30908.0) - FirebaseRemoteConfig (10.22.0): - FirebaseABTesting (~> 10.0) - FirebaseCore (~> 10.0) - FirebaseInstallations (~> 10.0) - FirebaseSharedSwift (~> 10.0) - GoogleUtilities/Environment (~> 7.8) - "GoogleUtilities/NSData+zlib (~> 7.8)" - FirebaseSessions (10.22.0): - FirebaseCore (~> 10.5) - FirebaseCoreExtension (~> 10.0) - FirebaseInstallations (~> 10.0) - GoogleDataTransport (~> 9.2) - GoogleUtilities/Environment (~> 7.10) - nanopb (< 2.30911.0, >= 2.30908.0) - PromisesSwift (~> 2.1) - FirebaseSharedSwift (10.22.0) DEPENDENCIES: - Firebase (= 10.22.0) - Firebase/Analytics - Firebase/Auth - Firebase/Crashlytics - Firebase/Database - Firebase/InAppMessaging - Firebase/Messaging - Firebase/Performance - Firebase/RemoteConfig ```
google-oss-bot commented 6 months ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

rizafran commented 6 months ago

Hi @SPHthabib, it seems like there's no Firebase-related logs in the stack trace. The com.google.firebase.crashlytics.ios.exception thread only captures exceptions thrown elsewhere in order to record crash information. We'll need more information to be able to help.

SPHthabib commented 6 months ago

@rizafran I am not able to reproduce this locally or any other information from Crashlytics

ncooke3 commented 6 months ago

Hi @SPHthabib, as @rizafran said, this crash was captured by Crashlytics rather than caused by it. The issue looks to be in UICollectionView. I would double check that any changes to the view's cells are done on the main thread, and that any changes to the collection view's data source are synchronized correctly.

Additionally, since the crash seems to happen during an animation/redraw, I would drop a symbolic breakpoint on one of those view-related symbols (like CA::Transaction::commit() or _updateVisibleCellsNow) and try to better understand what user input would trigger those code paths.

I'm marking this as closed since this does not appear to be caused by a Firebase SDK.