diff -rpcd a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
*** a/contrib/dblink/dblink.c	2014-06-10 13:17:04.000000000 +0900
--- b/contrib/dblink/dblink.c	2014-06-10 18:26:47.437000000 +0900
*************** materializeQueryResult(FunctionCallInfo
*** 1045,1050 ****
--- 1045,1052 ----
  		sinfo.last_res = NULL;
  		PQclear(sinfo.cur_res);
  		sinfo.cur_res = NULL;
+ 		if (sinfo.tmpcontext != NULL)
+ 			MemoryContextDelete(sinfo.tmpcontext);
  	}
  	PG_CATCH();
  	{
