Closed Bug 1080090 Opened 10 years ago Closed 10 years ago

[Gallery]- Gallery app crashes while scanning attached image from sdcard

Categories

(Firefox OS Graveyard :: Gaia::Gallery, defect)

x86
macOS
defect
Not set
normal

Tracking

(blocking-b2g:2.2+, b2g-v2.1 unaffected, b2g-v2.2 affected)

RESOLVED DUPLICATE of bug 1087464
2.1 S8 (7Nov)
blocking-b2g 2.2+
Tracking Status
b2g-v2.1 --- unaffected
b2g-v2.2 --- affected

People

(Reporter: pdahiya, Assigned: pdahiya)

References

Details

(Keywords: regression)

Attachments

(4 files)

Gallery app is crashing while scanning attached image from sdcard. The image is also found in apps/gallery/test/images/09.png
Error seen in logs:
10-08 17:53:32.629 I/Gecko   (  223): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0x120005,name=PBackground::Msg_PBlobConstructor) Value error: message was deserialized,
 but contained an illegal value
10-08 17:53:32.629 I/Gecko   (  223): 
10-08 17:53:32.629 I/Gecko   (  223): IPDL protocol error: could not look up PBlob
10-08 17:53:32.629 I/Gecko   (  223): IPDL protocol error: Error deserializing 'PBlobParent'
10-08 17:53:32.639 I/Gecko   (  223): 
10-08 17:53:32.639 I/Gecko   (  223): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0x60004,name=PBackgroundIDBDatabase::Msg_PBackgroundIDBDatabaseFileConstructor) Value e
rror: message was deserialized, but contained an illegal value
10-08 17:53:32.639 I/Gecko   (  223): 
10-08 17:53:32.639 I/Gecko   (  223): IPDL protocol error: could not look up PBackgroundIDBDatabaseFile
10-08 17:53:32.639 I/Gecko   (  223): IPDL protocol error: Error deserializing 'DatabaseFileOrMutableFileId[i]'
10-08 17:53:32.639 I/Gecko   (  223): IPDL protocol error: Error deserializing 'files' (DatabaseFileOrMutableFileId[]) member of 'ObjectStoreAddPutParams'
10-08 17:53:32.639 I/Gecko   (  223): IPDL protocol error: Error deserializing 'commonParams' (ObjectStoreAddPutParams) member of 'ObjectStoreAddParams'
10-08 17:53:32.639 I/Gecko   (  223): IPDL protocol error: Error deserializing 'RequestParams'
10-08 17:53:32.639 I/Gecko   (  223): 
10-08 17:53:32.639 I/Gecko   (  223): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0xE0006,name=PBackgroundIDBTransaction::Msg_PBackgroundIDBRequestConstructor) Value err
or: message was deserialized, but contained an illegal value
10-08 17:53:32.639 I/Gecko   (  223): 
10-08 17:53:32.659 D/charger_monitor(  407): AICL: start
10-08 17:53:32.689 W/GeckoConsole(  223): [JavaScript Error: "IndexedDB UnknownErr: ActorsParent.cpp:7692"]
10-08 17:53:32.689 W/GeckoConsole(  223): [JavaScript Error: "IndexedDB UnknownErr: ActorsParent.cpp:6065"]
10-08 17:53:32.719 I/Gecko   (  223): 
10-08 17:53:32.719 I/Gecko   (  223): ###!!! [Parent][MessageChannel] Error: Channel error: cannot send/recv
The relevant thing about the attached image is that it is small enough that it is its own thumbnail. So the gallery app uses the file directly and saves it to the indexeddb. For larger images (the normal case) it creates a new thumbnail in a memory-backed blob.

I'm guessing that this is a regression caused by bug 994190.
Tested with nighly build mozilla-central-flame-kk-eng from 9/28 and gallery successfully loads attached image 09.png without crashing
BuildId:20140928040208

Gallery crash is seen on trying mozilla-central-flame-kk-eng nightly build (BuildId:20140930040206) from 9/30 after bug994190 fix was landed
There is another test image (a small jpeg this time) attached to the duplicate bug 1080206
Ran into this issue today with another small image and then confirmed that issue reproduces with attachment 8501984 [details] in sd card on the latest Flame 2.2 KK from PVT

