[jOOQ/jOOQ#13780] ERROR: unknown function: nameconcatoid() in

CockroachDBDatabase on CockroachDB 22
This commit is contained in:
Lukas Eder 2022-07-06 16:14:07 +02:00
parent c46244e3c1
commit 7ced2e06d4

View File

@ -996,9 +996,7 @@ public class PostgresDatabase extends AbstractDatabase implements ResultQueryDat
// [#3375] Exclude table-valued functions as they're already generated as tables
.join(PG_NAMESPACE).on(PG_NAMESPACE.NSPNAME.eq(r1.SPECIFIC_SCHEMA))
.join(PG_PROC).on(PG_PROC.PRONAMESPACE.eq(PG_NAMESPACE.OID))
.and(is12()
? condition("nameconcatoid({0}, {1}) = {2}", PG_PROC.PRONAME, PG_PROC.OID, r1.SPECIFIC_NAME)
: PG_PROC.PRONAME.concat("_").concat(PG_PROC.OID).eq(r1.SPECIFIC_NAME))
.and(nameconcatoid(r1))
.where(r1.ROUTINE_SCHEMA.in(getInputSchemata()))
.and(tableValuedFunctions()
? condition(not(PG_PROC.PRORETSET))
@ -1013,6 +1011,12 @@ public class PostgresDatabase extends AbstractDatabase implements ResultQueryDat
.collect(mapping(r -> new PostgresRoutineDefinition(this, r), Collectors.<RoutineDefinition>toList()));
}
protected Condition nameconcatoid(Routines r1) {
return is12()
? condition("nameconcatoid({0}, {1}) = {2}", PG_PROC.PRONAME, PG_PROC.OID, r1.SPECIFIC_NAME)
: PG_PROC.PRONAME.concat("_").concat(PG_PROC.OID).eq(r1.SPECIFIC_NAME);
}
@Override
protected List<PackageDefinition> getPackages0() throws SQLException {
List<PackageDefinition> result = new ArrayList<>();