Re: deparsing utility commands
От | Jim Nasby |
---|---|
Тема | Re: deparsing utility commands |
Дата | |
Msg-id | 55C261FD.9020201@BlueTreble.com обсуждение исходный текст |
Ответ на | Re: deparsing utility commands ("Shulgin, Oleksandr" <oleksandr.shulgin@zalando.de>) |
Ответы |
Re: deparsing utility commands
|
Список | pgsql-hackers |
On 7/31/15 8:45 AM, Shulgin, Oleksandr wrote: > While running deparsecheck suite I'm getting a number of oddly looking > errors: > > WARNING: state: 42883 errm: operator does not exist: pg_catalog.oid = > pg_catalog.oid > > This is caused by deparsing create view, e.g.: > > STATEMENT: create view v1 as select * from t1 ; > ERROR: operator does not exist: pg_catalog.oid = pg_catalog.oid at > character 52 > HINT: No operator matches the given name and argument type(s). You > might need to add explicit type casts. > QUERY: SELECT * FROM pg_catalog.pg_rewrite WHERE ev_class = $1 AND > rulename = $2 > CONTEXT: PL/pgSQL function test_ddl_deparse() line 1 at FOR over SELECT > rows > > The pg_rewrite query comes from ruleutils.c, while ddl_deparse.c calls > it through pg_get_viewdef_internal() but don't understand how is it > different from e.g., select pg_get_viewdef(...), and that last one is > not affected. I'm not sure what test_ddl_deparse is doing, is that where the oid = oid is coming from? It might be enlightening to replace = with OPERATOR(pg_catalog.=) and see if that works. -- Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX Data in Trouble? Get it in Treble! http://BlueTreble.com
В списке pgsql-hackers по дате отправления: