Datum gbt_bytea_compress(PG_FUNCTION_ARGS) { GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0); PG_RETURN_POINTER(gbt_var_compress(entry, &tinfo)); }
Datum gbt_bpchar_compress(PG_FUNCTION_ARGS) { GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0); GISTENTRY *retval; if (tinfo.eml == 0) { tinfo.eml = pg_database_encoding_max_length(); } if (entry->leafkey) { Datum d = DirectFunctionCall1(rtrim1, entry->key); GISTENTRY trim; gistentryinit(trim, d, entry->rel, entry->page, entry->offset, VARSIZE(DatumGetPointer(d)), TRUE); retval = gbt_var_compress(&trim, &tinfo); } else retval = entry; PG_RETURN_POINTER(retval); }
Datum gbt_numeric_compress(MDB_FUNCTION_ARGS) { GISTENTRY *entry = (GISTENTRY *) MDB_GETARG_POINTER(0); MDB_RETURN_POINTER(gbt_var_compress(entry, &tinfo)); }
Datum gbt_text_compress(PG_FUNCTION_ARGS) { GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0); if (tinfo.eml == 0) { tinfo.eml = pg_database_encoding_max_length(); } PG_RETURN_POINTER(gbt_var_compress(entry, &tinfo)); }