From ffab82fbda884bc73485d877dd7d528c4cb15e82 Mon Sep 17 00:00:00 2001 From: Robert Haas <rhaas@postgresql.org> Date: Tue, 7 Jun 2016 11:25:53 -0400 Subject: [PATCH] Update fuzzystrmatch extension for parallel query. All functions provided by this extension are PARALLEL SAFE. Andreas Karlsson --- contrib/fuzzystrmatch/Makefile | 3 ++- .../fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql | 15 +++++++++++++ ...rmatch--1.0.sql => fuzzystrmatch--1.1.sql} | 22 +++++++++---------- contrib/fuzzystrmatch/fuzzystrmatch.control | 2 +- 4 files changed, 29 insertions(+), 13 deletions(-) create mode 100644 contrib/fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql rename contrib/fuzzystrmatch/{fuzzystrmatch--1.0.sql => fuzzystrmatch--1.1.sql} (69%) diff --git a/contrib/fuzzystrmatch/Makefile b/contrib/fuzzystrmatch/Makefile index 0327d9510a5..51e215a919e 100644 --- a/contrib/fuzzystrmatch/Makefile +++ b/contrib/fuzzystrmatch/Makefile @@ -4,7 +4,8 @@ MODULE_big = fuzzystrmatch OBJS = fuzzystrmatch.o dmetaphone.o $(WIN32RES) EXTENSION = fuzzystrmatch -DATA = fuzzystrmatch--1.0.sql fuzzystrmatch--unpackaged--1.0.sql +DATA = fuzzystrmatch--1.1.sql fuzzystrmatch--1.0--1.1.sql \ + fuzzystrmatch--unpackaged--1.0.sql PGFILEDESC = "fuzzystrmatch - similarities and distance between strings" ifdef USE_PGXS diff --git a/contrib/fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql b/contrib/fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql new file mode 100644 index 00000000000..f2b15550dd4 --- /dev/null +++ b/contrib/fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql @@ -0,0 +1,15 @@ +/* contrib/fuzzystrmatch/fuzzystrmatch--1.0--1.1.sql */ + +-- complain if script is sourced in psql, rather than via ALTER EXTENSION +\echo Use "ALTER EXTENSION fuzzystrmatch UPDATE TO '1.1'" to load this file. \quit + +ALTER FUNCTION levenshtein(text, text) PARALLEL SAFE; +ALTER FUNCTION levenshtein(text, text, int, int, int) PARALLEL SAFE; +ALTER FUNCTION levenshtein_less_equal(text, text, int) PARALLEL SAFE; +ALTER FUNCTION levenshtein_less_equal(text, text, int, int, int, int) PARALLEL SAFE; +ALTER FUNCTION metaphone(text, int) PARALLEL SAFE; +ALTER FUNCTION soundex(text) PARALLEL SAFE; +ALTER FUNCTION text_soundex(text) PARALLEL SAFE; +ALTER FUNCTION difference(text, text) PARALLEL SAFE; +ALTER FUNCTION dmetaphone(text) PARALLEL SAFE; +ALTER FUNCTION dmetaphone_alt(text) PARALLEL SAFE; diff --git a/contrib/fuzzystrmatch/fuzzystrmatch--1.0.sql b/contrib/fuzzystrmatch/fuzzystrmatch--1.1.sql similarity index 69% rename from contrib/fuzzystrmatch/fuzzystrmatch--1.0.sql rename to contrib/fuzzystrmatch/fuzzystrmatch--1.1.sql index 1cf9b6188cc..41de9d949bb 100644 --- a/contrib/fuzzystrmatch/fuzzystrmatch--1.0.sql +++ b/contrib/fuzzystrmatch/fuzzystrmatch--1.1.sql @@ -1,44 +1,44 @@ -/* contrib/fuzzystrmatch/fuzzystrmatch--1.0.sql */ +/* contrib/fuzzystrmatch/fuzzystrmatch--1.1.sql */ -- complain if script is sourced in psql, rather than via CREATE EXTENSION \echo Use "CREATE EXTENSION fuzzystrmatch" to load this file. \quit CREATE FUNCTION levenshtein (text,text) RETURNS int AS 'MODULE_PATHNAME','levenshtein' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION levenshtein (text,text,int,int,int) RETURNS int AS 'MODULE_PATHNAME','levenshtein_with_costs' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION levenshtein_less_equal (text,text,int) RETURNS int AS 'MODULE_PATHNAME','levenshtein_less_equal' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION levenshtein_less_equal (text,text,int,int,int,int) RETURNS int AS 'MODULE_PATHNAME','levenshtein_less_equal_with_costs' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION metaphone (text,int) RETURNS text AS 'MODULE_PATHNAME','metaphone' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION soundex(text) RETURNS text AS 'MODULE_PATHNAME', 'soundex' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION text_soundex(text) RETURNS text AS 'MODULE_PATHNAME', 'soundex' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION difference(text,text) RETURNS int AS 'MODULE_PATHNAME', 'difference' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION dmetaphone (text) RETURNS text AS 'MODULE_PATHNAME', 'dmetaphone' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION dmetaphone_alt (text) RETURNS text AS 'MODULE_PATHNAME', 'dmetaphone_alt' -LANGUAGE C IMMUTABLE STRICT; +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; diff --git a/contrib/fuzzystrmatch/fuzzystrmatch.control b/contrib/fuzzystrmatch/fuzzystrmatch.control index e257f096117..6b2832ae8d9 100644 --- a/contrib/fuzzystrmatch/fuzzystrmatch.control +++ b/contrib/fuzzystrmatch/fuzzystrmatch.control @@ -1,5 +1,5 @@ # fuzzystrmatch extension comment = 'determine similarities and distance between strings' -default_version = '1.0' +default_version = '1.1' module_pathname = '$libdir/fuzzystrmatch' relocatable = true -- GitLab