SPI_freetuptable — libera um conjunto de linhas criado por
SPI_execute ou uma função semelhante
void SPI_freetuptable(SPITupleTable * tuptable)
A função SPI_freetuptable libera um conjunto de
linhas criado por uma função de execução de comando da
SPI anterior, como SPI_execute.
Portanto, esta função é frequentemente chamada com a variável global
SPI_tuptable como argumento.
Esta função é útil quando uma função C que usa a
SPI precisa executar vários comandos, e não deseja
manter os resultados dos comandos anteriores até que termine.
Note que quaisquer conjuntos de linhas não liberados, serão liberados
de qualquer maneira pela função SPI_finish.
Além disso, se uma subtransação for iniciada e interrompida na execução
de uma função C que usa a SPI,
a SPI irá liberar automaticamente quaisquer conjuntos
de linhas criados enquanto a subtransação estava em execução.
A partir do PostgreSQL 9.3, a função
SPI_freetuptable contém lógica de proteção
para proteger contra solicitações de exclusão duplicadas para
o mesmo conjunto de linhas.
Nas versões anteriores, exclusões duplicadas causavam travamentos.
SPITupleTable * tuptable
ponteiro para o conjunto de linhas a serem liberadas,
ou NULL para não fazer nada