/*
- * $PostgreSQL:$
+ * $PostgreSQL$
*/
#include "btree_gist.h"
#include "btree_utils_var.h"
#include "utils/builtins.h"
#include "utils/numeric.h"
+#include "utils/rel.h"
/*
** Bytea ops
/*
- * $PostgreSQL:$
+ * $PostgreSQL$
*/
#ifndef __BTREE_UTILS_NUM_H__
#define __BTREE_UTILS_NUM_H__
#include "btree_gist.h"
+#include "utils/rel.h"
#include <math.h>
#include <float.h>
/*
- * $PostgreSQL:$
+ * $PostgreSQL$
*/
#include "btree_gist.h"
#include "btree_utils_var.h"
#include "utils/pg_locale.h"
#include "utils/builtins.h"
+#include "utils/rel.h"
PG_FUNCTION_INFO_V1(gbt_var_decompress);
Datum gbt_var_decompress(PG_FUNCTION_ARGS);
#include "access/heapam.h"
#include "access/multixact.h"
+#include "access/relscan.h"
#include "access/xact.h"
#include "catalog/namespace.h"
#include "funcapi.h"
#include "access/gist_private.h"
#include "access/hash.h"
-#include "access/heapam.h"
-#include "access/htup.h"
#include "access/nbtree.h"
+#include "access/relscan.h"
#include "catalog/namespace.h"
#include "funcapi.h"
#include "miscadmin.h"
#include "access/gin.h"
#include "miscadmin.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
/*
* Locks buffer by needed method for search.
#include "access/gin.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
int
compareItemPointers(ItemPointer a, ItemPointer b)
#include "access/gin.h"
#include "access/tuptoaster.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
/*
* forms tuple for entry tree. On leaf page, Index tuple has
#include "postgres.h"
#include "access/gin.h"
+#include "access/relscan.h"
#include "catalog/index.h"
#include "miscadmin.h"
#include "storage/bufmgr.h"
#include "postgres.h"
-#include "access/genam.h"
#include "access/gin.h"
+#include "access/relscan.h"
#include "pgstat.h"
#include "storage/bufmgr.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
Datum
#include "postgres.h"
#include "access/gist_private.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "miscadmin.h"
#include "pgstat.h"
#include "access/genam.h"
#include "access/gist_private.h"
#include "access/gistscan.h"
+#include "access/relscan.h"
#include "storage/bufmgr.h"
#include "utils/memutils.h"
#include "postgres.h"
#include "access/gist_private.h"
+#include "utils/rel.h"
typedef struct
{
#include "storage/freespace.h"
#include "storage/lmgr.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
/*
* static *S used for temrorary storage (saves stack and palloc() call)
#include "miscadmin.h"
#include "storage/bufmgr.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
typedef struct
#include "postgres.h"
-#include "access/genam.h"
#include "access/hash.h"
+#include "access/relscan.h"
#include "catalog/index.h"
#include "commands/vacuum.h"
#include "miscadmin.h"
#include "access/hash.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
static OffsetNumber _hash_pgaddtup(Relation rel, Buffer buf,
#include "access/hash.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
static Buffer _hash_getovflpage(Relation rel, Buffer metabuf);
#include "postgres.h"
#include "access/hash.h"
+#include "access/relscan.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
#include "utils/resowner.h"
#include "postgres.h"
#include "access/hash.h"
+#include "access/relscan.h"
#include "pgstat.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
/*
*/
#include "postgres.h"
-#include "access/genam.h"
#include "access/hash.h"
#include "access/reloptions.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "storage/bufmgr.h"
#include "utils/lsyscache.h"
#include "access/heapam.h"
#include "access/hio.h"
#include "access/multixact.h"
+#include "access/relscan.h"
#include "access/sysattr.h"
#include "access/transam.h"
#include "access/tuptoaster.h"
#include "storage/bufmgr.h"
#include "storage/off.h"
#include "utils/inval.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "storage/bufmgr.h"
#include "storage/smgr.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
/*
#include "catalog/catalog.h"
#include "utils/fmgroids.h"
#include "utils/pg_lzcompress.h"
+#include "utils/rel.h"
#include "utils/typcache.h"
#include "utils/tqual.h"
#include "postgres.h"
-#include "access/genam.h"
-#include "access/heapam.h"
+#include "access/relscan.h"
#include "access/transam.h"
#include "miscadmin.h"
#include "pgstat.h"
#include "storage/bufmgr.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "postgres.h"
-#include "access/genam.h"
-#include "access/heapam.h"
+#include "access/relscan.h"
#include "access/transam.h"
#include "pgstat.h"
#include "storage/bufmgr.h"
#include "access/genam.h"
#include "access/nbtree.h"
+#include "access/relscan.h"
#include "catalog/index.h"
#include "commands/vacuum.h"
#include "miscadmin.h"
#include "access/genam.h"
#include "access/nbtree.h"
+#include "access/relscan.h"
#include "pgstat.h"
#include "storage/bufmgr.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
static bool _bt_readpage(IndexScanDesc scan, ScanDirection dir,
#include "access/nbtree.h"
#include "miscadmin.h"
#include "storage/smgr.h"
+#include "utils/rel.h"
#include "utils/tuplesort.h"
#include "access/genam.h"
#include "access/nbtree.h"
#include "access/reloptions.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "miscadmin.h"
#include "storage/bufmgr.h"
#include "storage/bufmgr.h"
#include "storage/smgr.h"
#include "utils/hsearch.h"
+#include "utils/rel.h"
/*
#include "utils/acl.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "miscadmin.h"
#include "storage/fd.h"
#include "utils/fmgroids.h"
-#include "utils/relcache.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "access/genam.h"
#include "access/heapam.h"
+#include "access/relscan.h"
#include "access/sysattr.h"
#include "access/transam.h"
#include "access/xact.h"
#include "utils/inval.h"
#include "utils/lsyscache.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/acl.h"
#include "utils/builtins.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "utils/acl.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "miscadmin.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "catalog/pg_enum.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
static int oid_cmp(const void *p1, const void *p2);
#include "catalog/pg_largeobject.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "catalog/indexing.h"
#include "catalog/pg_namespace.h"
#include "utils/builtins.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/acl.h"
#include "utils/builtins.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "access/genam.h"
#include "access/heapam.h"
+#include "access/relscan.h"
#include "access/rewriteheap.h"
#include "access/transam.h"
#include "access/xact.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "utils/acl.h"
#include "utils/builtins.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
static void AlterConversionOwner_internal(Relation rel, Oid conversionOid,
#include "utils/fmgroids.h"
#include "utils/guc.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "miscadmin.h"
#include "utils/acl.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
/*
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "parser/parse_type.h"
#include "utils/acl.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "access/genam.h"
#include "access/heapam.h"
#include "access/reloptions.h"
+#include "access/relscan.h"
#include "access/sysattr.h"
#include "access/xact.h"
#include "catalog/catalog.h"
#include "utils/guc.h"
#include "utils/lsyscache.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "utils/catcache.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "rewrite/rewriteSupport.h"
#include "utils/acl.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
static void checkViewTupleDesc(TupleDesc newdesc, TupleDesc olddesc);
#include "postgres.h"
#include "access/heapam.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "executor/nodeBitmapHeapscan.h"
#include "pgstat.h"
#include "access/genam.h"
#include "access/nbtree.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "executor/nodeIndexscan.h"
#include "nodes/nodeFuncs.h"
#include "postgres.h"
#include "access/heapam.h"
+#include "access/relscan.h"
#include "executor/execdebug.h"
#include "executor/nodeSeqscan.h"
#include "optimizer/clauses.h"
#include "parser/parsetree.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
/*
#include "postgres.h"
#include "catalog/pg_aggregate.h"
+#include "catalog/pg_am.h"
#include "catalog/pg_type.h"
#include "nodes/makefuncs.h"
#include "optimizer/clauses.h"
#include "parser/analyze.h"
#include "parser/parsetree.h"
#include "parser/parse_coerce.h"
+#include "utils/rel.h"
static List *expand_targetlist(List *tlist, int command_type,
#include "parser/parse_expr.h"
#include "parser/parsetree.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
static Plan *recurse_set_operations(Node *setOp, PlannerInfo *root,
#include "storage/bufmgr.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
-#include "utils/relcache.h"
+#include "utils/rel.h"
#include "utils/snapmgr.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "parser/parse_relation.h"
#include "parser/parse_target.h"
#include "parser/parsetree.h"
+#include "utils/rel.h"
typedef struct
#include "rewrite/rewriteManip.h"
#include "utils/guc.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#define ORDER_CLAUSE 0
#include "utils/guc.h"
#include "utils/memutils.h"
#include "utils/ps_status.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "utils/builtins.h"
#include "utils/inval.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "utils/acl.h"
#include "utils/fmgroids.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "access/heapam.h"
#include "catalog/indexing.h"
+#include "catalog/pg_class.h"
#include "rewrite/rewriteSupport.h"
#include "utils/inval.h"
#include "utils/syscache.h"
#include "storage/ipc.h"
#include "storage/proc.h"
#include "storage/smgr.h"
+#include "utils/rel.h"
#include "utils/resowner.h"
#include "pgstat.h"
#include "libpq/libpq-fs.h"
#include "storage/large_object.h"
#include "utils/fmgroids.h"
+#include "utils/rel.h"
#include "utils/resowner.h"
#include "utils/snapmgr.h"
#include "utils/tqual.h"
#include "storage/fd.h"
#include "utils/acl.h"
#include "utils/builtins.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
-#include "utils/relcache.h"
/* Return physical size of directory contents, or 0 if dir doesn't exist */
#include "access/heapam.h"
#include "catalog/indexing.h"
#include "catalog/namespace.h"
+#include "catalog/pg_class.h"
#include "catalog/pg_operator.h"
#include "catalog/pg_proc.h"
#include "catalog/pg_ts_config.h"
#include "parser/parsetree.h"
#include "utils/acl.h"
#include "utils/builtins.h"
+#include "utils/rel.h"
#include "utils/tqual.h"
#include "access/genam.h"
#include "access/hash.h"
#include "access/heapam.h"
+#include "access/relscan.h"
#include "access/sysattr.h"
#include "access/valid.h"
#include "catalog/pg_operator.h"
#include "utils/builtins.h"
#include "utils/fmgroids.h"
#include "utils/memutils.h"
-#include "utils/relcache.h"
+#include "utils/rel.h"
#include "utils/resowner.h"
#include "utils/syscache.h"
#include "utils/tqual.h"
#include "storage/smgr.h"
#include "utils/inval.h"
#include "utils/memutils.h"
-#include "utils/relcache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "catalog/pg_ts_parser.h"
#include "catalog/pg_ts_template.h"
#include "catalog/pg_type.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "commands/defrem.h"
#include "utils/builtins.h"
#include "utils/lsyscache.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/typcache.h"
#include "storage/bufmgr.h"
#include "storage/proc.h"
#include "utils/memutils.h"
+#include "utils/rel.h"
#include "utils/resowner.h"
-#include "utils/relcache.h"
/*
#include "utils/lsyscache.h"
#include "utils/memutils.h"
#include "utils/pg_rusage.h"
+#include "utils/rel.h"
#include "utils/syscache.h"
#include "utils/tuplesort.h"
#ifndef GENAM_H
#define GENAM_H
-#include "access/relscan.h"
#include "access/sdir.h"
+#include "access/skey.h"
#include "nodes/tidbitmap.h"
#include "storage/buf.h"
#include "storage/lock.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
+#include "utils/snapshot.h"
/*
* Struct for statistics returned by ambuild
/* Typedef for callback function to determine if a tuple is bulk-deletable */
typedef bool (*IndexBulkDeleteCallback) (ItemPointer itemptr, void *state);
-/* Struct for heap-or-index scans of system tables */
-typedef struct SysScanDescData
-{
- Relation heap_rel; /* catalog being scanned */
- Relation irel; /* NULL if doing heap scan */
- HeapScanDesc scan; /* only valid in heap-scan case */
- IndexScanDesc iscan; /* only valid in index-scan case */
-} SysScanDescData;
-
-typedef SysScanDescData *SysScanDesc;
+/* struct definitions appear in relscan.h */
+typedef struct IndexScanDescData *IndexScanDesc;
+typedef struct SysScanDescData *SysScanDesc;
/*
* generalized index_ interface routines (in indexam.c)
*/
+
+/*
+ * IndexScanIsValid
+ * True iff the index scan is valid.
+ */
+#define IndexScanIsValid(scan) PointerIsValid(scan)
+
extern Relation index_open(Oid relationId, LOCKMODE lockmode);
extern void index_close(Relation relation, LOCKMODE lockmode);
#ifndef GIN_H
#define GIN_H
+#include "access/genam.h"
#include "access/itup.h"
-#include "access/relscan.h"
#include "access/xlog.h"
#include "fmgr.h"
#include "nodes/tidbitmap.h"
#include "access/xlog.h"
#include "access/xlogdefs.h"
+#include "storage/block.h"
#include "storage/bufpage.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
* amproc indexes for GiST indexes.
#include "access/gist.h"
#include "access/itup.h"
-#include "access/xlog.h"
-#include "access/xlogdefs.h"
-#include "fmgr.h"
+#include "storage/bufmgr.h"
#define GIST_UNLOCK BUFFER_LOCK_UNLOCK
#define GIST_SHARE BUFFER_LOCK_SHARE
#ifndef HASH_H
#define HASH_H
+#include "access/genam.h"
#include "access/itup.h"
-#include "access/relscan.h"
#include "access/sdir.h"
#include "access/xlog.h"
#include "fmgr.h"
#include "storage/lock.h"
+#include "utils/relcache.h"
/*
* Mapping from hash bucket number to physical block number of bucket's
#define HEAPAM_H
#include "access/htup.h"
-#include "access/relscan.h"
#include "access/sdir.h"
+#include "access/skey.h"
#include "access/xlog.h"
#include "nodes/primnodes.h"
+#include "storage/bufpage.h"
#include "storage/lock.h"
+#include "utils/relcache.h"
#include "utils/snapshot.h"
#define heap_close(r,l) relation_close(r,l)
+/* struct definition appears in relscan.h */
+typedef struct HeapScanDescData *HeapScanDesc;
+
+/*
+ * HeapScanIsValid
+ * True iff the heap scan is valid.
+ */
+#define HeapScanIsValid(scan) PointerIsValid(scan)
+
extern HeapScanDesc heap_beginscan(Relation relation, Snapshot snapshot,
int nkeys, ScanKey key);
extern HeapScanDesc heap_beginscan_strat(Relation relation, Snapshot snapshot,
#define HIO_H
#include "access/htup.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
#include "storage/buf.h"
extern void RelationPutHeapTuple(Relation relation, Buffer buffer,
#ifndef NBTREE_H
#define NBTREE_H
+#include "access/genam.h"
#include "access/itup.h"
-#include "access/relscan.h"
#include "access/sdir.h"
#include "access/xlog.h"
#include "access/xlogutils.h"
#ifndef RELSCAN_H
#define RELSCAN_H
-#include "access/htup.h"
-#include "access/skey.h"
-#include "storage/bufpage.h"
-#include "utils/rel.h"
-#include "utils/snapshot.h"
+#include "access/genam.h"
+#include "access/heapam.h"
typedef struct HeapScanDescData
OffsetNumber rs_vistuples[MaxHeapTuplesPerPage]; /* their offsets */
} HeapScanDescData;
-typedef HeapScanDescData *HeapScanDesc;
-
/*
* We use the same IndexScanDescData structure for both amgettuple-based
* and amgetbitmap-based index scans. Some fields are only relevant in
TransactionId xs_prev_xmax; /* previous HOT chain member's XMAX, if any */
} IndexScanDescData;
-typedef IndexScanDescData *IndexScanDesc;
-
-
-/*
- * HeapScanIsValid
- * True iff the heap scan is valid.
- */
-#define HeapScanIsValid(scan) PointerIsValid(scan)
-
-/*
- * IndexScanIsValid
- * True iff the index scan is valid.
- */
-#define IndexScanIsValid(scan) PointerIsValid(scan)
+/* Struct for heap-or-index scans of system tables */
+typedef struct SysScanDescData
+{
+ Relation heap_rel; /* catalog being scanned */
+ Relation irel; /* NULL if doing heap scan */
+ HeapScanDesc scan; /* only valid in heap-scan case */
+ IndexScanDesc iscan; /* only valid in index-scan case */
+} SysScanDescData;
#endif /* RELSCAN_H */
#define REWRITE_HEAP_H
#include "access/htup.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/* struct definition is private to rewriteheap.c */
typedef struct RewriteStateData *RewriteState;
#include "access/htup.h"
#include "storage/bufpage.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
* This enables de-toasting of index entries. Needed until VACUUM is
#define XLOG_UTILS_H
#include "storage/buf.h"
-#include "utils/rel.h"
+#include "storage/relfilenode.h"
+#include "storage/block.h"
+#include "utils/relcache.h"
extern void XLogCheckInvalidPages(void);
#ifndef CATALOG_H
#define CATALOG_H
-#include "utils/rel.h"
+#include "catalog/pg_class.h"
+#include "storage/relfilenode.h"
+#include "utils/relcache.h"
extern char *relpath(RelFileNode rnode);
#define INDEXING_H
#include "access/htup.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
* The state object used by CatalogOpenIndexes and friends is actually the
#define CLUSTER_H
#include "nodes/parsenodes.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
extern void cluster(ClusterStmt *stmt, bool isTopLevel);
#define TABLECMDS_H
#include "nodes/parsenodes.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
extern Oid DefineRelation(CreateStmt *stmt, char relkind);
#include "nodes/parsenodes.h"
#include "storage/buf.h"
#include "storage/lock.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*----------
#ifndef EXECNODES_H
#define EXECNODES_H
-#include "access/relscan.h"
+#include "access/genam.h"
+#include "access/heapam.h"
+#include "access/skey.h"
#include "nodes/params.h"
-#include "nodes/plannodes.h"
-#include "nodes/tidbitmap.h"
+#include "nodes/plannodes.h"
+#include "nodes/tidbitmap.h"
#include "utils/hsearch.h"
+#include "utils/rel.h"
+#include "utils/snapshot.h"
#include "utils/tuplestore.h"
#define PRINT_H
#include "nodes/parsenodes.h"
-#include "nodes/execnodes.h"
+#include "executor/tuptable.h"
#define nodeDisplay(x) pprint(x)
#define PLANCAT_H
#include "nodes/relation.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/* Hook for plugins to get control in get_relation_info() */
typedef void (*get_relation_info_hook_type) (PlannerInfo *root,
#define PARSE_NODE_H
#include "nodes/parsenodes.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
* State information used during parse analysis
#include "libpq/pqcomm.h"
#include "portability/instr_time.h"
#include "utils/hsearch.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
#include "utils/timestamp.h"
#define REWRITEDEFINE_H
#include "nodes/parsenodes.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
#define RULE_FIRES_ON_ORIGIN 'O'
#define RULE_FIRES_ALWAYS 'A'
#ifndef REWRITEHANDLER_H
#define REWRITEHANDLER_H
-#include "utils/rel.h"
+#include "utils/relcache.h"
#include "nodes/parsenodes.h"
extern List *QueryRewrite(Query *parsetree);
#include "storage/shmem.h"
#include "storage/smgr.h"
#include "storage/spin.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
#ifndef BUFMGR_H
#define BUFMGR_H
+#include "storage/block.h"
#include "storage/buf.h"
#include "storage/bufpage.h"
-#include "utils/rel.h"
+#include "storage/relfilenode.h"
+#include "utils/relcache.h"
typedef void *Block;
#include "access/htup.h"
#include "access/skey.h"
#include "lib/dllist.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
/*
* struct catctup: individual tuple in the cache.
#define INVAL_H
#include "access/htup.h"
-#include "utils/rel.h"
+#include "utils/relcache.h"
typedef void (*CacheCallbackFunction) (Datum arg, Oid relid);
#include "rewrite/prs2lock.h"
#include "storage/block.h"
#include "storage/relfilenode.h"
+#include "utils/relcache.h"
/*
struct PgStat_TableStatus *pgstat_info; /* statistics collection area */
} RelationData;
-typedef RelationData *Relation;
-
-
-/* ----------------
- * RelationPtr is used in the executor to support index scans
- * where we have to keep track of several index relations in an
- * array. -cim 9/10/89
- * ----------------
- */
-typedef Relation *RelationPtr;
-
-
/*
* StdRdOptions
* Standard contents of rd_options for heaps and generic indexes.
#ifndef RELCACHE_H
#define RELCACHE_H
-#include "utils/rel.h"
+#include "access/tupdesc.h"
+#include "nodes/bitmapset.h"
+#include "nodes/pg_list.h"
+
+
+typedef struct RelationData *Relation;
+
+/* ----------------
+ * RelationPtr is used in the executor to support index scans
+ * where we have to keep track of several index relations in an
+ * array. -cim 9/10/89
+ * ----------------
+ */
+typedef Relation *RelationPtr;
/*
* Routines to open (lookup) and close a relcache entry
#include "access/itup.h"
#include "executor/tuptable.h"
-#include "utils/rel.h"
+#include "fmgr.h"
+#include "utils/relcache.h"
/* Tuplesortstate is an opaque type whose details are not known outside