Split one patch about text search, added another one (sequences), added some info to commit messages, and added here. https://commitfest.postgresql.org/30/2744/
-- Justin
>From adf050ac6cc7d0905fc1613dce1a04f76a892609 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 21:40:17 -0500 Subject: [PATCH v2 01/11] extraneous comma --- doc/src/sgml/rules.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/rules.sgml b/doc/src/sgml/rules.sgml index bcf860b68b..d6e3463ac2 100644 --- a/doc/src/sgml/rules.sgml +++ b/doc/src/sgml/rules.sgml @@ -769,7 +769,7 @@ SELECT t1.a, t2.b, t1.ctid FROM t1, t2 WHERE t1.a = t2.a; </para> <para> - The benefit of implementing views with the rule system is, + The benefit of implementing views with the rule system is that the planner has all the information about which tables have to be scanned plus the relationships between these tables plus the restrictive @@ -781,7 +781,7 @@ SELECT t1.a, t2.b, t1.ctid FROM t1, t2 WHERE t1.a = t2.a; the best path to execute the query, and the more information the planner has, the better this decision can be. And the rule system as implemented in <productname>PostgreSQL</productname> - ensures, that this is all information available about the query + ensures that this is all information available about the query up to that point. </para> </sect2> -- 2.17.0
>From d6e81a48596edcd255015767095e8985464051e1 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Wed, 23 Sep 2020 13:09:11 -0500 Subject: [PATCH v2 02/11] semicolons after END in programlisting --- doc/src/sgml/func.sgml | 2 +- doc/src/sgml/plpgsql.sgml | 12 ++++++------ doc/src/sgml/rules.sgml | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 461b748d89..1e18f332a3 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -26580,7 +26580,7 @@ BEGIN obj.object_name, obj.object_identity; END LOOP; -END +END; $$; CREATE EVENT TRIGGER test_event_trigger_for_drops ON sql_drop diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml index 815912666d..a71a8e7e48 100644 --- a/doc/src/sgml/plpgsql.sgml +++ b/doc/src/sgml/plpgsql.sgml @@ -1143,7 +1143,7 @@ BEGIN SELECT users.userid INTO STRICT userid FROM users WHERE users.username = get_userid.username; RETURN userid; -END +END; $$ LANGUAGE plpgsql; </programlisting> On failure, this function might produce an error message such as @@ -1816,7 +1816,7 @@ BEGIN RETURN NEXT r; -- return current row of SELECT END LOOP; RETURN; -END +END; $BODY$ LANGUAGE plpgsql; @@ -1844,7 +1844,7 @@ BEGIN END IF; RETURN; - END + END; $BODY$ LANGUAGE plpgsql; @@ -1918,7 +1918,7 @@ DECLARE myvar int := 5; BEGIN CALL triple(myvar); RAISE NOTICE 'myvar = %', myvar; -- prints 15 -END +END; $$; </programlisting> </para> @@ -3521,7 +3521,7 @@ BEGIN ROLLBACK; END IF; END LOOP; -END +END; $$; CALL transaction_test1(); @@ -5175,7 +5175,7 @@ DECLARE f1 int; BEGIN RETURN f1; -END +END; $$ LANGUAGE plpgsql; WARNING: variable "f1" shadows a previously defined variable LINE 3: f1 int; diff --git a/doc/src/sgml/rules.sgml b/doc/src/sgml/rules.sgml index d6e3463ac2..e81addcfa9 100644 --- a/doc/src/sgml/rules.sgml +++ b/doc/src/sgml/rules.sgml @@ -2087,7 +2087,7 @@ CREATE FUNCTION tricky(text, text) RETURNS bool AS $$ BEGIN RAISE NOTICE '% => %', $1, $2; RETURN true; -END +END; $$ LANGUAGE plpgsql COST 0.0000000000000000000001; SELECT * FROM phone_number WHERE tricky(person, phone); -- 2.17.0
>From db23e239d021e018c3b9d6cb4d983f5bbcae8b85 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 22:51:47 -0500 Subject: [PATCH v2 03/11] punctuation --- doc/src/sgml/catalogs.sgml | 2 +- doc/src/sgml/config.sgml | 4 ++-- doc/src/sgml/parallel.sgml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml index de9bacd34f..d1b8fc8010 100644 --- a/doc/src/sgml/catalogs.sgml +++ b/doc/src/sgml/catalogs.sgml @@ -1525,7 +1525,7 @@ </para> <para> Role can log in. That is, this role can be given as the initial - session authorization identifier + session authorization identifier. </para></entry> </row> diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 8eabf93834..1c753ccb7e 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -10084,8 +10084,8 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1) </term> <listitem> <para> - If set, do not trace locks for tables below this OID. (use to avoid - output on system tables) + If set, do not trace locks for tables below this OID (used to avoid + output on system tables). </para> <para> This parameter is only available if the <symbol>LOCK_DEBUG</symbol> diff --git a/doc/src/sgml/parallel.sgml b/doc/src/sgml/parallel.sgml index e31bd9d3ce..c81abff48d 100644 --- a/doc/src/sgml/parallel.sgml +++ b/doc/src/sgml/parallel.sgml @@ -471,7 +471,7 @@ EXPLAIN SELECT * FROM pgbench_accounts WHERE filler LIKE '%x%'; </para> <para> - The following operations are always parallel restricted. + The following operations are always parallel restricted: </para> <itemizedlist> -- 2.17.0
>From 0c75d48a2b3efccafcd472e3d1a8097a768d7e38 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 22:48:52 -0500 Subject: [PATCH v2 04/11] Avoid ending a sentence about "..." with ".." .. .. which then looks just the same as "...". --- doc/src/sgml/seg.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/seg.sgml b/doc/src/sgml/seg.sgml index e86142d885..e0dfbc76cf 100644 --- a/doc/src/sgml/seg.sgml +++ b/doc/src/sgml/seg.sgml @@ -205,8 +205,8 @@ test=> select '6.25 .. 6.50'::seg as "pH"; </table> <para> - Because <literal>...</literal> is widely used in data sources, it is allowed - as an alternative spelling of <literal>..</literal>. Unfortunately, this + Because the <literal>...</literal> operator is widely used in data sources, it is allowed + as an alternative spelling of the <literal>..</literal> operator. Unfortunately, this creates a parsing ambiguity: it is not clear whether the upper bound in <literal>0...23</literal> is meant to be <literal>23</literal> or <literal>0.23</literal>. This is resolved by requiring at least one digit before the decimal -- 2.17.0
>From cd1667c6d9e2c50e769bbd469be3da4f29d91560 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 22:55:48 -0500 Subject: [PATCH v2 05/11] grammar --- doc/src/sgml/gin.sgml | 2 +- doc/src/sgml/high-availability.sgml | 2 +- doc/src/sgml/isn.sgml | 2 +- doc/src/sgml/mvcc.sgml | 2 +- doc/src/sgml/protocol.sgml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml index 5c8d4d5275..67754f52f6 100644 --- a/doc/src/sgml/gin.sgml +++ b/doc/src/sgml/gin.sgml @@ -612,7 +612,7 @@ </para> <para> <varname>gin_pending_list_limit</varname> can be overridden for individual - GIN indexes by changing storage parameters, and which allows each + GIN indexes by changing storage parameters, which allows each GIN index to have its own cleanup threshold. For example, it's possible to increase the threshold only for the GIN index which can be updated heavily, and decrease it otherwise. diff --git a/doc/src/sgml/high-availability.sgml b/doc/src/sgml/high-availability.sgml index beb309e668..a9b7e8fc99 100644 --- a/doc/src/sgml/high-availability.sgml +++ b/doc/src/sgml/high-availability.sgml @@ -1503,7 +1503,7 @@ synchronous_standby_names = 'ANY 2 (s1, s2, s3)' Note that in this mode, the server will apply WAL one file at a time, so if you use the standby server for queries (see Hot Standby), there is a delay between an action in the primary and when the - action becomes visible in the standby, corresponding the time it takes + action becomes visible in the standby, corresponding to the time it takes to fill up the WAL file. <varname>archive_timeout</varname> can be used to make that delay shorter. Also note that you can't combine streaming replication with this method. diff --git a/doc/src/sgml/isn.sgml b/doc/src/sgml/isn.sgml index e55ed07312..709bc8345c 100644 --- a/doc/src/sgml/isn.sgml +++ b/doc/src/sgml/isn.sgml @@ -14,7 +14,7 @@ hard-coded list of prefixes; this list of prefixes is also used to hyphenate numbers on output. Since new prefixes are assigned from time to time, the list of prefixes may be out of date. It is hoped that a future version of - this module will obtained the prefix list from one or more tables that + this module will obtain the prefix list from one or more tables that can be easily updated by users as needed; however, at present, the list can only be updated by modifying the source code and recompiling. Alternatively, prefix validation and hyphenation support may be diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml index 6920913a26..92861e5cfd 100644 --- a/doc/src/sgml/mvcc.sgml +++ b/doc/src/sgml/mvcc.sgml @@ -1246,7 +1246,7 @@ ERROR: could not serialize access due to read/write dependencies among transact <para> The <literal>FOR UPDATE</literal> lock mode is also acquired by any <command>DELETE</command> on a row, and also by an - <command>UPDATE</command> that modifies the values on certain columns. Currently, + <command>UPDATE</command> that modifies the values of certain columns. Currently, the set of columns considered for the <command>UPDATE</command> case are those that have a unique index on them that can be used in a foreign key (so partial indexes and expressional indexes are not considered), but this may change diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index f5e3318106..06068f87a4 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -2837,7 +2837,7 @@ The commands accepted in replication mode are: <para> Every sent transaction contains zero or more DML messages (Insert, Update, Delete). In case of a cascaded setup it can also contain Origin - messages. The origin message indicated that the transaction originated on + messages. The origin message indicates that the transaction originated on different replication node. Since a replication node in the scope of logical replication protocol can be pretty much anything, the only identifier is the origin name. It's downstream's responsibility to handle this as -- 2.17.0
>From fd6400938866c3b9caea86c0abc10ac00a15b3dc Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 22:55:59 -0500 Subject: [PATCH v2 06/11] distro agnostic --- doc/src/sgml/sepgsql.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/sepgsql.sgml b/doc/src/sgml/sepgsql.sgml index 9961569afc..15417bf19d 100644 --- a/doc/src/sgml/sepgsql.sgml +++ b/doc/src/sgml/sepgsql.sgml @@ -88,7 +88,7 @@ Policy from config file: targeted <para> To build this module, include the option <literal>--with-selinux</literal> in your PostgreSQL <literal>configure</literal> command. Be sure that the - <filename>libselinux-devel</filename> RPM is installed at build time. + <filename>libselinux-devel</filename> package is installed at build time. </para> <para> @@ -177,7 +177,7 @@ $ for DBNAME in template0 template1 postgres; do Makefile on your system; the path shown below is only an example. (This Makefile is usually supplied by the <filename>selinux-policy-devel</filename> or - <filename>selinux-policy</filename> RPM.) + <filename>selinux-policy</filename> package.) Once built, install this policy package using the <command>semodule</command> command, which loads supplied policy packages into the kernel. If the package is correctly installed, -- 2.17.0
>From e9c841c8323b5034c2cf50c9bafc4682b096edc0 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 22:24:14 -0500 Subject: [PATCH v2 07/11] style and consistency --- doc/src/sgml/indexam.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/indexam.sgml b/doc/src/sgml/indexam.sgml index 390c49eb6a..649020b7da 100644 --- a/doc/src/sgml/indexam.sgml +++ b/doc/src/sgml/indexam.sgml @@ -612,7 +612,7 @@ amgettuple (IndexScanDesc scan, will pass the caller's snapshot test. On success, <function>amgettuple</function> must also set <literal>scan->xs_recheck</literal> to true or false. False means it is certain that the index entry matches the scan keys. - true means this is not certain, and the conditions represented by the + True means this is not certain, and the conditions represented by the scan keys must be rechecked against the heap tuple after fetching it. This provision supports <quote>lossy</quote> index operators. Note that rechecking will extend only to the scan conditions; a partial -- 2.17.0
>From 68310cdda69a59768a206982f2aa63385d74455e Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 23:13:00 -0500 Subject: [PATCH v2 08/11] HAVING conditions cannot be repeated --- doc/src/sgml/ref/select.sgml | 2 +- doc/src/sgml/ref/select_into.sgml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/ref/select.sgml b/doc/src/sgml/ref/select.sgml index b93e4ca208..94889b66b4 100644 --- a/doc/src/sgml/ref/select.sgml +++ b/doc/src/sgml/ref/select.sgml @@ -38,7 +38,7 @@ SELECT [ ALL | DISTINCT [ ON ( <replaceable class="parameter">expression</replac [ FROM <replaceable class="parameter">from_item</replaceable> [, ...] ] [ WHERE <replaceable class="parameter">condition</replaceable> ] [ GROUP BY <replaceable class="parameter">grouping_element</replaceable> [, ...] ] - [ HAVING <replaceable class="parameter">condition</replaceable> [, ...] ] + [ HAVING <replaceable class="parameter">condition</replaceable> ] [ WINDOW <replaceable class="parameter">window_name</replaceable> AS ( <replaceable class="parameter">window_definition</replaceable> ) [, ...] ] [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] <replaceable class="parameter">select</replaceable> ] [ ORDER BY <replaceable class="parameter">expression</replaceable> [ ASC | DESC | USING <replaceable class="parameter">operator</replaceable> ] [ NULLS { FIRST | LAST } ] [, ...] ] diff --git a/doc/src/sgml/ref/select_into.sgml b/doc/src/sgml/ref/select_into.sgml index b1af52a4da..e82e416d60 100644 --- a/doc/src/sgml/ref/select_into.sgml +++ b/doc/src/sgml/ref/select_into.sgml @@ -28,7 +28,7 @@ SELECT [ ALL | DISTINCT [ ON ( <replaceable class="parameter">expression</replac [ FROM <replaceable class="parameter">from_item</replaceable> [, ...] ] [ WHERE <replaceable class="parameter">condition</replaceable> ] [ GROUP BY <replaceable class="parameter">expression</replaceable> [, ...] ] - [ HAVING <replaceable class="parameter">condition</replaceable> [, ...] ] + [ HAVING <replaceable class="parameter">condition</replaceable> ] [ WINDOW <replaceable class="parameter">window_name</replaceable> AS ( <replaceable class="parameter">window_definition</replaceable> ) [, ...] ] [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] <replaceable class="parameter">select</replaceable> ] [ ORDER BY <replaceable class="parameter">expression</replaceable> [ ASC | DESC | USING <replaceable class="parameter">operator</replaceable> ] [ NULLS { FIRST | LAST } ] [, ...] ] -- 2.17.0
>From cfc510bc6672b5240c51ff4504f1b5051263c34a Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Fri, 25 Sep 2020 09:20:03 -0500 Subject: [PATCH v2 09/11] doc: textsearch: grammar: exactly Commit 028350f619f7688e0453fcd2c4b25abe9ba30fa7 changed from "at most" logic to exactly, but the grammar was off. --- doc/src/sgml/textsearch.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/textsearch.sgml b/doc/src/sgml/textsearch.sgml index 2ebdf02bfa..8af6ac01d3 100644 --- a/doc/src/sgml/textsearch.sgml +++ b/doc/src/sgml/textsearch.sgml @@ -1645,7 +1645,7 @@ SELECT to_tsquery('fat') <-> to_tsquery('cat | rat'); <listitem> <para> Returns a query that searches for a match to the first given query - followed by a match to the second given query at a distance of at + followed by a match to the second given query at a distance of exactly <replaceable>distance</replaceable> lexemes, using the <literal><<replaceable>N</replaceable>></literal> <type>tsquery</type> operator. For example: -- 2.17.0
>From e59bb4e489a7aeed15a4380ddd5b165c2a8091e9 Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Tue, 22 Sep 2020 23:34:54 -0500 Subject: [PATCH v2 10/11] fix tsquery example wrong since bb140506df605fab58f48926ee1db1f80bdafb59 --- doc/src/sgml/textsearch.sgml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/src/sgml/textsearch.sgml b/doc/src/sgml/textsearch.sgml index 8af6ac01d3..7daf292468 100644 --- a/doc/src/sgml/textsearch.sgml +++ b/doc/src/sgml/textsearch.sgml @@ -1623,9 +1623,9 @@ occurrences to display in the result.', <screen> SELECT to_tsquery('fat') <-> to_tsquery('cat | rat'); - ?column? ------------------------------------ - 'fat' <-> 'cat' | 'fat' <-> 'rat' + ?column? +---------------------------- + 'fat' <-> ( 'cat' | 'rat' ) </screen> </para> </listitem> -- 2.17.0
>From f9396ac62f15a566065745cc7c09510e6da4182e Mon Sep 17 00:00:00 2001 From: Justin Pryzby <pryz...@telsasoft.com> Date: Fri, 25 Sep 2020 09:17:48 -0500 Subject: [PATCH v2 11/11] Fix omission regarding ALTER SEQUENCE since 3d79013b970d4cc336c06eb77ed526b44308c03e should backpatch to v10 --- doc/src/sgml/ref/truncate.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/ref/truncate.sgml b/doc/src/sgml/ref/truncate.sgml index 5922ee579e..c8361e77bd 100644 --- a/doc/src/sgml/ref/truncate.sgml +++ b/doc/src/sgml/ref/truncate.sgml @@ -160,8 +160,8 @@ TRUNCATE [ TABLE ] [ ONLY ] <replaceable class="parameter">name</replaceable> [ When <literal>RESTART IDENTITY</literal> is specified, the implied <command>ALTER SEQUENCE RESTART</command> operations are also done transactionally; that is, they will be rolled back if the surrounding - transaction does not commit. This is unlike the normal behavior of - <command>ALTER SEQUENCE RESTART</command>. Be aware that if any additional + transaction does not commit. + Be aware that if any additional sequence operations are done on the restarted sequences before the transaction rolls back, the effects of these operations on the sequences will be rolled back, but not their effects on <function>currval()</function>; -- 2.17.0