]> 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:43 +0000 (08:59 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 8 Nov 2013 13:59:43 +0000 (08:59 -0500)
commit3c24b08f9bdc191d9e389dbcd97dbfb4cdb546d4
tree73fe7e0a40e3a022b772a759d37063e167d1bddb
parente3480438e89f74019f271b1b5501bb9eed2e0d2a
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