From logcat:
I/Gecko   (  208): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0x120005,name=PBackground::Msg_PBlobConstructor) Value error: message was deserialized, but contained an illegal value
I/Gecko   (  208): 
I/Gecko   (  208): IPDL protocol error: could not look up PBlob
I/Gecko   (  208): IPDL protocol error: Error deserializing 'PBlobParent'
I/Gecko   (  208): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0x60004,name=PBackgroundIDBDatabase::Msg_PBackgroundIDBDatabaseFileConstructor) Value error: message was deserialized, but contained an illegal value

Issue does not appear to affect todays Flame 2.1 KK as gallery loaded without crash with attachment 8501984 [details] in sd card


Device: Flame 2.2 Master  KK (319mb) (Full Flash)
BuildID: 20141012040203
Gaia: 717ad4e8b7fc10ab8248500d00ba5ba0977fa8ab
Gecko: 44168a7af20d
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 35.0a1 (2.2 Master)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(dharris)
The user should be able to access the gallery without it closing on them, even if they have a small image in their gallery
blocking-b2g: --- → 2.2?
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(dharris)
Hi,

I have the same bug with picture (size 192x190).

I use Firefox OS 2.2 on ZTE Open C. I didn't have this bug on 1.4.
QA Contact: jmercado
Bug 994190 seems to be the cause of this issue.

Mozilla-inbound Regression Window

Last Working 
Environmental Variables:
Device: Flame 2.2
BuildID: 20140913061909
Gaia: b72909030e214175144342f7e5df7e88a2b52fd4
Gecko: 23ee92252bf7
Version: 35.0a1 (2.2) 
Firmware Version: v180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

First Broken 
Environmental Variables:
Device: Flame 2.2
BuildID: 20140913091409
Gaia: b72909030e214175144342f7e5df7e88a2b52fd4
Gecko: 14a2fe92d07b
Version: 35.0a1 (2.2) 
Firmware Version: v180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

Last Working gaia / First Broken gecko - Issue DOES occur
Gaia: b72909030e214175144342f7e5df7e88a2b52fd4
Gecko: 14a2fe92d07b

First Broken gaia / Last Working gekko - Issue does NOT occur
Gaia: b72909030e214175144342f7e5df7e88a2b52fd4
Gecko: 23ee92252bf7

Gecko Pushlog: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=23ee92252bf7&tochange=14a2fe92d07b
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Broken by Bug 994190 - can you take a look Ben?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(bent.mozilla)
Can you please test again now that bug 1079546 has landed?
Flags: needinfo?(bent.mozilla)
QA-Wanted to retest in the latest 2.2
QA Whiteboard: [QAnalyst-Triage+]
Keywords: qawanted
QA Contact: jmercado
This bug still repro's with latest Flame 2.2 using Full Flash with 319mb.

Gallery is crashing out when trying to scan the image attached to this bug.

Repro Rate: 3/3

Device: Flame 2.2
BuildID: 20141017073248
Gaia: 1daf2dadcd0d554c733661a4c0be1b82001e9da0
Gecko: 51892b39597a
Version: 36.0a1 (2.2)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
QA Contact: croesch
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
Can you please attach logcat?
QA-Wanted - logcat from repro in the latest
Keywords: qawanted
Attached file log.txt
Log Attached
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Blocks: 1080104
Cody,

