index 51035e40153782b040cad5d27f8f8da24d2a3711..1253f7c51ac47dc8725c320c3d522c37d84571d9 100644 (file)
/*
- * $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;
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;
}
heap_endscan(scan);
- heap_close(scan->rs_rd, AccessShareLock);
+ heap_close(mydata->rel, AccessShareLock);
SRF_RETURN_DONE(funcctx);
}