summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTatsuo Ishii <ishii@postgresql.org>2006-04-25 00:40:54 +0000
committerTatsuo Ishii <ishii@postgresql.org>2006-04-25 00:40:54 +0000
commita34fd959777ba0c06ccc3504dd86e0c984d90a0e (patch)
tree4cc5a1bb3289165143648a3ac6a50710ddc7090d
parentb532c86f2ef627ad57df895aae916e06ff13eee7 (diff)
downloadpostgresql-a34fd959777ba0c06ccc3504dd86e0c984d90a0e.tar.gz
Fix bug reported by Michael Fuhr on Sun, 23 Apr 2006 09:52:31 -0600
(pgsql-committers@postgresql.org).
-rw-r--r--contrib/pgrowlocks/pgrowlocks.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/pgrowlocks/pgrowlocks.c b/contrib/pgrowlocks/pgrowlocks.c
index 51035e4015..1253f7c51a 100644
--- a/contrib/pgrowlocks/pgrowlocks.c
+++ b/contrib/pgrowlocks/pgrowlocks.c
@@ -1,5 +1,5 @@
/*
- * $PostgreSQL: pgsql/contrib/pgrowlocks/pgrowlocks.c,v 1.1 2006/04/23 01:12:58 ishii Exp $
+ * $PostgreSQL: pgsql/contrib/pgrowlocks/pgrowlocks.c,v 1.2 2006/04/25 00:40:54 ishii Exp $
*
* Copyright (c) 2005-2006 Tatsuo Ishii
*
@@ -61,6 +61,7 @@ extern Datum pgrowlocks(PG_FUNCTION_ARGS);
#undef MAKERANGEVARFROMNAMELIST_HAS_TWO_ARGS
typedef struct {
+ Relation rel;
HeapScanDesc scan;
int ncolumns;
} MyData;
@@ -100,6 +101,7 @@ pgrowlocks(PG_FUNCTION_ARGS)
rel = heap_openrv(relrv, AccessShareLock);
scan = heap_beginscan(rel, SnapshotNow, 0, NULL);
mydata = palloc(sizeof(*mydata));
+ mydata->rel = rel;
mydata->scan = scan;
mydata->ncolumns = tupdesc->natts;
funcctx->user_fctx = mydata;
@@ -222,7 +224,7 @@ pgrowlocks(PG_FUNCTION_ARGS)
}
heap_endscan(scan);
- heap_close(scan->rs_rd, AccessShareLock);
+ heap_close(mydata->rel, AccessShareLock);
SRF_RETURN_DONE(funcctx);
}