Closed Bug 1318560 Opened 3 years ago Closed 3 years ago

Intermittent testBug1217581 | java-exception java.lang.ArrayIndexOutOfBoundsException: length=386; index=386 at android.support.v7.graphics.ColorCutQuantizer$Vbox.fitBox(Unknown Source)

Categories

(Firefox for Android :: Testing, defect, P3)

defect

Tracking

()

RESOLVED FIXED
Firefox 53
Tracking Status
firefox51 --- wontfix
firefox52 --- wontfix
firefox53 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: sebastian)

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

[task 2016-11-17T15:41:47.396265Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): >>> REPORTING UNCAUGHT EXCEPTION FROM THREAD 1 ("main")
[task 2016-11-17T15:41:47.396485Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): java.lang.ArrayIndexOutOfBoundsException: length=386; index=386
[task 2016-11-17T15:41:47.396702Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer$Vbox.fitBox(Unknown Source)
[task 2016-11-17T15:41:47.399454Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer$Vbox.<init>(Unknown Source)
[task 2016-11-17T15:41:47.399514Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer$Vbox.splitBox(Unknown Source)
[task 2016-11-17T15:41:47.399562Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer.splitBoxes(Unknown Source)
[task 2016-11-17T15:41:47.399608Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer.quantizePixels(Unknown Source)
[task 2016-11-17T15:41:47.399652Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.ColorCutQuantizer.<init>(Unknown Source)
[task 2016-11-17T15:41:47.399696Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at android.support.v7.graphics.Palette$Builder.generate(Unknown Source)
[task 2016-11-17T15:41:47.399743Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at org.mozilla.gecko.icons.processing.ColorProcessor.process(ColorProcessor.java:26)
[task 2016-11-17T15:41:47.399785Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at org.mozilla.gecko.icons.IconTask.processIcon(IconTask.java:147)
[task 2016-11-17T15:41:47.399827Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at org.mozilla.gecko.icons.IconTask.call(IconTask.java:62)
[task 2016-11-17T15:41:47.399893Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at org.mozilla.gecko.icons.IconTask.call(IconTask.java:24)
[task 2016-11-17T15:41:47.399943Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at java.util.concurrent.FutureTask.run(FutureTask.java:234)
[task 2016-11-17T15:41:47.399989Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
[task 2016-11-17T15:41:47.400035Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
[task 2016-11-17T15:41:47.400073Z] 15:41:47     INFO -  11-17 07:41:31.647 E/GeckoCrashHandler( 1874): 	at java.lang.Thread.run(Thread.java:841)
Flags: needinfo?(s.kaspari)
Priority: -- → P3
Interesting. This is inside the support library. I'll have a look.
Assignee: nobody → s.kaspari
Status: NEW → ASSIGNED
Flags: needinfo?(s.kaspari)
It looks like this never happened on an actual device according to crash-stats.
Comment on attachment 8812814 [details]
Bug 1318560 - ColorProcessor: Handle ArrayIndexOutOfBoundsException from Palette library.

https://reviewboard.mozilla.org/r/94406/#review94618
Attachment #8812814 - Flags: review?(gbrown) → review+
https://code.google.com/p/android/issues/detail?id=174522#c17

Here's a similar issue reported to google, seems they don't have a solution but catch the exception inside Palette.
Weird thing is the try/catch patch seems already been released into v23.1.0, and we're using newer v23.4.0.
Comment on attachment 8812814 [details]
Bug 1318560 - ColorProcessor: Handle ArrayIndexOutOfBoundsException from Palette library.

https://reviewboard.mozilla.org/r/94406/#review94812

::: mobile/android/base/java/org/mozilla/gecko/icons/processing/ColorProcessor.java:33
(Diff revision 1)
> +        try {
> -        final Palette palette = Palette.from(response.getBitmap()).generate();
> +            final Palette palette = Palette.from(response.getBitmap()).generate();
> -
> -        response.updateColor(palette.getVibrantColor(DEFAULT_COLOR));
> +            response.updateColor(palette.getVibrantColor(DEFAULT_COLOR));
> +        } catch (ArrayIndexOutOfBoundsException e) {
> +            // We saw the palette library fail with an ArrayIndexOutOfBoundsException intermittently

Maybe add the bug number in comment? Bug 1318560
Comment on attachment 8812814 [details]
Bug 1318560 - ColorProcessor: Handle ArrayIndexOutOfBoundsException from Palette library.

https://reviewboard.mozilla.org/r/94406/#review94818
Attachment #8812814 - Flags: review?(max) → review+
Comment on attachment 8812814 [details]
Bug 1318560 - ColorProcessor: Handle ArrayIndexOutOfBoundsException from Palette library.

https://reviewboard.mozilla.org/r/94404/#review94860
Pushed by s.kaspari@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/88e517eb303e
ColorProcessor: Handle ArrayIndexOutOfBoundsException from Palette library. r=gbrown,maliu
https://hg.mozilla.org/mozilla-central/rev/88e517eb303e
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 53
I know the intermittent crash only showed up recently, but it looks like the underlying defect might affect older versions as well? Assuming that's the case, please request uplift when you get a chance :)
Flags: needinfo?(s.kaspari)
See comment 3: I searched for it on crash-stats but I couldn't find any related stack trace. It looks like this only happened in automation / on the emulator so far.
Flags: needinfo?(s.kaspari)
You need to log in before you can comment on or make changes to this bug.