You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2007/08/15 01:32:27 UTC
svn commit: r565969 -
/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java
Author: mriou
Date: Tue Aug 14 16:32:26 2007
New Revision: 565969
URL: http://svn.apache.org/viewvc?view=rev&rev=565969
Log:
Cleaning up store properly when a process couldn't be registered in the engine.
Modified:
ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java
Modified: ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java?view=diff&rev=565969&r1=565968&r2=565969
==============================================================================
--- ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java (original)
+++ ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java Tue Aug 14 16:32:26 2007
@@ -277,14 +277,21 @@
});
// We want the events to be fired outside of the bounds of the writelock.
- for (ProcessConfImpl process : processes) {
- fireEvent(new ProcessStoreEvent(ProcessStoreEvent.Type.DEPLOYED, process.getProcessId(), process.getDeploymentUnit()
- .getName()));
- fireStateChange(process.getProcessId(), process.getState(), process.getDeploymentUnit().getName());
+ try {
+ for (ProcessConfImpl process : processes) {
+ fireEvent(new ProcessStoreEvent(ProcessStoreEvent.Type.DEPLOYED, process.getProcessId(), process.getDeploymentUnit()
+ .getName()));
+ fireStateChange(process.getProcessId(), process.getState(), process.getDeploymentUnit().getName());
+ }
+ } catch (Exception e) {
+ // A problem at that point means that engine deployment failed, we don't want the store to keep the du
+ __log.warn("Deployment failed within the engine, store undeploying process.");
+ undeploy(deploymentUnitDirectory);
+ if (e instanceof ContextException) throw (ContextException) e;
+ else throw new ContextException("Deployment failed within the engine.", e);
}
return deployed;
-
}
public Collection<QName> undeploy(final File dir) {