diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
index bb601c5436acc0cd8fa9993e11c7da0bfc4fb497..c75f7f0b85fea0cf0fd098f45fe22ddfdcab2887 100644
--- a/contrib/dblink/dblink.c
+++ b/contrib/dblink/dblink.c
@@ -1766,6 +1766,7 @@ get_tuple_of_interest(Oid relid, int16 *pkattnums, int16 pknumatts, char **src_p
 		SPITupleTable *tuptable = SPI_tuptable;
 
 		tuple = SPI_copytuple(tuptable->vals[0]);
+		SPI_finish();
 
 		return tuple;
 	}
@@ -1774,6 +1775,8 @@ get_tuple_of_interest(Oid relid, int16 *pkattnums, int16 pknumatts, char **src_p
 		/*
 		 * no qualifying tuples
 		 */
+		SPI_finish();
+
 		return NULL;
 	}