Closed Bug 720712 Opened 8 years ago Closed 8 years ago

Crash on startup on Samsung SCH-i400 (Continuum), Android 2.1

Categories

(Firefox for Android :: General, defect, critical)

ARM
Android
defect
Not set
critical

Tracking

()

RESOLVED FIXED
Firefox 12
Tracking Status
firefox11 --- affected
fennec 11+ ---

People

(Reporter: martijn.martijn, Assigned: blassey)

References

Details

(Keywords: crash, Whiteboard: [native-crash][startupcrash])

Attachments

(3 files)

Attached file catlog of crash
This was tested with on DeviceAnywhere for gralloc testing.

I get a crash on startup with the Samsung SCH-i400 (Continuum) device.
I attached a catlog of the crash.
I guess the relevant part of that catlog is this:
D/GeckoBrowserProvider(30665): Getting readable database for URI: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Query is on history: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Running built query.
D/GeckoBrowserProvider(30665): Calling insert on URI: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Getting writable database for URI: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Calling insert in transaction on URI: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Getting writable database for URI: content://org.mozilla.fennec.db.browser/history?profile=default
D/GeckoBrowserProvider(30665): Insert on HISTORY: content://org.mozilla.fennec.db.browser/history?profile=default
W/dalvikvm(30665): threadid=15: thread exiting with uncaught exception (group=0x4001b180)
E/AndroidRuntime(30665): Uncaught handler: thread GeckoLooper Thread exiting due to uncaught exception
E/AndroidRuntime(30665): java.lang.NoClassDefFoundError: android.util.Base64
E/AndroidRuntime(30665): at org.mozilla.fennec.db.BrowserProvider.generateGuid(BrowserProvider.java:213)
E/AndroidRuntime(30665): at org.mozilla.fennec.db.BrowserProvider.insertInTransaction(BrowserProvider.java:721)
E/AndroidRuntime(30665): at org.mozilla.fennec.db.BrowserProvider.insert(BrowserProvider.java:665)
E/AndroidRuntime(30665): at android.content.ContentProvider$Transport.insert(ContentProvider.java:150)
E/AndroidRuntime(30665): at android.content.ContentResolver.insert(ContentResolver.java:629)
E/AndroidRuntime(30665): at org.mozilla.gecko.db.LocalBrowserDB.updateVisitedHistory(LocalBrowserDB.java:185)
E/AndroidRuntime(30665): at org.mozilla.gecko.db.BrowserDB.updateVisitedHistory(BrowserDB.java:103)
E/AndroidRuntime(30665): at org.mozilla.gecko.GlobalHistory.add(GlobalHistory.java:119)
E/AndroidRuntime(30665): at org.mozilla.gecko.GeckoAppShell$14.run(GeckoAppShell.java:1648)
E/AndroidRuntime(30665): at android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime(30665): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(30665): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(30665): at org.mozilla.gecko.GeckoAppShell$LooperThread.run(GeckoAppShell.java:174)
I/Process ( 2216): Sending signal. PID: 30665 SIG: 3
I/dalvikvm(30665): threadid=7: reacting to signal 3
W/ActivityManager( 2216): Process org.mozilla.fennec has crashed too many times: killing!
D/ActivityManager( 2216):   Force finishing activity org.mozilla.fennec/.App
D/ActivityManager( 2216): Force removing process ProcessRecord{47fc4570 30665:org.mozilla.fennec/10102} (org.mozilla.fennec/10102)
I/dalvikvm(30665): Wrote stack trace to '/data/anr/traces.txt'
That device is running android 2.1, which we don't support. The Base64 class is only available in API level 8 and up, which is android 2.2 and up.
Thanks, that makes it invalid then.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INVALID
(In reply to Kartikaya Gupta (:kats) from comment #1)
> That device is running android 2.1, which we don't support. The Base64 class
> is only available in API level 8 and up, which is android 2.2 and up.

Correct me if I'm wrong, but why do we target API level 5 here? http://mxr.mozilla.org/mozilla-central/source/mobile/android/base/AndroidManifest.xml.in#12
We have yet to have a product decision to drop Android 2.1 support. If we are going to make that decision it needs to stated clearly to all groups. It feels like we are backing into that decision by landing code that crashes on start up on 2.1.
(In reply to Aaron Train [:aaronmt] from comment #3)
> Correct me if I'm wrong, but why do we target API level 5 here?
> http://mxr.mozilla.org/mozilla-central/source/mobile/android/base/
> AndroidManifest.xml.in#12

(In reply to Kevin Brosnan [:kbrosnan] from comment #4)
> We have yet to have a product decision to drop Android 2.1 support. If we
> are going to make that decision it needs to stated clearly to all groups. It
> feels like we are backing into that decision by landing code that crashes on
> start up on 2.1.

Oh, for some reason I was under the impression we had already decided we weren't going to support 2.1. My mistake then, I'll reopen the bug.
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
Whiteboard: [native-crash]
Summary: Crash on startup on Samsung SCH-i400 (Continuum) → Crash on startup on Samsung SCH-i400 (Continuum), Android 2.1
Attached patch patchSplinter Review
Assignee: nobody → blassey.bugs
Status: REOPENED → NEW
Attachment #591573 - Flags: review?(lucasr.at.mozilla)
Comment on attachment 591573 [details] [diff] [review]
patch

Review of attachment 591573 [details] [diff] [review]:
-----------------------------------------------------------------

So, we've decided to go ahead and support Android 2.1? Patch looks fine but I'd like to know for sure that we're doing it before starting to add all those hacks to support 2.1.
Attachment #591573 - Flags: review?(lucasr.at.mozilla) → review+
Also, need to double-check sync's code to know if they using this too. I think they get the Base64 from a third-party library. Richard?
(In reply to Lucas Rocha (:lucasr) from comment #7)
> Comment on attachment 591573 [details] [diff] [review]
> patch
> 
> Review of attachment 591573 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> So, we've decided to go ahead and support Android 2.1? Patch looks fine but
> I'd like to know for sure that we're doing it before starting to add all
> those hacks to support 2.1.

We decided a long time ago to support 2.1. Until that changes all our code needs to support it. A decision to drop 2.1 has not been made yet.

When that happens, it'll be pretty easy to go through and clean up the 2.1 fallback code paths that we've added over the last couple years.
(In reply to Lucas Rocha (:lucasr) from comment #8)
> Also, need to double-check sync's code to know if they using this too. I
> think they get the Base64 from a third-party library. Richard?

We bundle Apache Commons-codec. afaik we're ok, but I've never tested on 2.1.
Whiteboard: [native-crash] → [native-crash], startupcrash
Depends on: 662891
https://hg.mozilla.org/integration/mozilla-inbound/rev/36c5d3e2f446
tracking-fennec: --- → 11+
Whiteboard: [native-crash], startupcrash → [native-crash][startupcrash][inbound]
https://hg.mozilla.org/mozilla-central/rev/36c5d3e2f446
Status: NEW → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → FIXED
Whiteboard: [native-crash][startupcrash][inbound] → [native-crash][startupcrash]
Target Milestone: --- → Firefox 12
I'm still crashing on startup with that phone. I attached a new catlog.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(In reply to Martijn Wargers [:mw22] (QA - IRC nick: mw22) from comment #13)
> Created attachment 592555 [details]
> catlog of startup crash
> 
> I'm still crashing on startup with that phone. I attached a new catlog.

different bug
Status: REOPENED → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → FIXED
(In reply to Martijn Wargers [:mw22] (QA - IRC nick: mw22) from comment #13)
> Created attachment 592555 [details]
> catlog of startup crash
> 
> I'm still crashing on startup with that phone. I attached a new catlog.

Bug 705874
Comment on attachment 591573 [details] [diff] [review]
patch

[Approval Request Comment]
Regression caused by (bug #): 
User impact if declined: 
Testing completed (on m-c, etc.): 
Risk to taking this patch (and alternatives if risky):
String changes made by this patch:
Attachment #591573 - Flags: approval-mozilla-aurora?
Attachment #591573 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Ok, in today's nightly, Fennec isn't crashing anymore on this phone, so I guess bug 705874 helped here.
The Aurora channel switched to 12 on January 29th. So it's not fixed in 11.
You need to log in before you can comment on or make changes to this bug.