Merge pull request #581 from damour/fix_user_defined_array_type

Load user-defined array type oids.
pull/556/head^2
Jack Christensen 2019-09-07 09:40:45 -05:00 committed by GitHub
commit c32f905920
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 2 deletions

View File

@ -611,12 +611,14 @@ func initPostgresql(c *Conn) (*pgtype.ConnInfo, error) {
end
from pg_type t
left join pg_type base_type on t.typelem=base_type.oid
left join pg_class base_cls ON base_type.typrelid = base_cls.oid
left join pg_namespace nsp on t.typnamespace=nsp.oid
left join pg_class cls on t.typrelid=cls.oid
where (
t.typtype in('b', 'p', 'r', 'e', 'c')
and (base_type.oid is null or base_type.typtype in('b', 'p', 'r'))
and (base_type.oid is null or base_type.typtype in('b', 'p', 'r', 'c'))
and (cls.oid is null or cls.relkind='c')
and (base_cls.oid is null or base_cls.relkind = 'c')
)`
)

View File

@ -210,12 +210,14 @@ func PgxInitSteps() []Step {
end
from pg_type t
left join pg_type base_type on t.typelem=base_type.oid
left join pg_class base_cls ON base_type.typrelid = base_cls.oid
left join pg_namespace nsp on t.typnamespace=nsp.oid
left join pg_class cls on t.typrelid=cls.oid
where (
t.typtype in('b', 'p', 'r', 'e', 'c')
and (base_type.oid is null or base_type.typtype in('b', 'p', 'r'))
and (base_type.oid is null or base_type.typtype in('b', 'p', 'r', 'c'))
and (cls.oid is null or cls.relkind='c')
and (base_cls.oid is null or base_cls.relkind = 'c')
)`,
}),
ExpectMessage(&pgproto3.Describe{