pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent

From: Amit Langote <amitlan(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent
Date: 2023-10-26 02:59:00
Message-ID: E1qvqaK-002MCb-3L@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Prevent duplicate RTEPermissionInfo for plain-inheritance parents

Currently, expand_single_inheritance_child() doesn't reset
perminfoindex in a plain-inheritance parent's child RTE, because
prior to 387f9ed0a0, the executor would use the first child RTE to
locate the parent's RTEPermissionInfo. That in turn causes
add_rte_to_flat_rtable() to create an extra RTEPermissionInfo
belonging to the parent's child RTE with the same content as the one
belonging to the parent's original ("root") RTE.

In 387f9ed0a0, we changed things so that the executor can now use the
parent's "root" RTE for locating its RTEPermissionInfo instead of the
child RTE, so the latter's perminfoindex need not be set anymore, so
make it so.

Reported-by: Tom Lane
Discussion: https://postgr.es/m/839708.1698174464@sss.pgh.pa.us
Backpatch-through: 16

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/01575ad788e3d3e67b641d43802c8b7bf126a1a3

Modified Files
--------------
src/backend/optimizer/util/inherit.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Amit Langote 2023-10-26 02:59:30 pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent
Previous Message Amit Kapila 2023-10-26 02:14:28 pgsql: Migrate logical slots to the new node during an upgrade.