X-Git-Url: http://sigaev.ru/git/gitweb.cgi?p=smlar.git;a=blobdiff_plain;f=smlar_gin.c;h=4164fa4bfdcaa3aad81872d5ade07b9a9f720bf0;hp=5ea1570b3cba38c4cdff1beb7d37eecf96f9a45d;hb=25a4fef344f5c2b90e6a9d32144ee12b9198487d;hpb=0bc52593d34ce24b38cbd4fb6225d97601c5b871 diff --git a/smlar_gin.c b/smlar_gin.c index 5ea1570..4164fa4 100644 --- a/smlar_gin.c +++ b/smlar_gin.c @@ -1,9 +1,15 @@ +#include + #include "smlar.h" #include "fmgr.h" #include "access/gin.h" #include "access/skey.h" +#if PG_VERSION_NUM < 130000 #include "access/tuptoaster.h" +#else +#include "access/heaptoast.h" +#endif PG_FUNCTION_INFO_V1(smlararrayextract); Datum smlararrayextract(PG_FUNCTION_ARGS); @@ -11,7 +17,7 @@ Datum smlararrayextract(PG_FUNCTION_ARGS) { ArrayType *array; - int32 *nentries = (int32 *) PG_GETARG_POINTER(1); + int32 *nentries = (int32 *) PG_GETARG_POINTER(1); SimpleArray *sa; /* @@ -28,7 +34,7 @@ smlararrayextract(PG_FUNCTION_ARGS) if (sa->nelems == 0 && PG_NARGS() == 3) { - switch (PG_GETARG_UINT16(2)) /* StrategyNumber */ + switch (PG_GETARG_UINT16(2)) /* StrategyNumber */ { case SmlarOverlapStrategy: case SmlarSimilarityStrategy: @@ -58,13 +64,13 @@ Datum smlararrayconsistent(PG_FUNCTION_ARGS); Datum smlararrayconsistent(PG_FUNCTION_ARGS) { - bool *check = (bool *) PG_GETARG_POINTER(0); - StrategyNumber strategy = PG_GETARG_UINT16(1); + bool *check = (bool *) PG_GETARG_POINTER(0); + StrategyNumber strategy = PG_GETARG_UINT16(1); SimpleArray *sa; bool res = false; int i, cnt = 0; - bool *recheck = (bool *) PG_GETARG_POINTER(5); + bool *recheck = (bool *) PG_GETARG_POINTER(5); *recheck = true; @@ -91,9 +97,9 @@ smlararrayconsistent(PG_FUNCTION_ARGS) switch(getSmlType()) { - case ST_TFIDF: + case ST_TFIDF: { - double weight = 0.0, /* exact weight of union */ + double weight = 0.0, /* exact weight of union */ saSum = 0.0, /* exact length of query */ siSum = 0.0; /* lower limit of length of indexed value */ @@ -120,7 +126,7 @@ smlararrayconsistent(PG_FUNCTION_ARGS) res = true; } break; - case ST_COSINE: + case ST_COSINE: { double power; @@ -130,7 +136,7 @@ smlararrayconsistent(PG_FUNCTION_ARGS) res = true; } break; - case ST_OVERLAP: + case ST_OVERLAP: if (cnt >= GetSmlarLimit()) res = true; break;