diff --git a/jOOQ/src/main/java/org/jooq/impl/Tools.java b/jOOQ/src/main/java/org/jooq/impl/Tools.java index 1526eeb986..52a8e50806 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tools.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tools.java @@ -2285,13 +2285,19 @@ final class Tools { + + private static final DSLContext CTX = DSL.using(new DefaultConfiguration()); /** * Return a non-negative hash code for a {@link QueryPart}, taking into * account FindBugs' RV_ABSOLUTE_VALUE_OF_HASHCODE pattern */ - static final int hash(Object object) { - return 0x7FFFFFF & object.hashCode(); + static final int hash(QueryPart part) { + + // [#6025] Prevent unstable alias generation for derived tables due to + // inlined bind variables in hashCode() calculation + // [#6175] TODO: Speed this up with a faster way to calculate a hash code + return 0x7FFFFFF & CTX.render(part).hashCode(); } /**