Fix pg_plan_queries() to restore the previous setting of ActiveSnapshot
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 12 Mar 2008 23:58:35 +0000 (23:58 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 12 Mar 2008 23:58:35 +0000 (23:58 +0000)
commitf23af15399c306772c290a26c3a68cb90642b6ff
tree2c386a1bda51170911d218b24260662b332c7dec
parente3f286afc77e315c8eb043f3c568a49dea74190b
Fix pg_plan_queries() to restore the previous setting of ActiveSnapshot
(probably NULL) before exiting.  Up to now it's just left the variable as it
set it, which means that after we're done processing the current client
message, ActiveSnapshot is probably pointing at garbage (because this function
is typically run in MessageContext which will get reset).  There doesn't seem
to have been any code path in which that mattered before 8.3, but now the
plancache module might try to use the stale value if the next client message
is a Bind for a prepared statement that is in need of replanning.  Per report
from Alex Hunsaker.
src/backend/tcop/postgres.c