Author: mriou
Date: Mon Jan 19 09:43:05 2009
New Revision: 735755
URL: http://svn.apache.org/viewvc?rev=735755&view=rev
Log:
Making the migration a little more robust by ignoring null values (even when
they shouldn't be).
Modified:
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java
Modified:
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java?rev=735755&r1=735754&r2=735755&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java
(original)
+++
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeyMigration.java
Mon Jan 19 09:43:05 2009
@@ -35,12 +35,15 @@
for (CorrelationSetDAO cset : csets) {
CorrelationKey ckey = cset.getValue();
instances.put(cset.getInstance().getInstanceId(),
cset.getInstance());
- Integer ckeyInt = asInt(ckey.getCorrelationSetName());
- if (ckeyInt != null) {
- OScope.CorrelationSet ocset = findCorrelationById(ckeyInt,
registeredProcesses, cset.getProcess().getProcessId());
- if (ocset == null) __log.debug("Correlation set not found,
couldn't upgrade set " + ckey.toCanonicalString());
- else {
- cset.setValue(null, new CorrelationKey(ocset.name,
ckey.getValues()));
+ if (ckey != null) {
+ __log.debug("Correlation set id " + cset.getCorrelationSetId()
+ " key " + ckey);
+ Integer ckeyInt = asInt(ckey.getCorrelationSetName());
+ if (ckeyInt != null) {
+ OScope.CorrelationSet ocset = findCorrelationById(ckeyInt,
registeredProcesses, cset.getProcess().getProcessId());
+ if (ocset == null) __log.debug("Correlation set not found,
couldn't upgrade set " + ckey.toCanonicalString());
+ else {
+ cset.setValue(null, new CorrelationKey(ocset.name,
ckey.getValues()));
+ }
}
}
}
@@ -59,24 +62,28 @@
// Changing all routes
for (MessageRouteDAO routeDAO :
corr.getAllRoutes()) {
CorrelationKey oldKey =
routeDAO.getCorrelationKey();
- Integer ckeyInt =
asInt(oldKey.getCorrelationSetName());
- if (ckeyInt != null) {
- OScope.CorrelationSet ocset =
findCorrelationById(ckeyInt, registeredProcesses,
process.getConf().getProcessId());
- if (ocset == null)
__log.debug("Correlation set not found, couldn't upgrade route " +
oldKey.toCanonicalString());
- else {
- routeDAO.setCorrelationKey(new
CorrelationKey(ocset.name, oldKey.getValues()));
+ if (oldKey != null) {
+ Integer ckeyInt =
asInt(oldKey.getCorrelationSetName());
+ if (ckeyInt != null) {
+ OScope.CorrelationSet ocset =
findCorrelationById(ckeyInt, registeredProcesses,
process.getConf().getProcessId());
+ if (ocset == null)
__log.debug("Correlation set not found, couldn't upgrade route " +
oldKey.toCanonicalString());
+ else {
+ routeDAO.setCorrelationKey(new
CorrelationKey(ocset.name, oldKey.getValues()));
+ }
}
}
}
// Changing all queued messages
for (CorrelatorMessageDAO corrMsgDAO :
corr.getAllMessages()) {
CorrelationKey oldKey =
corrMsgDAO.getCorrelationKey();
- Integer ckeyInt =
asInt(oldKey.getCorrelationSetName());
- if (ckeyInt != null) {
- OScope.CorrelationSet ocset =
findCorrelationById(ckeyInt, registeredProcesses,
process.getConf().getProcessId());
- if (ocset == null)
__log.debug("Correlation set not found, couldn't upgrade route " +
oldKey.toCanonicalString());
- else {
- corrMsgDAO.setCorrelationKey(new
CorrelationKey(ocset.name, oldKey.getValues()));
+ if (oldKey != null) {
+ Integer ckeyInt =
asInt(oldKey.getCorrelationSetName());
+ if (ckeyInt != null) {
+ OScope.CorrelationSet ocset =
findCorrelationById(ckeyInt, registeredProcesses,
process.getConf().getProcessId());
+ if (ocset == null)
__log.debug("Correlation set not found, couldn't upgrade route " +
oldKey.toCanonicalString());
+ else {
+ corrMsgDAO.setCorrelationKey(new
CorrelationKey(ocset.name, oldKey.getValues()));
+ }
}
}
}
Modified:
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java?rev=735755&r1=735754&r2=735755&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java
(original)
+++
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/CorrelationKeySetMigration.java
Mon Jan 19 09:43:05 2009
@@ -59,6 +59,7 @@
ExecutionQueueImpl soup;
try {
soup = readOldState(instance, oproc, getClass().getClassLoader(),
true);
+ if (soup == null) return false;
} catch (Exception e) {
__log.debug(" failed to read a v1 state for instance " +
instance.getInstanceId());
ExecutionQueueImpl._classDescriptors.clear();
@@ -96,6 +97,7 @@
ExecutionQueueImpl soup;
try {
soup = readOldState(instance, oproc, getClass().getClassLoader(),
false);
+ if (soup == null) return false;
} catch (Exception e) {
__log.debug(" failed to read a v2 state for instance " +
instance.getInstanceId());
ExecutionQueueImpl._classDescriptors.clear();
@@ -126,6 +128,7 @@
private ExecutionQueueImpl readOldState(ProcessInstanceDAO instance,
OProcess oprocess,
ClassLoader cl, boolean changeKey)
{
+ if (instance.getExecutionState() == null) return null;
try {
ExecutionQueueImpl soup = new ExecutionQueueImpl(cl);
ObjectStreamClass osc;