From 5261674a3fcb7c3590ef75874aa9c4bbdd66d619 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 3 May 2024 18:13:53 +0200 Subject: [PATCH] [jOOQ/jOOQ#16633] Fix VisitListener regressions --- .../java/org/jooq/impl/DeleteQueryImpl.java | 2 +- .../java/org/jooq/impl/UpdateQueryImpl.java | 24 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java index 17de57a4c9..d4f3cb0ba3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java @@ -451,7 +451,7 @@ implements ctx.data(DATA_UNQUALIFY_LOCAL_SCOPE, true); ctx.formatSeparator() - .visit(K_WHERE).sql(' ').visit(where0); + .visit(K_WHERE).sql(' ').visit(where0.getWhere()); if (noQualifyInWhere) ctx.data(DATA_UNQUALIFY_LOCAL_SCOPE, false); diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java index c00c304016..5fad9ecfe8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java @@ -748,9 +748,6 @@ implements .declareTables(declareTables) .end(UPDATE_UPDATE); - // [#16634] Prevent unnecessary FROM clause in some dialects, e.g. HANA - boolean hasFrom = !from.isEmpty() && !NO_SUPPORT_FROM.contains(ctx.dialect()); - @@ -773,8 +770,7 @@ implements - if (hasFrom) - acceptFrom(ctx); + acceptFrom(ctx); ConditionProviderImpl where0 = new ConditionProviderImpl(); if (limitEmulation(ctx)) { @@ -807,7 +803,7 @@ implements ctx.data(DATA_UNQUALIFY_LOCAL_SCOPE, true); ctx.formatSeparator() - .visit(K_WHERE).sql(' ').visit(where0); + .visit(K_WHERE).sql(' ').visit(where0.getWhere()); if (noQualifyInWhere) ctx.data(DATA_UNQUALIFY_LOCAL_SCOPE, false); @@ -844,7 +840,10 @@ implements private final void acceptFrom(Context ctx) { ctx.start(UPDATE_FROM); - TableList f = new TableList(); + + // [#16634] Prevent unnecessary FROM clause in some dialects, e.g. HANA + if (!NO_SUPPORT_FROM.contains(ctx.dialect())) { + TableList f = new TableList(); @@ -855,7 +854,7 @@ implements - f.addAll(from); + f.addAll(from); @@ -864,10 +863,11 @@ implements - if (!f.isEmpty()) - ctx.formatSeparator() - .visit(K_FROM).sql(' ') - .declareTables(true, c -> c.visit(f)); + if (!f.isEmpty()) + ctx.formatSeparator() + .visit(K_FROM).sql(' ') + .declareTables(true, c -> c.visit(f)); + } ctx.end(UPDATE_FROM); }