Re: Fail Fast In CTAS/CMV If Relation Already Exists To Avoid Unnecessary Rewrite, Planning Costs
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Cc: "Hou, Zhijie" <houzj.fnst@cn.fujitsu.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-12-14T06:22:35Z
Lists: pgsql-hackers
On Mon, Dec 14, 2020 at 03:15:12PM +0900, Michael Paquier wrote: > Please note that this case fails with your patch, but the presence of > IF NOT EXISTS should ensure that we don't fail and issue a NOTICE > instead, no? Taking this case specifically (OK, I am playing with > the rules a bit to insert data into the relation itself, still), this > query may finish by adding tuples to the table whose creation should > have been bypassed but the query got executed and inserted tuples. > That's one example of behavior that may be confusing. There may be > others, but it seems to me that it may be simpler to execute or even > plan the query at all if the relation already exists. Er.. Sorry. I meant here to *not* execute or even *not* plan the query at all if the relation already exists. -- Michael
Commits
-
Sanitize IF NOT EXISTS in EXPLAIN for CTAS and matviews
- e665769e6d1e 14.0 landed