diff options
author | Marc G. Fournier <scrappy@hub.org> | 1996-07-09 06:22:35 +0000 |
---|---|---|
committer | Marc G. Fournier <scrappy@hub.org> | 1996-07-09 06:22:35 +0000 |
commit | d31084e9d1118b25fd16580d9d8c2924b5740dff (patch) | |
tree | 3179e66307d54df9c7b966543550e601eb55e668 /src/backend/utils/cache/rel.c | |
download | postgresql-PG95-1_01.tar.gz postgresql-PG95-1_01.zip |
Postgres95 1.01 Distribution - Virgin SourcesPG95-1_01
Diffstat (limited to 'src/backend/utils/cache/rel.c')
-rw-r--r-- | src/backend/utils/cache/rel.c | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/src/backend/utils/cache/rel.c b/src/backend/utils/cache/rel.c new file mode 100644 index 00000000000..33eabad1a85 --- /dev/null +++ b/src/backend/utils/cache/rel.c @@ -0,0 +1,77 @@ +/*------------------------------------------------------------------------- + * + * rel.c-- + * POSTGRES relation descriptor code. + * + * Copyright (c) 1994, Regents of the University of California + * + * + * IDENTIFICATION + * $Header: /cvsroot/pgsql/src/backend/utils/cache/Attic/rel.c,v 1.1.1.1 1996/07/09 06:22:06 scrappy Exp $ + * + *------------------------------------------------------------------------- + */ +/* #define RELREFDEBUG 1 */ + +#include "postgres.h" +#include "miscadmin.h" +#include "access/istrat.h" +#include "access/tupdesc.h" +#include "utils/rel.h" +#include "storage/fd.h" + + +/* + * RelationIsValid is now a macro in rel.h -cim 4/27/91 + * + * Many of the RelationGet...() functions are now macros in rel.h + * -mer 3/2/92 + */ + +/* + * RelationGetIndexStrategy -- + * Returns index strategy for a relation. + * + * Note: + * Assumes relation descriptor is valid. + * Assumes relation descriptor is for an index relation. + */ +IndexStrategy +RelationGetIndexStrategy(Relation relation) +{ + return relation->rd_istrat; +} + +/* + * RelationSetIndexSupport -- + * Sets index strategy and support info for a relation. + * + * Note: + * Assumes relation descriptor is a valid pointer to sufficient space. + * Assumes index strategy is valid. Assumes support is valid if non- + * NULL. + */ +/* ---------------- + * RelationSetIndexSupport + * + * This routine saves two pointers -- one to the IndexStrategy, and + * one to the RegProcs that support the indexed access method. These + * pointers are stored in the space following the attribute data in the + * reldesc. + * + * NEW: the index strategy and support are now stored in real fields + * at the end of the structure - jolly + * ---------------- + */ +void +RelationSetIndexSupport(Relation relation, + IndexStrategy strategy, + RegProcedure *support) +{ + Assert(PointerIsValid(relation)); + Assert(IndexStrategyIsValid(strategy)); + + relation->rd_istrat = strategy; + relation->rd_support = support; +} + |