aboutsummaryrefslogtreecommitdiff
path: root/src/include/access/gist.h
diff options
context:
space:
mode:
authorTeodor Sigaev <teodor@sigaev.ru>2004-03-30 15:45:33 +0000
committerTeodor Sigaev <teodor@sigaev.ru>2004-03-30 15:45:33 +0000
commitf2c064afcbfad4999d7e9ccb644a8aa99463a1ac (patch)
treea630e42b10478f1d88b637a96114945016faa2e0 /src/include/access/gist.h
parent8d9a28eeefc477638cca58d0685635271eae49d6 (diff)
downloadpostgresql-f2c064afcbfad4999d7e9ccb644a8aa99463a1ac.tar.gz
postgresql-f2c064afcbfad4999d7e9ccb644a8aa99463a1ac.zip
Cleanup vectors of GISTENTRY and eliminate problem with 64-bit strict-aligned
boxes. Change interface to user-defined GiST support methods union and picksplit. Now instead of bytea struct it used special GistEntryVector structure.
Diffstat (limited to 'src/include/access/gist.h')
-rw-r--r--src/include/access/gist.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/include/access/gist.h b/src/include/access/gist.h
index 72b77523cff..1d4bc1989de 100644
--- a/src/include/access/gist.h
+++ b/src/include/access/gist.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/access/gist.h,v 1.39 2003/11/29 22:40:55 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/access/gist.h,v 1.40 2004/03/30 15:45:33 teodor Exp $
*
*-------------------------------------------------------------------------
*/
@@ -157,6 +157,19 @@ typedef struct GISTENTRY
bool leafkey;
} GISTENTRY;
+
+/*
+ * Vector of GISTENTRY struct's, user-defined
+ * methods union andpick split takes it as one of args
+ */
+
+typedef struct {
+ int32 n; /* number of elements */
+ GISTENTRY vector[1];
+} GistEntryVector;
+
+#define GEVHDRSZ ( offsetof(GistEntryVector, vector[0]) )
+
/*
* macro to initialize a GISTENTRY
*/