summaryrefslogtreecommitdiff
path: root/src/include/access/gist.h
diff options
context:
space:
mode:
authorTeodor Sigaev2004-03-30 15:45:33 +0000
committerTeodor Sigaev2004-03-30 15:45:33 +0000
commit3f58637ed75db9fb5ca126332b82b051014b754b (patch)
treec54d6e0a57a7fec660b9b55b70263303633cdd01 /src/include/access/gist.h
parent591e968f759f7cb720219b57a30d2b4f8fac5c24 (diff)
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.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/include/access/gist.h b/src/include/access/gist.h
index 926089d011..a18c196992 100644
--- a/src/include/access/gist.h
+++ b/src/include/access/gist.h
@@ -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
*/