pendo-io / pendo-mobile-sdk

Pendo captures product usage data, gathers user feedback, and lets you communicate in-app to onboard, educate, and guide users to value
https://www.pendo.io
Other
57 stars 2 forks source link

[Android]: [base.apk] sdk.pendo.io.f9.c.a SIGSEGV #47

Closed KamilSucharski closed 1 year ago

KamilSucharski commented 1 year ago

We received this hard to trace crash from the library. It triggered most likely on setup, startSession, or something that Pendo does automatically.

Version: Android 2.20.0.5103

Stacktrace:

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 29806 >>> com.censored.app <<<

backtrace:
  #00  pc 0x0000000000398d30  /apex/com.android.art/lib64/libart.so (art::ArtMethod::PrettyMethod(bool)+76)
  #01  pc 0x0000000000396378  /apex/com.android.art/lib64/libart.so (void art::StackVisitor::WalkStack<(art::StackVisitor::CountTransitions)0>(bool)+5464)
  #02  pc 0x00000000004e321c  /apex/com.android.art/lib64/libart.so (art::Thread::DumpJavaStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, bool) const+368)
  #03  pc 0x0000000000722390  /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+208)
  #04  pc 0x0000000000374c74  /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+448)
  #05  pc 0x00000000007209a0  /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool)+280)
  #06  pc 0x00000000006f8fd4  /apex/com.android.art/lib64/libart.so (art::AbortState::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+212)
  #07  pc 0x00000000006f3794  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+908)
  #08  pc 0x0000000000016ea8  /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+80)
  #09  pc 0x0000000000006f60  /system/lib64/liblog.so (__android_log_assert+312)
  #10  pc 0x00000000004ae1d4  /system/lib64/libhwui.so (android::android_view_RenderNode_hasIdentityMatrix(long)+124)
  #11  pc 0x0000000000e015d8  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+312)
  #12  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #13  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #14  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #15  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #16  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #17  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #18  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #19  pc 0x0000000000e01cb0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+2064)
  #20  pc 0x0000000000e01474  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.ViewGroup.getChildVisibleRect+68)
  #21  pc 0x0000000000d4fe08  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.View.getGlobalVisibleRect+216)
  #22  pc 0x0000000000d4fd08  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.view.View.getGlobalVisibleRect+56)
  #23  pc 0x0000000002051dec  /memfd:jit-cache (sdk.pendo.io.g9.p0.a+332)
  #24  pc 0x0000000000209398  /apex/com.android.art/lib64/libart.so (nterp_helper+152)
  #25  pc 0x0000000000071cb2  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.c.a+2)
  #26  pc 0x000000000203d0d0  /memfd:jit-cache (sdk.pendo.io.f9.c.a+144)
  #27  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #28  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #29  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #30  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #31  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #32  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #33  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #34  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #35  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #36  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #37  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #38  pc 0x000000000203d4ac  /memfd:jit-cache (sdk.pendo.io.f9.c.a+1132)
  #39  pc 0x000000000020a9d8  /apex/com.android.art/lib64/libart.so (nterp_helper+5848)
  #40  pc 0x0000000000072486  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.c.a+54)
  #41  pc 0x000000000020a958  /apex/com.android.art/lib64/libart.so (nterp_helper+5720)
  #42  pc 0x0000000000072406  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.c.a+142)
  #43  pc 0x000000000020a958  /apex/com.android.art/lib64/libart.so (nterp_helper+5720)
  #44  pc 0x0000000000071e64  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.c.a+76)
  #45  pc 0x000000000020a958  /apex/com.android.art/lib64/libart.so (nterp_helper+5720)
  #46  pc 0x0000000000072efa  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.a+66)
  #47  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #48  pc 0x00000000000739c4  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.q+28)
  #49  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #50  pc 0x00000000000735c8  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.a+380)
  #51  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #52  pc 0x0000000000073798  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.b+188)
  #53  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #54  pc 0x0000000000073434  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.a+4)
  #55  pc 0x0000000000209334  /apex/com.android.art/lib64/libart.so (nterp_helper+52)
  #56  pc 0x0000000000073024  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d.$r8$lambda$B99BtyCgZAgmVJ1C2Hz9goQZXJM)
  #57  pc 0x0000000000209334  /apex/com.android.art/lib64/libart.so (nterp_helper+52)
  #58  pc 0x0000000000072690  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.f9.d$$ExternalSyntheticLambda5.accept)
  #59  pc 0x000000000020b074  /apex/com.android.art/lib64/libart.so (nterp_helper+7540)
  #60  pc 0x0000000000543d8c  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.d9.c.a+4)
  #61  pc 0x000000000020b120  /apex/com.android.art/lib64/libart.so (nterp_helper+7712)
  #62  pc 0x0000000000164258  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.b0$a.a+4)
  #63  pc 0x000000000020b120  /apex/com.android.art/lib64/libart.so (nterp_helper+7712)
  #64  pc 0x0000000000166dae  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.m$a.a+46)
  #65  pc 0x000000000020b120  /apex/com.android.art/lib64/libart.so (nterp_helper+7712)
  #66  pc 0x000000000016750c  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.n$b.a+32)
  #67  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #68  pc 0x0000000000167018  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.n$a.a+12)
  #69  pc 0x000000000020b120  /apex/com.android.art/lib64/libart.so (nterp_helper+7712)
  #70  pc 0x00000000000857ee  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.g6.b.a+122)
  #71  pc 0x000000000020b120  /apex/com.android.art/lib64/libart.so (nterp_helper+7712)
  #72  pc 0x000000000016509a  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.d0$c.f+18)
  #73  pc 0x000000000020a254  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #74  pc 0x0000000000164f4c  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.z5.d0$b.run)
  #75  pc 0x000000000020b074  /apex/com.android.art/lib64/libart.so (nterp_helper+7540)
  #76  pc 0x000000000052a3d6  /data/app/~~2WL-jb78k7XfLf2dIv0eJg==/com.censored.app-qXpTD-LlZv7Ht-UR2hCaaw==/base.apk (sdk.pendo.io.b6.k.run+18)
  #77  pc 0x000000000046ae5c  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.util.concurrent.Executors$RunnableAdapter.call+76)
  #78  pc 0x0000000000518f30  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.util.concurrent.FutureTask.runAndReset+192)
  #79  pc 0x00000000005d2d48  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run+168)
  #80  pc 0x0000000000589bc0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor.runWorker+976)
  #81  pc 0x0000000000586da8  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor$Worker.run+72)
  #82  pc 0x00000000003ffaa0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (java.lang.Thread.run+80)
  #83  pc 0x000000000045836c  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+556)
  #84  pc 0x00000000004841e4  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+156)
  #85  pc 0x0000000000483eb0  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+400)
  #86  pc 0x00000000005cc668  /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1680)
  #87  pc 0x00000000000bb728  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+208)
  #88  pc 0x000000000005501c  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+68)
