From f6e5446dab4dfed0d9b2b7480f326753e3509e2e Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Mon, 16 Oct 2017 22:13:41 +1300 Subject: [PATCH] #1169 - Memory leak - DefaultTransactionThreadLocal holding reference to transaction - test case --- .../DefaultTransactionThreadLocalTest.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/test/java/io/ebeaninternal/server/transaction/DefaultTransactionThreadLocalTest.java diff --git a/src/test/java/io/ebeaninternal/server/transaction/DefaultTransactionThreadLocalTest.java b/src/test/java/io/ebeaninternal/server/transaction/DefaultTransactionThreadLocalTest.java new file mode 100644 index 000000000..2480e6ef8 --- /dev/null +++ b/src/test/java/io/ebeaninternal/server/transaction/DefaultTransactionThreadLocalTest.java @@ -0,0 +1,27 @@ +package io.ebeaninternal.server.transaction; + +import io.ebean.BaseTestCase; +import io.ebean.Ebean; +import io.ebeaninternal.api.SpiTransaction; +import org.junit.Test; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; + +public class DefaultTransactionThreadLocalTest extends BaseTestCase { + + @Test + public void get() throws Exception { + + if (isH2()) { + Ebean.execute(() -> { + SpiTransaction txn = DefaultTransactionThreadLocal.get("h2"); + assertNotNull(txn); + }); + + // thread local should be set to null + assertNull(DefaultTransactionThreadLocal.get("h2")); + } + } + +}