Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android Crash: SIGSEGV 0x0000000000000000 - libc.so | Crashed: null pointer dereference #4075

Open
vinayak-bm-ai opened this issue Sep 9, 2024 · 7 comments

Comments

@vinayak-bm-ai
Copy link

Description

Crashed: null pointer dereference #1
SIGSEGV 0x0000000000000000

libc.so
(Missing BuildId d1a98b526f2f94260a53c3055979a4f6)

We've observed that this crash spiked on 7th Sep. We've seen that [sentry-java](https://github.com/getsentry/sentry-java/releases/tag/7.0.0-rc.2 here) provided the fix for these issues. but we're still seeing this error with the sentry SDK versions mentioned below.

React Native Version: 0.71.13 with Hermes enabled

 "@sentry/react": "^7.75.0",
 "@sentry/react-native": "^5.22.3",
 "@sentry/tracing": "^7.75.0",
 "@sentry/types": "^7.75.0",
 "@sentry/utils": "^7.75.0",

After investigating the statistics in Firebase Crashlytics, I found

  1. It is happening mostly on Android 12+ devices.
  2. Could not relate this to the memory shortage, devices had free memory (Adding screenshots for the same).

Steps to reproduce

Not able to reproduce this issue as this has been occurring randomly on Android devices.

React Native Version

0.71.13

Affected Platforms

Runtime - Android

Output of npx react-native info

System:
    OS: macOS 14.6.1
    CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 37.20 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.18.0 - ~/.nvm/versions/node/v18.18.0/bin/node
    Yarn: Not Found
    npm: 9.8.1 - ~/.nvm/versions/node/v18.18.0/bin/npm
    Watchman: 2024.08.26.00 - /usr/local/bin/watchman
  Managers:
    CocoaPods: 1.13.0 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 23.2, iOS 17.2, macOS 14.2, tvOS 17.2, visionOS 1.0, watchOS 10.2
    Android SDK:
      API Levels: 23, 28, 29, 30, 31, 33, 33, 34
      Build Tools: 30.0.2, 30.0.3, 33.0.0, 33.0.2, 34.0.0
      System Images: android-30 | Google APIs Intel x86 Atom, android-31 | Google APIs Intel x86_64 Atom
      Android NDK: Not Found
  IDEs:
    Android Studio: 2022.3 AI-223.8836.35.2231.10811636
    Xcode: 15.2/15C500b - /usr/bin/xcodebuild
  Languages:
    Java: Not Found
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0 
    react-native: 0.71.13 => 0.71.13 
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Stacktrace or Logs

null pointer dereference: SIGSEGV  0x0000000000000000
#00 pc 0x96850 libc.so (BuildId: d1a98b526f2f94260a53c3055979a4f6)
#01 pc 0x5b510c libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#02 pc 0x5b487c libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#03 pc 0x5b6814 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#04 pc 0x54eeb0 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#05 pc 0x5b6148 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#06 pc 0x933e24 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#07 pc 0x93023c libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#08 pc 0x160fc libbase.so (BuildId: 42d41ca7c77853791d096606e7186547)
#09 pc 0x156d0 libbase.so (BuildId: 42d41ca7c77853791d096606e7186547)
#10 pc 0x5b74ec libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#11 pc 0x30b2b4 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#12 pc 0x63eec8 libart.so (BuildId: 7300f6c36a74cc43266451736b120528)
#13 pc 0x104fc4 libc.so (BuildId: d1a98b526f2f94260a53c3055979a4f6)
#14 pc 0x9e764 libc.so (BuildId: d1a98b526f2f94260a53c3055979a4f6)

Reproducer

NA

Screenshots and Videos

Screenshot 2024-09-09 at 17 35 29 Screenshot 2024-09-09 at 17 35 01 Screenshot 2024-09-09 at 17 34 54 Screenshot 2024-09-09 at 17 34 47 Screenshot 2024-09-09 at 17 34 40

com.brightcapital.app_issue_f4e23ef0af3b92e13a709b01f249ecfd_crash_session_66dea84e0283000168d5d19a075ad28a_DNE_0_v2_stacktrace (1).txt

@krystofwoldrich
Copy link
Member

Hi @vinayak-bm-ai,

thank you for the message.

Did the spike happen without any changes on your side, no new version...?

Linking the possibly related issue from sentry-java

@krystofwoldrich
Copy link
Member

@markushi I don't have context of the original Android issue, could you take a look?

@vinayak-bm-ai
Copy link
Author

Yes @krystofwoldrich , we haven’t made any changes to the codebase, no new version

@markushi
Copy link
Member

@vinayak-bm-ai thanks for sharing all the details! I took a look at the attached stacktrace, and there's no sentry symbol involved in the crashing thread. Why do you think this is caused by sentry?

On top of that could you share your sentry config options with us?

@vinayak-bm-ai
Copy link
Author

Hey @markushi We're unable to reproduce this crash as it suddenly spiked out of nowhere. After researching, we found that sentry-java had a similar issue before, and since sentry-android uses it, the fix for this issue has been added to sentry-react-native. (https://github.com/getsentry/sentry-java/releases/tag/7.0.0-rc.2 here) can you also check this once?
Also, the crash count is increasing day by day.

@vinayak-bm-ai
Copy link
Author

vinayak-bm-ai commented Sep 10, 2024

Sentry.init({
      dsn: dns,
      environment: env,
      debug: false,
      integrations: [
        new Sentry.ReactNativeTracing({
          enableUserInteractionTracing: true,
          routingInstrumentation,
        }),
        Sentry.metrics.metricsAggregatorIntegration(),
      ],
      tracesSampler: (samplingContext) => {
        const transactionOp = samplingContext.transactionContext.op;
        if (transactionOp === 'navigation') {
          return 0.1;
        }
        return 1;
      },
      beforeBreadcrumb: (breadcrumb, hint) => {
        if (
          breadcrumb.category === 'console' ||
          (breadcrumb.category === 'xhr' &&
            breadcrumb?.data?.url?.includes('http://localhost:8081/')) ||
          (breadcrumb?.data?.status_code >= 200 &&
            breadcrumb?.data?.status_code < 300)
        ) {
          return null;
        }
        return breadcrumb;
      },
      _experiments: {
        profilesSampleRate: 1.0,
      },
    });

@krystofwoldrich
Copy link
Member

@vinayak-bm-ai Thank you for the init options, we will investigate it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Status: Needs Investigation
Development

No branches or pull requests

3 participants