]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Make ExecGetInsertedCols() and friends more robust and improve comments.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 15 Feb 2021 07:28:08 +0000 (09:28 +0200)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 15 Feb 2021 07:29:45 +0000 (09:29 +0200)
commit2b81444a88cc499f5d3608c5943e9a6e4b489070
treeebadc4226504db4222e9dc901179dd6f67b849e9
parenta27f3a7f4159c5afaf33932df16ca4fed6689c06
Make ExecGetInsertedCols() and friends more robust and improve comments.

If ExecGetInsertedCols(), ExecGetUpdatedCols() or ExecGetExtraUpdatedCols()
were called with a ResultRelInfo that's not in the range table and isn't a
partition routing target, the functions would dereference a NULL pointer,
relinfo->ri_RootResultRelInfo. Such ResultRelInfos are created when firing
RI triggers in tables that are not modified directly. None of the current
callers of these functions pass such relations, so this isn't a live bug,
but let's make them more robust.

Also update comment in ResultRelInfo; after commit 6214e2b228,
ri_RangeTableIndex is zero for ResultRelInfos created for partition tuple
routing.

Noted by Coverity. Backpatch down to v11, like commit 6214e2b228.

Reviewed-by: Tom Lane, Amit Langote
src/backend/executor/execUtils.c
src/include/nodes/execnodes.h