Re: DELETE ... USING - Mailing list pgsql-patches

From Neil Conway
Subject Re: DELETE ... USING
Date
Msg-id 42538AEE.4040704@samurai.com
Whole thread Raw
In response to Re: DELETE ... USING  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-patches
Tom Lane wrote:
> Hmm.  There's some merit in that position, but consider this: we are
> encouraging people rather strongly to move to the add_missing_from=false
> behavior.  So add_missing_from=true could be seen as a testing situation
> in which you'd like to know which of your queries have a problem, while
> not actually causing your app to fail.  Strict backwards compatibility
> won't produce the warning but also won't help you find what will break.

Hmm, ok, I can see where that would be useful.

Looking at how to implement this, there is some rather dodgy code in
warnAutoRange() in parse_relation.c that only emits the notice about
adding a missing FROM clause entry if the query already has at least one
range table entry in its FROM clause. The idea appears to be to not
issue warnings about queries like "SELECT foo.*;", but it also means we
don't end up warning about DELETE and UPDATE.

I think the right fix is to remove the "inFromCl" check, and always
issue a notice. With add_missing_from=true, all these queries are
rejected anyway, so I think it makes sense to warn about all of them
when add_missing_from is disabled. Objections?

-Neil

pgsql-patches by date:

Previous
From: Neil Conway
Date:
Subject: Re: Have psql \dD show checks
Next
From: Neil Conway
Date:
Subject: Re: avg(int2) and avg(int8) micro-opt