From 629b3af27d5c2bc9d6e16b22b943ad651d4ecb56 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 13 Feb 2011 20:06:41 -0500 Subject: Convert contrib modules to use the extension facility. This isn't fully tested as yet, in particular I'm not sure that the "foo--unpackaged--1.0.sql" scripts are OK. But it's time to get some buildfarm cycles on it. sepgsql is not converted to an extension, mainly because it seems to require a very nonstandard installation process. Dimitri Fontaine and Tom Lane --- contrib/btree_gist/.gitignore | 1 - contrib/btree_gist/Makefile | 4 +- contrib/btree_gist/btree_gist--1.0.sql | 1209 +++++++++++++++++++ contrib/btree_gist/btree_gist--unpackaged--1.0.sql | 172 +++ contrib/btree_gist/btree_gist.control | 5 + contrib/btree_gist/btree_gist.sql.in | 1212 -------------------- contrib/btree_gist/expected/init.out | 8 +- contrib/btree_gist/sql/init.sql | 10 +- contrib/btree_gist/uninstall_btree_gist.sql | 280 ----- 9 files changed, 1390 insertions(+), 1511 deletions(-) create mode 100644 contrib/btree_gist/btree_gist--1.0.sql create mode 100644 contrib/btree_gist/btree_gist--unpackaged--1.0.sql create mode 100644 contrib/btree_gist/btree_gist.control delete mode 100644 contrib/btree_gist/btree_gist.sql.in delete mode 100644 contrib/btree_gist/uninstall_btree_gist.sql (limited to 'contrib/btree_gist') diff --git a/contrib/btree_gist/.gitignore b/contrib/btree_gist/.gitignore index 46318eaa7b0..19b6c5ba425 100644 --- a/contrib/btree_gist/.gitignore +++ b/contrib/btree_gist/.gitignore @@ -1,3 +1,2 @@ -/btree_gist.sql # Generated subdirectories /results/ diff --git a/contrib/btree_gist/Makefile b/contrib/btree_gist/Makefile index e152cd881de..4b931de08ab 100644 --- a/contrib/btree_gist/Makefile +++ b/contrib/btree_gist/Makefile @@ -7,8 +7,8 @@ OBJS = btree_gist.o btree_utils_num.o btree_utils_var.o btree_int2.o btre btree_date.o btree_interval.o btree_macaddr.o btree_inet.o btree_text.o \ btree_bytea.o btree_bit.o btree_numeric.o -DATA_built = btree_gist.sql -DATA = uninstall_btree_gist.sql +EXTENSION = btree_gist +DATA = btree_gist--1.0.sql btree_gist--unpackaged--1.0.sql REGRESS = init int2 int4 int8 float4 float8 cash oid timestamp timestamptz time timetz \ date interval macaddr inet cidr text varchar char bytea bit varbit numeric not_equal diff --git a/contrib/btree_gist/btree_gist--1.0.sql b/contrib/btree_gist/btree_gist--1.0.sql new file mode 100644 index 00000000000..ab6c8c3936e --- /dev/null +++ b/contrib/btree_gist/btree_gist--1.0.sql @@ -0,0 +1,1209 @@ +/* contrib/btree_gist/btree_gist--1.0.sql */ + +CREATE OR REPLACE FUNCTION gbtreekey4_in(cstring) +RETURNS gbtreekey4 +AS 'MODULE_PATHNAME', 'gbtreekey_in' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbtreekey4_out(gbtreekey4) +RETURNS cstring +AS 'MODULE_PATHNAME', 'gbtreekey_out' +LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE gbtreekey4 ( + INTERNALLENGTH = 4, + INPUT = gbtreekey4_in, + OUTPUT = gbtreekey4_out +); + +CREATE OR REPLACE FUNCTION gbtreekey8_in(cstring) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME', 'gbtreekey_in' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbtreekey8_out(gbtreekey8) +RETURNS cstring +AS 'MODULE_PATHNAME', 'gbtreekey_out' +LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE gbtreekey8 ( + INTERNALLENGTH = 8, + INPUT = gbtreekey8_in, + OUTPUT = gbtreekey8_out +); + +CREATE OR REPLACE FUNCTION gbtreekey16_in(cstring) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME', 'gbtreekey_in' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbtreekey16_out(gbtreekey16) +RETURNS cstring +AS 'MODULE_PATHNAME', 'gbtreekey_out' +LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE gbtreekey16 ( + INTERNALLENGTH = 16, + INPUT = gbtreekey16_in, + OUTPUT = gbtreekey16_out +); + +CREATE OR REPLACE FUNCTION gbtreekey32_in(cstring) +RETURNS gbtreekey32 +AS 'MODULE_PATHNAME', 'gbtreekey_in' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbtreekey32_out(gbtreekey32) +RETURNS cstring +AS 'MODULE_PATHNAME', 'gbtreekey_out' +LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE gbtreekey32 ( + INTERNALLENGTH = 32, + INPUT = gbtreekey32_in, + OUTPUT = gbtreekey32_out +); + +CREATE OR REPLACE FUNCTION gbtreekey_var_in(cstring) +RETURNS gbtreekey_var +AS 'MODULE_PATHNAME', 'gbtreekey_in' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbtreekey_var_out(gbtreekey_var) +RETURNS cstring +AS 'MODULE_PATHNAME', 'gbtreekey_out' +LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE gbtreekey_var ( + INTERNALLENGTH = VARIABLE, + INPUT = gbtreekey_var_in, + OUTPUT = gbtreekey_var_out, + STORAGE = EXTENDED +); + + + +-- +-- +-- +-- oid ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_oid_consistent(internal,oid,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_oid_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_decompress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_var_decompress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_oid_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_oid_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_oid_union(bytea, internal) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_oid_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_oid_ops +DEFAULT FOR TYPE oid USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_oid_consistent (internal, oid, int2, oid, internal), + FUNCTION 2 gbt_oid_union (bytea, internal), + FUNCTION 3 gbt_oid_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_oid_penalty (internal, internal, internal), + FUNCTION 6 gbt_oid_picksplit (internal, internal), + FUNCTION 7 gbt_oid_same (internal, internal, internal), + STORAGE gbtreekey8; + + +-- +-- +-- +-- int2 ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_int2_consistent(internal,int2,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int2_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int2_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int2_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int2_union(bytea, internal) +RETURNS gbtreekey4 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int2_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_int2_ops +DEFAULT FOR TYPE int2 USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_int2_consistent (internal, int2, int2, oid, internal), + FUNCTION 2 gbt_int2_union (bytea, internal), + FUNCTION 3 gbt_int2_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_int2_penalty (internal, internal, internal), + FUNCTION 6 gbt_int2_picksplit (internal, internal), + FUNCTION 7 gbt_int2_same (internal, internal, internal), + STORAGE gbtreekey4; + +-- +-- +-- +-- int4 ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_int4_consistent(internal,int4,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int4_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int4_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int4_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int4_union(bytea, internal) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int4_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_int4_ops +DEFAULT FOR TYPE int4 USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_int4_consistent (internal, int4, int2, oid, internal), + FUNCTION 2 gbt_int4_union (bytea, internal), + FUNCTION 3 gbt_int4_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_int4_penalty (internal, internal, internal), + FUNCTION 6 gbt_int4_picksplit (internal, internal), + FUNCTION 7 gbt_int4_same (internal, internal, internal), + STORAGE gbtreekey8; + +-- +-- +-- +-- int8 ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_int8_consistent(internal,int8,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int8_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int8_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int8_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int8_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_int8_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_int8_ops +DEFAULT FOR TYPE int8 USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_int8_consistent (internal, int8, int2, oid, internal), + FUNCTION 2 gbt_int8_union (bytea, internal), + FUNCTION 3 gbt_int8_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_int8_penalty (internal, internal, internal), + FUNCTION 6 gbt_int8_picksplit (internal, internal), + FUNCTION 7 gbt_int8_same (internal, internal, internal), + STORAGE gbtreekey16; + + +-- +-- +-- +-- float4 ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_float4_consistent(internal,float4,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float4_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float4_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float4_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float4_union(bytea, internal) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float4_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_float4_ops +DEFAULT FOR TYPE float4 USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_float4_consistent (internal, float4, int2, oid, internal), + FUNCTION 2 gbt_float4_union (bytea, internal), + FUNCTION 3 gbt_float4_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_float4_penalty (internal, internal, internal), + FUNCTION 6 gbt_float4_picksplit (internal, internal), + FUNCTION 7 gbt_float4_same (internal, internal, internal), + STORAGE gbtreekey8; + + + + +-- +-- +-- +-- float8 ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_float8_consistent(internal,float8,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float8_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float8_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float8_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float8_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_float8_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_float8_ops +DEFAULT FOR TYPE float8 USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_float8_consistent (internal, float8, int2, oid, internal), + FUNCTION 2 gbt_float8_union (bytea, internal), + FUNCTION 3 gbt_float8_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_float8_penalty (internal, internal, internal), + FUNCTION 6 gbt_float8_picksplit (internal, internal), + FUNCTION 7 gbt_float8_same (internal, internal, internal), + STORAGE gbtreekey16; + + +-- +-- +-- +-- timestamp ops +-- +-- +-- + +CREATE OR REPLACE FUNCTION gbt_ts_consistent(internal,timestamp,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_tstz_consistent(internal,timestamptz,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_ts_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_tstz_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_ts_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_ts_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_ts_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_ts_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_timestamp_ops +DEFAULT FOR TYPE timestamp USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_ts_consistent (internal, timestamp, int2, oid, internal), + FUNCTION 2 gbt_ts_union (bytea, internal), + FUNCTION 3 gbt_ts_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_ts_penalty (internal, internal, internal), + FUNCTION 6 gbt_ts_picksplit (internal, internal), + FUNCTION 7 gbt_ts_same (internal, internal, internal), + STORAGE gbtreekey16; + + +-- Create the operator class +CREATE OPERATOR CLASS gist_timestamptz_ops +DEFAULT FOR TYPE timestamptz USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_tstz_consistent (internal, timestamptz, int2, oid, internal), + FUNCTION 2 gbt_ts_union (bytea, internal), + FUNCTION 3 gbt_tstz_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_ts_penalty (internal, internal, internal), + FUNCTION 6 gbt_ts_picksplit (internal, internal), + FUNCTION 7 gbt_ts_same (internal, internal, internal), + STORAGE gbtreekey16; + + +-- +-- +-- +-- time ops +-- +-- +-- + +CREATE OR REPLACE FUNCTION gbt_time_consistent(internal,time,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_timetz_consistent(internal,timetz,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_time_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_timetz_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_time_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_time_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_time_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_time_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_time_ops +DEFAULT FOR TYPE time USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_time_consistent (internal, time, int2, oid, internal), + FUNCTION 2 gbt_time_union (bytea, internal), + FUNCTION 3 gbt_time_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_time_penalty (internal, internal, internal), + FUNCTION 6 gbt_time_picksplit (internal, internal), + FUNCTION 7 gbt_time_same (internal, internal, internal), + STORAGE gbtreekey16; + +CREATE OPERATOR CLASS gist_timetz_ops +DEFAULT FOR TYPE timetz USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_timetz_consistent (internal, timetz, int2, oid, internal), + FUNCTION 2 gbt_time_union (bytea, internal), + FUNCTION 3 gbt_timetz_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_time_penalty (internal, internal, internal), + FUNCTION 6 gbt_time_picksplit (internal, internal), + FUNCTION 7 gbt_time_same (internal, internal, internal), + STORAGE gbtreekey16; + + +-- +-- +-- +-- date ops +-- +-- +-- + +CREATE OR REPLACE FUNCTION gbt_date_consistent(internal,date,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_date_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_date_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_date_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_date_union(bytea, internal) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_date_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_date_ops +DEFAULT FOR TYPE date USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_date_consistent (internal, date, int2, oid, internal), + FUNCTION 2 gbt_date_union (bytea, internal), + FUNCTION 3 gbt_date_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_date_penalty (internal, internal, internal), + FUNCTION 6 gbt_date_picksplit (internal, internal), + FUNCTION 7 gbt_date_same (internal, internal, internal), + STORAGE gbtreekey8; + + +-- +-- +-- +-- interval ops +-- +-- +-- + +CREATE OR REPLACE FUNCTION gbt_intv_consistent(internal,interval,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_decompress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_union(bytea, internal) +RETURNS gbtreekey32 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_intv_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_interval_ops +DEFAULT FOR TYPE interval USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_intv_consistent (internal, interval, int2, oid, internal), + FUNCTION 2 gbt_intv_union (bytea, internal), + FUNCTION 3 gbt_intv_compress (internal), + FUNCTION 4 gbt_intv_decompress (internal), + FUNCTION 5 gbt_intv_penalty (internal, internal, internal), + FUNCTION 6 gbt_intv_picksplit (internal, internal), + FUNCTION 7 gbt_intv_same (internal, internal, internal), + STORAGE gbtreekey32; + +-- +-- +-- +-- cash ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_cash_consistent(internal,money,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_cash_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_cash_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_cash_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_cash_union(bytea, internal) +RETURNS gbtreekey8 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_cash_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_cash_ops +DEFAULT FOR TYPE money USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_cash_consistent (internal, money, int2, oid, internal), + FUNCTION 2 gbt_cash_union (bytea, internal), + FUNCTION 3 gbt_cash_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_cash_penalty (internal, internal, internal), + FUNCTION 6 gbt_cash_picksplit (internal, internal), + FUNCTION 7 gbt_cash_same (internal, internal, internal), + STORAGE gbtreekey16; + +-- +-- +-- +-- macaddr ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_macad_consistent(internal,macaddr,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_macad_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_macad_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_macad_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_macad_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_macad_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_macaddr_ops +DEFAULT FOR TYPE macaddr USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_macad_consistent (internal, macaddr, int2, oid, internal), + FUNCTION 2 gbt_macad_union (bytea, internal), + FUNCTION 3 gbt_macad_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_macad_penalty (internal, internal, internal), + FUNCTION 6 gbt_macad_picksplit (internal, internal), + FUNCTION 7 gbt_macad_same (internal, internal, internal), + STORAGE gbtreekey16; + + + +-- +-- +-- +-- text/ bpchar ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_text_consistent(internal,text,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bpchar_consistent(internal,bpchar,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_text_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bpchar_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_text_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_text_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_text_union(bytea, internal) +RETURNS gbtreekey_var +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_text_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_text_ops +DEFAULT FOR TYPE text USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_text_consistent (internal, text, int2, oid, internal), + FUNCTION 2 gbt_text_union (bytea, internal), + FUNCTION 3 gbt_text_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_text_penalty (internal, internal, internal), + FUNCTION 6 gbt_text_picksplit (internal, internal), + FUNCTION 7 gbt_text_same (internal, internal, internal), + STORAGE gbtreekey_var; + + +---- Create the operator class +CREATE OPERATOR CLASS gist_bpchar_ops +DEFAULT FOR TYPE bpchar USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_bpchar_consistent (internal, bpchar , int2, oid, internal), + FUNCTION 2 gbt_text_union (bytea, internal), + FUNCTION 3 gbt_bpchar_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_text_penalty (internal, internal, internal), + FUNCTION 6 gbt_text_picksplit (internal, internal), + FUNCTION 7 gbt_text_same (internal, internal, internal), + STORAGE gbtreekey_var; + + + +-- +-- +-- bytea ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_bytea_consistent(internal,bytea,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bytea_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bytea_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bytea_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bytea_union(bytea, internal) +RETURNS gbtreekey_var +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bytea_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_bytea_ops +DEFAULT FOR TYPE bytea USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_bytea_consistent (internal, bytea, int2, oid, internal), + FUNCTION 2 gbt_bytea_union (bytea, internal), + FUNCTION 3 gbt_bytea_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_bytea_penalty (internal, internal, internal), + FUNCTION 6 gbt_bytea_picksplit (internal, internal), + FUNCTION 7 gbt_bytea_same (internal, internal, internal), + STORAGE gbtreekey_var; + + +-- +-- +-- +-- numeric ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_numeric_consistent(internal,numeric,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_numeric_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_numeric_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_numeric_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_numeric_union(bytea, internal) +RETURNS gbtreekey_var +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_numeric_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_numeric_ops +DEFAULT FOR TYPE numeric USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_numeric_consistent (internal, numeric, int2, oid, internal), + FUNCTION 2 gbt_numeric_union (bytea, internal), + FUNCTION 3 gbt_numeric_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_numeric_penalty (internal, internal, internal), + FUNCTION 6 gbt_numeric_picksplit (internal, internal), + FUNCTION 7 gbt_numeric_same (internal, internal, internal), + STORAGE gbtreekey_var; + +-- +-- +-- bit ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_bit_consistent(internal,bit,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bit_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bit_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bit_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bit_union(bytea, internal) +RETURNS gbtreekey_var +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_bit_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_bit_ops +DEFAULT FOR TYPE bit USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_bit_consistent (internal, bit, int2, oid, internal), + FUNCTION 2 gbt_bit_union (bytea, internal), + FUNCTION 3 gbt_bit_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_bit_penalty (internal, internal, internal), + FUNCTION 6 gbt_bit_picksplit (internal, internal), + FUNCTION 7 gbt_bit_same (internal, internal, internal), + STORAGE gbtreekey_var; + + +-- Create the operator class +CREATE OPERATOR CLASS gist_vbit_ops +DEFAULT FOR TYPE varbit USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_bit_consistent (internal, bit, int2, oid, internal), + FUNCTION 2 gbt_bit_union (bytea, internal), + FUNCTION 3 gbt_bit_compress (internal), + FUNCTION 4 gbt_var_decompress (internal), + FUNCTION 5 gbt_bit_penalty (internal, internal, internal), + FUNCTION 6 gbt_bit_picksplit (internal, internal), + FUNCTION 7 gbt_bit_same (internal, internal, internal), + STORAGE gbtreekey_var; + + + +-- +-- +-- +-- inet/cidr ops +-- +-- +-- +-- define the GiST support methods +CREATE OR REPLACE FUNCTION gbt_inet_consistent(internal,inet,int2,oid,internal) +RETURNS bool +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_inet_compress(internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_inet_penalty(internal,internal,internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_inet_picksplit(internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_inet_union(bytea, internal) +RETURNS gbtreekey16 +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +CREATE OR REPLACE FUNCTION gbt_inet_same(internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME' +LANGUAGE C IMMUTABLE STRICT; + +-- Create the operator class +CREATE OPERATOR CLASS gist_inet_ops +DEFAULT FOR TYPE inet USING gist +AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + OPERATOR 6 <> , + FUNCTION 1 gbt_inet_consistent (internal, inet, int2, oid, internal), + FUNCTION 2 gbt_inet_union (bytea, internal), + FUNCTION 3 gbt_inet_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_inet_penalty (internal, internal, internal), + FUNCTION 6 gbt_inet_picksplit (internal, internal), + FUNCTION 7 gbt_inet_same (internal, internal, internal), + STORAGE gbtreekey16; + +-- Create the operator class +CREATE OPERATOR CLASS gist_cidr_ops +DEFAULT FOR TYPE cidr USING gist +AS + OPERATOR 1 < (inet, inet) , + OPERATOR 2 <= (inet, inet) , + OPERATOR 3 = (inet, inet) , + OPERATOR 4 >= (inet, inet) , + OPERATOR 5 > (inet, inet) , + OPERATOR 6 <> (inet, inet) , + FUNCTION 1 gbt_inet_consistent (internal, inet, int2, oid, internal), + FUNCTION 2 gbt_inet_union (bytea, internal), + FUNCTION 3 gbt_inet_compress (internal), + FUNCTION 4 gbt_decompress (internal), + FUNCTION 5 gbt_inet_penalty (internal, internal, internal), + FUNCTION 6 gbt_inet_picksplit (internal, internal), + FUNCTION 7 gbt_inet_same (internal, internal, internal), + STORAGE gbtreekey16; diff --git a/contrib/btree_gist/btree_gist--unpackaged--1.0.sql b/contrib/btree_gist/btree_gist--unpackaged--1.0.sql new file mode 100644 index 00000000000..18c14649919 --- /dev/null +++ b/contrib/btree_gist/btree_gist--unpackaged--1.0.sql @@ -0,0 +1,172 @@ +/* contrib/btree_gist/btree_gist--unpackaged--1.0.sql */ + +ALTER EXTENSION btree_gist ADD type gbtreekey4; +ALTER EXTENSION btree_gist ADD function gbtreekey4_in(cstring); +ALTER EXTENSION btree_gist ADD function gbtreekey4_out(gbtreekey4); +ALTER EXTENSION btree_gist ADD type gbtreekey8; +ALTER EXTENSION btree_gist ADD function gbtreekey8_in(cstring); +ALTER EXTENSION btree_gist ADD function gbtreekey8_out(gbtreekey8); +ALTER EXTENSION btree_gist ADD type gbtreekey16; +ALTER EXTENSION btree_gist ADD function gbtreekey16_in(cstring); +ALTER EXTENSION btree_gist ADD function gbtreekey16_out(gbtreekey16); +ALTER EXTENSION btree_gist ADD type gbtreekey32; +ALTER EXTENSION btree_gist ADD function gbtreekey32_in(cstring); +ALTER EXTENSION btree_gist ADD function gbtreekey32_out(gbtreekey32); +ALTER EXTENSION btree_gist ADD type gbtreekey_var; +ALTER EXTENSION btree_gist ADD function gbtreekey_var_in(cstring); +ALTER EXTENSION btree_gist ADD function gbtreekey_var_out(gbtreekey_var); +ALTER EXTENSION btree_gist ADD function gbt_oid_consistent(internal,oid,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_oid_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_decompress(internal); +ALTER EXTENSION btree_gist ADD function gbt_var_decompress(internal); +ALTER EXTENSION btree_gist ADD function gbt_oid_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_oid_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_oid_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_oid_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_oid_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_oid_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_int2_consistent(internal,smallint,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_int2_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_int2_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int2_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int2_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_int2_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_int2_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_int2_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_int4_consistent(internal,integer,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_int4_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_int4_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int4_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int4_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_int4_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_int4_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_int4_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_int8_consistent(internal,bigint,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_int8_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_int8_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int8_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_int8_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_int8_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_int8_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_int8_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_float4_consistent(internal,real,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_float4_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_float4_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_float4_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_float4_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_float4_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_float4_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_float4_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_float8_consistent(internal,double precision,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_float8_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_float8_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_float8_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_float8_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_float8_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_float8_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_float8_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_ts_consistent(internal,timestamp without time zone,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_tstz_consistent(internal,timestamp with time zone,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_ts_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_tstz_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_ts_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_ts_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_ts_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_ts_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_timestamp_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_timestamp_ops using gist; +ALTER EXTENSION btree_gist ADD operator family gist_timestamptz_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_timestamptz_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_time_consistent(internal,time without time zone,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_timetz_consistent(internal,time with time zone,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_time_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_timetz_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_time_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_time_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_time_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_time_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_time_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_time_ops using gist; +ALTER EXTENSION btree_gist ADD operator family gist_timetz_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_timetz_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_date_consistent(internal,date,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_date_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_date_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_date_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_date_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_date_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_date_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_date_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_intv_consistent(internal,interval,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_decompress(internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_intv_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_interval_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_interval_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_cash_consistent(internal,money,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_cash_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_cash_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_cash_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_cash_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_cash_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_cash_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_cash_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_macad_consistent(internal,macaddr,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_macad_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_macad_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_macad_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_macad_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_macad_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_macaddr_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_macaddr_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_text_consistent(internal,text,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_bpchar_consistent(internal,character,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_text_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_bpchar_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_text_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_text_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_text_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_text_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_text_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_text_ops using gist; +ALTER EXTENSION btree_gist ADD operator family gist_bpchar_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_bpchar_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_bytea_consistent(internal,bytea,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_bytea_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_bytea_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_bytea_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_bytea_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_bytea_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_bytea_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_bytea_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_numeric_consistent(internal,numeric,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_numeric_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_numeric_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_numeric_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_numeric_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_numeric_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_numeric_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_numeric_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_bit_consistent(internal,bit,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_bit_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_bit_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_bit_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_bit_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_bit_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_bit_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_bit_ops using gist; +ALTER EXTENSION btree_gist ADD operator family gist_vbit_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_vbit_ops using gist; +ALTER EXTENSION btree_gist ADD function gbt_inet_consistent(internal,inet,smallint,oid,internal); +ALTER EXTENSION btree_gist ADD function gbt_inet_compress(internal); +ALTER EXTENSION btree_gist ADD function gbt_inet_penalty(internal,internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_inet_picksplit(internal,internal); +ALTER EXTENSION btree_gist ADD function gbt_inet_union(bytea,internal); +ALTER EXTENSION btree_gist ADD function gbt_inet_same(internal,internal,internal); +ALTER EXTENSION btree_gist ADD operator family gist_inet_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_inet_ops using gist; +ALTER EXTENSION btree_gist ADD operator family gist_cidr_ops using gist; +ALTER EXTENSION btree_gist ADD operator class gist_cidr_ops using gist; diff --git a/contrib/btree_gist/btree_gist.control b/contrib/btree_gist/btree_gist.control new file mode 100644 index 00000000000..10e2f949c11 --- /dev/null +++ b/contrib/btree_gist/btree_gist.control @@ -0,0 +1,5 @@ +# btree_gist extension +comment = 'support for indexing common datatypes in GiST' +default_version = '1.0' +module_pathname = '$libdir/btree_gist' +relocatable = true diff --git a/contrib/btree_gist/btree_gist.sql.in b/contrib/btree_gist/btree_gist.sql.in deleted file mode 100644 index 01cd30f2def..00000000000 --- a/contrib/btree_gist/btree_gist.sql.in +++ /dev/null @@ -1,1212 +0,0 @@ -/* contrib/btree_gist/btree_gist.sql.in */ - --- Adjust this setting to control where the objects get created. -SET search_path = public; - -CREATE OR REPLACE FUNCTION gbtreekey4_in(cstring) -RETURNS gbtreekey4 -AS 'MODULE_PATHNAME', 'gbtreekey_in' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbtreekey4_out(gbtreekey4) -RETURNS cstring -AS 'MODULE_PATHNAME', 'gbtreekey_out' -LANGUAGE C IMMUTABLE STRICT; - -CREATE TYPE gbtreekey4 ( - INTERNALLENGTH = 4, - INPUT = gbtreekey4_in, - OUTPUT = gbtreekey4_out -); - -CREATE OR REPLACE FUNCTION gbtreekey8_in(cstring) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME', 'gbtreekey_in' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbtreekey8_out(gbtreekey8) -RETURNS cstring -AS 'MODULE_PATHNAME', 'gbtreekey_out' -LANGUAGE C IMMUTABLE STRICT; - -CREATE TYPE gbtreekey8 ( - INTERNALLENGTH = 8, - INPUT = gbtreekey8_in, - OUTPUT = gbtreekey8_out -); - -CREATE OR REPLACE FUNCTION gbtreekey16_in(cstring) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME', 'gbtreekey_in' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbtreekey16_out(gbtreekey16) -RETURNS cstring -AS 'MODULE_PATHNAME', 'gbtreekey_out' -LANGUAGE C IMMUTABLE STRICT; - -CREATE TYPE gbtreekey16 ( - INTERNALLENGTH = 16, - INPUT = gbtreekey16_in, - OUTPUT = gbtreekey16_out -); - -CREATE OR REPLACE FUNCTION gbtreekey32_in(cstring) -RETURNS gbtreekey32 -AS 'MODULE_PATHNAME', 'gbtreekey_in' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbtreekey32_out(gbtreekey32) -RETURNS cstring -AS 'MODULE_PATHNAME', 'gbtreekey_out' -LANGUAGE C IMMUTABLE STRICT; - -CREATE TYPE gbtreekey32 ( - INTERNALLENGTH = 32, - INPUT = gbtreekey32_in, - OUTPUT = gbtreekey32_out -); - -CREATE OR REPLACE FUNCTION gbtreekey_var_in(cstring) -RETURNS gbtreekey_var -AS 'MODULE_PATHNAME', 'gbtreekey_in' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbtreekey_var_out(gbtreekey_var) -RETURNS cstring -AS 'MODULE_PATHNAME', 'gbtreekey_out' -LANGUAGE C IMMUTABLE STRICT; - -CREATE TYPE gbtreekey_var ( - INTERNALLENGTH = VARIABLE, - INPUT = gbtreekey_var_in, - OUTPUT = gbtreekey_var_out, - STORAGE = EXTENDED -); - - - --- --- --- --- oid ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_oid_consistent(internal,oid,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_oid_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_decompress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_var_decompress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_oid_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_oid_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_oid_union(bytea, internal) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_oid_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_oid_ops -DEFAULT FOR TYPE oid USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_oid_consistent (internal, oid, int2, oid, internal), - FUNCTION 2 gbt_oid_union (bytea, internal), - FUNCTION 3 gbt_oid_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_oid_penalty (internal, internal, internal), - FUNCTION 6 gbt_oid_picksplit (internal, internal), - FUNCTION 7 gbt_oid_same (internal, internal, internal), - STORAGE gbtreekey8; - - --- --- --- --- int2 ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_int2_consistent(internal,int2,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int2_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int2_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int2_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int2_union(bytea, internal) -RETURNS gbtreekey4 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int2_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_int2_ops -DEFAULT FOR TYPE int2 USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_int2_consistent (internal, int2, int2, oid, internal), - FUNCTION 2 gbt_int2_union (bytea, internal), - FUNCTION 3 gbt_int2_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_int2_penalty (internal, internal, internal), - FUNCTION 6 gbt_int2_picksplit (internal, internal), - FUNCTION 7 gbt_int2_same (internal, internal, internal), - STORAGE gbtreekey4; - --- --- --- --- int4 ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_int4_consistent(internal,int4,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int4_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int4_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int4_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int4_union(bytea, internal) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int4_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_int4_ops -DEFAULT FOR TYPE int4 USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_int4_consistent (internal, int4, int2, oid, internal), - FUNCTION 2 gbt_int4_union (bytea, internal), - FUNCTION 3 gbt_int4_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_int4_penalty (internal, internal, internal), - FUNCTION 6 gbt_int4_picksplit (internal, internal), - FUNCTION 7 gbt_int4_same (internal, internal, internal), - STORAGE gbtreekey8; - --- --- --- --- int8 ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_int8_consistent(internal,int8,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int8_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int8_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int8_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int8_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_int8_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_int8_ops -DEFAULT FOR TYPE int8 USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_int8_consistent (internal, int8, int2, oid, internal), - FUNCTION 2 gbt_int8_union (bytea, internal), - FUNCTION 3 gbt_int8_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_int8_penalty (internal, internal, internal), - FUNCTION 6 gbt_int8_picksplit (internal, internal), - FUNCTION 7 gbt_int8_same (internal, internal, internal), - STORAGE gbtreekey16; - - --- --- --- --- float4 ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_float4_consistent(internal,float4,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float4_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float4_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float4_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float4_union(bytea, internal) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float4_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_float4_ops -DEFAULT FOR TYPE float4 USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_float4_consistent (internal, float4, int2, oid, internal), - FUNCTION 2 gbt_float4_union (bytea, internal), - FUNCTION 3 gbt_float4_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_float4_penalty (internal, internal, internal), - FUNCTION 6 gbt_float4_picksplit (internal, internal), - FUNCTION 7 gbt_float4_same (internal, internal, internal), - STORAGE gbtreekey8; - - - - --- --- --- --- float8 ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_float8_consistent(internal,float8,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float8_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float8_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float8_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float8_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_float8_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_float8_ops -DEFAULT FOR TYPE float8 USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_float8_consistent (internal, float8, int2, oid, internal), - FUNCTION 2 gbt_float8_union (bytea, internal), - FUNCTION 3 gbt_float8_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_float8_penalty (internal, internal, internal), - FUNCTION 6 gbt_float8_picksplit (internal, internal), - FUNCTION 7 gbt_float8_same (internal, internal, internal), - STORAGE gbtreekey16; - - --- --- --- --- timestamp ops --- --- --- - -CREATE OR REPLACE FUNCTION gbt_ts_consistent(internal,timestamp,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_tstz_consistent(internal,timestamptz,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_ts_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_tstz_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_ts_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_ts_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_ts_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_ts_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_timestamp_ops -DEFAULT FOR TYPE timestamp USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_ts_consistent (internal, timestamp, int2, oid, internal), - FUNCTION 2 gbt_ts_union (bytea, internal), - FUNCTION 3 gbt_ts_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_ts_penalty (internal, internal, internal), - FUNCTION 6 gbt_ts_picksplit (internal, internal), - FUNCTION 7 gbt_ts_same (internal, internal, internal), - STORAGE gbtreekey16; - - --- Create the operator class -CREATE OPERATOR CLASS gist_timestamptz_ops -DEFAULT FOR TYPE timestamptz USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_tstz_consistent (internal, timestamptz, int2, oid, internal), - FUNCTION 2 gbt_ts_union (bytea, internal), - FUNCTION 3 gbt_tstz_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_ts_penalty (internal, internal, internal), - FUNCTION 6 gbt_ts_picksplit (internal, internal), - FUNCTION 7 gbt_ts_same (internal, internal, internal), - STORAGE gbtreekey16; - - --- --- --- --- time ops --- --- --- - -CREATE OR REPLACE FUNCTION gbt_time_consistent(internal,time,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_timetz_consistent(internal,timetz,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_time_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_timetz_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_time_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_time_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_time_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_time_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_time_ops -DEFAULT FOR TYPE time USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_time_consistent (internal, time, int2, oid, internal), - FUNCTION 2 gbt_time_union (bytea, internal), - FUNCTION 3 gbt_time_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_time_penalty (internal, internal, internal), - FUNCTION 6 gbt_time_picksplit (internal, internal), - FUNCTION 7 gbt_time_same (internal, internal, internal), - STORAGE gbtreekey16; - -CREATE OPERATOR CLASS gist_timetz_ops -DEFAULT FOR TYPE timetz USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_timetz_consistent (internal, timetz, int2, oid, internal), - FUNCTION 2 gbt_time_union (bytea, internal), - FUNCTION 3 gbt_timetz_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_time_penalty (internal, internal, internal), - FUNCTION 6 gbt_time_picksplit (internal, internal), - FUNCTION 7 gbt_time_same (internal, internal, internal), - STORAGE gbtreekey16; - - --- --- --- --- date ops --- --- --- - -CREATE OR REPLACE FUNCTION gbt_date_consistent(internal,date,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_date_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_date_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_date_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_date_union(bytea, internal) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_date_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_date_ops -DEFAULT FOR TYPE date USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_date_consistent (internal, date, int2, oid, internal), - FUNCTION 2 gbt_date_union (bytea, internal), - FUNCTION 3 gbt_date_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_date_penalty (internal, internal, internal), - FUNCTION 6 gbt_date_picksplit (internal, internal), - FUNCTION 7 gbt_date_same (internal, internal, internal), - STORAGE gbtreekey8; - - --- --- --- --- interval ops --- --- --- - -CREATE OR REPLACE FUNCTION gbt_intv_consistent(internal,interval,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_decompress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_union(bytea, internal) -RETURNS gbtreekey32 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_intv_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_interval_ops -DEFAULT FOR TYPE interval USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_intv_consistent (internal, interval, int2, oid, internal), - FUNCTION 2 gbt_intv_union (bytea, internal), - FUNCTION 3 gbt_intv_compress (internal), - FUNCTION 4 gbt_intv_decompress (internal), - FUNCTION 5 gbt_intv_penalty (internal, internal, internal), - FUNCTION 6 gbt_intv_picksplit (internal, internal), - FUNCTION 7 gbt_intv_same (internal, internal, internal), - STORAGE gbtreekey32; - --- --- --- --- cash ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_cash_consistent(internal,money,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_cash_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_cash_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_cash_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_cash_union(bytea, internal) -RETURNS gbtreekey8 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_cash_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_cash_ops -DEFAULT FOR TYPE money USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_cash_consistent (internal, money, int2, oid, internal), - FUNCTION 2 gbt_cash_union (bytea, internal), - FUNCTION 3 gbt_cash_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_cash_penalty (internal, internal, internal), - FUNCTION 6 gbt_cash_picksplit (internal, internal), - FUNCTION 7 gbt_cash_same (internal, internal, internal), - STORAGE gbtreekey16; - --- --- --- --- macaddr ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_macad_consistent(internal,macaddr,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_macad_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_macad_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_macad_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_macad_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_macad_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_macaddr_ops -DEFAULT FOR TYPE macaddr USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_macad_consistent (internal, macaddr, int2, oid, internal), - FUNCTION 2 gbt_macad_union (bytea, internal), - FUNCTION 3 gbt_macad_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_macad_penalty (internal, internal, internal), - FUNCTION 6 gbt_macad_picksplit (internal, internal), - FUNCTION 7 gbt_macad_same (internal, internal, internal), - STORAGE gbtreekey16; - - - --- --- --- --- text/ bpchar ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_text_consistent(internal,text,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bpchar_consistent(internal,bpchar,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_text_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bpchar_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_text_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_text_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_text_union(bytea, internal) -RETURNS gbtreekey_var -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_text_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_text_ops -DEFAULT FOR TYPE text USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_text_consistent (internal, text, int2, oid, internal), - FUNCTION 2 gbt_text_union (bytea, internal), - FUNCTION 3 gbt_text_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_text_penalty (internal, internal, internal), - FUNCTION 6 gbt_text_picksplit (internal, internal), - FUNCTION 7 gbt_text_same (internal, internal, internal), - STORAGE gbtreekey_var; - - ----- Create the operator class -CREATE OPERATOR CLASS gist_bpchar_ops -DEFAULT FOR TYPE bpchar USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_bpchar_consistent (internal, bpchar , int2, oid, internal), - FUNCTION 2 gbt_text_union (bytea, internal), - FUNCTION 3 gbt_bpchar_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_text_penalty (internal, internal, internal), - FUNCTION 6 gbt_text_picksplit (internal, internal), - FUNCTION 7 gbt_text_same (internal, internal, internal), - STORAGE gbtreekey_var; - - - --- --- --- bytea ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_bytea_consistent(internal,bytea,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bytea_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bytea_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bytea_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bytea_union(bytea, internal) -RETURNS gbtreekey_var -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bytea_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_bytea_ops -DEFAULT FOR TYPE bytea USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_bytea_consistent (internal, bytea, int2, oid, internal), - FUNCTION 2 gbt_bytea_union (bytea, internal), - FUNCTION 3 gbt_bytea_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_bytea_penalty (internal, internal, internal), - FUNCTION 6 gbt_bytea_picksplit (internal, internal), - FUNCTION 7 gbt_bytea_same (internal, internal, internal), - STORAGE gbtreekey_var; - - --- --- --- --- numeric ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_numeric_consistent(internal,numeric,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_numeric_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_numeric_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_numeric_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_numeric_union(bytea, internal) -RETURNS gbtreekey_var -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_numeric_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_numeric_ops -DEFAULT FOR TYPE numeric USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_numeric_consistent (internal, numeric, int2, oid, internal), - FUNCTION 2 gbt_numeric_union (bytea, internal), - FUNCTION 3 gbt_numeric_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_numeric_penalty (internal, internal, internal), - FUNCTION 6 gbt_numeric_picksplit (internal, internal), - FUNCTION 7 gbt_numeric_same (internal, internal, internal), - STORAGE gbtreekey_var; - --- --- --- bit ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_bit_consistent(internal,bit,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bit_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bit_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bit_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bit_union(bytea, internal) -RETURNS gbtreekey_var -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_bit_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_bit_ops -DEFAULT FOR TYPE bit USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_bit_consistent (internal, bit, int2, oid, internal), - FUNCTION 2 gbt_bit_union (bytea, internal), - FUNCTION 3 gbt_bit_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_bit_penalty (internal, internal, internal), - FUNCTION 6 gbt_bit_picksplit (internal, internal), - FUNCTION 7 gbt_bit_same (internal, internal, internal), - STORAGE gbtreekey_var; - - --- Create the operator class -CREATE OPERATOR CLASS gist_vbit_ops -DEFAULT FOR TYPE varbit USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_bit_consistent (internal, bit, int2, oid, internal), - FUNCTION 2 gbt_bit_union (bytea, internal), - FUNCTION 3 gbt_bit_compress (internal), - FUNCTION 4 gbt_var_decompress (internal), - FUNCTION 5 gbt_bit_penalty (internal, internal, internal), - FUNCTION 6 gbt_bit_picksplit (internal, internal), - FUNCTION 7 gbt_bit_same (internal, internal, internal), - STORAGE gbtreekey_var; - - - --- --- --- --- inet/cidr ops --- --- --- --- define the GiST support methods -CREATE OR REPLACE FUNCTION gbt_inet_consistent(internal,inet,int2,oid,internal) -RETURNS bool -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_inet_compress(internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_inet_penalty(internal,internal,internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_inet_picksplit(internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_inet_union(bytea, internal) -RETURNS gbtreekey16 -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - -CREATE OR REPLACE FUNCTION gbt_inet_same(internal, internal, internal) -RETURNS internal -AS 'MODULE_PATHNAME' -LANGUAGE C IMMUTABLE STRICT; - --- Create the operator class -CREATE OPERATOR CLASS gist_inet_ops -DEFAULT FOR TYPE inet USING gist -AS - OPERATOR 1 < , - OPERATOR 2 <= , - OPERATOR 3 = , - OPERATOR 4 >= , - OPERATOR 5 > , - OPERATOR 6 <> , - FUNCTION 1 gbt_inet_consistent (internal, inet, int2, oid, internal), - FUNCTION 2 gbt_inet_union (bytea, internal), - FUNCTION 3 gbt_inet_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_inet_penalty (internal, internal, internal), - FUNCTION 6 gbt_inet_picksplit (internal, internal), - FUNCTION 7 gbt_inet_same (internal, internal, internal), - STORAGE gbtreekey16; - --- Create the operator class -CREATE OPERATOR CLASS gist_cidr_ops -DEFAULT FOR TYPE cidr USING gist -AS - OPERATOR 1 < (inet, inet) , - OPERATOR 2 <= (inet, inet) , - OPERATOR 3 = (inet, inet) , - OPERATOR 4 >= (inet, inet) , - OPERATOR 5 > (inet, inet) , - OPERATOR 6 <> (inet, inet) , - FUNCTION 1 gbt_inet_consistent (internal, inet, int2, oid, internal), - FUNCTION 2 gbt_inet_union (bytea, internal), - FUNCTION 3 gbt_inet_compress (internal), - FUNCTION 4 gbt_decompress (internal), - FUNCTION 5 gbt_inet_penalty (internal, internal, internal), - FUNCTION 6 gbt_inet_picksplit (internal, internal), - FUNCTION 7 gbt_inet_same (internal, internal, internal), - STORAGE gbtreekey16; diff --git a/contrib/btree_gist/expected/init.out b/contrib/btree_gist/expected/init.out index c8082495456..afe05346824 100644 --- a/contrib/btree_gist/expected/init.out +++ b/contrib/btree_gist/expected/init.out @@ -1,7 +1 @@ --- --- first, define the datatype. Turn off echoing so that expected file --- does not depend on contents of btree_gist.sql. --- -SET client_min_messages = warning; -\set ECHO none -RESET client_min_messages; +CREATE EXTENSION btree_gist; diff --git a/contrib/btree_gist/sql/init.sql b/contrib/btree_gist/sql/init.sql index 7fafde12d8b..afe05346824 100644 --- a/contrib/btree_gist/sql/init.sql +++ b/contrib/btree_gist/sql/init.sql @@ -1,9 +1 @@ --- --- first, define the datatype. Turn off echoing so that expected file --- does not depend on contents of btree_gist.sql. --- -SET client_min_messages = warning; -\set ECHO none -\i btree_gist.sql -\set ECHO all -RESET client_min_messages; +CREATE EXTENSION btree_gist; diff --git a/contrib/btree_gist/uninstall_btree_gist.sql b/contrib/btree_gist/uninstall_btree_gist.sql deleted file mode 100644 index 30b9da4c73c..00000000000 --- a/contrib/btree_gist/uninstall_btree_gist.sql +++ /dev/null @@ -1,280 +0,0 @@ -/* contrib/btree_gist/uninstall_btree_gist.sql */ - --- Adjust this setting to control where the objects get dropped. -SET search_path = public; - -DROP OPERATOR CLASS gist_cidr_ops USING gist; - -DROP OPERATOR CLASS gist_inet_ops USING gist; - -DROP FUNCTION gbt_inet_same(internal, internal, internal); - -DROP FUNCTION gbt_inet_union(bytea, internal); - -DROP FUNCTION gbt_inet_picksplit(internal, internal); - -DROP FUNCTION gbt_inet_penalty(internal,internal,internal); - -DROP FUNCTION gbt_inet_compress(internal); - -DROP FUNCTION gbt_inet_consistent(internal,inet,int2,oid,internal); - -DROP OPERATOR CLASS gist_vbit_ops USING gist; - -DROP OPERATOR CLASS gist_bit_ops USING gist; - -DROP FUNCTION gbt_bit_same(internal, internal, internal); - -DROP FUNCTION gbt_bit_union(bytea, internal); - -DROP FUNCTION gbt_bit_picksplit(internal, internal); - -DROP FUNCTION gbt_bit_penalty(internal,internal,internal); - -DROP FUNCTION gbt_bit_compress(internal); - -DROP FUNCTION gbt_bit_consistent(internal,bit,int2,oid,internal); - -DROP OPERATOR CLASS gist_numeric_ops USING gist; - -DROP FUNCTION gbt_numeric_same(internal, internal, internal); - -DROP FUNCTION gbt_numeric_union(bytea, internal); - -DROP FUNCTION gbt_numeric_picksplit(internal, internal); - -DROP FUNCTION gbt_numeric_penalty(internal,internal,internal); - -DROP FUNCTION gbt_numeric_compress(internal); - -DROP FUNCTION gbt_numeric_consistent(internal,numeric,int2,oid,internal); - -DROP OPERATOR CLASS gist_bytea_ops USING gist; - -DROP FUNCTION gbt_bytea_same(internal, internal, internal); - -DROP FUNCTION gbt_bytea_union(bytea, internal); - -DROP FUNCTION gbt_bytea_picksplit(internal, internal); - -DROP FUNCTION gbt_bytea_penalty(internal,internal,internal); - -DROP FUNCTION gbt_bytea_compress(internal); - -DROP FUNCTION gbt_bytea_consistent(internal,bytea,int2,oid,internal); - -DROP OPERATOR CLASS gist_bpchar_ops USING gist; - -DROP OPERATOR CLASS gist_text_ops USING gist; - -DROP FUNCTION gbt_text_same(internal, internal, internal); - -DROP FUNCTION gbt_text_union(bytea, internal); - -DROP FUNCTION gbt_text_picksplit(internal, internal); - -DROP FUNCTION gbt_text_penalty(internal,internal,internal); - -DROP FUNCTION gbt_bpchar_compress(internal); - -DROP FUNCTION gbt_text_compress(internal); - -DROP FUNCTION gbt_bpchar_consistent(internal,bpchar,int2,oid,internal); - -DROP FUNCTION gbt_text_consistent(internal,text,int2,oid,internal); - -DROP OPERATOR CLASS gist_macaddr_ops USING gist; - -DROP FUNCTION gbt_macad_same(internal, internal, internal); - -DROP FUNCTION gbt_macad_union(bytea, internal); - -DROP FUNCTION gbt_macad_picksplit(internal, internal); - -DROP FUNCTION gbt_macad_penalty(internal,internal,internal); - -DROP FUNCTION gbt_macad_compress(internal); - -DROP FUNCTION gbt_macad_consistent(internal,macaddr,int2,oid,internal); - -DROP OPERATOR CLASS gist_cash_ops USING gist; - -DROP FUNCTION gbt_cash_same(internal, internal, internal); - -DROP FUNCTION gbt_cash_union(bytea, internal); - -DROP FUNCTION gbt_cash_picksplit(internal, internal); - -DROP FUNCTION gbt_cash_penalty(internal,internal,internal); - -DROP FUNCTION gbt_cash_compress(internal); - -DROP FUNCTION gbt_cash_consistent(internal,money,int2,oid,internal); - -DROP OPERATOR CLASS gist_interval_ops USING gist; - -DROP FUNCTION gbt_intv_same(internal, internal, internal); - -DROP FUNCTION gbt_intv_union(bytea, internal); - -DROP FUNCTION gbt_intv_picksplit(internal, internal); - -DROP FUNCTION gbt_intv_penalty(internal,internal,internal); - -DROP FUNCTION gbt_intv_decompress(internal); - -DROP FUNCTION gbt_intv_compress(internal); - -DROP FUNCTION gbt_intv_consistent(internal,interval,int2,oid,internal); - -DROP OPERATOR CLASS gist_date_ops USING gist; - -DROP FUNCTION gbt_date_same(internal, internal, internal); - -DROP FUNCTION gbt_date_union(bytea, internal); - -DROP FUNCTION gbt_date_picksplit(internal, internal); - -DROP FUNCTION gbt_date_penalty(internal,internal,internal); - -DROP FUNCTION gbt_date_compress(internal); - -DROP FUNCTION gbt_date_consistent(internal,date,int2,oid,internal); - -DROP OPERATOR CLASS gist_timetz_ops USING gist; - -DROP OPERATOR CLASS gist_time_ops USING gist; - -DROP FUNCTION gbt_time_same(internal, internal, internal); - -DROP FUNCTION gbt_time_union(bytea, internal); - -DROP FUNCTION gbt_time_picksplit(internal, internal); - -DROP FUNCTION gbt_time_penalty(internal,internal,internal); - -DROP FUNCTION gbt_timetz_compress(internal); - -DROP FUNCTION gbt_time_compress(internal); - -DROP FUNCTION gbt_timetz_consistent(internal,timetz,int2,oid,internal); - -DROP FUNCTION gbt_time_consistent(internal,time,int2,oid,internal); - -DROP OPERATOR CLASS gist_timestamptz_ops USING gist; - -DROP OPERATOR CLASS gist_timestamp_ops USING gist; - -DROP FUNCTION gbt_ts_same(internal, internal, internal); - -DROP FUNCTION gbt_ts_union(bytea, internal); - -DROP FUNCTION gbt_ts_picksplit(internal, internal); - -DROP FUNCTION gbt_ts_penalty(internal,internal,internal); - -DROP FUNCTION gbt_tstz_compress(internal); - -DROP FUNCTION gbt_ts_compress(internal); - -DROP FUNCTION gbt_tstz_consistent(internal,timestamptz,int2,oid,internal); - -DROP FUNCTION gbt_ts_consistent(internal,timestamp,int2,oid,internal); - -DROP OPERATOR CLASS gist_float8_ops USING gist; - -DROP FUNCTION gbt_float8_same(internal, internal, internal); - -DROP FUNCTION gbt_float8_union(bytea, internal); - -DROP FUNCTION gbt_float8_picksplit(internal, internal); - -DROP FUNCTION gbt_float8_penalty(internal,internal,internal); - -DROP FUNCTION gbt_float8_compress(internal); - -DROP FUNCTION gbt_float8_consistent(internal,float8,int2,oid,internal); - -DROP OPERATOR CLASS gist_float4_ops USING gist; - -DROP FUNCTION gbt_float4_same(internal, internal, internal); - -DROP FUNCTION gbt_float4_union(bytea, internal); - -DROP FUNCTION gbt_float4_picksplit(internal, internal); - -DROP FUNCTION gbt_float4_penalty(internal,internal,internal); - -DROP FUNCTION gbt_float4_compress(internal); - -DROP FUNCTION gbt_float4_consistent(internal,float4,int2,oid,internal); - -DROP OPERATOR CLASS gist_int8_ops USING gist; - -DROP FUNCTION gbt_int8_same(internal, internal, internal); - -DROP FUNCTION gbt_int8_union(bytea, internal); - -DROP FUNCTION gbt_int8_picksplit(internal, internal); - -DROP FUNCTION gbt_int8_penalty(internal,internal,internal); - -DROP FUNCTION gbt_int8_compress(internal); - -DROP FUNCTION gbt_int8_consistent(internal,int8,int2,oid,internal); - -DROP OPERATOR CLASS gist_int4_ops USING gist; - -DROP FUNCTION gbt_int4_same(internal, internal, internal); - -DROP FUNCTION gbt_int4_union(bytea, internal); - -DROP FUNCTION gbt_int4_picksplit(internal, internal); - -DROP FUNCTION gbt_int4_penalty(internal,internal,internal); - -DROP FUNCTION gbt_int4_compress(internal); - -DROP FUNCTION gbt_int4_consistent(internal,int4,int2,oid,internal); - -DROP OPERATOR CLASS gist_int2_ops USING gist; - -DROP FUNCTION gbt_int2_same(internal, internal, internal); - -DROP FUNCTION gbt_int2_union(bytea, internal); - -DROP FUNCTION gbt_int2_picksplit(internal, internal); - -DROP FUNCTION gbt_int2_penalty(internal,internal,internal); - -DROP FUNCTION gbt_int2_compress(internal); - -DROP FUNCTION gbt_int2_consistent(internal,int2,int2,oid,internal); - -DROP OPERATOR CLASS gist_oid_ops USING gist; - -DROP FUNCTION gbt_oid_same(internal, internal, internal); - -DROP FUNCTION gbt_oid_union(bytea, internal); - -DROP FUNCTION gbt_oid_picksplit(internal, internal); - -DROP FUNCTION gbt_oid_penalty(internal,internal,internal); - -DROP FUNCTION gbt_var_decompress(internal); - -DROP FUNCTION gbt_decompress(internal); - -DROP FUNCTION gbt_oid_compress(internal); - -DROP FUNCTION gbt_oid_consistent(internal,oid,int2,oid,internal); - -DROP TYPE gbtreekey_var CASCADE; - -DROP TYPE gbtreekey32 CASCADE; - -DROP TYPE gbtreekey16 CASCADE; - -DROP TYPE gbtreekey8 CASCADE; - -DROP TYPE gbtreekey4 CASCADE; -- cgit v1.2.3