On Fri, Apr 27, 2012 at 11:21 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Andrew Dunstan <andrew@dunslane.net> writes: > Right, what I'm asking is whether or not we actually want that side > effect in all cases, and specifically in this case where it's clearly > not necessary.
We could dodge that case by only changing the behavior when showstar is false; there is no need to change it otherwise. The patch has assorted other bugs too, in particular its schema-name treatment seems completely wrong (hint: RelationIsVisible is not the same as TypeIsVisible, and it's at best shaky to assume that a relation's name is the same as its rowtype's name anyway).
More generally, it seems rather inelegant to be forcibly adding a cast when in most cases the existing notation is not wrong. AFAICS the plain "relname" notation is only ambiguous if there is a column of the same name as the relation. I wonder whether we should instead address this by not letting the parser strip the "no op" cast in the first place.
You mean that the parser should not strip the "no op" cast in all cases or in the case only when the parser somehow detects a column of the same name as the relation?
regards, tom lane
-- Abbas EnterpriseDB Corporation The Enterprise PostgreSQL Company