Closed Bug 1619778 Opened 4 years ago Closed 4 years ago

UnsatisfiedLinkError: No implementation found for org.mozilla.geckoview.Base64Utils.encode(byte[])

Categories

(GeckoView :: General, defect, P1)

Unspecified
Android
defect

Tracking

(firefox75 fixed, firefox76 fixed)

RESOLVED FIXED
mozilla76
Tracking Status
firefox75 --- fixed
firefox76 --- fixed

People

(Reporter: jonalmeida, Assigned: snorp)

References

Details

(Whiteboard: [geckoview:m76])

Crash Data

Attachments

(3 files)

https://sentry.prod.mozaws.net/operations/reference-browser/issues/7413691/

UnsatisfiedLinkError: No implementation found for java.lang.String org.mozilla.geckoview.Base64Utils.encode(byte[]) (tried Java_org_mozilla_geckoview_Base64Utils_encode and Java_org_mozilla_geckoview_Base64Utils_encode___3B)
    at org.mozilla.reference.browser.push.WebPushEngineIntegration$onMessageReceived$1.invokeSuspend(WebPushEngineIntegration.kt:40)
...
(8 additional frame(s) were not displayed)

No implementation found for java.lang.String org.mozilla.geckoview.Base64Utils.encode(byte[]) (tried Java_org_mozilla_geckoview_Base64Utils_encode and Java_org_mozilla_geckoview_Base64Utils_encode___3B)

Looks like it's pointing at this reference of Base64Utils in GV.

This was on a Pixel 4 (arm64, Android 10) and SM-G955F (Android 9) so far.

We're seeing a lot more crashes from this now that WebPush is integrated into Fenix Nightly. Would it be possible to get this triaged sooner?

Fenix crash issue (with linked Sentry report): https://github.com/mozilla-mobile/fenix/issues/9113

Flags: needinfo?(etoop)

Yeah, this should be an easy fix. I'll take it.

Assignee: nobody → snorp
Priority: -- → P1
Crash Signature: [@java.lang.UnsatisfiedLinkError: at org.mozilla.geckoview.Base64Utils.encode(Native Method)]
Flags: needinfo?(etoop)
Whiteboard: [geckoview:m76]

This allows us to asynchronously wait for a given GeckoThread state
to be reached.

Pushed by jwillcox@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6b51291b425c
Remove unused `GeckoThread#waitOnGecko` methods. r=geckoview-reviewers,aklotz
https://hg.mozilla.org/integration/autoland/rev/f0bca273ad0e
Add `GeckoThread#waitForState()`. r=geckoview-reviewers,aklotz
https://hg.mozilla.org/integration/autoland/rev/fe284afeeb48
Wait for Gecko to be ready when delivering Web Push events r=geckoview-reviewers,aklotz

No longer seeing new crashes, thanks snorp!

Comment on attachment 9132896 [details]
Bug 1619778 - Remove unused GeckoThread#waitOnGecko methods.

Beta/Release Uplift Approval Request

  • User impact if declined: Part 1-3: Currently the top crasher on Firefox Preview 4.1, and will likely be a top crasher for Fennec Beta Migration
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: Bug 1619778
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Removing unused code, and adding a wait/log around crashing code.

:snorp can correct me if I'm wrong about the riskiness of this patch series.

  • String changes made/needed:
Attachment #9132896 - Flags: approval-mozilla-beta?
Attachment #9132897 - Flags: approval-mozilla-beta?
Attachment #9132898 - Flags: approval-mozilla-beta?

cc snorp, who wrote this change and can say if this is too risky to need beta uplift. I just want the crashes to come down :)

Flags: needinfo?(snorp)

Yeah, this should be fine to uplift.

Flags: needinfo?(snorp)

Comment on attachment 9132896 [details]
Bug 1619778 - Remove unused GeckoThread#waitOnGecko methods.

geckoview crash fix, approved for 75.0b10

Attachment #9132896 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Attachment #9132897 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Attachment #9132898 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: