FreeBSD manual
download PDF document: SPI_freetuptable.3.pdf
SPI_FREETUPTABLE(3) PostgreSQL 15.4 Documentation SPI_FREETUPTABLE(3)
NAME
SPI_freetuptable - free a row set created by SPI_execute or a similar
function
SYNOPSIS
void SPI_freetuptable(SPITupleTable * tuptable)
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 an SPI-using C function 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 an SPI-using C function, 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.
ARGUMENTS
SPITupleTable * tuptable
pointer to row set to free, or NULL to do nothing
PostgreSQL 15.4 2023 SPI_FREETUPTABLE(3)