Add a retryCount variable to work around intermittent failures.
---------------------------------------------------------------
Key: MWAS-43
URL: http://jira.codehaus.org/browse/MWAS-43
Project: Maven 2.x WebSphere 6 Plugin
Issue Type: New Feature
Environment: N/A
Reporter: Chris Graham
Assignee: David J. M. Karlsen
Attachments: MWAS-43.patch
Maven builds will be failed, sometimes unnecessarily either due to connection
issues to the DMgr process (which effects the WsAdminMojo) and quite often due
to bugs in the underlying implementation of ServiceDeploy (which effects the
ServiceDeployMojo).
Should these failures occur when performing a release, it is a nightmare to
clean up.
A typical failure of ServiceDeploy looks like this:
>From the Hudson/Maven log:
[INFO] servicedeploy:
[INFO] [servicedeploy] Starting workbench in /tmp/sd/12070a80e15
[INFO] [servicedeploy] Initializing workspace
[INFO] [servicedeploy] Building project IL802_PurchaseOrderConfirmation_WPS
[INFO] [servicedeploy] Rebuilding project IL802_PurchaseOrderConfirmation_WPS
[INFO] [servicedeploy] Rebuilding project IL802_PurchaseOrderConfirmation_WPS
[INFO] [servicedeploy] Building project IL802_PurchaseOrderConfirmation_WPSEJB
[INFO] [servicedeploy] Building project IL802_PurchaseOrderConfirmation_WPSApp
[INFO] [servicedeploy] Building project SharedArtifacts
[INFO] [servicedeploy] Building project IL802_PurchaseOrderConfirmation_WPS
[INFO] [servicedeploy] Rebuilding project IL802_PurchaseOrderConfirmation_WPS
[INFO] [servicedeploy] Deploying IL802_PurchaseOrderConfirmation_WPSApp
[INFO] [servicedeploy] There was an unexpected exception in the deployment
framework. No ear file will be generated. Run serviceDeploy with the -keep
option and inspect the workspace log for details.
[INFO]
[INFO] [servicedeploy] 12 warning messages were reported during deployment:
[INFO]
from: sctappd03:/tmp/sd/12070a80e15/.metadata/.log (still there - I've not
wiped it yet):
!ENTRY com.ibm.ws.sca.rapiddeploy.headless 1 0 Apr 04, 2009 21:28:07.755
!MESSAGE Deploying selected modules
!ENTRY com.ibm.ws.sca.rapiddeploy.headless 4 0 Apr 04, 2009 21:28:07.759
!MESSAGE java.lang.NullPointerException
!STACK 0
java.lang.NullPointerException
at
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java(Compiled
Code))
at
com.ibm.wtp.internal.emf.workbench.ProjectResourceSetImpl.getResource(ProjectResourceSetImpl.java:229)
at
com.ibm.wtp.emf.workbench.WorkbenchResourceHelper.getOrCreateResource(WorkbenchResourceHelper.java:373)
at
com.ibm.wtp.emf.workbench.edit.EditModel.getResource(EditModel.java:638)
at
com.ibm.wtp.emf.workbench.edit.EditModel.getOrCreateResource(EditModel.java:1311)
at
com.ibm.etools.ear.earproject.EAREditModel.getEARProjectMap(EAREditModel.java:246)
at
com.ibm.etools.ear.earproject.EAREditModel.getModuleMappings(EAREditModel.java:421)
at
com.ibm.etools.ear.earproject.EAREditModel.getModuleMapping(EAREditModel.java:269)
at
com.ibm.etools.ear.earproject.EARNatureRuntime.primGetModuleProject(EARNatureRuntime.java:379)
at
com.ibm.etools.ear.earproject.EARNatureRuntime.getModuleProject(EARNatureRuntime.java:235)
at com.ibm.etools.ejbdeploy.EJBDeployer.visit(EJBDeployer.java:180)
at com.ibm.etools.ejbdeploy.EJBDeployer.doExecute(EJBDeployer.java:257)
at com.ibm.etools.ejbdeploy.EJBDeployer.execute(EJBDeployer.java:240)
at
com.ibm.wtp.j2ee.deploy.J2EEDeployOperation.deploy(J2EEDeployOperation.java:90)
at
com.ibm.wtp.j2ee.deploy.J2EEDeployOperation.execute(J2EEDeployOperation.java:67)
at
com.ibm.wtp.common.operation.WTPOperation.doRun(WTPOperation.java:267)
at
com.ibm.ws.sca.rapiddeploy.headless.applications.ServiceDeployApplication.deploy(ServiceDeployApplication.java:1324)
at
com.ibm.ws.sca.rapiddeploy.headless.applications.ServiceDeployApplication.run(ServiceDeployApplication.java:434)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at org.eclipse.core.launcher.Main.basicRun(Main.java:185)
at org.eclipse.core.launcher.Main.run(Main.java:704)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployLauncher.startup(ServiceDeployLauncher.java:142)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.startup(ServiceDeployMain.java:73)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.execute(ServiceDeployMain.java:47)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.main(ServiceDeployMain.java:121)
!ENTRY com.ibm.ws.sca.rapiddeploy.headless 4 0 Apr 04, 2009 21:28:07.804
!MESSAGE An unexpected exception occurred while executing the j2ee deployers.
!STACK 0
java.lang.NullPointerException
at
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java(Compiled
Code))
at
com.ibm.wtp.internal.emf.workbench.ProjectResourceSetImpl.getResource(ProjectResourceSetImpl.java:229)
at
com.ibm.wtp.emf.workbench.WorkbenchResourceHelper.getOrCreateResource(WorkbenchResourceHelper.java:373)
at
com.ibm.wtp.emf.workbench.edit.EditModel.getResource(EditModel.java:638)
at
com.ibm.wtp.emf.workbench.edit.EditModel.getOrCreateResource(EditModel.java:1311)
at
com.ibm.etools.ear.earproject.EAREditModel.getEARProjectMap(EAREditModel.java:246)
at
com.ibm.etools.ear.earproject.EAREditModel.getModuleMappings(EAREditModel.java:421)
at
com.ibm.etools.ear.earproject.EAREditModel.getModuleMapping(EAREditModel.java:269)
at
com.ibm.etools.ear.earproject.EARNatureRuntime.primGetModuleProject(EARNatureRuntime.java:379)
at
com.ibm.etools.ear.earproject.EARNatureRuntime.getModuleProject(EARNatureRuntime.java:235)
at com.ibm.etools.ejbdeploy.EJBDeployer.visit(EJBDeployer.java:180)
at com.ibm.etools.ejbdeploy.EJBDeployer.doExecute(EJBDeployer.java:257)
at com.ibm.etools.ejbdeploy.EJBDeployer.execute(EJBDeployer.java:240)
at
com.ibm.wtp.j2ee.deploy.J2EEDeployOperation.deploy(J2EEDeployOperation.java:90)
at
com.ibm.wtp.j2ee.deploy.J2EEDeployOperation.execute(J2EEDeployOperation.java:67)
at
com.ibm.wtp.common.operation.WTPOperation.doRun(WTPOperation.java:267)
at
com.ibm.ws.sca.rapiddeploy.headless.applications.ServiceDeployApplication.deploy(ServiceDeployApplication.java:1324)
at
com.ibm.ws.sca.rapiddeploy.headless.applications.ServiceDeployApplication.run(ServiceDeployApplication.java:434)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at org.eclipse.core.launcher.Main.basicRun(Main.java:185)
at org.eclipse.core.launcher.Main.run(Main.java:704)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployLauncher.startup(ServiceDeployLauncher.java:142)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.startup(ServiceDeployMain.java:73)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.execute(ServiceDeployMain.java:47)
at
com.ibm.ws.sca.rapiddeploy.headless.main.ServiceDeployMain.main(ServiceDeployMain.java:121)
This is an intermittent error, as if you rerun it again, the error is not
likely to occur.
Note, this is different from a real build failure, which will always fail.
We have 34 (currently, soon to be over 50, and ultimately around 120) EARs all
generated by ServiceDeploy that all need to be built and released together. We
are guaranteed to receive one of these failures when building 34 ears, much
less 120.
So, this patch, generated against the 1.1 branch, introduces the retryCount
variable to allow us to retry a few times to work around failures such as
these. Projects with true failures, will still fail, the only impact is time.
The default is a retryCount of zero, allowing the default behaviour to be
preserved.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email