pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent - Mailing list pgsql-committers

From Amit Langote
Subject pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent
Date
Msg-id E1qvqan-002MDc-IO@gemulon.postgresql.org
Whole thread Raw
List 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
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/178ee1d858d89f6d86f42a84bd4b8014ddfa7245

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


pgsql-committers by date:

Previous
From: Amit Langote
Date:
Subject: pgsql: Prevent duplicate RTEPermissionInfo for plain-inheritance parent
Next
From: David Rowley
Date:
Subject: pgsql: Introduce the concept of read-only StringInfos