aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/tsgistidx.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2017-09-19 23:32:45 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2017-09-19 23:32:59 -0400
commit2d484f9b058035d41204f2eb8a0a8d2e8ee57b44 (patch)
treec742293df1ceab9025545dbac205a9a86428ac66 /src/backend/utils/adt/tsgistidx.c
parentd3a4f89d8a3e500bd7c0b7a8a8a5ce1b47859128 (diff)
downloadpostgresql-2d484f9b058035d41204f2eb8a0a8d2e8ee57b44.tar.gz
postgresql-2d484f9b058035d41204f2eb8a0a8d2e8ee57b44.zip
Remove no-op GiST support functions in the core GiST opclasses.
The preceding patch allowed us to remove useless GiST support functions. This patch actually does that for all the no-op cases in the core GiST code. This buys us whatever performance gain is to be had, and more importantly exercises the preceding patch. There remain no-op functions in the contrib GiST opclasses, but those will take more work to remove. Discussion: https://postgr.es/m/CAJEAwVELVx9gYscpE=Be6iJxvdW5unZ_LkcAaVNSeOwvdwtD=A@mail.gmail.com
Diffstat (limited to 'src/backend/utils/adt/tsgistidx.c')
-rw-r--r--src/backend/utils/adt/tsgistidx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/backend/utils/adt/tsgistidx.c b/src/backend/utils/adt/tsgistidx.c
index 732d87f22ff..578af5d5126 100644
--- a/src/backend/utils/adt/tsgistidx.c
+++ b/src/backend/utils/adt/tsgistidx.c
@@ -272,6 +272,10 @@ gtsvector_compress(PG_FUNCTION_ARGS)
Datum
gtsvector_decompress(PG_FUNCTION_ARGS)
{
+ /*
+ * We need to detoast the stored value, because the other gtsvector
+ * support functions don't cope with toasted values.
+ */
GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
SignTSVector *key = (SignTSVector *) PG_DETOAST_DATUM(entry->key);