Closed Bug 989398 Opened 10 years ago Closed 10 years ago

Browser crashes while syncing on Nexus 5 (Android 4.4.2 KitKat, rooted)

Categories

(Firefox for Android Graveyard :: Android Sync, defect)

Firefox 28
ARM
Android
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 966143

People

(Reporter: u502182, Unassigned)

References

Details

(Whiteboard: [dupeme])

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0 (Beta/Release)
Build ID: 2014031500

Steps to reproduce:

Set up a sync account
Wait until the browser tries to sync


Actual results:

Browser crashes


Expected results:

Browser syncs
OS: Linux → Android
Hardware: x86_64 → ARM
Crash id? https://support.mozilla.org/en-US/kb/Mozilla%20Crash%20Reporter
Component: General → Android Sync
Product: Firefox for Android → Android Background Services
The fact that this is Fx 28 makes it less pressing (since FxA + Sync 1.5) will be riding the trains shortly.
(In reply to Nick Alexander :nalexander from comment #2)
> The fact that this is Fx 28 makes it less pressing (since FxA + Sync 1.5)
> will be riding the trains shortly.

Gah!  This is the version of the reporter's desktop browser, *not* the Android device's browser version.
Version: Firefox 28 → unspecified
Yes, it is in Firefox for mobile 28.
Version: unspecified → Firefox 28
(In reply to linus.kardell from comment #4)
> Yes, it is in Firefox for mobile 28.

Thanks, that helps a lot.  Can you attach the crash ID, or even possibly Android adb logs?  See http://160.twinql.com/how-to-file-a-good-android-sync-bug for instructions on how to grab adb logs from your device.
(In reply to linus.kardell from comment #6)
> Created attachment 8398658 [details]
> adb logcat -v time output

Thanks, this is very useful.  This looks like a mysterious issue we've seen before with bad passwords in the password provider, Bug 961895.  I'm going to have rnewman dupe if that's correct.

Relevant portion is:

03-28 19:13:23.382 I/FxSync  (31471): firefox :: GlobalSession :: Running next stage syncPasswords (org.mozilla.gecko.sync.stage.PasswordsServerSyncStage@42a56478)...
03-28 19:13:23.402 I/ActivityManager(  768): Start proc org.mozilla.firefox.PasswordsProvider for content provider org.mozilla.firefox/org.mozilla.gecko.db.PasswordsProvider: pid=670 uid=10180 gids={50180, 3003, 1028, 1015}
03-28 19:13:23.402 I/ActivityManager(  768): Killing 28960:com.google.android.calendar/u0a28 (adj 15): empty #17
03-28 19:13:23.422 D/dalvikvm(  670): Trying to load lib /data/app-lib/org.mozilla.firefox-2/libmozglue.so 0x425bcea8
03-28 19:13:23.422 D/dalvikvm(  670): Added shared lib /data/app-lib/org.mozilla.firefox-2/libmozglue.so 0x425bcea8
03-28 19:13:23.422 D/dalvikvm(  670): No JNI_OnLoad found in /data/app-lib/org.mozilla.firefox-2/libmozglue.so 0x425bcea8, skipping init
03-28 19:13:23.442 D/dalvikvm(  670): Trying to load lib /data/app-lib/org.mozilla.firefox-2/libmozglue.so 0x425bcea8
03-28 19:13:23.442 D/dalvikvm(  670): Shared lib '/data/app-lib/org.mozilla.firefox-2/libmozglue.so' already loaded in same CL 0x425bcea8
03-28 19:13:32.572 D/GeckoProfile(  670): Found profile dir.
03-28 19:13:32.582 E/GeckoLibLoad(  670): Load sqlite start
03-28 19:13:32.582 E/GeckoLinker(  670): /data/app/org.mozilla.firefox-2.apk!/assets/libnss3.so: Warning: unhandled flags #8 not handled
03-28 19:13:32.592 E/GeckoLibLoad(  670): Load sqlite done
03-28 19:13:32.592 E/GeckoLibLoad(  670): Load nss start
03-28 19:13:32.592 E/GeckoLibLoad(  670): Load nss done
03-28 19:13:32.622 E/GeckoLinker(  670): /data/app/org.mozilla.firefox-2.apk!/assets/libsoftokn3.so: Warning: unhandled flags #8 not handled
03-28 19:13:32.622 E/GeckoLinker(  670): /data/app/org.mozilla.firefox-2.apk!/assets/libfreebl3.so: Warning: unhandled flags #8 not handled
03-28 19:13:33.142 E/GeckoLibLoad(  670): Throw
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): Error inserting in db
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): org.mozilla.gecko.sqlite.SQLiteBridgeException: Can't step statement: (19) moz_logins.usernameField may not be NULL
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.sqliteCallWithDb(Native Method)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.internalQuery(SQLiteBridge.java:235)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.insert$62bb5379(SQLiteBridge.java:166)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at org.mozilla.gecko.db.PerProfileContentProvider.insert(PerProfileContentProvider.java:280)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at android.content.ContentProvider$Transport.insert(ContentProvider.java:220)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:156)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at android.os.Binder.execTransact(Binder.java:404)
03-28 19:13:33.142 E/GeckPasswordsProvider(  670): 	at dalvik.system.NativeStart.run(Native Method)
03-28 19:13:33.152 E/JavaBinder(  670): *** Uncaught remote exception!  (Exceptions are not yet supported across processes.)
03-28 19:13:33.152 E/JavaBinder(  670): org.mozilla.gecko.sqlite.SQLiteBridgeException: Can't step statement: (19) moz_logins.usernameField may not be NULL
03-28 19:13:33.152 E/JavaBinder(  670): 
03-28 19:13:33.152 E/JavaBinder(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.sqliteCallWithDb(Native Method)
03-28 19:13:33.152 E/JavaBinder(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.internalQuery(SQLiteBridge.java:235)
03-28 19:13:33.152 E/JavaBinder(  670): 	at org.mozilla.gecko.sqlite.SQLiteBridge.insert$62bb5379(SQLiteBridge.java:166)
03-28 19:13:33.152 E/JavaBinder(  670): 	at org.mozilla.gecko.db.PerProfileContentProvider.insert(PerProfileContentProvider.java:280)
03-28 19:13:33.152 E/JavaBinder(  670): 	at android.content.ContentProvider$Transport.insert(ContentProvider.java:220)
03-28 19:13:33.152 E/JavaBinder(  670): 	at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:156)
03-28 19:13:33.152 E/JavaBinder(  670): 	at android.os.Binder.execTransact(Binder.java:404)
03-28 19:13:33.152 E/JavaBinder(  670): 	at dalvik.system.NativeStart.run(Native Method)
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(rnewman)
See Also: → 961895
Whiteboard: [dupeme]
linus: are you using Master Password?  In the meantime, you can work around by disabling Password Sync: go to Android Settings > Accounts & Sync > [Sync account]; on most devices you'll see a "Choose what to Sync" option which will let you turn of passwords.

Thanks for reporting and providing great logs!
Flags: needinfo?(linus.kardell)
No, master password is disabled (at least on mobile), though disabling password sync seems to keep it from crashing.
As for the regular crash-logs, I'm not sure about how to get the crash ID. The logs doesn't seem to appear under about:crash.
Flags: needinfo?(linus.kardell)
Fixed in 29. Nothing to do with MP: there's a bad record on the server, and we don't catch it before trying to insert it, and the PasswordsProvider doesn't validate its inputs.

Bug 966143.
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: needinfo?(rnewman)
Resolution: --- → DUPLICATE
Product: Android Background Services → Firefox for Android
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: