Re: ExecRTCheckPerms() and many prunable partitions

From: Amit Langote <amitlangote09(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: David Rowley <dgrowleyml(at)gmail(dot)com>, Greg Stark <stark(at)mit(dot)edu>, Zhihong Yu <zyu(at)yugabyte(dot)com>, Julien Rouhaud <rjuju123(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: ExecRTCheckPerms() and many prunable partitions
Date: 2022-10-15 06:00:58
Message-ID: CA+HiwqGdtO_FmS2AJtCWXbsKW6QhL9bkzXGKgYWXgBimUEa+6w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Oct 7, 2022 at 4:31 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> On Fri, Oct 7, 2022 at 3:49 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > On Fri, Oct 7, 2022 at 1:25 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > > On Fri, Oct 7, 2022 at 10:04 AM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > > > On Thu, Oct 6, 2022 at 10:29 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> > > > > Actually, List of Bitmapsets turned out to be something that doesn't
> > > > > just-work with our Node infrastructure, which I found out thanks to
> > > > > -DWRITE_READ_PARSE_PLAN_TREES. So, I had to go ahead and add
> > > > > first-class support for copy/equal/write/read support for Bitmapsets,
> > > > > such that writeNode() can write appropriately labeled versions of them
> > > > > and nodeRead() can read them as Bitmapsets. That's done in 0003. I
> > > > > didn't actually go ahead and make *all* Bitmapsets in the plan trees
> > > > > to be Nodes, but maybe 0003 can be expanded to do that. We won't need
> > > > > to make gen_node_support.pl emit *_BITMAPSET_FIELD() blurbs then; can
> > > > > just use *_NODE_FIELD().
> > > >
> > > > All meson builds on the cfbot machines seem to have failed, maybe
> > > > because I didn't update src/include/nodes/meson.build to add
> > > > 'nodes/bitmapset.h' to the `node_support_input_i` collection. Here's
> > > > an updated version assuming that's the problem. (Will set up meson
> > > > builds on my machine to avoid this in the future.)
> > >
> > > And... noticed that a postgres_fdw test failed, because
> > > _readBitmapset() not having been changed to set NodeTag would
> > > "corrupt" any Bitmapsets that were created with it set.
> >
> > Broke the other cases while fixing the above. Attaching a new version
> > again. In the latest version, I'm setting Bitmapset.type by hand with
> > an XXX comment nearby saying that it would be nice to change that to
> > makeNode(Bitmapset), which I know sounds pretty ad-hoc.
>
> Sorry, I attached the wrong patches with the last email. The
> "correct" v22 attached this time.

Rebased over c037471832.

--
Thanks, Amit Langote
EDB: http://www.enterprisedb.com

Attachment Content-Type Size
v23-0004-Add-per-result-relation-extraUpdatedCols-to-Modi.patch application/octet-stream 26.1 KB
v23-0002-Do-not-add-hidden-OLD-NEW-RTEs-to-stored-view-ru.patch application/octet-stream 120.9 KB
v23-0001-Rework-query-relation-permission-checking.patch application/octet-stream 145.8 KB
v23-0003-Allow-adding-Bitmapsets-as-Nodes-into-plan-trees.patch application/octet-stream 5.5 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2022-10-15 06:27:09 Re: hash_xlog_split_allocate_page: failed to acquire cleanup lock
Previous Message Drouvot, Bertrand 2022-10-15 05:54:30 Re: Add regular expression testing for user name mapping in the peer authentication TAP test