DavidPendo commented 1 year ago

Hi @KamilSucharski, thanks for reaching out! We are trying to understand this issue better, and for this, can you provide us with more details like:

KamilSucharski commented 1 year ago

@DavidPendo

  1. It's a native Android app.
  2. This stacktrace is from a user with Samsung x1q (Galaxy S20 5G), Android 13 (SDK 33). I believe I also encountered this issue in the past on Google Pixel 6A with Android 14 Beta.
  3. We cannot reproduce it, and have no idea what causes it, but once it triggers it will crash everytime until the app is reinstalled.
  4. As I said it's most likely setup, startSession, or something that Pendo does automatically (maybe tracking first screen view?).
shlomipendo commented 1 year ago

Hey @KamilSucharski Thanks for the information.

It's unclear what the exact crash is according the thread backtrace, but I recommend updating the SDK to the latest version, as it contains the latest improvements and stability fixes. Can you please mention what your subscription name is? It might help us tracking down the issue in our logs.

noambartouv commented 1 year ago

@KamilSucharski We've been digging into the crash, do you perhaps have a full crash report / additional details to share that could help us diagnose the crash? I see SIGSEGV in the issue title but not in the report+stacktrace you provided in the description.

KamilSucharski commented 1 year ago

@noambartouv I have nothing else to give. Google Play Store mentioned SIGSEGV in the crash title: obraz and then below was the stacktrace i pasted.

Since then we have updated Pendo to 2.21.3.5432. No one else got this crash since - not sure if it's related or a coincidence.

noambartouv commented 1 year ago

@KamilSucharski We've identified the flow in which the crash occurred, however, it seems that this is a low-level exception that is not caught by our exception handling (try-catch block). We aren't aware of a similar crash from any other customer and haven't managed to reproduce it. As we don't have any additional leads and you have not experienced the issue after updating to SDK 2.21.3, we are closing the issue. Please notify us if you experience it again, and we shall resume the investigation