From 906f9cdc014b251ce951f7d0a3fb5967c7153c98 Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Fri, 12 Oct 2012 18:06:02 +0000 Subject: Triggers now run in a for-update transaction. --- src/main/java/com/amazon/carbonado/gen/StorableGenerator.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main/java/com/amazon/carbonado') diff --git a/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java b/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java index 4a0d74e..adf11ba 100644 --- a/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java +++ b/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java @@ -3294,6 +3294,7 @@ public final class StorableGenerator { // txn = null; // } else { // txn = support.getRootRepository().enterTransaction(); + // txn.setForUpdate(true); // tryStart: // if (forTry) { // state = trigger.beforeTryXxx(this); @@ -3321,6 +3322,11 @@ public final class StorableGenerator { b.invokeInterface(mSupportType, "getRootRepository", repositoryType, null); b.invokeInterface(repositoryType, ENTER_TRANSACTION_METHOD_NAME, transactionType, null); b.storeLocal(txnVar); + // txn.setForUpdate(true); + b.loadLocal(txnVar); + b.loadConstant(true); + b.invokeInterface(transactionType, SET_FOR_UPDATE_METHOD_NAME, null, + new TypeDesc[] {TypeDesc.BOOLEAN}); Label tryStart = b.createLabel().setLocation(); -- cgit v1.2.3