-
-
Notifications
You must be signed in to change notification settings - Fork 172
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
Extremely high Segfault crash rate on Android #468
Comments
@tobi512 All of these stack traces occur in libraries like Hermes, or even in system libraries. What makes you conclude that these are being triggered by the Sentry SDK? Additionally, these crashes should be reported to your Sentry project. Provided you have uploaded symbols, you'll be able to see fully symbolicated crash reports. |
@tobi512 what's the version of your |
@jan-auer What I forgot to say is that we updated |
@marandaneto when did we add scope sync? @tobi512 Indeed the recently discovered scope sync bug can lead to crashes when you do a lot of scope/breadcrumb changes concurrently. I don’t think that android will hit that frequently. Also yes, the stacks look a lot like foreign libraries. And they are being reported by sentry native. |
@marandaneto |
@tobi512 the thing is, @Swatinem scope's sync is available since There are no stack traces from Sentry itself, why do you think it's Sentry's issue @tobi512 ? based on what? Have you upgraded the RN engine itself or any other lib other than Sentry in your new release? |
Thanks everybody for the quick and helpful feedback, always a pleasure to work with you! @marandaneto We know about the possible problems when using both SDKs, but we were running pretty good with it for quite a while now. There was a similar issue couple months ago with a high ANR rate that was caused by a changed implementation in the Sentry SDK (getsentry/sentry-android#406) so somehow I saw the same effects here (especially the spike in events after an update of the SDK). I might be wrong, it was just the first thing that came to my mind when talking about the problem with my colleagues. We did not change any major libraries as far as I know (e.g. RN/Hermes, is it even possible to change system libs like ART? I guess not, right?) with the new release, which is another indication for the issue not being on our side... |
thanks for the quick answer @tobi512 System libs are not possible to upgrade unless users upgraded the OS version, which is unlikely the case based on the number of affected users. True with the ANR thing, but I believe any severe bug would cause an increase of events, unfortunately only that is hard to work with. If you did bump the RN/Hermes engine, it might be interesting looking at their repo and reported bugs. Are you uploading the debug symbols of your native libs? remember to set I'd also consider keeping Sentry RN and Android SDK versions aligned, bumping versions yourself are not tested by us, if you decide to do it, be sure to test yourself. |
@marandaneto Yes it actually is possible to sync scope from RN -> Java -> Native if they set |
Just a hunch here: It is in theory possible to protect memory pages and have accesses trigger a segfault on purpose, for instrumentation purposes. Not sure if hermes started to do something like that, on purpose? Anyhow, these signal handlers can be made to work like a linked list that you can push things to (popping is more difficult). Sentry installs its signal handler, and forwards signals to the next one, which usually is the system that finally crashes the program. But maybe those signals are forwarded to some mechanism in hermes that expects them and just goes about its business as usual. Like I said, this is just pure speculation on my part. |
Hi guys, @marandaneto We'll set Our last RN update (which might have included a Hermes update) was 4 months ago with just a bugfix version bump from 0.63.1 to 0.63.2 and we did a couple of releases in the meantime with no spikes in crashes, so I'm not sure how this could be related. @Swatinem We are now at almost 100k events and still pretty lost, when looking through the reports by hand, the Hermes crashes are maybe 50% (btw. is there a way to filter how many in a grouped crash include e.g. "hermes"?). The rest are completely different libs, which still makes me think that this can't be caused by RN/Hermes, no?!
Do you plan to release a version of |
@tobi512 be sure to check this out https://docs.sentry.io/platforms/android/usage/advanced-usage/#integrating-the-ndk
if you haven't enabled the a new RN SDK version is gonna be released either today or tomorrow, which includes the latest Android SDK as well (and the latest sentry-native) |
Quick correction from our side: I got the old versions of the SDKs wrong (versions got updated multiple times inside an MR and I only looked at the last diff, shame on me). We upgraded from the following versions, don't know if that makes a difference and sorry for the confusion:
So we did two major version bumps, any ideas what change could explain our spike in events? @marandaneto Regarding the compatibility between the two SDKs again: we always look into |
I don't follow why you are managing the version yourself then if you are at the end using the very same version? I'd just let only what I've meant before, enabling |
Hi everybody, We did some changes under the hood (enabled native symbolication and removed the initialization of @marandaneto Our special handling with both SDKs was due to the fact, that we didn't want to miss out on crashes, that happen directly at startup of the app before React Native was initialized (and therefore I'll keep you guys updated if there are any news! Cheers |
@tobi512 thanks for the report, keep us updated. were you using the the important bits are to keep versions in sync. |
@marandaneto We did not use the Final update Sorry for the late reply, but it took us quite some time to ship the release to all users. We are now fully live since some days and don't see any new Segfault crashes, so I'd say this is fixed. Still not 100% sure what the actual problem was, but since we are good again, I'll close this issue and definitely advise no one to use both SDKs at the same time. Thanks a lot for the help everybody! |
Description
Hi there,
we are experiencing extremely high rate of Segfault crashes since roughly one week (70k+ events right now). Currently we're using v0.4.4 (probably transitive through the normal Sentry SDK right?).
Now the latest version 0.4.5 shows an interesting changelog entry
Fixed a potential segfault when doing concurrent scope modification.
, so could anyone tell us if this fix would apply to our Segfault crashes as well?We'll definitely update as soon as possible, is the new version already used somewhere? We're using both
@sentry_react-native
andsentry-android
in our project, I think you will release a new version ofsentry-android
that includes the native SDK soon, correct?When does the problem happen
Environment
All kind of Android devices, crashes like this happen to us since quite a while, but with the latest release of our app, it totally escalated and destroys our Sentry quota at the moment.
Steps To Reproduce
Log output
Couple example crash outputs (raw):
If you need more information, just let me know...
Thanks in advance!
The text was updated successfully, but these errors were encountered: