From 1fb4ee3cf07566fec3814be5180323d273e83d73 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Wed, 5 Aug 2020 11:50:23 +0200 Subject: [PATCH] [jOOQ/jOOQ#10466] Code generator fails with ArrayIndexOutOfBoundsException for Index..Include statements --- .../org/jooq/meta/postgres/PostgresDatabase.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java b/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java index a568f71364..77abdc8175 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java @@ -218,9 +218,15 @@ public class PostgresDatabase extends AbstractDatabase { final boolean unique = record.get(i.INDISUNIQUE); - // [#6310] [#6620] Function-based indexes are not yet supported - for (String column : columns) - if (table.getColumn(column) == null) + for (int k = 0; k < columns.length; k++) + + // [#6310] [#6620] Function-based indexes are not yet supported + if (table.getColumn(columns[k]) == null) + continue indexLoop; + + // [#10466] Neither are INCLUDE columns, which are reported as + // columns without options + else if (k >= options.length) continue indexLoop; result.add(new AbstractIndexDefinition(tableSchema, indexName, table, unique) {