Re: ExecRTCheckPerms() and many prunable partitions

From: Amit Langote <amitlangote09(at)gmail(dot)com>
To: David Rowley <dgrowleyml(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: ExecRTCheckPerms() and many prunable partitions
Date: 2021-06-30 14:58:23
Message-ID: CA+HiwqEnpRFRafh5QQwq9usinvOO_Fox3oqT0x273CyanfPQgQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jun 30, 2021 at 23:34 David Rowley <dgrowleyml(at)gmail(dot)com> wrote:

> On Thu, 1 Jul 2021 at 01:34, Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > For now, I have implemented the idea 2 as the attached patch.
>
> I only just had a fleeting glance at the patch. Aren't you
> accidentally missing the 0th RTE here?
>
> + while ((rti = bms_next_member(checkPermRels, rti)) > 0)
> {
> - RangeTblEntry *rte = (RangeTblEntry *) lfirst(l);
> + RangeTblEntry *rte = (RangeTblEntry *) list_nth(rangeTable, rti - 1);
>
> I'd have expected >= 0 rather than > 0.

Hmm, a valid RT index cannot be 0, so that seems fine to me. Note that RT
indexes are added as-is to that bitmapset, not after subtracting 1.

> --
Amit Langote
EDB: http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Yugo NAGATA 2021-06-30 15:02:13 Re: [HACKERS] WIP aPatch: Pgbench Serialization and deadlock errors
Previous Message vignesh C 2021-06-30 14:53:12 Re: Identify missing publications from publisher while create/alter subscription.