Closed jonameson closed 4 months ago
I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.
We're also seeing lot of remote config crash reports when trying to access variables.
#0 (null) in kevent_id ()
#1 (null) in _dispatch_event_loop_wait_for_ownership ()
#2 (null) in __DISPATCH_WAIT_FOR_QUEUE__ ()
#3 (null) in _dispatch_sync_f_slow ()
#4 0x4ce4cac in -[FIRRemoteConfig configValueForKey:] at /Users/jona/Library/Developer/Xcode/DerivedData/flipaclip-behvdimhwqhunhbioxirkxfgelqm/SourcePackages/checkouts/firebase-ios-sdk/FirebaseRemoteConfig/Sources/FIRRemoteConfig.m:418
#5 0x4ca6d0c in FirebaseServiceSdk.configValue(forKey:) at /Users/jona/Developer/git/flipaclip-ios/flipaclip/Engagement/Sources/Engagement/data/firebase/FirebaseServiceSdk.swift:232
#6 (null) in protocol witness for ServiceSdk.configValue(forKey:) in conformance FirebaseServiceSdk ()
#7 0x4ca076c in RemoteConfigImpl.getActiveContestId() at /Users/jona/Developer/git/flipaclip-ios/flipaclip/Engagement/Sources/Engagement/data/RemoteConfigImpl.swift:118
#8 (null) in protocol witness for RemoteConfig.getActiveContestId() in conformance RemoteConfigImpl ()
#9 0x49b3e4c in ContestService.checkActiveContest() at /Users/jona/Developer/git/flipaclip-ios/flipaclip/flipaclip/Services/ContestService.swift:394
#10 0x49b4cb4 in @objc ContestService.privacySettingsDidChange(notification:) ()
#11 (null) in __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ ()
#12 (null) in ___CFXRegistrationPost_block_invoke ()
#13 (null) in _CFXRegistrationPost ()
#14 (null) in _CFXNotificationPost ()
#15 (null) in -[NSNotificationCenter postNotificationName:object:userInfo:] ()
#16 0x4cc5d34 in closure #1 in BasePrivacyRepository.updatePrivacySettings(_:) at /Users/jona/Developer/git/flipaclip-ios/flipaclip/CorePrivacy/Sources/CorePrivacy/data/BasePrivacyRepository.swift:546
#17 (null) in thunk for @escaping @callee_guaranteed () -> () ()
#18 (null) in _dispatch_call_block_and_release ()
#19 (null) in _dispatch_client_callout ()
#20 (null) in _dispatch_main_queue_drain ()
#21 (null) in _dispatch_main_queue_callback_4CF ()
#22 (null) in __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ ()
#23 (null) in __CFRunLoopRun ()
#24 (null) in CFRunLoopRunSpecific ()
#25 (null) in GSEventRunModal ()
#26 (null) in -[UIApplication _run] ()
#27 (null) in UIApplicationMain ()
#28 0x48e2128 in main at /Users/jona/Developer/git/flipaclip-ios/flipaclip/flipaclip/Application/AppDelegate.swift:24
#29 (null) in start ()
Also experiencing this on 10.25.0.
Thread 9 name:
Thread 9 Crashed:
0 libdispatch.dylib 0x00000001b62c2538 _dispatch_sync_f + 4 (queue.c:1898)
1 FirebaseCrashlytics 0x000000010652e87c -[FIRCLSRolloutsPersistenceManager updateRolloutsStateToPersistenceWithRollouts:reportID:] + 356 (FIRCLSRolloutsPersistenceManager.m:60)
2 FirebaseCrashlytics 0x000000010653876c CrashlyticsRemoteConfigManager.updateRolloutsState(rolloutsState:reportID:) + 452 (CrashlyticsRemoteConfigManager.swift:56)
3 FirebaseCrashlytics 0x0000000106538e10 @objc CrashlyticsRemoteConfigManager.updateRolloutsState(rolloutsState:reportID:) + 84 (
We are also seeing this on 10.24
Hey folks, thank you for reporting this issue. I'm going to work on a fix to the hang.
For @jruston and @jonameson, I was wondering what type of crash are you getting from this? Is it just timing out due to the hang, or is there something else happening associated with the crash event? Just want to double check the hang is the root cause.
@jonameson, the crash from https://github.com/firebase/firebase-ios-sdk/issues/12913#issuecomment-2101251341 seems to be a different root cause. Would you be able to open another separate issue for that crash?
@samedson It would appear that what I am seeing is not a hang, though the stacktrace looks the same as the report mentioned by @jonameson. In my case at least, it is a SIGSEGV KERN_INVALID_ADDRESS crash.
We see almost an additional second in the app start, on version that changed from 10.23.0 to 10.24.0 and 10.25.0 Firebase SDK. This really affects our user experience.
We observe slow app start both in Firebase Performance "_app_start" and in Apple XCode Organizer.
Hey folks, thank you for reporting this issue. I'm going to work on a fix to the hang.
For @jruston and @jonameson, I was wondering what type of crash are you getting from this? Is it just timing out due to the hang, or is there something else happening associated with the crash event? Just want to double check the hang is the root cause.
@jonameson, the crash from #12913 (comment) seems to be a different root cause. Would you be able to open another separate issue for that crash?
To me they seemed like the same because both are waiting for the queue to clear up causing a hang crash. Just different times when it happens. It might be at app start or a few seconds after the app starts. I can create a new issue... if you want.
@jonameson we're going to ship https://github.com/firebase/firebase-ios-sdk/pull/12977 in the next release that will solve the original issue. Maybe after you try out that change, you can see if the other issue you are reporting also goes away. If it doesn't, I'd recommend making a new issue.
The only reason I didn't think it's the same issue is I don't see anything related to Rollouts in the stacktrace, but they may still be related like you said.
Do we happen to have a TL for the next release, it seems Firebase does not work to well with ios 17.4 regarding remoteConfig hanging and AppCheck issues @samedson
@samedson I am still seeing crashes in 10.27.0 similar to this. It is possible that the number of crashes is reduced, but I can't say for sure because I have only had 10.27.0 live in my apps for a few days. The crashes in 10.27.0 look like this:
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000054
Thread 6 name:
Thread 6 Crashed:
0 libdispatch.dylib 0x00000001ae2ef7d8 dispatch_async + 192 (queue.c:940)
1 FirebaseCrashlytics 0x0000000107cd287c -[FIRCLSRolloutsPersistenceManager updateRolloutsStateToPersistenceWithRollouts:reportID:] + 356 (FIRCLSRolloutsPersistenceManager.m:60)
2 FirebaseCrashlytics 0x0000000107cdc840 CrashlyticsRemoteConfigManager.updateRolloutsState(rolloutsState:reportID:) + 452 (CrashlyticsRemoteConfigManager.swift:56)
3 FirebaseCrashlytics 0x0000000107cdcee4 @objc CrashlyticsRemoteConfigManager.updateRolloutsState(rolloutsState:reportID:) + 84 (
Hey folks,
Sorry about the trouble, I was going for a long vacation, will take a look for the issue.
Hey all, it looks like the fix for this issue has already been included in Firebase 10.28.0. I'll now be closing this ticket but let us know if the issue persists.
Description
We released the app with 10.24.0 and noticed a large number of crash reports caused by FirebaseApp.configure causing a hang. Not sure how to reproduce. It is random on device that this happens.
Reproducing the issue
No response
Firebase SDK Version
10.25.0
Xcode Version
15.2
Installation Method
Swift Package Manager
Firebase Product(s)
AB Testing, Analytics, Authentication, Crashlytics, DynamicLinks, Firestore, Functions, In-App Messaging, Performance, Remote Config, Storage
Targeted Platforms
iOS
Relevant Log Output
If using Swift Package Manager, the project's Package.resolved
Expand
Package.resolved
snippet```json { "pins" : [ { "identity" : "abseil-cpp-binary", "kind" : "remoteSourceControl", "location" : "https://github.com/google/abseil-cpp-binary.git", "state" : { "revision" : "748c7837511d0e6a507737353af268484e1745e2", "version" : "1.2024011601.1" } }, { "identity" : "alamofire", "kind" : "remoteSourceControl", "location" : "https://github.com/Alamofire/Alamofire.git", "state" : { "revision" : "723fa5a6c65812aec4a0d7cc432ee198883b6e00", "version" : "5.9.0" } }, { "identity" : "app-check", "kind" : "remoteSourceControl", "location" : "https://github.com/google/app-check.git", "state" : { "revision" : "7d2688de038d5484866d835acb47b379722d610e", "version" : "10.19.0" } }, { "identity" : "appauth-ios", "kind" : "remoteSourceControl", "location" : "https://github.com/openid/AppAuth-iOS.git", "state" : { "revision" : "71cde449f13d453227e687458144bde372d30fc7", "version" : "1.6.2" } }, { "identity" : "clevertap-ios-sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/CleverTap/clevertap-ios-sdk", "state" : { "revision" : "4326cc44d928b062a04ec770e20c318cc2699076", "version" : "6.2.1" } }, { "identity" : "facebook-ios-sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/facebook/facebook-ios-sdk", "state" : { "revision" : "3fe31c168903759de1c5752d12856c5c437c6862", "version" : "16.3.1" } }, { "identity" : "factory", "kind" : "remoteSourceControl", "location" : "https://github.com/hmlongco/Factory", "state" : { "revision" : "587995f7d5cc667951d635fbf6b4252324ba0439", "version" : "2.3.2" } }, { "identity" : "firebase-ios-sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/firebase-ios-sdk.git", "state" : { "revision" : "97940381e57703c07f31a8058d8f39ec53b7c272", "version" : "10.25.0" } }, { "identity" : "flanimatedimage", "kind" : "remoteSourceControl", "location" : "https://github.com/Flipboard/FLAnimatedImage", "state" : { "revision" : "d4f07b6f164d53c1212c3e54d6460738b1981e9f", "version" : "1.0.17" } }, { "identity" : "fmdb", "kind" : "remoteSourceControl", "location" : "https://github.com/ccgus/fmdb", "state" : { "revision" : "61e51fde7f7aab6554f30ab061cc588b28a97d04", "version" : "2.7.7" } }, { "identity" : "google-api-objectivec-client-for-rest", "kind" : "remoteSourceControl", "location" : "https://github.com/google/google-api-objectivec-client-for-rest", "state" : { "revision" : "260501c0425e95e038c65436436161266bf548e9", "version" : "3.0.0" } }, { "identity" : "googleappmeasurement", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleAppMeasurement.git", "state" : { "revision" : "16244d177c4e989f87b25e9db1012b382cfedc55", "version" : "10.25.0" } }, { "identity" : "googledatatransport", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleDataTransport.git", "state" : { "revision" : "a732a4b47f59e4f725a2ea10f0c77e93a7131117", "version" : "9.3.0" } }, { "identity" : "googlesignin-ios", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleSignIn-iOS", "state" : { "revision" : "9c9b36af86a4dd3da16048a36cf37351e63ccfe1", "version" : "6.2.4" } }, { "identity" : "googleutilities", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GoogleUtilities.git", "state" : { "revision" : "bc27fad73504f3d4af235de451f02ee22586ebd3", "version" : "7.12.1" } }, { "identity" : "grpc-binary", "kind" : "remoteSourceControl", "location" : "https://github.com/google/grpc-binary.git", "state" : { "revision" : "e9fad491d0673bdda7063a0341fb6b47a30c5359", "version" : "1.62.2" } }, { "identity" : "gtm-session-fetcher", "kind" : "remoteSourceControl", "location" : "https://github.com/google/gtm-session-fetcher.git", "state" : { "revision" : "5ccda3981422a84186387dbb763ba739178b529c", "version" : "2.3.0" } }, { "identity" : "gtmappauth", "kind" : "remoteSourceControl", "location" : "https://github.com/google/GTMAppAuth.git", "state" : { "revision" : "6dee0cde8a1b223737a5159e55e6b4ec16bbbdd9", "version" : "1.3.1" } }, { "identity" : "interop-ios-for-google-sdks", "kind" : "remoteSourceControl", "location" : "https://github.com/google/interop-ios-for-google-sdks.git", "state" : { "revision" : "2d12673670417654f08f5f90fdd62926dc3a2648", "version" : "100.0.0" } }, { "identity" : "ios_sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/adjust/ios_sdk", "state" : { "revision" : "2fd82b11e329e9c8357eaa77e28799ca2d629ab5", "version" : "4.38.2" } }, { "identity" : "iqkeyboardmanager", "kind" : "remoteSourceControl", "location" : "https://github.com/hackiftekhar/IQKeyboardManager", "state" : { "revision" : "aa656e1f0d95f0154622f453599318602848be3b", "version" : "7.0.1" } }, { "identity" : "leanplum-ios-sdk", "kind" : "remoteSourceControl", "location" : "https://github.com/Leanplum/Leanplum-iOS-SDK", "state" : { "revision" : "ef892ed5c50ebad476bf600ce4c06ec557c4782d", "version" : "6.4.2" } }, { "identity" : "leveldb", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/leveldb.git", "state" : { "revision" : "0706abcc6b0bd9cedfbb015ba840e4a780b5159b", "version" : "1.22.2" } }, { "identity" : "lottie-spm", "kind" : "remoteSourceControl", "location" : "https://github.com/airbnb/lottie-spm.git", "state" : { "revision" : "3bd43e12d6fb54654366a61f7cfaca787318b8ce", "version" : "4.4.1" } }, { "identity" : "mbprogresshud", "kind" : "remoteSourceControl", "location" : "https://github.com/jdg/MBProgressHUD.git", "state" : { "revision" : "bca42b801100b2b3a4eda0ba8dd33d858c780b0d", "version" : "1.2.0" } }, { "identity" : "nanopb", "kind" : "remoteSourceControl", "location" : "https://github.com/firebase/nanopb.git", "state" : { "revision" : "819d0a2173aff699fb8c364b6fb906f7cdb1a692", "version" : "2.30909.0" } }, { "identity" : "observable", "kind" : "remoteSourceControl", "location" : "https://github.com/roberthein/Observable", "state" : { "revision" : "c789e973131a4c2aba2a575345a91bcc06eef38d", "version" : "2.2.0" } }, { "identity" : "otpublishersheadlesssdk", "kind" : "remoteSourceControl", "location" : "https://github.com/Zentrust/OTPublishersHeadlessSDK", "state" : { "revision" : "98957a36b9afb5371bb8b9151d57943557d9d373", "version" : "202404.1.0" } }, { "identity" : "promises", "kind" : "remoteSourceControl", "location" : "https://github.com/google/promises.git", "state" : { "revision" : "e70e889c0196c76d22759eb50d6a0270ca9f1d9e", "version" : "2.3.1" } }, { "identity" : "purchasely-ios", "kind" : "remoteSourceControl", "location" : "https://github.com/Purchasely/Purchasely-iOS", "state" : { "revision" : "f5c72bca19158f46b148412efa83c0ae449a43fd", "version" : "4.3.5" } }, { "identity" : "rxdatasources", "kind" : "remoteSourceControl", "location" : "https://github.com/RxSwiftCommunity/RxDataSources", "state" : { "revision" : "90c29b48b628479097fe775ed1966d75ac374518", "version" : "5.0.2" } }, { "identity" : "rxswift", "kind" : "remoteSourceControl", "location" : "https://github.com/ReactiveX/RxSwift", "state" : { "revision" : "9dcaa4b333db437b0fbfaf453fad29069044a8b4", "version" : "6.6.0" } }, { "identity" : "sdwebimage", "kind" : "remoteSourceControl", "location" : "https://github.com/SDWebImage/SDWebImage.git", "state" : { "revision" : "1f06ef5007b6a580b3873ed2adee19e05d3b215a", "version" : "5.18.3" } }, { "identity" : "swift-protobuf", "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-protobuf.git", "state" : { "revision" : "3c54ab05249f59f2c6641dd2920b8358ea9ed127", "version" : "1.24.0" } }, { "identity" : "swift-snapshot-testing", "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-snapshot-testing", "state" : { "revision" : "5c3d2141fb0e55da411577012c917962b6b3517e", "version" : "1.8.0" } } ], "version" : 2 } ```
If using CocoaPods, the project's Podfile.lock
Expand
Podfile.lock
snippet```yml Replace this line with the contents of your Podfile.lock! ```