firebase-ios-sdk icon indicating copy to clipboard operation
firebase-ios-sdk copied to clipboard

Fatal Exception: NSInternalInconsistencyException

Open sanojkashyap007 opened this issue 6 months ago • 5 comments

Description

Description We have a consistent crash that seems to be in Firebase/Foundation. iOS and iPadOS Can we get some information why this could happen? and if there is any fix going on?

Reproducing the issue Only reported in production

Firebase SDK Version 10.19.0

Xcode Version 15.1

Installation Method CocoaPods

Firebase Product(s) Analytics, Crashlytics, Performance

Targeted Platforms iOS, iPadOS

Relevant Log Output

Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0xec69c __exceptionPreprocess
1  libobjc.A.dylib                0x2bc80 objc_exception_throw
2  Foundation                     0x6b0dd8 _userInfoForFileAndLine
3  UIKitCore                      0x70fd54 -[UIPageViewController queuingScrollView:didEndManualScroll:toRevealView:direction:animated:didFinish:didComplete:]
4  UIKitCore                      0x719d6c -[_UIQueuingScrollView _notifyDelegateDidEndManualScroll:toRevealView:direction:animated:didFinish:didComplete:]
5  UIKitCore                      0x71ba38 -[_UITransitionState cleanupWithFinishedState:completedState:]
6  UIKitCore                      0x718e58 -[_UIQueuingScrollView _cleanUpCompletionState:didFinish:didComplete:]
7  UIKitCore                      0x71b614 -[_UIQueuingScrollView _didEndScroll:]
8  UIKitCore                      0x71b7b4 -[_UIQueuingScrollView _didEndManualScroll]
9  UIKitCore                      0x7179b0 -[_UIQueuingScrollView _scrollViewDidEndDecelerating]
10 UIKitCore                      0x121f1e8 -[UIScrollView _scrollViewDidEndDeceleratingForDelegate]
11 UIKitCore                      0x121d1c8 -[UIScrollView _stopScrollDecelerationNotify:]
12 UIKitCore                      0x121900c -[UIScrollView _smoothScrollSyncWithUpdateTime:]
13 UIKitCore                      0x1218450 -[UIScrollView _smoothScrollWithUpdateTime:]
14 UIKitCore                      0x121927c -[UIScrollView _smoothScrollDisplayLink:]
15 QuartzCore                     0x2f2cc CA::Display::DisplayLinkItem::dispatch_(CA::SignPost::Interval<(CA::SignPost::CAEventCode)835322056>&)
16 QuartzCore                     0x324b4 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long)
17 QuartzCore                     0x31fc0 CA::Display::DisplayLink::callback(_CADisplayTimer*, unsigned long long, unsigned long long, unsigned long long, bool, void*)
18 QuartzCore                     0x2f464 display_timer_callback(__CFMachPort*, void*, long, void*)
19 CoreFoundation                 0x35e24 __CFMachPortPerform
20 CoreFoundation                 0x35d60 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__
21 CoreFoundation                 0x347e8 __CFRunLoopDoSource1
22 CoreFoundation                 0x33e20 __CFRunLoopRun
23 CoreFoundation                 0x33478 CFRunLoopRunSpecific
24 GraphicsServices               0x34f8 GSEventRunModal
25 UIKitCore                      0x22c62c -[UIApplication _run]
26 UIKitCore                      0x22bc68 UIApplicationMain
27 MyProject                       0x329370 main + 26 (AppDelegate.swift:26)
28 ???                            0x1bc8dadcc (Missing)

and Firebase crash logs :

Crashed: com.google.firebase.crashlytics.ios.exception

0  FirebaseCrashlytics            0x1d6b8 FIRCLSProcessRecordAllThreads + 393 (FIRCLSProcess.c:393)
1  FirebaseCrashlytics            0x1da98 FIRCLSProcessRecordAllThreads + 424 (FIRCLSProcess.c:424)
2  FirebaseCrashlytics            0x14bb8 FIRCLSHandler + 34 (FIRCLSHandler.m:34)
3  FirebaseCrashlytics            0xf908 __FIRCLSExceptionRecord_block_invoke + 232 (FIRCLSException.mm:232)
4  libdispatch.dylib              0x4300 _dispatch_client_callout + 20
5  libdispatch.dylib              0x136b4 _dispatch_lane_barrier_sync_invoke_and_complete + 56
6  FirebaseCrashlytics            0xe940 FIRCLSExceptionRecord + 234 (FIRCLSException.mm:234)
7  FirebaseCrashlytics            0xf428 FIRCLSExceptionRecordNSException + 126 (FIRCLSException.mm:126)
8  FirebaseCrashlytics            0xe598 FIRCLSTerminateHandler() + 398 (FIRCLSException.mm:398)
9  libc++abi.dylib                0x143bc std::__terminate(void (*)()) + 16
10 libc++abi.dylib                0x17758 __cxa_increment_exception_refcount + 202
11 libobjc.A.dylib                0x3ccbc objc_exception_rethrow + 44
12 CoreFoundation                 0x33528 CFRunLoopRunSpecific + 784
13 GraphicsServices               0x34f8 GSEventRunModal + 164
14 UIKitCore                      0x22c62c -[UIApplication _run] + 888
15 UIKitCore                      0x22bc68 UIApplicationMain + 340
16 MyProject                        0x329370 main + 26 (AppDelegate.swift:26)
17 ???                            0x1bc8dadcc (Missing)

