summaryrefslogtreecommitdiff
path: root/src/include/utils/rel.h
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2001-06-27 23:31:40 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2001-06-27 23:31:40 +0000
commite0c9301c87634f21c0a7c6305bdc6da15d6ba375 (patch)
treeaad976ca0197137c3461ff19a3d0e155487f7b44 /src/include/utils/rel.h
parentb559382134a52bbe1d79d465afd89c8385f88581 (diff)
Install infrastructure for shared-memory free space map. Doesn't actually
do anything yet, but it has the necessary connections to initialization and so forth. Make some gestures towards allowing number of blocks in a relation to be BlockNumber, ie, unsigned int, rather than signed int. (I doubt I got all the places that are sloppy about it, yet.) On the way, replace the hardwired NLOCKS_PER_XACT fudge factor with a GUC variable.
Diffstat (limited to 'src/include/utils/rel.h')
-rw-r--r--src/include/utils/rel.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/include/utils/rel.h b/src/include/utils/rel.h
index c2a9d0982f7..ef74317fda5 100644
--- a/src/include/utils/rel.h
+++ b/src/include/utils/rel.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: rel.h,v 1.50 2001/06/22 19:16:24 wieck Exp $
+ * $Id: rel.h,v 1.51 2001/06/27 23:31:40 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -19,8 +19,9 @@
#include "catalog/pg_am.h"
#include "catalog/pg_class.h"
#include "rewrite/prs2lock.h"
-#include "storage/relfilenode.h"
+#include "storage/block.h"
#include "storage/fd.h"
+#include "storage/relfilenode.h"
/* added to prevent circular dependency. bjm 1999/11/15 */
extern char *get_temp_rel_by_physicalname(const char *relname);
@@ -105,9 +106,11 @@ typedef struct PgStat_Info
typedef struct RelationData
{
File rd_fd; /* open file descriptor, or -1 if none */
- RelFileNode rd_node; /* relation file node */
- int rd_nblocks; /* number of blocks in rel */
- uint16 rd_refcnt; /* reference count */
+ RelFileNode rd_node; /* file node (physical identifier) */
+ BlockNumber rd_nblocks; /* number of blocks in rel */
+ BlockNumber rd_targblock; /* current insertion target block,
+ * or InvalidBlockNumber */
+ int rd_refcnt; /* reference count */
bool rd_myxactonly; /* rel uses the local buffer mgr */
bool rd_isnailed; /* rel is nailed in cache */
bool rd_indexfound; /* true if rd_indexlist is valid */