diff --git a/src/main/java/io/ebean/DB.java b/src/main/java/io/ebean/DB.java index 495018a08..3d05b8e56 100644 --- a/src/main/java/io/ebean/DB.java +++ b/src/main/java/io/ebean/DB.java @@ -176,6 +176,18 @@ public class DB { return getDefault().beginTransaction(); } + /** + * Create a new transaction that is not held in TransactionThreadLocal. + *
+ * You will want to do this if you want multiple Transactions in a single + * thread or generally use transactions outside of the TransactionThreadLocal + * management. + *
+ */ + public static Transaction createTransaction() { + return getDefault().createTransaction(); + } + /** * Start a transaction additionally specifying the isolation level. * diff --git a/src/test/java/org/tests/basic/TestQueryUsingConnection.java b/src/test/java/org/tests/basic/TestQueryUsingConnection.java index 5aca4bfe5..33b0c5473 100644 --- a/src/test/java/org/tests/basic/TestQueryUsingConnection.java +++ b/src/test/java/org/tests/basic/TestQueryUsingConnection.java @@ -41,7 +41,7 @@ public class TestQueryUsingConnection extends BaseTestCase { ResetBasicData.reset(); - try (Transaction transaction = DB.getDefault().createTransaction()) { + try (Transaction transaction = DB.createTransaction()) { Transaction current = Transaction.current(); assertThat(current).isNull();