firebase-ios-sdk: Program Crash after Dynatrace SDK installed

Environment Xcode version: 12 Firebase SDK version: 7.5.0 Installation method: CocoaPods

The problem App crash with dynatrace and firebase installed Crash free rate dropped from 2-8% from our apps, some weeks higher and some weeks are lowers, the issue happens randomly

We include Dynatrace SDK from our app from 4.10.7 version, with suggested from Dynatrace, we had upgrade their SDK to latest one 8.217 in 4.12.0 and problem still resist, after that, we remove the dynatrace from our app and the crash gone.

However, with investigate by dynatrace team, they found the issue is triggered by Firebase SDK, https://one.dynatrace.com/hc/en-us/requests/6344

Here are the dump from firebase for your reference. image

Our program did have crash with -Firebase SDK 7.5.0 -Dynatrace SDK 8.217

Steps to reproduce: no step to reproduce, it happens randomly

Crashed: com.apple.root.background-qos
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x00000002c88dd3a0
objc_release

Crashed: com.apple.root.background-qos
0  libobjc.A.dylib                0x19d536dd0 objc_release + 16
1  libobjc.A.dylib                0x19d53857c AutoreleasePoolPage::releaseUntil(objc_object**) + 204
2  libobjc.A.dylib                0x19d53841c objc_autoreleasePoolPop + 212
3  libdispatch.dylib              0x18865f7f8 _dispatch_last_resort_autorelease_pool_pop + 44
4  libdispatch.dylib              0x1886712c0 _dispatch_root_queue_drain + 1124
5  libdispatch.dylib              0x1886717d8 _dispatch_worker_thread2 + 112
6  libsystem_pthread.dylib        0x1d45d6768 _pthread_wqthread + 216
7  libsystem_pthread.dylib        0x1d45dd74c start_wqthread + 8

