From 70e5a9555aa955d041ff0c6dbc1eede11dadb50f Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 25 Feb 2021 13:11:03 +0100 Subject: [PATCH] [jOOQ/jOOQ#11521] ClassCastException when ResultQuery.fetchArray() returns no rows --- jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index edaade305f..a51e7ca5e0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -170,6 +170,7 @@ import static org.jooq.impl.Tools.fieldArray; import static org.jooq.impl.Tools.hasAmbiguousNames; import static org.jooq.impl.Tools.isNotEmpty; import static org.jooq.impl.Tools.qualify; +import static org.jooq.impl.Tools.recordType; import static org.jooq.impl.Tools.selectQueryImpl; import static org.jooq.impl.Tools.unalias; import static org.jooq.impl.Tools.unqualified; @@ -3505,9 +3506,9 @@ final class SelectQueryImpl extends AbstractResultQuery imp if (getFrom().size() == 1 && getSelectAsSpecified().isEmpty()) return (Class) getFrom().get(0).asTable().getRecordType(); - // TODO: [#4695] Calculate the correct Record[B] type + // [#4695] [#11521] Calculate the correct Record[B] type else - return (Class) RecordImplN.class; + return (Class) recordType(getSelect().size()); } final TableList getFrom() {