Reproducing the issue

  • Random crash in prod env

Firebase SDK Version

10.19.0

Xcode Version

15.1

Installation Method

CocoaPods

Firebase Product(s)

Analytics, Crashlytics, Performance

Targeted Platforms

iOS

Relevant Log Output

Screenshot 2024-02-05 at 11 22 41 PM

No response

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

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

- Firebase/Analytics (10.19.0):
    - Firebase/Core
  - Firebase/Core (10.19.0):
    - Firebase/CoreOnly
    - FirebaseAnalytics (~> 10.19.0)
  - Firebase/CoreOnly (10.19.0):
    - FirebaseCore (= 10.19.0)
  - Firebase/Crashlytics (10.19.0):
    - Firebase/CoreOnly
    - FirebaseCrashlytics (~> 10.19.0)
  - Firebase/Performance (10.19.0):
    - Firebase/CoreOnly
    - FirebasePerformance (~> 10.19.0)
  - Firebase/RemoteConfig (10.19.0):
    - Firebase/CoreOnly
    - FirebaseRemoteConfig (~> 10.19.0)
  - FirebaseABTesting (10.19.0):
    - FirebaseCore (~> 10.0)
  - FirebaseAnalytics (10.19.0):
    - FirebaseAnalytics/AdIdSupport (= 10.19.0)
    - FirebaseCore (~> 10.0)
    - FirebaseInstallations (~> 10.0)

sanojkashyap007 avatar Feb 05 '24 17:02 sanojkashyap007

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

google-oss-bot avatar Feb 05 '24 17:02 google-oss-bot

Hi @sanojkashyap007, based on your stack trace, it seems that there's no related to Firebase. We need more information to investigate the issue like the full stack trace. With this crash "Crashed: com.google.firebase.crashlytics.ios.exception", Crashlytics sometimes blames its own crash processing thread, but the crash is not caused by Crashlytics.

rizafran avatar Feb 05 '24 19:02 rizafran

Hi @sanojkashyap007, based on your stack trace, it seems that there's no related to Firebase. We need more information to investigate the issue like the full stack trace. With this crash "Crashed: com.google.firebase.crashlytics.ios.exception", Crashlytics sometimes blames its own crash processing thread, but the crash is not caused by Crashlytics.

Above mentioned above the full stack trace for firebase crash in crashlytics. Please see below image. firebase crash is happening.

Screenshot 2024-02-06 at 5 31 11 PM

sanojkashyap007 avatar Feb 06 '24 13:02 sanojkashyap007

The crash looks related to a UIScrollView and the Firebase products being used do not include UI.

paulb777 avatar Feb 08 '24 22:02 paulb777

The crash looks related to a UIScrollView and the Firebase products being used do not include UI.

But in stack trace firebase crash first and then finally to UIScrollView. How are you looking at it?

sanojkashyap007 avatar Feb 12 '24 11:02 sanojkashyap007

+1 same issue on my side. SDKs version 1.21.0

nastasiupta avatar Mar 05 '24 21:03 nastasiupta

+1 same issue on my side. SDKs version 1.21.0

By chance did you get any clue or help to fix?

sanojkashyap007 avatar Mar 06 '24 19:03 sanojkashyap007

No... it's something strange, no reports for like 1-2 days, then a bulk of reports in few hours with this issue, and then everything is fine again.

nastasiupta avatar Mar 06 '24 20:03 nastasiupta

No... it's something strange, no reports for like 1-2 days, then a bulk of reports in few hours with this issue, and then everything is fine again.

worst case is its happening only in prod, no crash in local. is it same for you as well? I can see crash in firebase dashboard. Its really frustrating now.

sanojkashyap007 avatar Mar 07 '24 13:03 sanojkashyap007

"it works on my phone" :)) Also, regarding reporting, there is no issue reported from Apple related to this. Other crashes reported from Firebase can be found from Apple (from users that accept to share crash reports with developers) but for this, no one... which is also strange. I looked in details of the reports, looks like almost all users are very low on free memory ram... I checked the most used features and all the screens are deallocated during navigation (pop)

nastasiupta avatar Mar 07 '24 13:03 nastasiupta

The Crashlytics com.google.firebase.crashlytics.ios.exception thread captures exceptions thrown elsewhere in order to record crash information. Though it says the Crashlytics thread caused the crash, the exception that it captured was thrown on the main thread, probably due to misuse of a UIPageViewController. See this Apple forums thread for a possible solution.

morganchen12 avatar Mar 07 '24 17:03 morganchen12