]> granicus.if.org Git - postgresql/commitdiff
Update xml2 extension for parallel query.
authorRobert Haas <rhaas@postgresql.org>
Tue, 14 Jun 2016 19:49:32 +0000 (15:49 -0400)
committerRobert Haas <rhaas@postgresql.org>
Tue, 14 Jun 2016 19:49:32 +0000 (15:49 -0400)
All functions provided by this extension are PARALLEL SAFE.

Andreas Karlsson

contrib/xml2/Makefile
contrib/xml2/xml2--1.0--1.1.sql [new file with mode: 0644]
contrib/xml2/xml2--1.1.sql [moved from contrib/xml2/xml2--1.0.sql with 70% similarity]
contrib/xml2/xml2.control

index 2f7a08cff1a7ae3dafbab9e07e456fdb740ffe15..68fd9c42af497999070367d9aa1e4d77512da4e8 100644 (file)
@@ -4,7 +4,7 @@ MODULE_big = pgxml
 OBJS = xpath.o xslt_proc.o $(WIN32RES)
 
 EXTENSION = xml2
-DATA = xml2--1.0.sql xml2--unpackaged--1.0.sql
+DATA = xml2--1.1.sql xml2--1.0--1.1.sql xml2--unpackaged--1.0.sql
 PGFILEDESC = "xml2 - XPath querying and XSLT"
 
 REGRESS = xml2
diff --git a/contrib/xml2/xml2--1.0--1.1.sql b/contrib/xml2/xml2--1.0--1.1.sql
new file mode 100644 (file)
index 0000000..350afb0
--- /dev/null
@@ -0,0 +1,18 @@
+/* contrib/xml2/xml2--1.0--1.1.sql */
+
+-- complain if script is sourced in psql, rather than via ALTER EXTENSION
+\echo Use "ALTER EXTENSION xml2 UPDATE TO '1.1'" to load this file. \quit
+
+ALTER FUNCTION xml_valid(text) PARALLEL SAFE;
+ALTER FUNCTION xml_encode_special_chars(text) PARALLEL SAFE;
+ALTER FUNCTION xpath_string(text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_nodeset(text, text, text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_number(text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_bool(text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_list(text, text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_list(text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_nodeset(text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_nodeset(text, text, text) PARALLEL SAFE;
+ALTER FUNCTION xpath_table(text, text, text, text, text) PARALLEL SAFE;
+ALTER FUNCTION xslt_process(text, text, text) PARALLEL SAFE;
+ALTER FUNCTION xslt_process(text, text) PARALLEL SAFE;
similarity index 70%
rename from contrib/xml2/xml2--1.0.sql
rename to contrib/xml2/xml2--1.1.sql
index 0b6afc63d05f5a66b0fa9e5f33629b61347e8e72..671372cb2711640d12c2e00c52786d824252d00b 100644 (file)
@@ -1,4 +1,4 @@
-/* contrib/xml2/xml2--1.0.sql */
+/* contrib/xml2/xml2--1.1.sql */
 
 -- complain if script is sourced in psql, rather than via CREATE EXTENSION
 \echo Use "CREATE EXTENSION xml2" to load this file. \quit
@@ -8,66 +8,66 @@
 -- deprecated old name for xml_is_well_formed
 CREATE FUNCTION xml_valid(text) RETURNS bool
 AS 'xml_is_well_formed'
-LANGUAGE INTERNAL STRICT STABLE;
+LANGUAGE INTERNAL STRICT STABLE PARALLEL SAFE;
 
 CREATE FUNCTION xml_encode_special_chars(text) RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_string(text,text) RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_nodeset(text,text,text,text) RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_number(text,text) RETURNS float4
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_bool(text,text) RETURNS boolean
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 -- List function
 
 CREATE FUNCTION xpath_list(text,text,text) RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_list(text,text) RETURNS text
 AS 'SELECT xpath_list($1,$2,'','')'
-LANGUAGE SQL STRICT IMMUTABLE;
+LANGUAGE SQL STRICT IMMUTABLE PARALLEL SAFE;
 
 -- Wrapper functions for nodeset where no tags needed
 
 CREATE FUNCTION xpath_nodeset(text,text)
 RETURNS text
 AS 'SELECT xpath_nodeset($1,$2,'''','''')'
-LANGUAGE SQL STRICT IMMUTABLE;
+LANGUAGE SQL STRICT IMMUTABLE PARALLEL SAFE;
 
 CREATE FUNCTION xpath_nodeset(text,text,text)
 RETURNS text
 AS 'SELECT xpath_nodeset($1,$2,'''',$3)'
-LANGUAGE SQL STRICT IMMUTABLE;
+LANGUAGE SQL STRICT IMMUTABLE PARALLEL SAFE;
 
 -- Table function
 
 CREATE FUNCTION xpath_table(text,text,text,text,text)
 RETURNS setof record
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT STABLE;
+LANGUAGE C STRICT STABLE PARALLEL SAFE;
 
 -- XSLT functions
 
 CREATE FUNCTION xslt_process(text,text,text)
 RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT VOLATILE;
+LANGUAGE C STRICT VOLATILE PARALLEL SAFE;
 
 -- the function checks for the correct argument count
 CREATE FUNCTION xslt_process(text,text)
 RETURNS text
 AS 'MODULE_PATHNAME'
-LANGUAGE C STRICT IMMUTABLE;
+LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;
index 51de678d5fbb693bfc9fc3cf7da05c04219c506f..91e6547f0159cadbc6bc91bbab12647432f63a38 100644 (file)
@@ -1,6 +1,6 @@
 # xml2 extension
 comment = 'XPath querying and XSLT'
-default_version = '1.0'
+default_version = '1.1'
 module_pathname = '$libdir/pgxml'
 # non-relocatable because xml2--unpackaged--1.0.sql needs to use @extschema@
 relocatable = false