[GENERAL] parray_gin and \d errors in PG10
| От | Justin Pryzby |
|---|---|
| Тема | [GENERAL] parray_gin and \d errors in PG10 |
| Дата | |
| Msg-id | 20171022181525.GA21884@telsasoft.com обсуждение исходный текст |
| Ответы |
Re: [GENERAL] parray_gin and \d errors in PG10
|
| Список | pgsql-general |
After installing parray_gin extension and pg_upgrading another instance,
\d is failing like so:
[pryzbyj@database ~]$ psql ts -c '\d pg_class'
ERROR: operator is not unique: "char"[] @> unknown
LINE 6: (stxkind @> '{d}') AS ndist_enabled, ^
HINT: Could not choose a best candidate operator. You might need to add explicit type casts.
[pryzbyj@database ~]$ psql ts -c '\d pg_class' -E
[...]
********* QUERY **********
SELECT oid, stxrelid::pg_catalog.regclass, stxnamespace::pg_catalog.regnamespace AS nsp, stxname, (SELECT
pg_catalog.string_agg(pg_catalog.quote_ident(attname),',') FROM pg_catalog.unnest(stxkeys) s(attnum) JOIN
pg_catalog.pg_attributea ON (stxrelid = a.attrelid AND a.attnum = s.attnum AND NOT attisdropped)) AS columns,
(stxkind@> '{d}') AS ndist_enabled, (stxkind @> '{f}') AS deps_enabled
FROM pg_catalog.pg_statistic_ext stat WHERE stxrelid = '1259'
ORDER BY 1;
**************************
ERROR: operator is not unique: "char"[] @> unknown
LINE 6: (stxkind @> '{d}') AS ndist_enabled, ^
HINT: Could not choose a best candidate operator. You might need to add explicit type casts.
Thankfully this is still working:
ts=# \do @>
List of operators Schema | Name | Left arg type | Right arg type |
Resulttype | Description
------------+------+---------------+----------------+-------------+----------------------------------------pg_catalog |
@> | aclitem[] | aclitem | boolean | containspg_catalog | @> | anyarray | anyarray |
boolean | containspg_catalog | @> | anyrange | anyelement | boolean | containspg_catalog | @> |
anyrange | anyrange | boolean | containspg_catalog | @> | box | box | boolean
|containspg_catalog | @> | box | point | boolean | containspg_catalog | @> | circle |
circle | boolean | containspg_catalog | @> | circle | point | boolean |
containspg_catalog| @> | jsonb | jsonb | boolean | containspg_catalog | @> | path |
point | boolean | containspg_catalog | @> | polygon | point | boolean |
containspg_catalog| @> | polygon | polygon | boolean | containspg_catalog | @> | tsquery |
tsquery | boolean | containspublic | @> | hstore | hstore | boolean | public |
@> | text[] | text[] | boolean | text array contains compared by strict
(15 rows)
This query works fine when adding cast to text[]:
ts=# SELECT oid, stxrelid::pg_catalog.regclass, stxnamespace::pg_catalog.regnamespace AS nsp, stxname, (SELECT
pg_catalog.string_agg(pg_catalog.quote_ident(attname),',') FROM pg_catalog.unnest(stxkeys) s(attnum) JOIN
pg_catalog.pg_attributea ON (stxrelid = a.attrelid AND a.attnum = s.attnum AND NOT attisdropped)) AS columns,
(stxkind@> '{d}'::text[]) AS ndist_enabled, (stxkind @> '{f}'::text[]) AS deps_enabled
FROM pg_catalog.pg_statistic_ext stat WHERE stxrelid = '1259'
ORDER BY 1;oid | stxrelid | nsp | stxname | columns | ndist_enabled | deps_enabled
-----+----------+-----+---------+---------+---------------+--------------
(0 rows)
Is this to be considered an issue with parray_gin or with psql ?
I don't think that's an urgent problem to fix, but if someone has a workaround
for \d I would appreciate if you'd pass it along :)
Thanks in advance
Justin
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
В списке pgsql-general по дате отправления: