Re: ExecRTCheckPerms() and many prunable partitions - Mailing list pgsql-hackers

From Zhihong Yu
Subject Re: ExecRTCheckPerms() and many prunable partitions
Date
Msg-id CALNJ-vRncAz9ogAAXxCT6x53jZ4Kgjax3F6vn_G=g8KJJ0sO7w@mail.gmail.com
Whole thread Raw
In response to Re: ExecRTCheckPerms() and many prunable partitions  (Amit Langote <amitlangote09@gmail.com>)
List pgsql-hackers


On Wed, Mar 23, 2022 at 12:03 AM Amit Langote <amitlangote09@gmail.com> wrote:
On Mon, Mar 14, 2022 at 4:36 PM Amit Langote <amitlangote09@gmail.com> wrote:
> Also needed fixes when rebasing.

Needed another rebase.

As the changes being made with the patch are non-trivial and the patch
hasn't been reviewed very significantly since Alvaro's comments back
in Sept 2021 which I've since addressed, I'm thinking of pushing this
one into the version 16 dev cycle.

--
Amit Langote
EDB: http://www.enterprisedb.com
Hi,
For patch 1:

bq. makes permissions-checking needlessly expensive when many inheritance children are added to the range range 

'range' is repeated in the above sentence.

+ExecCheckOneRelPerms(RelPermissionInfo *perminfo)

Since RelPermissionInfo is for one relation, I think the 'One' in func name can be dropped.

+       else                    /* this isn't a child result rel */
+           resultRelInfo->ri_RootToChildMap = NULL;
...
+       resultRelInfo->ri_RootToChildMapValid = true;

Should the assignment of true value be moved into the if block (in the else block, ri_RootToChildMap is assigned NULL) ?

+   /* Looks like the RTE doesn't, so try to find it the hard way. */

doesn't -> doesn't know

Cheers

pgsql-hackers by date:

Previous
From: Justin Pryzby
Date:
Subject: Re: Adding CI to our tree
Next
From: Thomas Munro
Date:
Subject: Re: Removing more vacuumlazy.c special cases, relfrozenxid optimizations