Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 341781

Summary: Stack traces in console in nightly builds
Product: [Eclipse Project] Equinox Reporter: DJ Houghton <dj.houghton>
Component: p2Assignee: Tobias Oberlies <t-oberlies>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: irbull, pascal, t-oberlies, tjwatson
Version: 3.7   
Target Milestone: 3.7 M7   
Hardware: PC   
OS: All   
Whiteboard:
Attachments:
Description Flags
Patch to handle empty array equivalent to null dj.houghton: iplog+

Description DJ Houghton CLA 2011-04-04 09:47:49 EDT
From: http://download.eclipse.org/eclipse/downloads/drops/N20110403-2000/testresults/consolelogs/linux.gtk-6.0_consolelog.txt

There are a bunch of test failures in the nightly build which look to be related to the new p2.publisher.eclipse bundle. Pascal, can you please take a look at these? Thanks.

     [java] Error - 6 icon(s) not replaced in /tmp/p2.brandingIron6510660154494604239/eclipse.exe using /tmp/LauncherName4812342498099326440.ico
     [java] java.lang.ArrayIndexOutOfBoundsException: 0
     [java] 	at org.eclipse.equinox.internal.p2.publisher.eclipse.BrandingIron.brand(BrandingIron.java:81)
     [java] 	at org.eclipse.equinox.p2.publisher.eclipse.EquinoxExecutableAction.fullBrandExecutables(EquinoxExecutableAction.java:232)
     [java] 	at org.eclipse.equinox.p2.publisher.eclipse.EquinoxExecutableAction.brandExecutables(EquinoxExecutableAction.java:206)
     [java] 	at org.eclipse.equinox.p2.publisher.eclipse.EquinoxExecutableAction.perform(EquinoxExecutableAction.java:65)
     [java] 	at org.eclipse.equinox.p2.publisher.eclipse.ApplicationLauncherAction.perform(ApplicationLauncherAction.java:66)
     [java] 	at org.eclipse.equinox.p2.publisher.eclipse.ProductAction.perform(ProductAction.java:91)
Comment 1 DJ Houghton CLA 2011-04-05 14:41:52 EDT
Still failing in last night's build.
Comment 2 Ian Bull CLA 2011-04-05 14:46:59 EDT
Do we know how serious this is?  If it failed in the nightly then we can assume it will likely fail in the integration build. Is the build still good or should we send a note to eclipse-dev list?
Comment 3 DJ Houghton CLA 2011-04-05 16:58:17 EDT
I've changed the summary, the current test failures are covered by bug 341169.

Pascal, do you know why these stack traces don't seem to be causing any test failures?
Comment 4 Tobias Oberlies CLA 2011-04-07 10:51:51 EDT
Created attachment 192751 [details]
Patch to handle empty array equivalent to null

This was in fact a regression from the publisher refactorings. The attached patch fixes the problem. I'm not yet committer, so feel free to apply it immediately.

I was a bit surprised that to see the tests pass despite the ArrayIndexOutOfBoundsException. Obviously someone happily catches all kinds of exceptions. I don't dare to adress this no - who knows who relies on this broken behaviour...
Comment 5 Ian Bull CLA 2011-04-07 11:08:48 EDT
(In reply to comment #4)
> I was a bit surprised that to see the tests pass despite the
> ArrayIndexOutOfBoundsException. Obviously someone happily catches all kinds of
> exceptions. I don't dare to adress this no - who knows who relies on this
> broken behaviour...

No, I don't think we should address this now, but it might be good to file a bug to capture this.
Comment 6 DJ Houghton CLA 2011-04-07 11:38:27 EDT
EquinoxExecutableAction#fullBrandExecutables is the code which catches all exceptions and ignores them. Is this a new class or one that was re-factored or.... ?
Comment 7 DJ Houghton CLA 2011-04-07 11:47:26 EDT
Comment on attachment 192751 [details]
Patch to handle empty array equivalent to null

I've released the patch.
Comment 8 Tobias Oberlies CLA 2011-04-07 12:36:00 EDT
(In reply to comment #6)
> EquinoxExecutableAction#fullBrandExecutables is the code which catches all
> exceptions and ignores them. Is this a new class or one that was re-factored
> or.... ?

This file came from the org.eclipse.equinox.p2.publisher bundle. Sorry, noone else to blame for this  ;-)
Comment 9 DJ Houghton CLA 2011-04-07 13:52:17 EDT
"It was like that when I got here", eh? :-)

I've created bug 342198 to investigate if we should really be catching and ignoring all Exceptions in that publisher code.
Comment 10 Tobias Oberlies CLA 2011-04-08 12:39:18 EDT
There were no more exceptions from the BrandingIron in the nightly test run: http://download.eclipse.org/eclipse/downloads/drops/N20110407-2000/testresults/consolelogs/linux.gtk-6.0_consolelog.txt
Comment 11 DJ Houghton CLA 2011-04-08 14:14:32 EDT
We are still seeing this message in the error log. Is this a problem?

[java] Error - 6 icon(s) not replaced in /tmp/p2.brandingIron3084785278937756120/eclipse.exe using /tmp/LauncherName8776581383509947268.ico
Comment 12 DJ Houghton CLA 2011-04-11 16:24:28 EDT
I have opened bug 342489 to address the above error messages being printed to the console.