Could you check if the fix for 1076975 also fixed this bug? (Might be easiest to just wait for tomorrow's nightly build)
Flags: needinfo?(croesch)
Hi Hema, this feature apparently broke even though TBPL remained completely green. Can you find resources to get integration tests added for this so that we don't break you again?
Flags: needinfo?(hkoka)
I can't reproduce with a fresh build from today, hopefully this is fixed now.
Adding Punam and No-Jun for making sure we have automated tests that cover this case
Assignee: nobody → pdahiya
Flags: needinfo?(npark)
Flags: needinfo?(hkoka)
Flags: in-testsuite?
(In reply to David Flanagan [:djf OOO until Oct. 27] from comment #17)
> Cody,
> 
> Could you check if the fix for 1076975 also fixed this bug? (Might be
> easiest to just wait for tomorrow's nightly build)


I retested this on 10/22 nightly 2.2 build with V188 base and It's still crashing out when trying to scan that image.

Repro Rate 2/2

Environmental Variables:
Device: Flame 2.2 (Nightly)
BuildID: 20141022040201
Gaia: 4d7f051cede6544f4c83580253c743c22b0cb279
Gecko: ae4d9b4ff2ee
Version: 36.0a1 (2.2)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
Flags: needinfo?(croesch)
Cody, can you post a new logcat?
Flags: needinfo?(croesch)
Attached file log2.txt
Attached new log for Flame using V188 Base with 2.2 Nightly build for 10/22
Flags: needinfo?(croesch)
blocking-b2g: 2.2? → 2.2+
I cannot reproduce this any more.
I was able to repro this on today's master build.  I did adb push the file to the device, and now gallery crashes each time it is started.

Gaia-Rev        27a1d1baaa8e375b70e043efee67d5f2206c330b
Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/88adcf8fef83
Build-ID        20141023040204
Version         36.0a1
Device-Name     flame
FW-Release      4.4.2
FW-Incremental  eng.cltbld.20141023.071449
FW-Date         Thu Oct 23 07:14:59 EDT 2014
Bootloader      L1TC00011880

I wrote an image comparison test that uses the file attached to this bug.
Flags: needinfo?(npark)
Can't reproduce the bug anymore on today's nightly:

Gaia-Rev        f46d56d812480bff7f3b35e8cacbedfa4d49edc5
Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/d8de0d7e52e0
Build-ID        20141023160203
Version         36.0a1
Device-Name     flame
FW-Release      4.4.2
FW-Incremental  eng.cltbld.20141023.191612
FW-Date         Thu Oct 23 19:16:22 EDT 2014
Bootloader      L1TC00011880
Attaching integration test for scanning and loading 'apps/gallery/test/images/09.png' test image. Please note similar to https://bugzilla.mozilla.org/show_bug.cgi?id=1076975#c29 this integration test is passing on desktop builds while still breaking on devices.
(In reply to No-Jun Park [:njpark] from comment #27)
> Can't reproduce the bug anymore on today's nightly:
> 
> Gaia-Rev        f46d56d812480bff7f3b35e8cacbedfa4d49edc5
> Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/d8de0d7e52e0
> Build-ID        20141023160203
> Version         36.0a1
> Device-Name     flame
> FW-Release      4.4.2
> FW-Incremental  eng.cltbld.20141023.191612
> FW-Date         Thu Oct 23 19:16:22 EDT 2014
> Bootloader      L1TC00011880

I just tried and able to replicate gallery app crash using attached image - 09.png in latest m-c build Id 20141024040202, flame-kk v180 base image

Error in logs:

10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: could not look up PBlob
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error deserializing 'PBlobParent'
10-24 08:21:07.650 I/Gecko   (  207): 
10-24 08:21:07.650 I/Gecko   (  207): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0x60004,name=PBackgroundIDBDatabase::Msg_PBackgroundIDBDatabaseFileConstructor) Value e
rror: message was deserialized, but contained an illegal value
10-24 08:21:07.650 I/Gecko   (  207): 
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: could not look up PBackgroundIDBDatabaseFile
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error deserializing 'DatabaseFileOrMutableFileId[i]'
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error deserializing 'files' (DatabaseFileOrMutableFileId[]) member of 'ObjectStoreAddPutParams'
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error deserializing 'commonParams' (ObjectStoreAddPutParams) member of 'ObjectStoreAddParams'
10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error deserializing 'RequestParams'
10-24 08:21:07.650 I/Gecko   (  207): 
10-24 08:21:07.650 I/Gecko   (  207): ###!!! [Parent][DispatchAsyncMessage] Error: (msgtype=0xE0006,name=PBackgroundIDBTransaction::Msg_PBackgroundIDBRequestConstructor) Value error: message was deserialized, but contained an illegal value
10-24 08:21:07.650 I/Gecko   (  207): 
10-24 08:21:07.680 W/GeckoConsole(  207): [JavaScript Error: "IndexedDB UnknownErr: ActorsParent.cpp:7696"]
10-24 08:21:07.680 W/GeckoConsole(  207): [JavaScript Error: "IndexedDB UnknownErr: ActorsParent.cpp:6069"]
Hi Evan

It will be useful to extend integration test - attachment 8511159 [details] [review] to load and scan all 65 test images in apps/gallery/test/images. Is it possible to use marionette-file-manager API to add all files in a directory to device storage by specifying path to the directory. Thanks!
Flags: needinfo?(evanxd)
(In reply to Punam Dahiya from comment #30)
> (In reply to No-Jun Park [:njpark] from comment #27)
> > Can't reproduce the bug anymore on today's nightly:
> > 
> > Gaia-Rev        f46d56d812480bff7f3b35e8cacbedfa4d49edc5
> > Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/d8de0d7e52e0
> > Build-ID        20141023160203
> > Version         36.0a1
> > Device-Name     flame
> > FW-Release      4.4.2
> > FW-Incremental  eng.cltbld.20141023.191612
> > FW-Date         Thu Oct 23 19:16:22 EDT 2014
> > Bootloader      L1TC00011880
> 
> I just tried and able to replicate gallery app crash using attached image -
> 09.png in latest m-c build Id 20141024040202, flame-kk v180 base image
> 
> Error in logs:
> 
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: could not look up
> PBlob
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error
> deserializing 'PBlobParent'
> 10-24 08:21:07.650 I/Gecko   (  207): 
> 10-24 08:21:07.650 I/Gecko   (  207): ###!!! [Parent][DispatchAsyncMessage]
> Error:
> (msgtype=0x60004,name=PBackgroundIDBDatabase::
> Msg_PBackgroundIDBDatabaseFileConstructor) Value e
> rror: message was deserialized, but contained an illegal value
> 10-24 08:21:07.650 I/Gecko   (  207): 
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: could not look up
> PBackgroundIDBDatabaseFile
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error
> deserializing 'DatabaseFileOrMutableFileId[i]'
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error
> deserializing 'files' (DatabaseFileOrMutableFileId[]) member of
> 'ObjectStoreAddPutParams'
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error
> deserializing 'commonParams' (ObjectStoreAddPutParams) member of
> 'ObjectStoreAddParams'
> 10-24 08:21:07.650 I/Gecko   (  207): IPDL protocol error: Error
> deserializing 'RequestParams'
> 10-24 08:21:07.650 I/Gecko   (  207): 
> 10-24 08:21:07.650 I/Gecko   (  207): ###!!! [Parent][DispatchAsyncMessage]
> Error:
> (msgtype=0xE0006,name=PBackgroundIDBTransaction::
> Msg_PBackgroundIDBRequestConstructor) Value error: message was deserialized,
> but contained an illegal value
> 10-24 08:21:07.650 I/Gecko   (  207): 
> 10-24 08:21:07.680 W/GeckoConsole(  207): [JavaScript Error: "IndexedDB
> UnknownErr: ActorsParent.cpp:7696"]
> 10-24 08:21:07.680 W/GeckoConsole(  207): [JavaScript Error: "IndexedDB
> UnknownErr: ActorsParent.cpp:6069"]

oh, I'm on v188 base image.  then perhaps the latest base image + code fixes the issue?  I'll retry on my device again, and run it on v180 as well.
just retested it on again on v188.  I found that it crashes, but now the behavior is different.  When the image was copied via USB connection to PC and restarted the gallery app, the app crashed initially.  But when I restarted the app, the app started fine and displayed the image, and from that point on there was no crash shown.
Most likely this will be fixed by bug 1087464. Please retest once you have a nightly with that patch included.
Tried again with today's build and gallery app is able to load attached image without crashing!

Gaia      e91d99e4d96954f06383c00bb9d79598a697e310
Gecko     https://hg.mozilla.org/mozilla-central/rev/8230834302c9
BuildID   20141027040237
Version   36.0a1
device: Flame-KK v180 base image
Thanks!
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
(In reply to Punam Dahiya from comment #31)
> Hi Evan
> 
> It will be useful to extend integration test - attachment 8511159 [details] [review]
> to load and scan all 65 test images in apps/gallery/test/images. Is it
> possible to use marionette-file-manager API to add all files in a directory
> to device storage by specifying path to the directory. Thanks!

Punam,

Sure, we could do that.
So for now, we would like to write JSMarionette tests to show a lot of images in Gallery app, right?
Flags: needinfo?(evanxd) → needinfo?(pdahiya)
(In reply to Evan Tseng [:evanxd][:愛聞插低] from comment #37)
> (In reply to Punam Dahiya from comment #31)
> > Hi Evan
> > 
> > It will be useful to extend integration test - attachment 8511159 [details] [review]
> > to load and scan all 65 test images in apps/gallery/test/images. Is it
> > possible to use marionette-file-manager API to add all files in a directory
> > to device storage by specifying path to the directory. Thanks!
> 
> Punam,
> 
> Sure, we could do that.
> So for now, we would like to write JSMarionette tests to show a lot of
> images in Gallery app, right?

That's correct use case is to update attached js marionette integration test to load all the images in directory apps/gallery/test/images
Flags: needinfo?(pdahiya)
Hi Punam,

I'll do this in Bug 1090817.
Thanks Evan, As this bug is marked resolved, I have created follow up bug 1092233 to write integration test to scan and load all test images in gallery app.
QA Contact: croesch
Target Milestone: --- → 2.1 S8 (7Nov)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: