codekingpro/portable-devtools
114k
1/* contrib/btree_gist/btree_gist--1.2--1.3.sql */2 3-- complain if script is sourced in psql, rather than via ALTER EXTENSION4\echo Use "ALTER EXTENSION btree_gist UPDATE TO '1.3'" to load this file. \quit5 6-- Add support for indexing UUID columns7 8-- define the GiST support methods9CREATE FUNCTION gbt_uuid_consistent(internal,uuid,int2,oid,internal)10RETURNS bool11AS 'MODULE_PATHNAME'12LANGUAGE C IMMUTABLE STRICT;13 14CREATE FUNCTION gbt_uuid_fetch(internal)15RETURNS internal16AS 'MODULE_PATHNAME'17LANGUAGE C IMMUTABLE STRICT;18 19CREATE FUNCTION gbt_uuid_compress(internal)20RETURNS internal21AS 'MODULE_PATHNAME'22LANGUAGE C IMMUTABLE STRICT;23 24CREATE FUNCTION gbt_uuid_penalty(internal,internal,internal)25RETURNS internal26AS 'MODULE_PATHNAME'27LANGUAGE C IMMUTABLE STRICT;28 29CREATE FUNCTION gbt_uuid_picksplit(internal, internal)30RETURNS internal31AS 'MODULE_PATHNAME'32LANGUAGE C IMMUTABLE STRICT;33 34CREATE FUNCTION gbt_uuid_union(internal, internal)35RETURNS gbtreekey3236AS 'MODULE_PATHNAME'37LANGUAGE C IMMUTABLE STRICT;38 39CREATE FUNCTION gbt_uuid_same(gbtreekey32, gbtreekey32, internal)40RETURNS internal41AS 'MODULE_PATHNAME'42LANGUAGE C IMMUTABLE STRICT;43 44-- Create the operator class45CREATE OPERATOR CLASS gist_uuid_ops46DEFAULT FOR TYPE uuid USING gist47AS48 OPERATOR 1 < ,49 OPERATOR 2 <= ,50 OPERATOR 3 = ,51 OPERATOR 4 >= ,52 OPERATOR 5 > ,53 FUNCTION 1 gbt_uuid_consistent (internal, uuid, int2, oid, internal),54 FUNCTION 2 gbt_uuid_union (internal, internal),55 FUNCTION 3 gbt_uuid_compress (internal),56 FUNCTION 4 gbt_decompress (internal),57 FUNCTION 5 gbt_uuid_penalty (internal, internal, internal),58 FUNCTION 6 gbt_uuid_picksplit (internal, internal),59 FUNCTION 7 gbt_uuid_same (gbtreekey32, gbtreekey32, internal),60 STORAGE gbtreekey32;61 62-- These are "loose" in the opfamily for consistency with the rest of btree_gist63ALTER OPERATOR FAMILY gist_uuid_ops USING gist ADD64 OPERATOR 6 <> (uuid, uuid) ,65 FUNCTION 9 (uuid, uuid) gbt_uuid_fetch (internal) ;66 