Remove field UpdateContext->updated in nodeModifyTable.c
authorDean Rasheed
Thu, 29 Feb 2024 11:49:30 +0000 (11:49 +0000)
committerDean Rasheed
Thu, 29 Feb 2024 11:49:30 +0000 (11:49 +0000)
commit362de947cd7e8c826d9b3c5dc2590348263ed3c1
treeceb73d27dc144c15d26cacae7600aa707125c471
parent6fd144e3a9664ea545d10008c48dceb6c4e9d38a
Remove field UpdateContext->updated in nodeModifyTable.c

This field has been redundant ever since it was added by commit
25e777cf8e, which split up ExecUpdate() and ExecDelete() into reusable
pieces. The only place that reads it is ExecMergeMatched(), if the
result from ExecUpdateAct() is TM_Ok. However, all paths through
ExecUpdateAct() that return TM_Ok also set this field to true, so the
return status by itself is sufficient to tell if the update happened.

Removing this field is a modest simplification, and it brings the
UPDATE path in ExecMergeMatched() more into line with ExecUpdate(),
ensuring that ExecUpdateEpilogue() is always called if ExecUpdateAct()
returns TM_Ok, reducing the chance of bugs.

Dean Rasheed, reviewed by Alvaro Herrera.

Discussion: https://postgr.es/m/CAEZATCWGGmigGBzLHkJm5Ccv2mMxXmwi3%2Buq0yhwDHm-tsvSLg%40mail.gmail.com
src/backend/executor/nodeModifyTable.c