CDV ❯ ModulesLoader swallows exception
-
Bug
-
Status: Closed
-
2 Major
-
Resolution: Fixed
-
DSO:L1
-
-
nadeem
-
Reporter:
-
August 08, 2008
-
0
-
Watchers: 1
-
May 12, 2009
-
April 03, 2009
Description
When an exception occurs while ModulesLoader is loading a TIM into the L1, the details of the exception are discarded and only a summary message is printed to the log: “BundleActivator start failed” for instance.
This makes it very difficult to debug problems with module loading. The full details of the exception should be logged so that problems loading modules can be debugged by reading the log output.
NOTE: Be sure to test whether a call to a regular (ie. non-console) logger will have any effect here. It is possible (but I don’t know either way) that the log file has not been opened yet and thus logging to a regular logger and calling System.exit() afterwards will lose the log statement.
Comments
Alex Miller 2008-08-08
jvoegele 2008-12-10
I think this has been fixed. Can someone give a definitive statement?
Fiona OShea 2008-12-17
can you verify that this is fixed?
Hung Huynh 2008-12-17
This is the same as DEV-2201, need to be fixed.
nadeem ghani 2009-03-27
if a tim is missing, we end up printing a duplicate message followed by a stacktrace
- edit samples/pojo/chatter/tc-config.xml and add a
section for tim-apache-struts - start-tc-server.sh -f samples/pojo/chatter/tc-config.xml
- samples/pojo/chatter/run.sh
Starting BootJarTool… 2009-03-27 13:33:51,302 INFO - Terracotta Enterprise 3.0.0-nightly, as of 20090327-080324 (Revision 3807-12356 by cruise@su10mo5 from 3.0) 2009-03-27 13:33:51,761 INFO - Configuration loaded from the file at ‘/Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/samples/pojo/chatter/tc-config.xml’. 2009-03-27 13:33:51,991 INFO - Product key found at: /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/product.key 2009-03-27 13:33:52,107 INFO - —————- Terracotta product key ————– License type = Commercial License number = 1 Licensee = Terracotta Test Product = FX Max clients = 100 Capabilities = roots, sessions, TOC, server striping —————————————————— 2009-03-27 13:33:52,387 FATAL - BootJarTool: Unable to resolve TIM file for tim-apache-struts-1.1 version 1.3.0-SNAPSHOT (group-id: org.terracotta.modules)
Attempted to resolve the TIM using the following descriptors:
groupId: org.terracotta.modules
name : tim-apache-struts-1.1
version: 1.3.0-SNAPSHOT
Expected the TIM’s filename to be:
tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
Expected these attributes to be in the manifest:
Bundle-SymbolicName: org.terracotta.modules.tim-apache-struts-1.1
Bundle-Version : 1.3.0.SNAPSHOT
Searched using the following repositories:
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules
Tried to resolve the jar file using the following paths:
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules/org/terracotta/modules/tim-apache-struts-1.1/1.3.0-SNAPSHOT/tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules/tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
If the jar file exists and is in one of the paths listed above, make sure that the Bundle-SymbolicName and Bundle-Version attribute in its manifest matches the ones that the resolver expects.
If you do not have this particular TIM or any of its dependencies installed, try using the tim-get tool’s ‘install’ command:
$ tim-get.sh install tim-apache-struts-1.1 1.3.0-SNAPSHOT org.terracotta.modules
You can also use the tool’s ‘list’ command to see if it’s actually available:
$ tim-get.sh list tim-apache-struts-1.1 # list anything that has 'tim-apache-struts-1.1' in it's name
$ tim-get.sh list # or, list everything that is available
For more information on how to use the tim-get tool, invoke:
$ tim-get.sh help 2009-03-27 13:33:52,388 FATAL - Exception thrown org.osgi.framework.BundleException: Unable to resolve TIM file for tim-apache-struts-1.1 version 1.3.0-SNAPSHOT (group-id: org.terracotta.modules)
Attempted to resolve the TIM using the following descriptors:
groupId: org.terracotta.modules
name : tim-apache-struts-1.1
version: 1.3.0-SNAPSHOT
Expected the TIM’s filename to be:
tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
Expected these attributes to be in the manifest:
Bundle-SymbolicName: org.terracotta.modules.tim-apache-struts-1.1
Bundle-Version : 1.3.0.SNAPSHOT
Searched using the following repositories:
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules
Tried to resolve the jar file using the following paths:
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules/org/terracotta/modules/tim-apache-struts-1.1/1.3.0-SNAPSHOT/tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
+ /Users/nghani/__releases/mar23/terracotta-3.0.0-nightly-ee-rev12356/modules/tim-apache-struts-1.1-1.3.0-SNAPSHOT.jar
If the jar file exists and is in one of the paths listed above, make sure that the Bundle-SymbolicName and Bundle-Version attribute in its manifest matches the ones that the resolver expects.
If you do not have this particular TIM or any of its dependencies installed, try using the tim-get tool’s ‘install’ command:
$ tim-get.sh install tim-apache-struts-1.1 1.3.0-SNAPSHOT org.terracotta.modules
You can also use the tool’s ‘list’ command to see if it’s actually available:
$ tim-get.sh list tim-apache-struts-1.1 # list anything that has 'tim-apache-struts-1.1' in it's name
$ tim-get.sh list # or, list everything that is available
For more information on how to use the tim-get tool, invoke:
$ tim-get.sh help
at com.tc.plugins.ModulesLoader.initModules(ModulesLoader.java:110)
at com.tc.object.tools.BootJarTool.loadModules(BootJarTool.java:258)
at com.tc.object.tools.BootJarTool.<init>(BootJarTool.java:242)
at com.tc.object.tools.BootJarTool.main(BootJarTool.java:2651)
Fiona OShea 2009-03-27
Is this a new issue? with the original issue resolved? If so please add a new Jira and close original. thanks
Need to fix this as it has (multiple times) made it difficult and time-consuming to debug monkey issues.