diff --git a/jOOQ/src/main/java/org/jooq/impl/MigrationImpl.java b/jOOQ/src/main/java/org/jooq/impl/MigrationImpl.java index 500cb155d8..f081e42bad 100644 --- a/jOOQ/src/main/java/org/jooq/impl/MigrationImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/MigrationImpl.java @@ -426,7 +426,11 @@ final class MigrationImpl extends AbstractScope implements Migration { // [#8301] Find a better way to test if our table already exists try { - historyCtx.fetchExists(HISTORY); + Configuration c = historyCtx + .configuration() + .derive(); + c.data("org.jooq.tools.LoggerListener.exception.mute", true); + c.dsl().fetchExists(HISTORY); return true; } catch (DataAccessException ignore) {} diff --git a/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java index dc1b4d0bc8..0570e97c8d 100644 --- a/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java +++ b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java @@ -236,7 +236,10 @@ public class LoggerListener implements ExecuteListener { @Override public void exception(ExecuteContext ctx) { - if (log.isDebugEnabled()) + + // [#9506] An internal, undocumented flag that allows for muting exception logging of + // "expected" exceptions. + if (log.isDebugEnabled() && ctx.configuration().data("org.jooq.tools.LoggerListener.exception.mute") == null) log.debug("Exception", ctx.exception()); }