]> granicus.if.org Git - postgresql/commit
Fix subtly-wrong volatility checking in BeginCopyFrom().
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 8 Nov 2013 13:59:49 +0000 (08:59 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 8 Nov 2013 13:59:49 +0000 (08:59 -0500)
commit733e49ecff050f6520123fba469934426a788cfd
treefb168a838a48b515eb27d455c86249ba6c63951b
parent64f5962fe9d782c1c2b0baf9216ec301cac80dfa
Fix subtly-wrong volatility checking in BeginCopyFrom().

contain_volatile_functions() is best applied to the output of
expression_planner(), not its input, so that insertion of function
default arguments and constant-folding have been done.  (See comments
at CheckMutability, for instance.)  It's perhaps unlikely that anyone
will notice a difference in practice, but still we should do it properly.

In passing, change variable type from Node* to Expr* to reduce the net
number of casts needed.

Noted while perusing uses of contain_volatile_functions().
src/backend/commands/copy.c