aboutsummaryrefslogtreecommitdiff
path: root/contrib/intarray
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-06-11 18:30:03 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-06-11 18:30:03 +0000
commitd94582f4f8a06e08c8b054d332174165de6e40a6 (patch)
tree517d261c6a655c96d4300c99445a048fc2e7daa2 /contrib/intarray
parent4c8175278f12e1cca5bd4e1c5826e130a7b99bd2 (diff)
downloadpostgresql-d94582f4f8a06e08c8b054d332174165de6e40a6.tar.gz
postgresql-d94582f4f8a06e08c8b054d332174165de6e40a6.zip
Mark contrib's GiST and GIN opclass support functions as STRICT, for safety.
(Note: GiST penalty functions could possibly be non-strict, but none are at present.)
Diffstat (limited to 'contrib/intarray')
-rw-r--r--contrib/intarray/_int.sql.in30
1 files changed, 15 insertions, 15 deletions
diff --git a/contrib/intarray/_int.sql.in b/contrib/intarray/_int.sql.in
index 645e9aeea2d..960d81a6382 100644
--- a/contrib/intarray/_int.sql.in
+++ b/contrib/intarray/_int.sql.in
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/contrib/intarray/_int.sql.in,v 1.31 2009/06/07 20:09:34 tgl Exp $ */
+/* $PostgreSQL: pgsql/contrib/intarray/_int.sql.in,v 1.32 2009/06/11 18:30:03 tgl Exp $ */
-- Adjust this setting to control where the objects get created.
SET search_path = public;
@@ -326,17 +326,17 @@ CREATE OPERATOR & (
CREATE OR REPLACE FUNCTION g_int_consistent(internal,_int4,int,oid,internal)
RETURNS bool
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_compress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_decompress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_penalty(internal,internal,internal)
RETURNS internal
@@ -346,17 +346,17 @@ LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_picksplit(internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_union(internal, internal)
RETURNS _int4
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_int_same(_int4, _int4, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
-- Create the operator class for indexing
@@ -403,17 +403,17 @@ CREATE TYPE intbig_gkey (
CREATE OR REPLACE FUNCTION g_intbig_consistent(internal,internal,int,oid,internal)
RETURNS bool
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_compress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_decompress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_penalty(internal,internal,internal)
RETURNS internal
@@ -423,17 +423,17 @@ LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_picksplit(internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_union(internal, internal)
RETURNS _int4
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION g_intbig_same(internal, internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
-- register the opclass for indexing (not as default)
@@ -461,12 +461,12 @@ AS
CREATE OR REPLACE FUNCTION ginint4_queryextract(internal, internal, int2, internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OR REPLACE FUNCTION ginint4_consistent(internal, int2, internal, int4, internal, internal)
RETURNS bool
AS 'MODULE_PATHNAME'
-LANGUAGE C IMMUTABLE;
+LANGUAGE C IMMUTABLE STRICT;
CREATE OPERATOR CLASS gin__int_ops
FOR TYPE _int4 USING gin