From db77c8addfc5372b5aaf73487cd118ba4d18b910 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Fri, 14 Jul 2017 16:36:29 +0200 Subject: [PATCH] [#5872] cannot match user-defined types (e.g. PostGIS GEOMETRY) --- .../src/main/java/org/jooq/util/AbstractDatabase.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java index dd4eb2b99d..90d248aff7 100644 --- a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java @@ -1309,7 +1309,14 @@ public abstract class AbstractDatabase implements Database { && ( definedType.getScale() != 0 || !p.matcher(definedType.getType() + "(" + definedType.getPrecision() + ")").matches()) && ( !p.matcher(definedType.getType() + "(" + definedType.getPrecision() + "," + definedType.getScale() + ")").matches() ) - && ( !p.matcher(definedType.getType() + "(" + definedType.getPrecision() + ", " + definedType.getScale() + ")").matches() )) { + && ( !p.matcher(definedType.getType() + "(" + definedType.getPrecision() + ", " + definedType.getScale() + ")").matches() ) + + // [#5872] We should match user-defined types as well, in case of which the type might be reported + // as USER-DEFINED (in PostgreSQL) + && ( StringUtils.isBlank(definedType.getUserType()) + || !p.matcher(definedType.getUserType()).matches() + && !p.matcher(definedType.getQualifiedUserType().toString().replace("\"", "")).matches() ) + ) { continue forcedTypeLoop; } }