TagManagerContainerQueue
semaphore_timedwait_trap
TagManagerContainerQueue
0  libsystem_kernel.dylib         0x1b6b64550 semaphore_timedwait_trap + 8
1  libdispatch.dylib              0x18865fe00 _dispatch_sema4_timedwait + 64
2  libdispatch.dylib              0x188660410 _dispatch_semaphore_wait_slow + 76
3  Watsons SG App Store           0x10583ef3c -[TAGJSExportedInstructions userPropertyNamed:defaultValue:] + 65864
4  CoreFoundation                 0x188a77774 __invoking___ + 148
5  CoreFoundation                 0x18894ad44 -[NSInvocation invoke] + 380
6  JavaScriptCore                 0x192147620 JSC::ObjCCallbackFunctionImpl::call(JSContext*, OpaqueJSValue*, unsigned long, OpaqueJSValue const* const*, OpaqueJSValue const**) + 412
7  JavaScriptCore                 0x19214701c JSC::objCCallbackFunctionCallAsFunction(OpaqueJSContext const*, OpaqueJSValue*, OpaqueJSValue*, unsigned long, OpaqueJSValue const* const*, OpaqueJSValue const**) + 228
8  JavaScriptCore                 0x19214a3fc long long JSC::APICallbackFunction::callImpl<JSC::ObjCCallbackFunction>(JSC::JSGlobalObject*, JSC::CallFrame*) + 420
9  JavaScriptCore                 0x1920c47dc llint_function_for_construct_arity_checkTagGateAfter + 145756
10 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
11 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
12 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
13 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
14 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
15 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
16 JavaScriptCore                 0x1920c1844 llint_function_for_construct_arity_checkTagGateAfter + 133572
17 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
18 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
19 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
20 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
21 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
22 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
23 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
24 JavaScriptCore                 0x1920c1844 llint_function_for_construct_arity_checkTagGateAfter + 133572
25 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
26 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
27 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
28 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
29 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
30 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
31 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
32 JavaScriptCore                 0x1920c30a0 llint_function_for_construct_arity_checkTagGateAfter + 139808
33 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
34 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
35 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
36 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
37 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
38 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
39 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
40 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
41 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
42 JavaScriptCore                 0x1920c177c llint_function_for_construct_arity_checkTagGateAfter + 133372
43 JavaScriptCore                 0x1920c1844 llint_function_for_construct_arity_checkTagGateAfter + 133572
44 JavaScriptCore                 0x1920c1844 llint_function_for_construct_arity_checkTagGateAfter + 133572
45 JavaScriptCore                 0x19209ab58 vmEntryToJavaScriptTrampoline + 8
46 JavaScriptCore                 0x19272b400 JSC::Interpreter::executeCall(JSC::JSGlobalObject*, JSC::JSObject*, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 488
47 JavaScriptCore                 0x19296c0a4 JSC::profiledCall(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::JSValue, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 164
48 JavaScriptCore                 0x19216595c JSObjectCallAsFunction + 656
49 JavaScriptCore                 0x191e75ad0 -[JSValue invokeMethod:withArguments:] + 592
50 Watsons SG App Store           0x105840df8 -[TAGRuntime evaluateEvent:] + 73732
51 Watsons SG App Store           0x105837e84 __42-[TAGContainer handleLoadOfPendingEvents:]_block_invoke + 37008
52 libdispatch.dylib              0x18865da84 _dispatch_call_block_and_release + 32
53 libdispatch.dylib              0x18865f81c _dispatch_client_callout + 20
54 libdispatch.dylib              0x188667004 _dispatch_lane_serial_drain + 620
55 libdispatch.dylib              0x188667c00 _dispatch_lane_invoke + 404
56 libdispatch.dylib              0x1886724bc _dispatch_workloop_worker_thread + 764
57 libsystem_pthread.dylib        0x1d45d67a4 _pthread_wqthread + 276
58 libsystem_pthread.dylib        0x1d45dd74c start_wqthread + 8


com.google.fira.worker
__CFStringAppendFormatCore
com.google.fira.worker
0  CoreFoundation                 0x188a129e8 __CFStringAppendFormatCore + 13804
1  CoreFoundation                 0x188a259fc _CFStringAppendFormatAndArgumentsAux2 + 68
2  Foundation                     0x189cf67e0 -[NSPlaceholderMutableString initWithFormat:locale:arguments:] + 96
3  Foundation                     0x189cdb780 -[NSString initWithFormat:] + 60
4  Watsons SG App Store           0x10547a01c -[APMSqliteStore rowCountForTableWithName:columnName:columnValue:error:] + 4350238748
5  Watsons SG App Store           0x1054194d8 -[APMDatabase updateDataType:inTableWithName:columnName:columnValue:error:] + 4349842648
6  Watsons SG App Store           0x10540e3d8 -[APMDatabase updateDailyCounts:error:] + 4349797336
7  Watsons SG App Store           0x10543d850 __49-[APMMeasurement(Event) writeEventOnWorkerQueue:]_block_invoke + 4349990992
8  Watsons SG App Store           0x10547b8f4 -[APMSqliteStore performTransactionWithError:block:] + 4350245108
9  Watsons SG App Store           0x10540d46c -[APMDatabase performTransaction:] + 4349793388
10 Watsons SG App Store           0x10543d640 -[APMMeasurement(Event) writeEventOnWorkerQueue:] + 4349990464
11 Watsons SG App Store           0x10543d19c -[APMMeasurement(Event) handleEventOnWorkerQueue:] + 4349989276
12 Watsons SG App Store           0x10544b588 -[APMMeasurement logEventOnWorkerQueue:notifyEventListeners:] + 4350047624
13 Watsons SG App Store           0x10544b538 -[APMMeasurement logEventOnWorkerQueueWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:] + 4350047544
14 Watsons SG App Store           0x10544b268 __151-[APMMeasurement logEventWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:]_block_invoke + 4350046824
15 Watsons SG App Store           0x1054704b0 __51-[APMScheduler scheduleOnWorkerQueueBlockID:block:]_block_invoke + 4350198960
16 libdispatch.dylib              0x18865da84 _dispatch_call_block_and_release + 32
17 libdispatch.dylib              0x18865f81c _dispatch_client_callout + 20
18 libdispatch.dylib              0x188667004 _dispatch_lane_serial_drain + 620
19 libdispatch.dylib              0x188667c00 _dispatch_lane_invoke + 404
20 libdispatch.dylib              0x1886724bc _dispatch_workloop_worker_thread + 764
21 libsystem_pthread.dylib        0x1d45d67a4 _pthread_wqthread + 276
22 libsystem_pthread.dylib        0x1d45dd74c start_wqthread + 8

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 36 (7 by maintainers)

Most upvoted comments

This looks similar to #6039. Dynatrace may be using a version of sqlite3 that is incompatible with the system version.