Re: Skip ExecCheckRTPerms in CTAS with no data
Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
To: Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-11-11T14:01:49Z
Lists: pgsql-hackers
Attachments
- v2-Skip-Insert-Perm-Check-Bulk-Insert-State-alloc-in-WITH-NO-DATA.patch (application/octet-stream) patch v2
On Tue, Nov 10, 2020 at 1:18 AM Anastasia Lubennikova <a.lubennikova@postgrespro.ru> wrote: > > I took a look at the patch. It is quite simple, so no comments about the > code. It would be good to add a test to select_into.sql to show that it > only applies to 'WITH NO DATA' and that subsequent insertions will fail > if permissions are not set. > Done. > > Maybe we should also mention it a documentation, but I haven't found any > specific paragraph about permissions on CTAS. > Yes we do not have anything related to permissions mentioned in the documentation. So, I'm not adding it now. Apart from the above, I also noticed that we unnecessarily allocate bulk insert state(16MB memory) in case of WITH NO DATA, just to free it in intorel_shutdown() without actually using it. So, in the v2 patch I have made changes to not allocate bulk insert state. Attaching v2 patch. Consider it for further review. With Regards, Bharath Rupireddy. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Remove INSERT privilege check at table creation of CTAS and matview
- 878f3a19c6c8 14.0 landed
-
Relax INSERT privilege requirement for CTAS and matviews WITH NO DATA
- 846005e4f382 14.0 landed