From bbfa1c39a1463693e9a3d704439034e69f11d823 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri, 10 Mar 2006 01:51:23 +0000
Subject: [PATCH] Add a CHECK_FOR_INTERRUPTS() to the loop in
 ExecMakeTableFunctionResult. Otherwise you can't cancel queries like select
 ... from generate_series(1,1000000).

---
 src/backend/executor/execQual.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/backend/executor/execQual.c b/src/backend/executor/execQual.c
index 6283a739536..fcc7d4b683c 100644
--- a/src/backend/executor/execQual.c
+++ b/src/backend/executor/execQual.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/executor/execQual.c,v 1.188 2006/03/05 15:58:26 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/executor/execQual.c,v 1.189 2006/03/10 01:51:23 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1280,6 +1280,8 @@ ExecMakeTableFunctionResult(ExprState *funcexpr,
 		Datum		result;
 		HeapTuple	tuple;
 
+		CHECK_FOR_INTERRUPTS();
+
 		/*
 		 * reset per-tuple memory context before each call of the function or
 		 * expression. This cleans up any local memory the function may leak
-- 
GitLab