SPI_freetuptable
Description
SPI_freetuptable
frees a row set
created by a prior SPI command execution function, such as
SPI_execute
. Therefore, this
function is often called with the global variable SPI_tuptable as argument.
This function is useful if a SPI procedure needs to execute
multiple commands and does not want to keep the results of
earlier commands around until it ends. Note that any unfreed row
sets will be freed anyway at SPI_finish
. Also, if a subtransaction is
started and then aborted within execution of a SPI procedure, SPI
automatically frees any row sets created while the subtransaction
was running.
Beginning in PostgreSQL 9.3,
SPI_freetuptable
contains guard
logic to protect against duplicate deletion requests for the same
row set. In previous releases, duplicate deletions would lead to
crashes.