diff --git a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
index aca1352875..e85705417c 100644
--- a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
+++ b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
@@ -471,6 +471,8 @@ public abstract class jOOQAbstractTest<
m.toString().replace("public void ", "").replaceAll("( throws.*)?", "")));
}
}
+
+ log.info("Unbalanced test: ", LifecycleWatcherListener.START_COUNT.size());
}
@SuppressWarnings("unused")
diff --git a/jOOQ/src/main/java/org/jooq/impl/Utils.java b/jOOQ/src/main/java/org/jooq/impl/Utils.java
index e1265cd80f..b830fdf364 100644
--- a/jOOQ/src/main/java/org/jooq/impl/Utils.java
+++ b/jOOQ/src/main/java/org/jooq/impl/Utils.java
@@ -693,7 +693,10 @@ final class Utils {
/**
* Get the only element from a cursor or null, or throw an
- * exception
+ * exception.
+ *
+ * [#2373] This method will always close the argument cursor, as it is
+ * supposed to be completely consumed by this method.
*
* @param cursor The cursor
* @return The only element from the cursor or null
@@ -701,13 +704,18 @@ final class Utils {
* element
*/
static final