提交 94d321da 编写于 作者: J Joram Barrez

Fixing failing Oracle QA (again)

上级 a48995e7
......@@ -798,33 +798,35 @@ public class DbSqlSession implements Session {
protected void flushInserts() {
// Handle in entity dependency order
for (Class<? extends PersistentObject> persistentObjectClass : EntityDependencyOrder.INSERT_ORDER) {
if (insertedObjects.containsKey(persistentObjectClass)) {
List<PersistentObject> persistentObjectsToInsert = insertedObjects.get(persistentObjectClass);
if (persistentObjectsToInsert.size() == 1 || Boolean.FALSE.equals(dbSqlSessionFactory.isBulkInsertable(persistentObjectClass))) {
flushRegularInsert(persistentObjectsToInsert.get(0), persistentObjectClass);
} else {
flushBulkInsert(insertedObjects.get(persistentObjectClass), persistentObjectClass);
}
insertedObjects.remove(persistentObjectClass);
flushPersistentObjects(persistentObjectClass, insertedObjects.get(persistentObjectClass));
}
}
// Next, in case of custom entities or we've screwed up and forgotton some entity
if (insertedObjects.size() > 0) {
for (Class<? extends PersistentObject> clazz : insertedObjects.keySet()) {
List<PersistentObject> persistentObjectsToInsert = insertedObjects.get(clazz);
if (persistentObjectsToInsert.size() == 1) {
flushRegularInsert(persistentObjectsToInsert.get(0), clazz);
} else {
flushBulkInsert(insertedObjects.get(clazz), clazz);
}
for (Class<? extends PersistentObject> persistentObjectClass : insertedObjects.keySet()) {
flushPersistentObjects(persistentObjectClass, insertedObjects.get(persistentObjectClass));
}
}
insertedObjects.clear();
}
protected void flushPersistentObjects(Class<? extends PersistentObject> persistentObjectClass, List<PersistentObject> persistentObjectsToInsert) {
if (persistentObjectsToInsert.size() == 1) {
flushRegularInsert(persistentObjectsToInsert.get(0), persistentObjectClass);
} else if (Boolean.FALSE.equals(dbSqlSessionFactory.isBulkInsertable(persistentObjectClass))) {
for (PersistentObject persistentObject : persistentObjectsToInsert) {
flushRegularInsert(persistentObject, persistentObjectClass);
}
} else {
flushBulkInsert(insertedObjects.get(persistentObjectClass), persistentObjectClass);
}
insertedObjects.remove(persistentObjectClass);
}
protected void flushRegularInsert(PersistentObject persistentObject, Class<? extends PersistentObject> clazz) {
String insertStatement = dbSqlSessionFactory.getInsertStatement(persistentObject);
......
......@@ -366,7 +366,7 @@
<insert id="bulkInsertSignalEventSubscription" parameterType="java.util.List">
insert into ${prefix}ACT_RU_EVENT_SUBSCR (
ID_,
ID_,
REV_,
EVENT_TYPE_,
EVENT_NAME_,
......@@ -398,7 +398,7 @@
INSERT ALL
<foreach collection="list" item="signalEventSubscription" index="index">
into ${prefix}ACT_RU_EVENT_SUBSCR (
ID_,
ID_,
REV_,
EVENT_TYPE_,
EVENT_NAME_,
......@@ -413,7 +413,7 @@
VALUES
(#{signalEventSubscription.id, jdbcType=VARCHAR},
1,
#{signalEventSubscription.eventType, jdbcType=VARCHAR}',
#{signalEventSubscription.eventType, jdbcType=VARCHAR},
#{signalEventSubscription.eventName, jdbcType=VARCHAR},
#{signalEventSubscription.executionId, jdbcType=VARCHAR},
#{signalEventSubscription.processInstanceId, jdbcType=VARCHAR},
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册