Closed jlaws closed 5 years ago
Are you able to reproduce with fewer Firebase pods in use to narrow down the scope? In particular, I'm wondering if this crash is dependent upon FirebasePerformance like #486.
I haven't seen the issue again today, so it may be dependent on receiving corrupt or incomplete data from the server. If/when it starts happening again I will remove Firebase PODs to try and isolate it. Thanks Paul!
@jlaws also, if there are any non-Firebase pods in use that would be helpful too!
Here is a list of all the pods I use:
AKNumericFormatter (0.0.2) ASValueTrackingSlider (0.12.1) AnimatedCollectionViewLayout (0.3.0) BFPaperCheckbox (2.1.0) BLKFlexibleHeightBar (1.0.2) Bolts (1.8.4) Cache (4.1.2) Charts (3.0.4) Crashlytics (3.9.3) DKImagePickerController (3.8.1) DZNSegmentedControl (1.3.3) DateTools (2.0.0) FBSDKCoreKit (4.28.0) FBSDKLoginKit (4.28.0) FBSDKShareKit (4.28.0) Fabric (1.7.2) FacebookCore (0.3.0) FacebookLogin (0.3.0) FacebookShare (0.3.0) Firebase (4.7.0) FirebaseABTesting (1.0.0) FirebaseAnalytics (4.0.5) FirebaseAuth (4.4.0) FirebaseCore (4.0.12) FirebaseDatabase (4.1.2) FirebaseDynamicLinks (2.3.0) FirebaseInstanceID (2.0.7) FirebaseMessaging (2.0.7) FirebasePerformance (1.0.7) FirebaseRemoteConfig (2.1.0) FirebaseStorage (2.1.0) FirebaseSwizzlingUtilities (1.0.0) FontAwesome.swift (1.3.2) GTMOAuth2 (1.1.5) GTMSessionFetcher (1.1.12) Gifu (2.0.0) GoogleSignIn (4.1.1) GoogleToolboxForMac (2.1.3) Hue (3.0.1) IGListKit (3.1.1) IQKeyboardManagerSwift (5.0.6) Imaginary (3.0.2) Instructions (1.1.0) Ji (2.1.0) KeychainAccess (3.1.0) Lightbox (2.1.1) MBProgressHUD (0.9.2) MDFInternationalization (1.0.3) MDFTextAccessibility (1.2.0) MaterialComponents (40.1.1) Mixpanel-swift (2.2.2) NextGrowingTextView (1.2.2) OAuthSwift (1.2.0) PPBadgeViewSwift (2.0.0) PromiseKit (4.5.0) Protobuf (3.5.0) RMActionController (1.3.1) RMDateSelectionViewController (2.3.1) RMPickerViewController (2.3.1) ReadabilityKit (0.7.1) Realm (3.0.2) RealmSwift (3.0.2) RxSwift (4.0.0) SCLAlertView (0.7.0) Siren (3.1.7) SkyFloatingLabelTextField (3.4.0) SlackTextViewController (1.9.6) StringScore (0.0.1) SwiftyStoreKit (0.11.0) Timepiece (1.3.1) TwitterCore (3.0.3) TwitterKit (3.2.2) leveldb-library (1.20) nanopb (0.3.8)
Also, its happening again, trying to isolate it to a pod now
It appears FirebasePerformance is the problematic pod. The problem disappears when FirebasePerformance is no longer part of my project. Luckily I don't really use any of the performance tools (yet) so I will leave it off for now.
@jlaws Thanks for narrowing it down!
The issue may be an duplicate of #486 which is being fixed in the next FirebasePerformance release. cc: @mikehaney24
We're not sure this is a duplicate issue (though we hope it's fixed next release). So, we're tracking this internally with b/70392677.
@jlaws Do you still see this with FirebasePerformance 1.1.0?
Re-enabling the pod, will try it out for our next release and let you know
Still causing the crash, removed the pod again
Thanks @jlaws! We'll investigate.
In my case, it's happening when I use along with AppDynamics. Doing more investigation. I'm using FirebaseAnalytics (4.0.3)
I'm showing a crash on start involving using AppDynamics with FirebaseAnalytics, stack trace looks like this:
#0 0x000000010d423642 in _object_set_associative_reference ()
#1 0x000000010c20e872 in -[UIApplication(instrumentation) ADEumInstrSetDelegate:] ()
#2 0x000000010c213341 in +[FIRAAppDelegateProxy createSubclassWithObject:] ()
#3 0x000000010c212bdb in +[FIRAAppDelegateProxy proxyOriginalDelegate:] ()
#4 0x000000010c2582ed in __38+[FIRAnalytics createAppDelegateProxy]_block_invoke ()
Do you see this anywhere in your app?
Yes, just disable Firebase method swizzling option, that will solve the problem.
Which option, specifically?
https://firebase.google.com/docs/cloud-messaging/ios/client
Developers who prefer not to use swizzling can disable it by adding the flag FirebaseAppDelegateProxyEnabled in the app’s Info.plist file and setting it to NO (boolean value).
@mikehaney24 : The crash seems to be a different cause from FIRMutableDictionary, right? It looks like AppDynamics SDK swizzles the UIApplication class setDelegate: and causes the conflict.
Yeah, I suspect an AppDelegate swizzling conflict, and don't think it's related to FIRMutableDictionary. I have a test project that repros the issue, we can talk about it on Monday if you want!
On Sat, Feb 24, 2018 at 3:40 PM Alex Do notifications@github.com wrote:
@mikehaney24 https://github.com/mikehaney24 : The crash seems to be a different cause from FIRMutableDictionary, right? It looks like AppDynamics SDK swizzles the UIApplication class setDelegate: and causes the conflict.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/firebase/firebase-ios-sdk/issues/529#issuecomment-368269277, or mute the thread https://github.com/notifications/unsubscribe-auth/ABCFgmxxo46jYxOidVYtvIvb6O68whACks5tYJ3WgaJpZM4Q1wJz .
We have created a bug internally. If it's not related to FIRMutableDictionary, we shouldn't discuss it here. We will discuss about the swizzling offline. I do think it's AppDynamics problem, not ours though if they swizzle setDelegate of UIApplication.
It looks like this crash may be rooted in AppDynamic's swizzling of setDelegate:, and I don't think we'll be able to do much about this. Does the original crash issue you were having go away if you remove AppDynamics? If so, it just might be the case that Google Analytics for Firebase and AppDynamics are incompatible at this time.
I encountered the same issue, but after a couple of rebuilds, it "went away".
- Firebase/AdMob (5.0.1):
- Firebase/Core
- Google-Mobile-Ads-SDK (= 7.30.0)
- Firebase/Core (5.0.1):
- Firebase/CoreOnly
- FirebaseAnalytics (= 5.0.0)
- Firebase/CoreOnly (5.0.1):
- FirebaseCore (= 5.0.1)
- Firebase/Performance (5.0.1):
- Firebase/Core
- FirebasePerformance (= 2.0.0)
- FirebaseAnalytics (5.0.0):
- FirebaseCore (~> 5.0)
- FirebaseInstanceID (~> 3.0)
- "GoogleToolboxForMac/NSData+zlib (~> 2.1)"
- nanopb (~> 0.3)
- FirebaseAuth (5.0.0):
- FirebaseCore (~> 5.0)
- GTMSessionFetcher/Core (~> 1.1)
- FirebaseCore (5.0.1):
- "GoogleToolboxForMac/NSData+zlib (~> 2.1)"
- FirebaseFirestore (0.12.1):
- FirebaseCore (~> 5.0)
- FirebaseFirestore/abseil-cpp (= 0.12.1)
- gRPC-ProtoRPC (~> 1.0)
- leveldb-library (~> 1.18)
- Protobuf (~> 3.1)
- FirebaseFirestore/abseil-cpp (0.12.1):
- FirebaseCore (~> 5.0)
- gRPC-ProtoRPC (~> 1.0)
- leveldb-library (~> 1.18)
- Protobuf (~> 3.1)
- FirebaseInstanceID (3.0.0):
- FirebaseCore (~> 5.0)
- FirebaseMessaging (3.0.0):
- FirebaseCore (~> 5.0)
- FirebaseInstanceID (~> 3.0)
- GoogleToolboxForMac/Logger (~> 2.1)
- Protobuf (~> 3.1)
- FirebasePerformance (2.0.0):
- FirebaseAnalytics (~> 5.0)
- FirebaseInstanceID (~> 3.0)
- FirebaseSwizzlingUtilities/ISASwizzling (~> 2.0)
- FirebaseSwizzlingUtilities/MethodSwizzling (~> 2.0)
- GoogleToolboxForMac/Logger (~> 2.1)
- "GoogleToolboxForMac/NSData+zlib (~> 2.1)"
- GTMSessionFetcher/Core (~> 1.1)
- Protobuf (~> 3.5)
- FirebaseSwizzlingUtilities/ISASwizzling (2.0.0)
- FirebaseSwizzlingUtilities/MethodSwizzling (2.0.0):
- FirebaseCore (~> 5.0)
Closing due to lack of recent activity. Please reopen if still an issue.
@baolocdo @mikehaney24 I've seen this crash twice today in the Analytics quickstart that I just left running in the background.
The last thing in the log is
[Firebase/Performance][I-PRF100009] Recording network trace: https://app-measurement.com/a
Does it happen with Analytics + Perf or Analytics only? I suspect that there is some interaction with Perf that might cause the issue. I'll try to reproduce once I have some bandwidth. Thanks
I only see it with Analytics + Perf.
note: the original stack trace in this issue is nearly identical to this stack trace.
Is this still an issue?
Closing for staleness.
Describe the environment
Xcode version: 9.2 Firebase (4.7.0)
Issue is in code from this POD: FirebaseCore (4.0.12)
Other Firebase PODs installed: FirebaseABTesting (1.0.0) FirebaseAnalytics (4.0.5) FirebaseAuth (4.4.0) FirebaseDatabase (4.1.2) FirebaseDynamicLinks (2.3.0) FirebaseInstanceID (2.0.7) FirebaseMessaging (2.0.7) FirebasePerformance (1.0.7) FirebaseRemoteConfig (2.1.0) FirebaseStorage (2.1.0) FirebaseSwizzlingUtilities (1.0.0)
Describe the problem
The app crashes shortly after launch on a cold start. It happens every 1/5 cold starts. No user interaction, just starting the app and seeing what happens.
Here is the crashing stack trace: