You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ka...@apache.org on 2009/11/21 03:14:23 UTC
svn commit: r882826 [1/2] - in /ode/branches/APACHE_ODE_1.X:
axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/
axis2/src/main/java/org/apache/ode/axis2/
bpel-api/src/main/java/org/apache/ode/bpel/iapi/
bpel-epr/src/main/java/org/apache/ode/...
Author: karthick
Date: Sat Nov 21 02:14:04 2009
New Revision: 882826
URL: http://svn.apache.org/viewvc?rev=882826&view=rev
Log:
ODE-694 De-Normalizing Large Data
Modified:
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFailureHibTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultHibTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessHibTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanTestBase.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/ProcessCronCleanupTest.java
ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/SystemCronCleanupTest.java
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Scheduler.java
ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java
ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/MigrationHandler.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerScheduler.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java
ode/branches/APACHE_ODE_1.X/dao-hibernate-db/src/main/sql/common.sql
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/SessionManager.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ActivityRecoveryDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/FaultDAOImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageExchangeDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/PartnerLinkDAOImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/XmlDataDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HActivityRecovery.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HBpelEvent.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HFaultData.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HLargeData.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessage.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessageExchange.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HPartnerLink.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HXmlData.java
ode/branches/APACHE_ODE_1.X/dao-jpa-ojpa-derby/src/main/scripts/common.sql
ode/branches/APACHE_ODE_1.X/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/DOMUtils.java
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFailureHibTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFailureHibTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFailureHibTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFailureHibTest.java Sat Nov 21 02:14:04 2009
@@ -21,7 +21,6 @@
import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.hibernate.Query;
public class CleanFailureHibTest extends CleanFailureTest {
@Override
@@ -39,11 +38,4 @@
return HibDaoConnectionFactoryImpl.getProcess();
}
- @Override
- protected int getLargeDataCount(int echoCount) throws Exception {
- initTM();
- Query query = HibDaoConnectionFactoryImpl.getSession().createQuery("select count(id) from HLargeData as l");
-
- return ((Long)query.uniqueResult()).intValue();
- }
}
\ No newline at end of file
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultHibTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultHibTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultHibTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultHibTest.java Sat Nov 21 02:14:04 2009
@@ -20,7 +20,6 @@
package org.apache.ode.axis2.instancecleanup;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.hibernate.Query;
public class CleanFaultHibTest extends CleanFaultTest {
@Override
@@ -33,11 +32,4 @@
return HibDaoConnectionFactoryImpl.getInstance();
}
- @Override
- protected int getLargeDataCount(int echoCount) throws Exception {
- initTM();
- Query query = HibDaoConnectionFactoryImpl.getSession().createQuery("select count(id) from HLargeData as l");
-
- return ((Long)query.uniqueResult()).intValue();
- }
}
\ No newline at end of file
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanFaultTest.java Sat Nov 21 02:14:04 2009
@@ -25,6 +25,7 @@
import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.iapi.ContextException;
+
import org.testng.annotations.Test;
public class CleanFaultTest extends CleanTestBase {
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessHibTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessHibTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessHibTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessHibTest.java Sat Nov 21 02:14:04 2009
@@ -20,7 +20,6 @@
package org.apache.ode.axis2.instancecleanup;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.hibernate.Query;
public class CleanSuccessHibTest extends CleanSuccessTest {
@Override
@@ -33,11 +32,4 @@
return HibDaoConnectionFactoryImpl.getInstance();
}
- @Override
- protected int getLargeDataCount(int echoCount) throws Exception {
- initTM();
- Query query = HibDaoConnectionFactoryImpl.getSession().createQuery("select count(id) from HLargeData as l");
-
- return ((Long)query.uniqueResult()).intValue();
- }
}
\ No newline at end of file
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanSuccessTest.java Sat Nov 21 02:14:04 2009
@@ -80,6 +80,10 @@
server.sendRequestFile("http://localhost:8888/processes/FirstProcess/FirstProcess/FirstProcess/Client", bundleName, "testRequest.soap");
process = assertInstanceCleanup(instances, activityRecoveries, correlationSets, faults, exchanges, routes, messsages, partnerLinks, scopes, variables, events, largeData);
} finally {
+ try {
+ Thread.sleep(1000);
+ } catch(Exception e) {
+ }
server.undeployProcess(bundleName);
assertProcessCleanup(process);
}
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanTestBase.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanTestBase.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanTestBase.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/CleanTestBase.java Sat Nov 21 02:14:04 2009
@@ -142,5 +142,8 @@
protected abstract ProcessInstanceDAO getInstance();
- protected abstract int getLargeDataCount(int echoCount) throws Exception;
+ protected int getLargeDataCount(int echoCount) throws Exception {
+ return echoCount;
+ }
+
}
\ No newline at end of file
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/ProcessCronCleanupTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/ProcessCronCleanupTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/ProcessCronCleanupTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/ProcessCronCleanupTest.java Sat Nov 21 02:14:04 2009
@@ -2,7 +2,6 @@
import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
-import org.hibernate.Query;
import org.testng.annotations.Test;
public class ProcessCronCleanupTest extends CleanTestBase {
@@ -35,12 +34,4 @@
protected ProcessInstanceDAO getInstance() {
return HibDaoConnectionFactoryImpl.getInstance();
}
-
- @Override
- protected int getLargeDataCount(int echoCount) throws Exception {
- initTM();
- Query query = HibDaoConnectionFactoryImpl.getSession().createQuery("select count(id) from HLargeData as l");
-
- return ((Long)query.uniqueResult()).intValue();
- }
}
Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/SystemCronCleanupTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/SystemCronCleanupTest.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/SystemCronCleanupTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/instancecleanup/SystemCronCleanupTest.java Sat Nov 21 02:14:04 2009
@@ -4,7 +4,7 @@
import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.engine.cron.SystemSchedulesConfig;
-import org.hibernate.Query;
+
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@@ -15,7 +15,6 @@
System.setProperty(SystemSchedulesConfig.SCHEDULE_CONFIG_FILE_PROP_KEY, customSchedulesFilePath);
}
- // SEAN - Disable for now, wait until Alexis upgrades Axis to 1.5
// @Test(dataProvider="configs")
public void _testCleanAll() throws Exception {
go("TestSystemCronCleanup", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
@@ -62,12 +61,5 @@
protected ProcessInstanceDAO getInstance() {
return HibDaoConnectionFactoryImpl.getInstance();
}
-
- @Override
- protected int getLargeDataCount(int echoCount) throws Exception {
- initTM();
- Query query = HibDaoConnectionFactoryImpl.getSession().createQuery("select count(id) from HLargeData as l");
-
- return ((Long)query.uniqueResult()).intValue();
- }
+
}
Modified: ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java Sat Nov 21 02:14:04 2009
@@ -500,6 +500,7 @@
dehy.setProcessMaxCount(_odeConfig.getDehydrationMaximumCount());
_bpelServer.setDehydrationPolicy(dehy);
}
+ _bpelServer.setMigrationTransactionTimeout(_odeConfig.getMigrationTransactionTimeout());
_bpelServer.setConfigProperties(_odeConfig.getProperties());
_bpelServer.init();
_bpelServer.setInstanceThrottledMaximumCount(_odeConfig.getInstanceThrottledMaximumCount());
Modified: ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Scheduler.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Scheduler.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Scheduler.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Scheduler.java Sat Nov 21 02:14:04 2009
@@ -94,6 +94,21 @@
<T> T execTransaction(Callable<T> transaction)
throws Exception, ContextException;
+ /**
+ * Execute a {@link Callable} in a transactional context. If the callable
+ * throws an exception, then the transaction will be rolled back, otherwise
+ * the transaction will commit. Also, modify the value of the timeout value
+ * that is associated with the transactions started by the current thread.
+ *
+ * @param <T> return type
+ * @param transaction transaction to execute
+ * @param timeout, The value of the timeout in seconds. If the value is zero, the transaction service uses the default value.
+ * @return result
+ * @throws Exception
+ */
+ <T> T execTransaction(Callable<T> transaction, int timeout)
+ throws Exception, ContextException;
+
void setRollbackOnly() throws Exception;
/**
Modified: ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java Sat Nov 21 02:14:04 2009
@@ -156,6 +156,13 @@
}
public <T> T execTransaction(Callable<T> transaction) throws Exception, ContextException {
+ return execTransaction(transaction, 0);
+ }
+
+ public <T> T execTransaction(Callable<T> transaction, int timeout) throws Exception, ContextException {
+ if (timeout > 0) {
+ _txm.setTransactionTimeout(timeout);
+ }
beginTransaction();
try {
T retval = transaction.call();
@@ -165,6 +172,11 @@
__log.error("Caught an exception during transaction", t);
rollbackTransaction();
throw new ContextException("Error in tx", t);
+ } finally {
+ if (timeout > 0) {
+ // restores the default value
+ _txm.setTransactionTimeout(0);
+ }
}
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java Sat Nov 21 02:14:04 2009
@@ -95,6 +95,8 @@
public static final String PROP_DAOCF = "dao.factory";
+ public static final String PROP_MIGRATION_TRANSACTION_TIMEOUT = "migration.transaction.timeout";
+
public static final String DEFAULT_TX_FACTORY_CLASS_NAME = "org.apache.ode.il.EmbeddedGeronimoFactory";
private File _cfgFile;
@@ -313,5 +315,9 @@
public String getDbInternalPassword() {
return getProperty(PROP_DB_INTERNAL_PASSWORD);
}
+
+ public int getMigrationTransactionTimeout() {
+ return Integer.valueOf(getProperty(PROP_MIGRATION_TRANSACTION_TIMEOUT, String.valueOf(0)));
+ }
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java Sat Nov 21 02:14:04 2009
@@ -107,6 +107,7 @@
private DehydrationPolicy _dehydrationPolicy;
private boolean _hydrationLazy;
private int _hydrationLazyMinimumSize;
+ private int _migrationTransactionTimeout;
BpelEngineImpl _engine;
protected BpelDatabase _db;
@@ -156,7 +157,9 @@
__log.debug("BPEL SERVER starting.");
// Eventually running some migrations before starting
- new MigrationHandler(_contexts).migrate(_registeredProcesses);
+ if (!(new MigrationHandler(_contexts).migrate(_registeredProcesses, _migrationTransactionTimeout))) {
+ throw new RuntimeException("An error occurred while migrating your database to a newer version of the server. Please make sure that the required migration scripts have been executed before starting the server.");
+ }
_state = State.RUNNING;
__log.info(__msgs.msgServerStarted());
@@ -672,4 +675,8 @@
deleteProcessDAO(pconf.getProcessId(), pconf.isTransient());
}
}
+
+ public void setMigrationTransactionTimeout(int migrationTransactionTimeout) {
+ this._migrationTransactionTimeout = migrationTransactionTimeout;
+ }
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/MigrationHandler.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/MigrationHandler.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/MigrationHandler.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/migration/MigrationHandler.java Sat Nov 21 02:14:04 2009
@@ -19,16 +19,22 @@
package org.apache.ode.bpel.engine.migration;
-import org.apache.ode.bpel.engine.Contexts;
-import org.apache.ode.bpel.engine.BpelDatabase;
-import org.apache.ode.bpel.engine.BpelProcess;
-import org.apache.ode.bpel.dao.BpelDAOConnection;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.Callable;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-
-import java.sql.*;
-import java.util.*;
-import java.util.concurrent.Callable;
+import org.apache.ode.bpel.engine.BpelProcess;
+import org.apache.ode.bpel.engine.Contexts;
/**
* Checks database schema versions and migrates when necessary.
@@ -38,9 +44,11 @@
public static final int CURRENT_SCHEMA_VERSION = 6;
+
private Contexts _contexts;
private List<MigrationLink> migrationLinks = new ArrayList<MigrationLink>() {{
- add(new MigrationLink(1, 2, new Migration[] { new CorrelatorsMigration(), new CorrelationKeyMigration() } ));
+ add(new MigrationLink(1, 2, new Migration[] { new CorrelatorsMigration(),
+ new CorrelationKeyMigration() } ));
add(new MigrationLink(2, 3, new Migration[] { new CorrelationKeySetMigration() } ));
add(new MigrationLink(4, 3, new Migration[] { new CorrelationKeySetMigration() } ));
add(new MigrationLink(3, 5, new Migration[] { new CorrelationKeySetDataMigration() } ));
@@ -52,10 +60,10 @@
this._contexts = _contexts;
}
- public boolean migrate(final Set<BpelProcess> registeredProcesses) {
+ public boolean migrate(final Set<BpelProcess> registeredProcesses, int migrationTransactionTimeout) {
if (_contexts.dao.getDataSource() == null) {
__log.debug("No datasource available, stopping migration. Probably running fully in-memory.");
- return false;
+ return true;
}
final int version;
@@ -68,10 +76,10 @@
}
if (version == -1) {
__log.info("No schema version available from the database, migrations will be skipped.");
- return false;
+ return true;
}
if (version == CURRENT_SCHEMA_VERSION) return true;
-
+
try {
boolean success = _contexts.scheduler.execTransaction(new Callable<Boolean>() {
public Boolean call() throws Exception {
@@ -92,7 +100,7 @@
return success;
}
}
- });
+ }, migrationTransactionTimeout);
return success;
} catch (Exception e) {
__log.error("An error occured while migrating your database to a newer version of ODE, changes have " +
@@ -182,6 +190,5 @@
throw new RuntimeException(e);
}
}
-
}
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerScheduler.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerScheduler.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerScheduler.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerScheduler.java Sat Nov 21 02:14:04 2009
@@ -69,6 +69,10 @@
throw new IllegalStateException();
}
+ public <T> T execTransaction(Callable<T> transaction, int timeout) throws Exception, ContextException {
+ throw new IllegalStateException();
+ }
+
public boolean isTransacted() {
return true;
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java Sat Nov 21 02:14:04 2009
@@ -316,7 +316,11 @@
}
public <T> T execTransaction(Callable<T> transaction) throws Exception, ContextException {
- return _scheduler.execTransaction(transaction);
+ return _scheduler.execTransaction(transaction, 0);
+ }
+
+ public <T> T execTransaction(Callable<T> transaction, int timeout) throws Exception, ContextException {
+ return _scheduler.execTransaction(transaction, timeout);
}
public void beginTransaction() throws Exception {
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate-db/src/main/sql/common.sql
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate-db/src/main/sql/common.sql?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate-db/src/main/sql/common.sql (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate-db/src/main/sql/common.sql Sat Nov 21 02:14:04 2009
@@ -1,2 +1,2 @@
create table ODE_SCHEMA_VERSION(VERSION integer);
-insert into ODE_SCHEMA_VERSION values (5);
+insert into ODE_SCHEMA_VERSION values (6);
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/SessionManager.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/SessionManager.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/SessionManager.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/SessionManager.java Sat Nov 21 02:14:04 2009
@@ -139,7 +139,6 @@
.addClass(HBpelEvent.class)
.addClass(HFaultData.class)
.addClass(HActivityRecovery.class)
- .addClass(HLargeData.class)
.addClass(HMessageExchangeProperty.class);
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ActivityRecoveryDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ActivityRecoveryDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ActivityRecoveryDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ActivityRecoveryDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -19,6 +19,9 @@
package org.apache.ode.daohib.bpel;
+import java.io.IOException;
+import java.util.Date;
+
import org.apache.ode.bpel.dao.ActivityRecoveryDAO;
import org.apache.ode.daohib.SessionManager;
import org.apache.ode.daohib.bpel.hobj.HActivityRecovery;
@@ -26,9 +29,6 @@
import org.w3c.dom.Element;
import org.xml.sax.SAXException;
-import java.io.IOException;
-import java.util.Date;
-
/**
* Hibernate based {@link ActivityRecoveryDao} implementation
*/
@@ -56,12 +56,14 @@
public Date getDateTime() {
return _self.getDateTime();
}
-
+
public Element getDetails() {
entering("ActivityRecoveryDaoImpl.getDetails");
- if (_self.getDetails() == null) return null;
+ if (_self.getDetails() == null) {
+ return null;
+ }
try {
- return DOMUtils.stringToDOM(_self.getDetails().getText());
+ return DOMUtils.stringToDOM(_self.getDetails());
} catch (SAXException e) {
throw new RuntimeException(e);
} catch (IOException e) {
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java Sat Nov 21 02:14:04 2009
@@ -53,7 +53,6 @@
import org.apache.ode.daohib.SessionManager;
import org.apache.ode.daohib.bpel.hobj.HBpelEvent;
import org.apache.ode.daohib.bpel.hobj.HCorrelationSet;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HMessageExchange;
import org.apache.ode.daohib.bpel.hobj.HProcess;
import org.apache.ode.daohib.bpel.hobj.HProcessInstance;
@@ -239,9 +238,7 @@
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(event);
oos.flush();
- HLargeData ld = new HLargeData(bos.toByteArray());
- hevent.setData(ld);
- sess.save(ld);
+ hevent.setData(bos.toByteArray());
} catch (Throwable ex) {
// this is really unexpected.
__log.fatal("InternalError: BpelEvent serialization failed.", ex);
@@ -275,7 +272,7 @@
try {
CollectionsX.transformEx(ret, hevents, new UnaryFunctionEx<HBpelEvent, BpelEvent>() {
public BpelEvent apply(HBpelEvent x) throws Exception {
- return (BpelEvent) SerializableUtils.toObject(x.getData().getBinary(), BpelEvent.class
+ return (BpelEvent) SerializableUtils.toObject(x.getData(), BpelEvent.class
.getClassLoader());
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/FaultDAOImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/FaultDAOImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/FaultDAOImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/FaultDAOImpl.java Sat Nov 21 02:14:04 2009
@@ -19,6 +19,10 @@
package org.apache.ode.daohib.bpel;
+import java.io.IOException;
+
+import javax.xml.namespace.QName;
+
import org.apache.ode.bpel.dao.FaultDAO;
import org.apache.ode.daohib.SessionManager;
import org.apache.ode.daohib.bpel.hobj.HFaultData;
@@ -27,9 +31,6 @@
import org.w3c.dom.Element;
import org.xml.sax.SAXException;
-import javax.xml.namespace.QName;
-import java.io.IOException;
-
/**
* Hibernate based {@link FaultDAO} implementation
*/
@@ -52,7 +53,7 @@
entering("FaultDAOImpl.getData");
if (_self.getData() == null) return null;
try {
- return DOMUtils.stringToDOM(_self.getData().getText());
+ return DOMUtils.stringToDOM(_self.getData());
} catch (SAXException e) {
throw new RuntimeException(e);
} catch (IOException e) {
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -20,17 +20,16 @@
package org.apache.ode.daohib.bpel;
+import javax.xml.namespace.QName;
+
import org.apache.ode.bpel.dao.MessageDAO;
import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.daohib.SessionManager;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HMessage;
import org.apache.ode.utils.DOMUtils;
import org.hibernate.Session;
import org.w3c.dom.Element;
-import javax.xml.namespace.QName;
-
public class MessageDaoImpl extends HibernateDao implements MessageDAO {
@@ -56,11 +55,7 @@
public void setData(Element value) {
entering("MessageDaoImpl.setData");
if (value == null) return;
- if (_hself.getMessageData() != null)
- _session.delete(_hself.getMessageData());
- HLargeData newdata = new HLargeData(DOMUtils.domToString(value));
- _session.save(newdata);
- _hself.setMessageData(newdata);
+ _hself.setMessageData(DOMUtils.domToBytes(value));
update();
leaving("MessageDaoImpl.setData");
}
@@ -70,7 +65,7 @@
if (_hself.getMessageData() == null)
return null;
try {
- return DOMUtils.stringToDOM(_hself.getMessageData().getText());
+ return DOMUtils.stringToDOM(_hself.getMessageData());
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -79,11 +74,7 @@
public void setHeader(Element value) {
entering("MessageDaoImpl.setHeader");
if (value == null) return;
- if (_hself.getHeader() != null)
- _session.delete(_hself.getHeader());
- HLargeData newdata = new HLargeData(DOMUtils.domToString(value));
- _session.save(newdata);
- _hself.setHeader(newdata);
+ _hself.setHeader(DOMUtils.domToBytes(value));
update();
leaving("MessageDaoImpl.setHeader");
}
@@ -92,7 +83,7 @@
entering("MessageDaoImpl.getHeader");
if (_hself.getHeader() == null) return null;
try {
- return DOMUtils.stringToDOM(_hself.getHeader().getText());
+ return DOMUtils.stringToDOM(_hself.getHeader());
} catch (Exception e) {
throw new RuntimeException(e);
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageExchangeDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageExchangeDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageExchangeDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageExchangeDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -19,6 +19,14 @@
package org.apache.ode.daohib.bpel;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Set;
+
+import javax.xml.namespace.QName;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ode.bpel.dao.MessageDAO;
@@ -28,19 +36,15 @@
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.daohib.SessionManager;
import org.apache.ode.daohib.bpel.hobj.HCorrelatorMessage;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HMessage;
import org.apache.ode.daohib.bpel.hobj.HMessageExchange;
import org.apache.ode.daohib.bpel.hobj.HProcess;
import org.apache.ode.daohib.bpel.hobj.HProcessInstance;
import org.apache.ode.utils.DOMUtils;
+import org.apache.ode.utils.stl.CollectionsX;
+import org.apache.ode.utils.stl.UnaryFunctionEx;
import org.w3c.dom.Element;
-import javax.xml.namespace.QName;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Set;
-
public class MessageExchangeDaoImpl extends HibernateDao implements
MessageExchangeDAO {
@SuppressWarnings("unused")
@@ -166,9 +170,7 @@
if (source == null)
_hself.setEndpoint(null);
else {
- HLargeData ld = new HLargeData(DOMUtils.domToString(source));
- getSession().save(ld);
- _hself.setEndpoint(ld);
+ _hself.setEndpoint(DOMUtils.domToBytes(source));
}
getSession().saveOrUpdate(_hself);
@@ -177,11 +179,11 @@
public Element getEPR() {
entering("MessageExchangeDaoImpl.getEPR");
- HLargeData ld = _hself.getEndpoint();
- if (ld == null)
+ byte[] endpoint = _hself.getEndpoint();
+ if (endpoint == null)
return null;
try {
- return DOMUtils.stringToDOM(ld.getText());
+ return DOMUtils.stringToDOM(endpoint);
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -192,9 +194,7 @@
if (source == null)
_hself.setCallbackEndpoint(null);
else {
- HLargeData ld = new HLargeData(DOMUtils.domToString(source));
- getSession().save(ld);
- _hself.setCallbackEndpoint(ld);
+ _hself.setCallbackEndpoint(DOMUtils.domToBytes(source));
}
getSession().saveOrUpdate(_hself);
@@ -203,11 +203,11 @@
public Element getCallbackEPR() {
entering("MessageExchangeDaoImpl.getCallbackEPR");
- HLargeData ld = _hself.getCallbackEndpoint();
- if (ld == null)
+ byte[] endpoint = _hself.getCallbackEndpoint();
+ if (endpoint == null)
return null;
try {
- return DOMUtils.stringToDOM(ld.getText());
+ return DOMUtils.stringToDOM(endpoint);
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -363,8 +363,6 @@
@SuppressWarnings("unchecked")
public void releasePremieMessages() {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_MEX_1).setParameter("mex", _hself).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_MEX_2).setParameter("mex", _hself).list());
deleteByIds(HCorrelatorMessage.class, getSession().getNamedQuery(HCorrelatorMessage.SELECT_CORMESSAGE_IDS_BY_MEX).setParameter("mex", _hself).list());
}
@@ -374,11 +372,10 @@
@SuppressWarnings("unchecked")
public void deleteMessages() {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_MEX_1).setParameter("mex", _hself).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_MEX_2).setParameter("mex", _hself).list());
deleteByIds(HCorrelatorMessage.class, getSession().getNamedQuery(HCorrelatorMessage.SELECT_CORMESSAGE_IDS_BY_MEX).setParameter("mex", _hself).list());
getSession().delete(_hself);
// This deletes endpoint LData, callbackEndpoint LData, request HMessage, response HMessage, HMessageExchangeProperty
}
+
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/PartnerLinkDAOImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/PartnerLinkDAOImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/PartnerLinkDAOImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/PartnerLinkDAOImpl.java Sat Nov 21 02:14:04 2009
@@ -23,7 +23,6 @@
import org.apache.ode.bpel.dao.PartnerLinkDAO;
import org.apache.ode.daohib.SessionManager;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HPartnerLink;
import org.apache.ode.utils.DOMUtils;
import org.w3c.dom.Element;
@@ -84,7 +83,7 @@
if (_self.getMyEPR() == null)
return null;
try {
- return DOMUtils.stringToDOM(_self.getMyEPR().getText());
+ return DOMUtils.stringToDOM(_self.getMyEPR());
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -93,14 +92,10 @@
public void setMyEPR(Element val) {
entering("PartnerLinkDAOImpl.setMyEPR");
_myEPR = val;
- if (_self.getMyEPR() != null)
- _sm.getSession().delete(_self.getMyEPR());
if (val == null) {
_self.setMyEPR(null);
} else {
- HLargeData ld = new HLargeData(DOMUtils.domToString(val));
- getSession().save(ld);
- _self.setMyEPR(ld);
+ _self.setMyEPR(DOMUtils.domToBytes(val));
}
getSession().update(_self);
}
@@ -112,7 +107,7 @@
if (_self.getPartnerEPR() == null)
return null;
try {
- return _partnerEPR = DOMUtils.stringToDOM(_self.getPartnerEPR().getText());
+ return _partnerEPR = DOMUtils.stringToDOM(_self.getPartnerEPR());
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -121,14 +116,10 @@
public void setPartnerEPR(Element val) {
entering("PartnerLinkDAOImpl.setPartnerEPR");
_partnerEPR = val;
- if (_self.getPartnerEPR() != null)
- _sm.getSession().delete(_self.getPartnerEPR());
if (val == null) {
_self.setPartnerEPR(null);
} else {
- HLargeData ld = new HLargeData(DOMUtils.domToString(val));
- getSession().save(ld);
- _self.setPartnerEPR(ld);
+ _self.setPartnerEPR(DOMUtils.domToBytes(val));
}
getSession().update(_self);
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -18,6 +18,15 @@
*/
package org.apache.ode.daohib.bpel;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import javax.xml.namespace.QName;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ode.bpel.common.CorrelationKey;
@@ -36,11 +45,9 @@
import org.apache.ode.daohib.bpel.hobj.HCorrelatorMessage;
import org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector;
import org.apache.ode.daohib.bpel.hobj.HFaultData;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HMessage;
import org.apache.ode.daohib.bpel.hobj.HMessageExchange;
import org.apache.ode.daohib.bpel.hobj.HMessageExchangeProperty;
-import org.apache.ode.daohib.bpel.hobj.HObject;
import org.apache.ode.daohib.bpel.hobj.HPartnerLink;
import org.apache.ode.daohib.bpel.hobj.HProcess;
import org.apache.ode.daohib.bpel.hobj.HProcessInstance;
@@ -50,18 +57,11 @@
import org.hibernate.Criteria;
import org.hibernate.Hibernate;
import org.hibernate.Query;
+import org.hibernate.StaleStateException;
+import org.hibernate.UnresolvableObjectException;
import org.hibernate.criterion.Expression;
import org.hibernate.criterion.Order;
-import javax.xml.namespace.QName;
-
-import java.util.Collection;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
/**
* Hibernate-based {@link ProcessDAO} implementation.
*/
@@ -155,11 +155,20 @@
// delete process dao
deleteByIds(HCorrelator.class, getSession().getNamedQuery(HCorrelator.SELECT_CORRELATOR_IDS_BY_PROCESS).setParameter("process", _process).list());
- getSession().delete(_process); // this deletes HCorrelator -> HCorrelatorSelector
+ try {
+ getSession().refresh(_process);
+ getSession().delete(_process); // this deletes HCorrelator -> HCorrelatorSelector
- // after this delete, we have a use case that creates the process with the same procid.
- // for hibernate to work without the database deferred constraint check, let's just flush the session.
- getSession().flush();
+ // after this delete, we have a use case that creates the process with the same procid.
+ // for hibernate to work without the database deferred constraint check, let's just flush the session.
+ getSession().flush();
+ } catch( UnresolvableObjectException sse ) {
+ __log.debug("Process: " + getProcessId() + " has been already deleted.");
+ // don't sweat, they already deleted by another thread or process
+ } catch( StaleStateException sse ) {
+ __log.debug("Process: " + getProcessId() + " has been already deleted.");
+ // don't sweat, they already deleted by another thread or process
+ }
}
@SuppressWarnings("unchecked")
@@ -209,12 +218,9 @@
@SuppressWarnings("unchecked")
private void deleteProcessInstances(Collection<HProcessInstance> instances) {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_ACTIVITY_RECOVERY_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HActivityRecovery.class, getSession().getNamedQuery(HActivityRecovery.SELECT_ACTIVITY_RECOVERY_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_FAULT_LDATA_IDS_BY_INSTANCE_IDS).setParameterList("instanceIds", HObject.toIdArray(instances)).list());
deleteByIds(HFaultData.class, getSession().getNamedQuery(HFaultData.SELECT_FAULT_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_JACOB_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
-
+
List<Long> instanceIds = new ArrayList<Long>();
for( HProcessInstance instance : instances ) {
instanceIds.add(instance.getId());
@@ -225,10 +231,7 @@
@SuppressWarnings("unchecked")
private void deleteVariables(Collection<HProcessInstance> instances) {
deleteByIds(HVariableProperty.class, getSession().getNamedQuery(HVariableProperty.SELECT_VARIABLE_PROPERTY_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_XMLDATA_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HXmlData.class, getSession().getNamedQuery(HXmlData.SELECT_XMLDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
deleteByIds(HPartnerLink.class, getSession().getNamedQuery(HPartnerLink.SELECT_PARTNER_LINK_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HScope.class, getSession().getNamedQuery(HScope.SELECT_SCOPE_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
}
@@ -236,11 +239,7 @@
@SuppressWarnings("unchecked")
private void deleteMessages(Collection<HProcessInstance> instances) {
deleteByIds(HActivityRecovery.class, getSession().getNamedQuery(HCorrelatorMessage.SELECT_CORMESSAGE_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
deleteByIds(HMessage.class, getSession().getNamedQuery(HMessage.SELECT_MESSAGE_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MEX_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MEX_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
List<Long> mex = getSession().getNamedQuery(HMessageExchange.SELECT_MEX_IDS_BY_INSTANCES).setParameterList("instances", instances).list();
deleteByColumn(HMessageExchangeProperty.class, "mex.id", mex);
deleteByIds(HMessageExchange.class, mex);
@@ -254,7 +253,6 @@
@SuppressWarnings("unchecked")
private void deleteEvents(Collection<HProcessInstance> instances) {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_EVENT_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HBpelEvent.class, getSession().getNamedQuery(HBpelEvent.SELECT_EVENT_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -18,14 +18,48 @@
*/
package org.apache.ode.daohib.bpel;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import javax.xml.namespace.QName;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ode.bpel.common.ProcessState;
-import org.apache.ode.bpel.dao.*;
+import org.apache.ode.bpel.dao.ActivityRecoveryDAO;
+import org.apache.ode.bpel.dao.BpelDAOConnection;
+import org.apache.ode.bpel.dao.CorrelationSetDAO;
+import org.apache.ode.bpel.dao.CorrelatorDAO;
+import org.apache.ode.bpel.dao.FaultDAO;
+import org.apache.ode.bpel.dao.MessageExchangeDAO;
+import org.apache.ode.bpel.dao.ProcessDAO;
+import org.apache.ode.bpel.dao.ProcessInstanceDAO;
+import org.apache.ode.bpel.dao.ScopeDAO;
+import org.apache.ode.bpel.dao.ScopeStateEnum;
+import org.apache.ode.bpel.dao.XmlDataDAO;
import org.apache.ode.bpel.evt.ProcessInstanceEvent;
import org.apache.ode.bpel.iapi.ProcessConf.CLEANUP_CATEGORY;
import org.apache.ode.daohib.SessionManager;
-import org.apache.ode.daohib.bpel.hobj.*;
+import org.apache.ode.daohib.bpel.hobj.HActivityRecovery;
+import org.apache.ode.daohib.bpel.hobj.HBpelEvent;
+import org.apache.ode.daohib.bpel.hobj.HCorrelationProperty;
+import org.apache.ode.daohib.bpel.hobj.HCorrelationSet;
+import org.apache.ode.daohib.bpel.hobj.HCorrelatorMessage;
+import org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector;
+import org.apache.ode.daohib.bpel.hobj.HFaultData;
+import org.apache.ode.daohib.bpel.hobj.HMessage;
+import org.apache.ode.daohib.bpel.hobj.HMessageExchange;
+import org.apache.ode.daohib.bpel.hobj.HMessageExchangeProperty;
+import org.apache.ode.daohib.bpel.hobj.HPartnerLink;
+import org.apache.ode.daohib.bpel.hobj.HProcessInstance;
+import org.apache.ode.daohib.bpel.hobj.HScope;
+import org.apache.ode.daohib.bpel.hobj.HVariableProperty;
+import org.apache.ode.daohib.bpel.hobj.HXmlData;
import org.apache.ode.utils.DOMUtils;
import org.apache.ode.utils.QNameUtils;
import org.apache.ode.utils.stl.CollectionsX;
@@ -37,9 +71,6 @@
import org.hibernate.criterion.Restrictions;
import org.w3c.dom.Element;
-import javax.xml.namespace.QName;
-import java.util.*;
-
/**
* Hibernate-based {@link ProcessInstanceDAO} implementation.
*/
@@ -95,9 +126,7 @@
fault.setLineNo(lineNo);
fault.setActivityId(activityId);
if (faultData != null) {
- HLargeData ld = new HLargeData(DOMUtils.domToString(faultData));
- fault.setData(ld);
- getSession().save(ld);
+ fault.setData(DOMUtils.domToBytes(faultData));
}
_instance.setFault(fault);
@@ -119,7 +148,7 @@
public byte[] getExecutionState() {
entering("ProcessInstanceDaoImpl.getExecutionState");
if (_instance.getJacobState() == null) return null;
- return _instance.getJacobState().getBinary();
+ return _instance.getJacobState();
}
/**
@@ -127,12 +156,8 @@
*/
public void setExecutionState(byte[] bytes) {
entering("ProcessInstanceDaoImpl.setExecutionState");
- if (_instance.getJacobState() != null)
- getSession().delete(_instance.getJacobState());
if (bytes.length > 0) {
- HLargeData ld = new HLargeData(bytes);
- _instance.setJacobState(ld);
- getSession().save(ld);
+ _instance.setJacobState(bytes);
}
getSession().update(_instance);
}
@@ -334,8 +359,7 @@
if(__log.isDebugEnabled()) __log.debug("Cleaning up instance data with categories = " + cleanupCategories);
if( _instance.getJacobState() != null ) {
- getSession().delete(_instance.getJacobState());
- _instance.setJacobState(null);
+ _instance.setJacobState(null);
}
HProcessInstance[] instances = new HProcessInstance[] {_instance};
@@ -367,7 +391,6 @@
@SuppressWarnings("unchecked")
private void deleteInstances(HProcessInstance[] instances) {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_FAULT_LDATA_IDS_BY_INSTANCE_IDS).setParameterList("instanceIds", HObject.toIdArray(instances)).list());
deleteByIds(HFaultData.class, getSession().getNamedQuery(HFaultData.SELECT_FAULT_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
getSession().delete(_instance); // this deletes JcobState, HActivityRecovery -> ActivityRecovery-LData
@@ -379,11 +402,8 @@
deleteByIds(HCorrelationSet.class, getSession().getNamedQuery(HCorrelationSet.SELECT_CORSET_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HVariableProperty.class, getSession().getNamedQuery(HVariableProperty.SELECT_VARIABLE_PROPERTY_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_XMLDATA_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HXmlData.class, getSession().getNamedQuery(HXmlData.SELECT_XMLDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
deleteByIds(HPartnerLink.class, getSession().getNamedQuery(HPartnerLink.SELECT_PARTNER_LINK_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HScope.class, getSession().getNamedQuery(HScope.SELECT_SCOPE_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
@@ -396,20 +416,12 @@
deleteByColumn(HMessageExchangeProperty.class, "mex.id", allMexes);
if( deleteMyRoleMex ) { // Delete my role mex and partner role mexes
- // delete message data
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
-
// delete messages
deleteByIds(HMessage.class, getSession().getNamedQuery(HMessage.SELECT_MESSAGE_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
// delete all mexes
deleteByIds(HMessageExchange.class, allMexes);
} else { // Delete only the unmatched mexes, there are chances that some unmatched messages are still there
- // delete message data
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_1).setParameterList("instances", instances).list());
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_2).setParameterList("instances", instances).list());
-
Collection<HMessageExchange> unmatchedMex = getSession().getNamedQuery(HMessageExchange.SELECT_UNMATCHED_MEX_BY_INSTANCES).setParameterList("instances", instances).list();
if( !unmatchedMex.isEmpty() ) {
List<Long> mexIdList = new ArrayList<Long>();
@@ -435,7 +447,6 @@
@SuppressWarnings("unchecked")
private void deleteEvents(HProcessInstance[] instances) {
- deleteByIds(HLargeData.class, getSession().getNamedQuery(HLargeData.SELECT_EVENT_LDATA_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
deleteByIds(HBpelEvent.class, getSession().getNamedQuery(HBpelEvent.SELECT_EVENT_IDS_BY_INSTANCES).setParameterList("instances", instances).list());
}
@@ -518,9 +529,7 @@
recovery.setDateTime(dateTime);
recovery.setRetries(retries);
if (data != null) {
- HLargeData ld = new HLargeData(DOMUtils.domToString(data));
- recovery.setDetails(ld);
- getSession().save(ld);
+ recovery.setDetails(DOMUtils.domToBytes(data));
}
String list = actions[0];
for (int i = 1; i < actions.length; ++i)
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -18,6 +18,14 @@
*/
package org.apache.ode.daohib.bpel;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
import org.apache.ode.bpel.dao.CorrelationSetDAO;
import org.apache.ode.bpel.dao.PartnerLinkDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
@@ -39,12 +47,10 @@
import org.hibernate.Query;
import org.hibernate.criterion.Restrictions;
-import java.util.*;
-
/**
* Hibernate-based {@link ScopeDAO} implementation.
*/
-class ScopeDaoImpl extends HibernateDao implements ScopeDAO {
+public class ScopeDaoImpl extends HibernateDao implements ScopeDAO {
private static final String QRY_VARIABLE = "from " + HXmlData.class.getName() +
@@ -143,7 +149,7 @@
data.setScope(_scope);
_scope.getVariables().add(data);
}
-
+
XmlDataDaoImpl varDao = new XmlDataDaoImpl(_sm, data);
_variables.put(varName, varDao);
return varDao;
@@ -248,7 +254,7 @@
try {
CollectionsX.transformEx(ret,hevents,new UnaryFunctionEx<HBpelEvent,BpelEvent>() {
public BpelEvent apply(HBpelEvent x) throws Exception{
- return (BpelEvent) SerializableUtils.toObject(x.getData().getBinary(),BpelEvent.class.getClassLoader());
+ return (BpelEvent) SerializableUtils.toObject(x.getData(),BpelEvent.class.getClassLoader());
}
});
@@ -257,5 +263,4 @@
}
return ret;
}
-
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/XmlDataDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/XmlDataDaoImpl.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/XmlDataDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/XmlDataDaoImpl.java Sat Nov 21 02:14:04 2009
@@ -18,16 +18,14 @@
*/
package org.apache.ode.daohib.bpel;
+import java.util.Iterator;
+
import org.apache.ode.bpel.dao.ScopeDAO;
import org.apache.ode.bpel.dao.XmlDataDAO;
import org.apache.ode.daohib.SessionManager;
-import org.apache.ode.daohib.bpel.hobj.HLargeData;
import org.apache.ode.daohib.bpel.hobj.HVariableProperty;
import org.apache.ode.daohib.bpel.hobj.HXmlData;
import org.apache.ode.utils.DOMUtils;
-
-import java.util.Iterator;
-
import org.hibernate.Query;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
@@ -37,7 +35,7 @@
/**
* Hibernate-based {@link XmlDataDAO} implementation.
*/
-class XmlDataDaoImpl extends HibernateDao implements XmlDataDAO {
+public class XmlDataDaoImpl extends HibernateDao implements XmlDataDAO {
private static final String QUERY_PROPERTY =
@@ -60,7 +58,7 @@
*/
public boolean isNull() {
entering("XmlDataDaoImpl.isNull");
- return _data.getData() == null;
+ return (_data.getData() == null || _data.getData().length == 0);
}
/**
@@ -73,6 +71,7 @@
}
return _node;
}
+
/**
* @see org.apache.ode.bpel.dao.XmlDataDAO#remove()
*/
@@ -87,22 +86,12 @@
_node = val;
_data.setSimpleType(!(val instanceof Element));
- HLargeData ld = _data.getData();
-
- if (ld == null) {
- ld = new HLargeData();
- } else {
- ld.setBinary(null);
- }
-
if(_data.isSimpleType()) {
- ld.setBinary(_node.getNodeValue().getBytes());
- _data.setData(ld);
+ _data.setData(_node.getNodeValue().getBytes());
} else {
- ld.setBinary(DOMUtils.domToString(_node).getBytes());
- _data.setData(ld);
+ _data.setData(DOMUtils.domToString(_node).getBytes());
}
- getSession().saveOrUpdate(ld);
+
getSession().saveOrUpdate(_data);
leaving("XmlDataDaoImpl.set");
}
@@ -154,9 +143,9 @@
}
private Node prepare(){
- if(_data.getData() == null)
+ if(_data.getData() == null || _data.getData().length == 0)
return null;
- String data = _data.getData().getText();
+ String data = new String(_data.getData());
if(_data.isSimpleType()){
Document d = DOMUtils.newDocument();
// we create a dummy wrapper element
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HActivityRecovery.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HActivityRecovery.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HActivityRecovery.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HActivityRecovery.java Sat Nov 21 02:14:04 2009
@@ -35,7 +35,7 @@
private String _channel;
private String _reason;
private Date _dateTime;
- private HLargeData _details;
+ private byte[] _details;
private String _actions;
private int _retries;
@@ -98,13 +98,15 @@
}
/**
- * @hibernate.many-to-one column="LDATA_ID" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="DETAILS" sql-type="blob(2G)"
*/
- public HLargeData getDetails() {
+ public byte[] getDetails() {
return _details;
}
- public void setDetails(HLargeData details) {
+ public void setDetails(byte[] details) {
_details = details;
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HBpelEvent.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HBpelEvent.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HBpelEvent.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HBpelEvent.java Sat Nov 21 02:14:04 2009
@@ -38,7 +38,7 @@
private HProcess _process;
private HProcessInstance _instance;
- private HLargeData _data;
+ private byte[] _data;
/** Scope identifier, possibly null. */
private Long _scopeId;
@@ -108,13 +108,15 @@
/**
- * @hibernate.many-to-one column="LDATA_ID" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="DATA" sql-type="blob(2G)"
*/
- public HLargeData getData() {
+ public byte[] getData() {
return _data;
}
- public void setData(HLargeData data) {
+ public void setData(byte[] data) {
_data = data;
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HFaultData.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HFaultData.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HFaultData.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HFaultData.java Sat Nov 21 02:14:04 2009
@@ -30,7 +30,7 @@
private String _name;
private String _explanation;
- private HLargeData _data;
+ private byte[] _data;
private int _lineNo;
private int _activityId;
@@ -46,16 +46,18 @@
}
/**
- * @hibernate.many-to-one column="LDATA_ID" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="DATA" sql-type="blob(2G)"
*/
- public HLargeData getData() {
+ public byte[] getData() {
return _data;
}
- public void setData(HLargeData data) {
+ public void setData(byte[] data) {
_data = data;
}
-
+
/**
* @hibernate.property column="EXPLANATION" length="4000"
*/
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HLargeData.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HLargeData.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HLargeData.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HLargeData.java Sat Nov 21 02:14:04 2009
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.ode.daohib.bpel.hobj;
-
-/**
- * Used to store large data sets into a single table. When an HObject
- * instance needs to store as part of its state large binary or text
- * data, a reference to an instance of this class must be created.
- *
- * @hibernate.class table="LARGE_DATA"
- *
- * @hibernate.query name="SELECT_ACTIVITY_RECOVERY_LDATA_IDS_BY_INSTANCES" query="select a.details.id from HActivityRecovery as a where a.instance in (:instances) and a.details is not null"
- * @hibernate.query name="SELECT_JACOB_LDATA_IDS_BY_INSTANCES" query="select i.jacobState.id from HProcessInstance as i where i in (:instances) and i.jacobState is not null"
- * @hibernate.query name="SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_1" query="select m.messageData.id from HMessage m where m.messageExchange.instance in (:instances) and m.messageData is not null"
- * @hibernate.query name="SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_2" query="select m.header.id from HMessage m where m.messageExchange.instance in (:instances) and m.header is not null"
- * @hibernate.query name="SELECT_MEX_LDATA_IDS_BY_INSTANCES_1" query="select e.endpoint.id from HMessageExchange as e where e.instance in (:instances) and e.endpoint is not null"
- * @hibernate.query name="SELECT_MEX_LDATA_IDS_BY_INSTANCES_2" query="select e.callbackEndpoint.id from HMessageExchange as e where e.instance in (:instances) and e.callbackEndpoint is not null"
- *
- * @hibernate.query name="SELECT_EVENT_LDATA_IDS_BY_INSTANCES" query="select e.data.id from HBpelEvent as e where e.instance in (:instances) and e.data is not null"
- * @hibernate.query name="SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_1" query="select m.messageData.id from HMessage m, HCorrelatorMessage cm where m.messageExchange = cm.messageExchange and m.messageExchange.instance in (:instances) and m.messageData is not null"
- * @hibernate.query name="SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_2" query="select m.header.id from HMessage m, HCorrelatorMessage cm where m.messageExchange = cm.messageExchange and m.messageExchange.instance in (:instances) and m.header is not null"
- * @hibernate.query name="SELECT_XMLDATA_LDATA_IDS_BY_INSTANCES" query="select x.data.id from HXmlData as x where x.instance in (:instances) and x.data is not null"
- * @hibernate.query name="SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_1" query="select l.myEPR.id from HPartnerLink as l where l.scope.instance in (:instances) and l.myEPR is not null"
- * @hibernate.query name="SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_2" query="select l.partnerEPR.id from HPartnerLink as l where l.scope.instance in (:instances) and l.partnerEPR is not null"
- * @hibernate.query name="SELECT_FAULT_LDATA_IDS_BY_INSTANCE_IDS" query="select f.data.id from HFaultData as f, HProcessInstance as i where f.id = i.fault and i.id in (:instanceIds) and f.data is not null"
-
- * @hibernate.query name="SELECT_MESSAGE_LDATA_IDS_BY_MEX_1" query="select m.messageData.id from HMessage m where m.messageExchange = :mex and m.messageData is not null"
- * @hibernate.query name="SELECT_MESSAGE_LDATA_IDS_BY_MEX_2" query="select m.header.id from HMessage m where m.messageExchange = :mex and m.header is not null"
- */
-public class HLargeData extends HObject {
- public final static String SELECT_ACTIVITY_RECOVERY_LDATA_IDS_BY_INSTANCES = "SELECT_ACTIVITY_RECOVERY_LDATA_IDS_BY_INSTANCES";
- public final static String SELECT_JACOB_LDATA_IDS_BY_INSTANCES = "SELECT_JACOB_LDATA_IDS_BY_INSTANCES";
- public final static String SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_1 = "SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_1";
- public final static String SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_2 = "SELECT_MESSAGE_LDATA_IDS_BY_INSTANCES_2";
- public final static String SELECT_MEX_LDATA_IDS_BY_INSTANCES_1 = "SELECT_MEX_LDATA_IDS_BY_INSTANCES_1";
- public final static String SELECT_MEX_LDATA_IDS_BY_INSTANCES_2 = "SELECT_MEX_LDATA_IDS_BY_INSTANCES_2";
-
- public final static String SELECT_EVENT_LDATA_IDS_BY_INSTANCES = "SELECT_EVENT_LDATA_IDS_BY_INSTANCES";
- public final static String SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_1 = "SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_1";
- public final static String SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_2 = "SELECT_UNMATCHED_MESSAGE_LDATA_IDS_BY_INSTANCES_2";
- public final static String SELECT_XMLDATA_LDATA_IDS_BY_INSTANCES = "SELECT_XMLDATA_LDATA_IDS_BY_INSTANCES";
- public final static String SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_1 = "SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_1";
- public final static String SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_2 = "SELECT_PARTNER_LINK_LDATA_IDS_BY_INSTANCES_2";
- public final static String SELECT_FAULT_LDATA_IDS_BY_INSTANCE_IDS = "SELECT_FAULT_LDATA_IDS_BY_INSTANCE_IDS";
-
- public final static String SELECT_MESSAGE_LDATA_IDS_BY_MEX_1 = "SELECT_MESSAGE_LDATA_IDS_BY_MEX_1";
- public final static String SELECT_MESSAGE_LDATA_IDS_BY_MEX_2 = "SELECT_MESSAGE_LDATA_IDS_BY_MEX_2";
-
- private byte[] binary = null;
-
- public HLargeData() {
- super();
- }
-
- public HLargeData(byte[] binary) {
- super();
- this.binary = binary;
- }
-
- public HLargeData(String text) {
- super();
- this.binary = text.getBytes();
- }
-
- /**
- * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
- *
- * @hibernate.column name="BIN_DATA" sql-type="blob(2G)"
- */
- public byte[] getBinary() {
- return binary;
- }
-
- public void setBinary(byte[] binary) {
- this.binary = binary;
- }
-
- public String getText() {
- return new String(binary);
- }
-}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessage.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessage.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessage.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessage.java Sat Nov 21 02:14:04 2009
@@ -24,15 +24,17 @@
* @hibernate.class table="BPEL_MESSAGE"
* @hibernate.query name="SELECT_MESSAGE_IDS_BY_MEX" query="select id from HMessage as m WHERE m.messageExchange = :messageExchange"
* @hibernate.query name="SELECT_MESSAGE_IDS_BY_INSTANCES" query="select m.id from HMessage m, HMessageExchange mex WHERE m.messageExchange = mex and mex.instance in (:instances)"
+ * @hibernate.query name="SELECT_MESSAGES_BY_INSTANCES" query="select m from HMessage m, HMessageExchange mex WHERE m.messageExchange = :mex"
*/
public class HMessage extends HObject {
public final static String SELECT_MESSAGE_IDS_BY_MEX = "SELECT_MESSAGE_IDS_BY_MEX";
public final static String SELECT_MESSAGE_IDS_BY_INSTANCES = "SELECT_MESSAGE_IDS_BY_INSTANCES";
+ public final static String SELECT_MESSAGES_BY_INSTANCES = "SELECT_MESSAGES_BY_INSTANCES";
private HMessageExchange _mex;
private String _type;
- private HLargeData _data;
- private HLargeData _header;
+ private byte[] _data;
+ private byte[] _header;
public void setMessageExchange(HMessageExchange mex) {
_mex = mex;
@@ -53,22 +55,28 @@
}
/**
- * @hibernate.many-to-one column="DATA" lazy="false" outer-join="true" foreign-key="none"
- * */
- public HLargeData getMessageData() {
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="MESSAGE_DATA" sql-type="blob(2G)"
+ */
+ public byte[] getMessageData() {
return _data;
}
- public void setMessageData(HLargeData data) {
+ public void setMessageData(byte[] data) {
_data = data;
}
- /** @hibernate.many-to-one column="HEADER" lazy="false" outer-join="true" foreign-key="none" */
- public HLargeData getHeader() {
+ /**
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="MESSAGE_HEADER" sql-type="blob(2G)"
+ */
+ public byte[] getHeader() {
return _header;
}
- public void setHeader(HLargeData header) {
+ public void setHeader(byte[] header) {
_header = header;
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessageExchange.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessageExchange.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessageExchange.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HMessageExchange.java Sat Nov 21 02:14:04 2009
@@ -44,10 +44,10 @@
private String _portType;
- private HLargeData _endpoint;
-
- private HLargeData _callbackEndpoint;
-
+ private byte[] _endpoint;
+
+ private byte[] _callbackEndpoint;
+
private HMessage _request;
private HMessage _response;
@@ -121,24 +121,28 @@
}
/**
- * @hibernate.many-to-one column="LDATA_EPR_ID" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="ENDPOINT" sql-type="blob(2G)"
*/
- public HLargeData getEndpoint() {
+ public byte[] getEndpoint() {
return _endpoint;
}
- public void setEndpoint(HLargeData endpoint) {
+ public void setEndpoint(byte[] endpoint) {
_endpoint = endpoint;
}
- /**
- * @hibernate.many-to-one column="LDATA_CEPR_ID" cascade="delete" foreign-key="none"
+ /**
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="CALLBACK_ENDPOINT" sql-type="blob(2G)"
*/
- public HLargeData getCallbackEndpoint() {
+ public byte[] getCallbackEndpoint() {
return _callbackEndpoint;
}
- public void setCallbackEndpoint(HLargeData endpoint) {
+ public void setCallbackEndpoint(byte[] endpoint) {
_callbackEndpoint = endpoint;
}
@@ -354,4 +358,5 @@
public void incrementSubscriberCount() {
setSubscriberCount(getSubscriberCount() + 1);
}
+
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HPartnerLink.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HPartnerLink.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HPartnerLink.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HPartnerLink.java Sat Nov 21 02:14:04 2009
@@ -41,10 +41,10 @@
private String _svcName;
- private HLargeData _myEPR;
-
- private HLargeData _partnerEPR;
-
+ private byte[] _myEPR;
+
+ private byte[] _partnerEPR;
+
private HScope _scope;
private HProcess _process;
@@ -84,25 +84,29 @@
}
/**
- * @hibernate.many-to-one column="MYROLE_EPR" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="MYROLE_EPR_DATA" sql-type="blob(2G)"
*/
- public HLargeData getMyEPR() {
+ public byte[] getMyEPR() {
return _myEPR;
}
- public void setMyEPR(HLargeData data) {
- _myEPR = data;
+ public void setMyEPR(byte[] myEPR) {
+ _myEPR = myEPR;
}
/**
- * @hibernate.many-to-one column="PARTNERROLE_EPR" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="PARTNERROLE_EPR_DATA" sql-type="blob(2G)"
*/
- public HLargeData getPartnerEPR() {
+ public byte[] getPartnerEPR() {
return _partnerEPR;
}
- public void setPartnerEPR(HLargeData data) {
- _partnerEPR = data;
+ public void setPartnerEPR(byte[] partnerEPR) {
+ _partnerEPR = partnerEPR;
}
/**
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java Sat Nov 21 02:14:04 2009
@@ -59,8 +59,8 @@
private HFaultData _fault;
- private HLargeData _jacobState;
-
+ private byte[] _jacobState;
+
private short _previousState;
private short _state;
@@ -105,13 +105,15 @@
}
/**
- * @hibernate.many-to-one column="JACOB_STATE" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="JACOB_STATE_DATA" sql-type="blob(2G)"
*/
- public HLargeData getJacobState() {
+ public byte[] getJacobState() {
return _jacobState;
}
- public void setJacobState(HLargeData jacobState) {
+ public void setJacobState(byte[] jacobState) {
_jacobState = jacobState;
}
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HXmlData.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HXmlData.java?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HXmlData.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HXmlData.java Sat Nov 21 02:14:04 2009
@@ -26,11 +26,11 @@
* @hibernate.class table="BPEL_XML_DATA"
* @hibernate.query name="SELECT_XMLDATA_IDS_BY_INSTANCES" query="select id from HXmlData as x where x.instance in (:instances)"
*/
-public class HXmlData extends HObject{
+public class HXmlData extends HObject {
public static final String SELECT_XMLDATA_IDS_BY_INSTANCES = "SELECT_XMLDATA_IDS_BY_INSTANCES";
private boolean _simpleType;
- private HLargeData _data;
+ private byte[] _data;
private Collection<HVariableProperty> _properties = new HashSet<HVariableProperty>();
private String _name;
private HScope _scope;
@@ -42,13 +42,15 @@
}
/**
- * @hibernate.many-to-one column="LDATA_ID" cascade="delete" foreign-key="none"
+ * @hibernate.property type="org.apache.ode.daohib.bpel.hobj.GZipDataType"
+ *
+ * @hibernate.column name="DATA" sql-type="blob(2G)"
*/
- public HLargeData getData() {
+ public byte[] getData() {
return _data;
}
- public void setData(HLargeData data) {
+ public void setData(byte[] data) {
_data = data;
}
Modified: ode/branches/APACHE_ODE_1.X/dao-jpa-ojpa-derby/src/main/scripts/common.sql
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-jpa-ojpa-derby/src/main/scripts/common.sql?rev=882826&r1=882825&r2=882826&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-jpa-ojpa-derby/src/main/scripts/common.sql (original)
+++ ode/branches/APACHE_ODE_1.X/dao-jpa-ojpa-derby/src/main/scripts/common.sql Sat Nov 21 02:14:04 2009
@@ -1,2 +1,2 @@
create table ODE_SCHEMA_VERSION (VERSION integer);
-insert into ODE_SCHEMA_VERSION values (5);
+insert into ODE_SCHEMA_VERSION values (6);