Bug 226321 - Logged errors are teh suck; please use more better engritch
Summary: Logged errors are teh suck; please use more better engritch
Status: RESOLVED FIXED
Alias: None
Product: Community
Classification: Eclipse Foundation
Component: Cross-Project (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P1 normal (vote)
Target Milestone: ---   Edit
Assignee: Bjorn Freeman-Benson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-09 13:19 EDT by Nick Boldt CLA
Modified: 2013-09-13 16:18 EDT (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Boldt CLA 2008-04-09 13:19:07 EDT
In order to facilitate releng folks' ability to debug Ganymatic problems, can errors such as the following be rewritten so we know if it's something we did, or something transient/uncontrollable?

[java] ERROR [0029] : Resolution attempt ended with exception: Error Parsing feature stream.

What's a feature stream? 

[java] ERROR [0029] : No suitable provider for component org.eclipse.tptp.birt:site.feature/[4.4.100.v200802291616-7J7K_77i0i5EsQgZWz0lwwts2lw4,4.4.100.v200802291616-7J7K_77i0i5EsQgZWz0lwwts2lw4]#OSGi was found in searchPath org.eclipse.tptp

What's the fix here? Could the error message suggest what went wrong and possibly how to solve this?

kthxbye!
Comment 1 Nick Boldt CLA 2008-04-10 01:29:38 EDT
Another example:

[java] ERROR [0031] : java.lang.ClassCastException: java.lang.String incompatible with org.eclipse.update.core.model.SiteModel
[java] WARN: java.lang.ClassCastException: java.lang.String incompatible with org.eclipse.update.core.model.SiteModel
[java] java.lang.ClassCastException: java.lang.String incompatible with org.eclipse.update.core.model.SiteModel

What does this mean, and how can it be both an ERROR & a WARNing? Next you'll tell me it's a floor wax AND a dessert topping, too! :)
Comment 2 Thomas Hallgren CLA 2008-04-10 11:53:44 EDT
(In reply to comment #0)
> In order to facilitate releng folks' ability to debug Ganymatic problems, can
> errors such as the following be rewritten so we know if it's something we did,
> or something transient/uncontrollable?
> 
> [java] ERROR [0029] : Resolution attempt ended with exception: Error Parsing
> feature stream.
> 
> What's a feature stream? 
> 
This error messages stems from the org.eclipse.update.internal.core.InternalFeatureParser, i.e. the parser used by the UpdateManager for parsing feature.xml files. I agree that the error is not very informative. It would be much better if it said something about what file it was parsing and at what line the error occurred. 

It's hard to fix this particular error in the scope of Ganymatic and/or Buckminster since it happens way down in the Update Manager code.

> [java] ERROR [0029] : No suitable provider for component
> org.eclipse.tptp.birt:site.feature/[4.4.100.v200802291616-7J7K_77i0i5EsQgZWz0lwwts2lw4,4.4.100.v200802291616-7J7K_77i0i5EsQgZWz0lwwts2lw4]#OSGi
> was found in searchPath org.eclipse.tptp
> 
> What's the fix here? Could the error message suggest what went wrong and
> possibly how to solve this?
> 
I agree this is very cryptic. Ganymatic uses Buckminster to resolve the features declared in the site contribution file. Buckminster in turn uses a Resource Map Provider that is generated from the site contribution. Here, the generated provider is not able to resolve the feature.

Perhaps Ganymatic could filter the "No suitable provider for component xxx was found in searchPath yyy" message and instead print something like:

"Feature xxx declared in Ganymede contribution named yyy could not be found"

Comment 3 Thomas Hallgren CLA 2008-04-10 12:01:08 EDT
(In reply to comment #1)
> Another example:
> 
> [java] ERROR [0031] : java.lang.ClassCastException: java.lang.String
> incompatible with org.eclipse.update.core.model.SiteModel
> [java] WARN: java.lang.ClassCastException: java.lang.String incompatible with
> org.eclipse.update.core.model.SiteModel
> [java] java.lang.ClassCastException: java.lang.String incompatible with
> org.eclipse.update.core.model.SiteModel
> 
> What does this mean, and how can it be both an ERROR & a WARNing? Next you'll
> tell me it's a floor wax AND a dessert topping, too! :)
> 
Another example of an error generated by a parser in the Update Manager framework. This time it is the org.eclipse.update.core.model.DefaultSiteParser. For some reason, it's objectStack is unbalanced. It makes an attempt to process a category definition and assumes that a SiteModel is at the top of the stack. Unfortunately, the top object is a String.

Just as with the "Error Parsing feature stream" message, it's hard to fix this problem within the scope of Ganymatic/Buckminster unless we implement our own set of parsers and with p2 around the corner I'm not sure it's meaningful to post bugzillas on the Update Manager framework.

Perhaps the best solution would be a wiki page where messages like this could be explained in detail? Then we could explanations as we encounter the messages.


Comment 4 Nick Boldt CLA 2008-04-10 12:43:26 EDT
(In reply to comment #3)
> it's hard to fix this
> problem within the scope of Ganymatic/Buckminster unless we implement our own
> set of parsers and with p2 around the corner I'm not sure it's meaningful to
> post bugzillas on the Update Manager framework.

You're absolutely right, Update has little chance of being, ahem, updated in time for 3.4.
 
> Perhaps the best solution would be a wiki page where messages like this could
> be explained in detail? Then we could explanations as we encounter the
> messages.

Sounds like a great workaround. If I get time this week I'll start something using the information digested here.

Comment 5 Nick Boldt CLA 2008-04-12 00:57:44 EDT
> > Perhaps the best solution would be a wiki page where messages like this could
> > be explained in detail? Then we could explanations as we encounter the
> > messages.

First draft:

http://wiki.eclipse.org/Ganymede/Build/Troubleshooting

Comment 6 Nick Boldt CLA 2008-04-27 14:57:49 EDT
Been seeing this one for the past 3 days. Thomas, Bjorn, or David... what does it mean, and what's the fix?

  [java] ERROR: An internal error occurred during: "site.mirror materializer".
  [java] java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
  
  (http://build.eclipse.org/ganymede/recent/2008_118_18_52_03/index.html)


Comment 7 David Williams CLA 2008-04-27 20:30:38 EDT
(In reply to comment #6)
> ... what does it mean, and what's the fix?
> 

I've been assuming it mean someone's jar file was incorrectly signed (or, most likely, tweaked after having been signed). But, not sure which file, or project. 

I checked all the jars in technology/dltd/updates and they all were fine (all being unsigned, that is). 


Comment 8 David Williams CLA 2008-04-28 00:01:42 EDT
(In reply to comment #7)
> (In reply to comment #6)

I created a patched version of update manager, so it'd print out more information when the Exception occurred, and it implicates 
org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar 

I'd create a new bug, but bugzilla seems broken. 
Running jarsigner -verify on 
~/downloads/modeling/m2m/updates
indicated this jar was the only security _error_, but there were a number "with no manifest" which sounds odd, a few were signed, and a number unsigned. 

Believe that's yours to look at Nick? 


Comment 9 Nick Boldt CLA 2008-04-28 00:16:25 EDT
(In reply to comment #8)
> I created a patched version of update manager, so it'd print out more
> information when the Exception occurred, and it implicates 
> org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar 
> I'd create a new bug, but bugzilla seems broken. 

Use Mylyn, it still works for opening/updating bugs. See bug 229016. 

> Running jarsigner -verify on 
> ~/downloads/modeling/m2m/updates
> indicated this jar was the only security _error_, but there were a number "with
> no manifest" which sounds odd, a few were signed, and a number unsigned. 
> Believe that's yours to look at Nick? 

Yep, I'll have a look tomorrow. M2T-ATL is due for an update site refresh anyway (bug 212203).

Comment 10 David Williams CLA 2008-04-28 02:51:15 EDT
I've opened bug 229019 to track the lack of useful error message when update manager can't read a jar due to security error. 

Comment 11 Nick Boldt CLA 2008-04-29 01:46:28 EDT
New one:

  [java] ERROR [0100] : org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar [Invalid signature file digest for Manifest main attributes]
  [java] INFO: TAG-ID 0100 = project: file:/opt/public/ganymede/workingdir/org.eclipse.ganymede.sitecontributions/emft-ecoretools.sc, path: org.eclipse.ganymede -> org.eclipse.emft-ecoretools-sc
  
Apparently this is an Ecore Tools problem [1] ... but the ERROR is aligned with ATL. 
  
[1] http://build.eclipse.org/ganymede/recent/2008_120_05_22_29//index.html
Comment 12 Thomas Hallgren CLA 2008-04-29 06:30:10 EDT
This was a Buckminster problem, bug #229232, now fixed. New bits are uploaded to our download site but a rebuild of Ganymatic is necessary.
Comment 13 Nick Boldt CLA 2008-04-29 10:46:14 EDT
(In reply to comment #12)
> This was a Buckminster problem, bug #229232, now fixed. New bits are uploaded
> to our download site but a rebuild of Ganymatic is necessary.

Assuming you mean "respin the build", then I've done that from here [1], but it fails the same way here [2].

[1] http://build.eclipse.org:9777/dashboard/dashboard?s=1
[2] http://build.eclipse.org/ganymede/recent/2008_120_14_42_29//index.html#1

If you meant something else... well, I guess Bjorn or David need to do something here?





Comment 14 William Piers CLA 2008-04-29 11:20:41 EDT
Hello,

The build always fails with the same error :
org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar [Invalid signature file digest for Manifest main attributes]
But this jar is no longer used, now the good version is I200804280849 (the one which is refered into m2m-atl.sc).

In fact, the ...engine_2.0.0.v200804231029.jar was an error (it occurred when I tested a new build) because in the normal ATL build, this plugin is builded into an expanded mode. "org.eclipse.m2m.atl.engine_2.0.0.<qualifier>" is a directory, so no jar should replace the org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar.

I think the best solution is to remove org.eclipse.m2m.atl.engine_2.0.0.v200804231029.jar.

Best regards,
William
Comment 15 Bjorn Freeman-Benson CLA 2008-04-29 12:27:40 EDT
(In reply to comment #12)
Ganymatic has been updated to the latest Buckminster bits, but the Ganymede builds are still failing with:
 [java] ERROR: An internal error occurred during: "site.mirror materializer".
 [java] java.lang.SecurityException: Invalid signature file digest for Manifest main attributes

As per bug 229167, I am trying to update to the latest Platform bits, but their I-builds are failing, so I'm stuck for now.
Comment 16 Bjorn Freeman-Benson CLA 2008-04-29 16:35:59 EDT
The new Buckminster is being used and the build is green, so I'll consider this bug closed.
Comment 17 Nick Boldt CLA 2008-04-29 19:08:06 EDT
Well, if nothing in here needs to be translated into the wiki [1], then sure. I'll reopen this next time something red happens.

[1] http://wiki.eclipse.org/Ganymede/Build/Troubleshooting