Re: BUG #13891: Deparsed arbiter WHERE clauses cannot be parsed by Postgres - Mailing list pgsql-bugs

From Andres Freund
Subject Re: BUG #13891: Deparsed arbiter WHERE clauses cannot be parsed by Postgres
Date
Msg-id 20160204211534.j7wwi56b62mjcvfo@alap3.anarazel.de
Whole thread Raw
In response to Re: BUG #13891: Deparsed arbiter WHERE clauses cannot be parsed by Postgres  (Peter Geoghegan <pg@heroku.com>)
Responses Re: BUG #13891: Deparsed arbiter WHERE clauses cannot be parsed by Postgres
List pgsql-bugs
On 2016-02-04 13:09:43 -0800, Peter Geoghegan wrote:
> On Thu, Feb 4, 2016 at 12:49 PM, Andres Freund <andres@anarazel.de> wrote:
> > Seems fairly simple to write a DO statement that does something like
> > v_sql = pg_get_viewdef(viewname);
> > EXECUTE 'DROP VIEW '||viewname::regclass;
> > EXECUTE v_sql;
> > in a query over pg_views.
>
> Sorry, I still don't get it. How does that help with ON CONFLICT
> arbiter WHERE clause deparsing?

The bug this thread is about was actually visible in regression test
output, as the wrong output of pg_rules output. As were a number of
previous bugs. So it seems time to actually make sure that the output of
the rules we generate to test deparsing actually do something remotely
sane, by executing the deparsed sql. Obviously human inspection is not
sufficient.  You can do so by executing deparsed output of a rule or a
view (both should be doable afacis).

pgsql-bugs by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: BUG #13891: Deparsed arbiter WHERE clauses cannot be parsed by Postgres
Next
From: "David G. Johnston"
Date:
Subject: Fwd: BUG #13908: Query returns too few rows