From e0c9301c87634f21c0a7c6305bdc6da15d6ba375 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 27 Jun 2001 23:31:40 +0000 Subject: 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. --- src/include/utils/rel.h | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'src/include/utils/rel.h') 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 */ -- cgit v1.2.3