clean up docs for v12
I reviewed docs like this:
git log -p remotes/origin/REL_11_STABLE..HEAD -- doc
And split some into separate patches, which may be useful at least for
reviewing.
I'm mailing now rather than after feature freeze to avoid duplicative work and
see if there's any issue.
Note, I also/already mailed this one separately:
|Clean up docs for log_statement_sample_rate..
/messages/by-id/20190328135918.GA27808@telsasoft.com
Justin
Attachments:
v1-0007-overridden-vs-overwritten.patchtext/x-diff; charset=us-asciiDownload
From d517351a5ff63cc0fb63fb5c94e3635efa80e39e Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 13:18:12 -0500
Subject: [PATCH v1 7/8] overridden vs overwritten
---
doc/src/sgml/ref/pgbench.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
src/test/regress/expected/create_table.out | 2 +-
src/test/regress/sql/create_table.sql | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index dbeec28..d0a79b9 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -941,7 +941,7 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
<row>
<entry> <literal>random_seed</literal> </entry>
- <entry>random generator seed (unless overwritten with <option>-D</option>)</entry>
+ <entry>random generator seed (unless overridden with <option>-D</option>)</entry>
</row>
<row>
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 2f86885..ff32981 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -478,7 +478,7 @@ EOF
leave off the equal sign. To set a variable with an empty value,
use the equal sign but leave off the value. These assignments are
done during command line processing, so variables that reflect
- connection state will get overwritten later.
+ connection state will be overridden later.
</para>
</listitem>
</varlistentry>
diff --git a/src/test/regress/expected/create_table.out b/src/test/regress/expected/create_table.out
index ad0cb32..44c7864 100644
--- a/src/test/regress/expected/create_table.out
+++ b/src/test/regress/expected/create_table.out
@@ -874,7 +874,7 @@ create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a no
insert into parted_notnull_inh_test (b) values (null);
ERROR: null value in column "b" violates not-null constraint
DETAIL: Failing row contains (1, null).
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
Table "public.parted_notnull_inh_test1"
Column | Type | Collation | Nullable | Default
diff --git a/src/test/regress/sql/create_table.sql b/src/test/regress/sql/create_table.sql
index 751c0d3..36222c2 100644
--- a/src/test/regress/sql/create_table.sql
+++ b/src/test/regress/sql/create_table.sql
@@ -720,7 +720,7 @@ CREATE TABLE part_c_1_10 PARTITION OF part_c FOR VALUES FROM (1) TO (10);
create table parted_notnull_inh_test (a int default 1, b int not null default 0) partition by list (a);
create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a not null, b default 1) for values in (1);
insert into parted_notnull_inh_test (b) values (null);
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
drop table parted_notnull_inh_test;
--
2.1.4
v1-0008-Clean-up-language-in-cf984672.patchtext/x-diff; charset=us-asciiDownload
From d8bbad7d21c79047f760a6c8b6ce1441077acfbf Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 03:42:35 -0500
Subject: [PATCH v1 8/8] Clean up language in cf984672
---
doc/src/sgml/func.sgml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index df47ec2..32b23f3 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -6399,19 +6399,19 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
exceeds the number of separators in the template.
</para>
<para>
- If <literal>FX</literal> is specified, separator in template string
- matches to exactly one character in input string. Notice we don't insist
- input string character to be the same as template string separator.
+ If <literal>FX</literal> is specified, a separator in the template string
+ matches exactly one character in the input string. But note that the
+ character in the input string is not required to be the same character in the template string.
For example, <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
works, but <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
- returns an error because a space second template string space consumed
- letter <literal>J</literal> from the input string.
+ returns an error because a space in its template string consumes
+ the letter <literal>J</literal> from the input string.
</para>
</listitem>
<listitem>
<para>
- <literal>TZH</literal> template pattern can match a signed number.
+ The <literal>TZH</literal> template pattern can match a signed number.
Without the <literal>FX</literal> option, it may lead to ambiguity in
interpretation of the minus sign, which can also be interpreted as a separator.
This ambiguity is resolved as follows. If the number of separators before
--
2.1.4
v1-0001-Clean-up-docs-for-log_statement_sample_rate.patchtext/x-diff; charset=us-asciiDownload
From fb712dfe3cb3d64ac7d297ca5217193327f8b547 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 08:53:26 -0500
Subject: [PATCH v1 1/8] Clean up docs for log_statement_sample_rate..
..which was added at commit 88bdbd3f746049834ae3cc972e6e650586ec3c9d
---
doc/src/sgml/config.sgml | 18 +++++++++---------
src/backend/utils/misc/guc.c | 4 ++--
src/backend/utils/misc/postgresql.conf.sample | 6 +++---
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index d383de2..9b66e7f 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -5786,9 +5786,9 @@ local0.* /var/log/postgresql
Causes the duration of each completed statement to be logged
if the statement ran for at least the specified number of
milliseconds, modulated by <varname>log_statement_sample_rate</varname>.
- Setting this to zero prints all statement durations. Minus-one (the default)
- disables logging statement durations. For example, if you set it to
- <literal>250ms</literal> then all SQL statements that run 250ms or longer
+ Setting this to zero prints all statement durations. <literal>-1</literal> (the default)
+ disables logging statements due to exceeding duration threshold. For example, if you set it to
+ <literal>250ms</literal>, then all SQL statements that run 250ms or longer
will be logged. Enabling this parameter can be helpful in tracking down
unoptimized queries in your applications.
Only superusers can change this setting.
@@ -5824,13 +5824,13 @@ local0.* /var/log/postgresql
</term>
<listitem>
<para>
- Determines the fraction of the statements that exceed
- <xref linkend="guc-log-min-duration-statement"/> which to log.
- The default is <literal>1</literal>, meaning log to all such
+ Determines the fraction of statements that exceed
+ <xref linkend="guc-log-min-duration-statement"/> to be logged.
+ The default is <literal>1.0</literal>, meaning log all such
statements.
- Setting this to zero disables logging, same as setting
+ Setting this to zero disables logging by duration, same as setting
<varname>log_min_duration_statement</varname>
- to minus-one. <varname>log_statement_sample_rate</varname>
+ to <literal>-1</literal>. <varname>log_statement_sample_rate</varname>
is helpful when the traffic is too high to log all queries.
</para>
</listitem>
@@ -6083,7 +6083,7 @@ local0.* /var/log/postgresql
<note>
<para>
- The difference between setting this option and setting
+ The difference between enabling <varname>log_duration</varname> and setting
<xref linkend="guc-log-min-duration-statement"/> to zero is that
exceeding <varname>log_min_duration_statement</varname> forces the text of
the query to be logged, but this option doesn't. Thus, if
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index aa564d1..415cd78 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3357,8 +3357,8 @@ static struct config_real ConfigureNamesReal[] =
{
{"log_statement_sample_rate", PGC_SUSET, LOGGING_WHEN,
- gettext_noop("Fraction of statements over log_min_duration_statement to log."),
- gettext_noop("If you only want a sample, use a value between 0 (never "
+ gettext_noop("Fraction of statements exceeding log_min_duration_statement to be logged."),
+ gettext_noop("If you only want a sample, use a value between 0.0 (never "
"log) and 1.0 (always log).")
},
&log_statement_sample_rate,
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index cccb5f1..684f5e7 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -489,9 +489,9 @@
# 0 logs all statement, > 0 logs only statements running at
# least this number of milliseconds.
-#log_statement_sample_rate = 1 # Fraction of logged statements over
- # log_min_duration_statement. 1.0 logs all statements,
- # 0 never logs.
+#log_statement_sample_rate = 1.0 # Fraction of logged statements exceeding
+ # log_min_duration_statement to be logged
+ # 1.0 logs all statements, 0.0 never logs
# - What to Log -
--
2.1.4
v1-0002-review-docs-for-pg12dev.patchtext/x-diff; charset=us-asciiDownload
From 4b5cc00e25c3abc601f48bfae0cc69a8729cd041 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 18:50:03 -0500
Subject: [PATCH v1 2/8] review docs for pg12dev
---
doc/src/sgml/bloom.sgml | 2 +-
doc/src/sgml/catalogs.sgml | 4 ++--
doc/src/sgml/config.sgml | 13 ++++++-----
doc/src/sgml/ecpg.sgml | 18 +++++++-------
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/monitoring.sgml | 30 ++++++++++++------------
doc/src/sgml/perform.sgml | 8 +++----
doc/src/sgml/ref/alter_table.sgml | 4 ++--
doc/src/sgml/ref/create_index.sgml | 4 ++--
doc/src/sgml/ref/pg_rewind.sgml | 15 ++++++------
doc/src/sgml/ref/pgbench.sgml | 6 ++---
doc/src/sgml/ref/reindex.sgml | 2 +-
doc/src/sgml/sources.sgml | 48 +++++++++++++++++++-------------------
doc/src/sgml/xfunc.sgml | 12 +++++-----
14 files changed, 82 insertions(+), 86 deletions(-)
diff --git a/doc/src/sgml/bloom.sgml b/doc/src/sgml/bloom.sgml
index 6eeadde..c341b65 100644
--- a/doc/src/sgml/bloom.sgml
+++ b/doc/src/sgml/bloom.sgml
@@ -65,7 +65,7 @@
<para>
Number of bits generated for each index column. Each parameter's name
refers to the number of the index column that it controls. The default
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for
+ is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters for
index columns not actually used are ignored.
</para>
</listitem>
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index f4aabf5..ad4d150 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -3051,7 +3051,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
simplifies <command>ATTACH/DETACH PARTITION</command> operations:
the partition dependencies need only be added or removed.
Example: a child partitioned index is made partition-dependent
- on both the partition table it is on and the parent partitioned
+ on both the table partition and the parent partitioned
index, so that it goes away if either of those is dropped, but
not otherwise. The dependency on the parent index is primary,
so that if the user tries to drop the child partitioned index,
@@ -3114,7 +3114,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
Note that it's quite possible for two objects to be linked by more than
one <structname>pg_depend</structname> entry. For example, a child
partitioned index would have both a partition-type dependency on its
- associated partition table, and an auto dependency on each column of
+ associated table partition, and an auto dependency on each column of
that table that it indexes. This sort of situation expresses the union
of multiple dependency semantics. A dependent object can be dropped
without <literal>CASCADE</literal> if any of its dependencies satisfies
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 9b66e7f..5f6873d 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -112,7 +112,7 @@
For example, <literal>30.1 GB</literal> will be converted
to <literal>30822 MB</literal> not <literal>32319628902 B</literal>.
If the parameter is of integer type, a final rounding to integer
- occurs after any units conversion.
+ occurs after any unit conversion.
</para>
</listitem>
@@ -3408,7 +3408,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
current when the base backup was taken. The
value <literal>latest</literal> recovers
to the latest timeline found in the archive, which is useful in
- a standby server. <literal>latest</literal> is the default.
+ a standby server. The default is <literal>latest</literal>.
</para>
<para>
@@ -3515,7 +3515,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
servers or streaming base backup clients (i.e., the maximum number of
simultaneously running WAL sender processes). The default is
<literal>10</literal>. The value <literal>0</literal> means
- replication is disabled. Abrupt streaming client disconnection might
+ replication is disabled. Abrupt disconnection of a streaming client might
leave an orphaned connection slot behind until a timeout is reached,
so this parameter should be set slightly higher than the maximum
number of expected clients so disconnected clients can immediately
@@ -4135,8 +4135,9 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
This parameter is intended for use with streaming replication deployments;
however, if the parameter is specified it will be honored in all cases.
- <varname>hot_standby_feedback</varname> will be delayed by use of this feature
- which could lead to bloat on the master; use both together with care.
+ <varname>hot_standby_feedback</varname> will be delayed by use of this feature.
+ Combinining these settings could lead to bloat on the master, so should
+ be done only with care.
<warning>
<para>
@@ -6853,7 +6854,7 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
<para>
Causes each action executed by autovacuum to be logged if it ran for at
least the specified number of milliseconds. Setting this to zero logs
- all autovacuum actions. Minus-one (the default) disables logging
+ all autovacuum actions. <literal>-1</literal> (the default) disables logging
autovacuum actions. For example, if you set this to
<literal>250ms</literal> then all automatic vacuums and analyzes that run
250ms or longer will be logged. In addition, when this parameter is
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index d5ee6a5..798aae4 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -662,7 +662,7 @@ EXEC SQL DEALLOCATE PREPARE <replaceable>name</replaceable>;
not really useful in real applications. This section explains in
detail how you can pass data between your C program and the
embedded SQL statements using a simple mechanism called
- <firstterm>host variables</firstterm>. In an embedded SQL program we
+ <firstterm>host variables</firstterm>. In an embedded SQL program we
consider the SQL statements to be <firstterm>guests</firstterm> in the C
program code which is the <firstterm>host language</firstterm>. Therefore
the variables of the C program are called <firstterm>host
@@ -979,7 +979,7 @@ EXEC SQL END DECLARE SECTION;
<para>
The other way is using the <type>VARCHAR</type> type, which is a
- special type provided by ECPG. The definition on an array of
+ special type provided by ECPG. The definition of an array of
type <type>VARCHAR</type> is converted into a
named <type>struct</type> for every variable. A declaration like:
<programlisting>
@@ -989,7 +989,7 @@ VARCHAR var[180];
<programlisting>
struct varchar_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts the string
+ The member <structfield>arr</structfield> stores the string
including a terminating zero byte. Thus, to store a string in
a <type>VARCHAR</type> host variable, the host variable has to be
declared with the length including the zero byte terminator. The
@@ -1209,8 +1209,8 @@ EXEC SQL END DECLARE SECTION;
<title id="ecpg-type-bytea">bytea</title>
<para>
- The handling of the <type>bytea</type> type is also similar to
- the <type>VARCHAR</type>. The definition on an array of type
+ The handling of the <type>bytea</type> type is similar to
+ the <type>VARCHAR</type>. The definition of an array of type
<type>bytea</type> is converted into a named struct for every
variable. A declaration like:
<programlisting>
@@ -1220,9 +1220,8 @@ bytea var[180];
<programlisting>
struct bytea_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts binary format
- data. It also can handle even <literal>'\0'</literal> as part of
- data unlike <type>VARCHAR</type>.
+ The member <structfield>arr</structfield> stores binary format
+ data, which can include zero bytes, unlike <type>VARCHAR</type>.
The data is converted from/to hex format and sent/received by
ecpglib.
</para>
@@ -7571,8 +7570,7 @@ PREPARE <replaceable class="parameter">name</replaceable> FROM <replaceable clas
<listitem>
<para>
A literal C string or a host variable containing a preparable
- statement, one of the SELECT, INSERT, UPDATE, or
- DELETE.
+ statement (SELECT, INSERT, UPDATE, or DELETE).
</para>
</listitem>
</varlistentry>
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index c1d1b6b..06b0076 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -1122,7 +1122,7 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname
<term><literal>connect_timeout</literal></term>
<listitem>
<para>
- Maximum wait for connection, in seconds (write as a decimal integer,
+ Maximum time to wait while connecting, in seconds (write as a decimal integer,
e.g. <literal>10</literal>). Zero, negative, or not specified means
wait indefinitely. The minimum allowed timeout is 2 seconds, therefore
a value of <literal>1</literal> is interpreted as <literal>2</literal>.
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index f1df14b..a5bf49c 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -271,13 +271,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<para>
Some of the information in the dynamic statistics views shown in <xref
linkend="monitoring-stats-dynamic-views-table"/> is security restricted.
- Ordinary users can only see all the information about their own sessions
- (sessions belonging to a role that they are a member of). In rows about
+ Ordinary users can only see all information about their own sessions
+ (sessions belonging to a role of which they are a member). In rows for
other sessions, many columns will be null. Note, however, that the
existence of a session and its general properties such as its sessions user
and database are visible to all users. Superusers and members of the
built-in role <literal>pg_read_all_stats</literal> (see also <xref
- linkend="default-roles"/>) can see all the information about all sessions.
+ linkend="default-roles"/>) can see all information about all sessions.
</para>
<table id="monitoring-stats-dynamic-views-table">
@@ -3411,16 +3411,16 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>VACUUM Progress Reporting</title>
<para>
- Whenever <command>VACUUM</command> is running, the
- <structname>pg_stat_progress_vacuum</structname> view will contain
- one row for each backend (including autovacuum worker processes) that is
- currently vacuuming. The tables below describe the information
+ The <structname>pg_stat_progress_vacuum</structname> view will contain one
+ row for each backend that is running <command>VACUUM</command>, including
+ autovacuum worker processes.
+ The tables below describe the information
that will be reported and provide information about how to interpret it.
- Progress for <command>VACUUM FULL</command> commands is reported via
- <structname>pg_stat_progress_cluster</structname>
- because both <command>VACUUM FULL</command> and <command>CLUSTER</command>
- rewrite the table, while regular <command>VACUUM</command> only modifies it
- in place. See <xref linkend='cluster-progress-reporting'/>.
+ Progress for <command>VACUUM FULL</command> commands is instead reported via
+ <structname>pg_stat_progress_cluster</structname>,
+ because <command>VACUUM FULL</command> rewrites the table, like <command>CLUSTER</command>,
+ while regular <command>VACUUM</command> modifies it in place. See <xref linkend='cluster-progress-reporting'/>.
+
</para>
<table id="pg-stat-progress-vacuum-view" xreflabel="pg_stat_progress_vacuum">
@@ -3603,9 +3603,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title>
<para>
- Whenever <command>CLUSTER</command> or <command>VACUUM FULL</command> is
- running, the <structname>pg_stat_progress_cluster</structname> view will
- contain a row for each backend that is currently running either command.
+ The <structname>pg_stat_progress_cluster</structname> view will contain a
+ row for each backend that is running either
+ <command>CLUSTER</command> or <command>VACUUM FULL</command>.
The tables below describe the information that will be reported and
provide information about how to interpret it.
</para>
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml
index a84be85..65c161b 100644
--- a/doc/src/sgml/perform.sgml
+++ b/doc/src/sgml/perform.sgml
@@ -899,10 +899,10 @@ EXPLAIN ANALYZE SELECT * FROM tenk1 WHERE unique1 < 100 AND unique2 > 9000
Generally, the <command>EXPLAIN</command> output will display details for
every plan node which was generated by the query planner. However, there
are cases where the executor is able to determine that certain nodes are
- not required; currently, the only node types to support this are the
- <literal>Append</literal> and <literal>MergeAppend</literal> nodes. These
- node types have the ability to discard subnodes which they are able to
- determine won't contain any records required by the query. It is possible
+ not required; currently, the only node types to support this are
+ <literal>Append</literal> and <literal>MergeAppend</literal>, which
+ are able to discard subnodes when it's deduced that
+ they will not contain any records required by the query. It is possible
to determine that nodes have been removed in this way by the presence of a
"Subplans Removed" property in the <command>EXPLAIN</command> output.
</para>
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index e360728..679e51a 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -219,7 +219,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<para>
<literal>SET NOT NULL</literal> may only be applied to a column
- providing none of the records in the table contain a
+ provided none of the records in the table contain a
<literal>NULL</literal> value for the column. Ordinarily this is
checked during the <literal>ALTER TABLE</literal> by scanning the
entire table; however, if a valid <literal>CHECK</literal> constraint is
@@ -642,7 +642,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
When applied to a partitioned table, nothing is moved, but any
partitions created afterwards with
<command>CREATE TABLE PARTITION OF</command> will use that tablespace,
- unless the <literal>TABLESPACE</literal> clause is used to override it.
+ unless overridden by its <literal>TABLESPACE</literal> clause.
</para>
<para>
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index d9d95b2..14a557a 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -181,8 +181,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
</para>
<para>
- Currently, the B-tree and the GiST index access methods supports this
- feature. In B-tree and the GiST indexes, the values of columns listed
+ Currently, only the B-tree and GiST index access methods support this
+ feature. In B-tree and GiST indexes, the values of columns listed
in the <literal>INCLUDE</literal> clause are included in leaf tuples
which correspond to heap tuples, but are not included in upper-level
index entries used for tree navigation.
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml
index 53a64ee..cf77552 100644
--- a/doc/src/sgml/ref/pg_rewind.sgml
+++ b/doc/src/sgml/ref/pg_rewind.sgml
@@ -106,15 +106,14 @@ PostgreSQL documentation
</para>
<para>
- <application>pg_rewind</application> will fail immediately if it finds
- files it cannot write directly to. This can happen for example when
- the source and the target server use the same file mapping for read-only
- SSL keys and certificates. If such files are present on the target server
+ <application>pg_rewind</application> will fail immediately if it experiences
+ a write error. This can happen for example when
+ the source and target server use the same file mapping for read-only
+ SSL keys and certificates. If such files are present on the target server,
it is recommended to remove them before running
- <application>pg_rewind</application>. After doing the rewind, some of
+ <application>pg_rewind</application>. After performing the rewind, some of
those files may have been copied from the source, in which case it may
- be necessary to remove the data copied and restore back the set of links
- used before the rewind.
+ be necessary to remove them and restore the files removed beforehand.
</para>
</warning>
</refsect1>
@@ -183,7 +182,7 @@ PostgreSQL documentation
<command>pg_rewind</command> to return without waiting, which is
faster, but means that a subsequent operating system crash can leave
the synchronized data folder corrupt. Generally, this option is
- useful for testing but should not be used when creating a production
+ useful for testing but should not be used on a production
installation.
</para>
</listitem>
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index f11d366..b4c7629 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -474,10 +474,8 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
</listitem>
</itemizedlist>
- Because in "prepared" mode <application>pgbench</application> reuses
- the parse analysis result for the second and subsequent query
- iteration, <application>pgbench</application> runs faster in the
- prepared mode than in other modes.
+ <application>pgbench</application> runs faster in prepared mode because the
+ parse analysis happens only during the first query.
</para>
<para>
The default is simple query protocol. (See <xref linkend="protocol"/>
diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml
index e05a76c..a5a6eba 100644
--- a/doc/src/sgml/ref/reindex.sgml
+++ b/doc/src/sgml/ref/reindex.sgml
@@ -241,7 +241,7 @@ REINDEX [ ( VERBOSE ) ] { INDEX | TABLE | SCHEMA | DATABASE | SYSTEM } [ CONCURR
<para>
Reindexing a single index or table requires being the owner of that
index or table. Reindexing a schema or database requires being the
- owner of that schema or database. Note that is therefore sometimes
+ owner of that schema or database. Note specifically that it's
possible for non-superusers to rebuild indexes of tables owned by
other users. However, as a special exception, when
<command>REINDEX DATABASE</command>, <command>REINDEX SCHEMA</command>
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 419f753..79f5322 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -103,7 +103,7 @@ less -x4
message text. In addition there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
- <function>ereport</function> itself is just a shell function, that exists
+ <function>ereport</function> itself is just a shell function that exists
mainly for the syntactic convenience of making message generation
look like a function call in the C source code. The only parameter
accepted directly by <function>ereport</function> is the severity level.
@@ -359,7 +359,7 @@ ereport(ERROR,
specify suppression of the <literal>CONTEXT:</literal> portion of a message in
the postmaster log. This should only be used for verbose debugging
messages where the repeated inclusion of context would bloat the log
- volume too much.
+ too much.
</para>
</listitem>
</itemizedlist>
@@ -452,8 +452,8 @@ Hint: the addendum
enough for error messages. Detail and hint messages can be relegated to a
verbose mode, or perhaps a pop-up error-details window. Also, details and
hints would normally be suppressed from the server log to save
- space. Reference to implementation details is best avoided since users
- aren't expected to know the details.
+ space. References to implementation details are best avoided since users
+ aren't expected to know them.
</para>
</simplesect>
@@ -504,14 +504,14 @@ Hint: the addendum
<title>Use of Quotes</title>
<para>
- Use quotes always to delimit file names, user-supplied identifiers, and
+ Always use quotes to delimit file names, user-supplied identifiers, and
other variables that might contain words. Do not use them to mark up
variables that will not contain words (for example, operator names).
</para>
<para>
There are functions in the backend that will double-quote their own output
- at need (for example, <function>format_type_be()</function>). Do not put
+ as needed (for example, <function>format_type_be()</function>). Do not put
additional quotes around the output of such functions.
</para>
@@ -872,7 +872,7 @@ BETTER: unrecognized node type: 42
from a few platform dependent pieces.
</para>
<para>
- A few features included in the C99 standard are, at this time, not be
+ A few features included in the C99 standard are, at this time, not
permitted to be used in core <productname>PostgreSQL</productname>
code. This currently includes variable length arrays, intermingled
declarations and code, <literal>//</literal> comments, universal
@@ -880,16 +880,16 @@ BETTER: unrecognized node type: 42
practices.
</para>
<para>
- Features from later revision of the C standard or compiler specific
+ Features from later revisions of the C standard or compiler specific
features can be used, if a fallback is provided.
</para>
<para>
- For example <literal>_StaticAssert()</literal> and
+ For example, <literal>_StaticAssert()</literal> and
<literal>__builtin_constant_p</literal> are currently used, even though
- they are from newer revisions of the C standard and a
- <productname>GCC</productname> extension respectively. If not available
- we respectively fall back to using a C99 compatible replacement that
- performs the same checks, but emits rather cryptic messages and do not
+ they are from a newer revision of the C standard and a
+ <productname>GCC</productname> extension, respectively. If not available, in the first case,
+ we fall back to using a C99 compatible replacement that
+ performs the same checks, but emits rather cryptic messages; in the second case, we do not
use <literal>__builtin_constant_p</literal>.
</para>
</simplesect>
@@ -897,14 +897,14 @@ BETTER: unrecognized node type: 42
<simplesect>
<title>Function-Like Macros and Inline Functions</title>
<para>
- Both, macros with arguments and <literal>static inline</literal>
- functions, may be used. The latter are preferable if there are
+ Both macros with arguments and <literal>static inline</literal>
+ functions may be used. The latter are preferable if there are
multiple-evaluation hazards when written as a macro, as e.g. the
case with
<programlisting>
#define Max(x, y) ((x) > (y) ? (x) : (y))
</programlisting>
- or when the macro would be very long. In other cases it's only
+ or when the macro would be very long. In other cases, it's only
possible to use macros, or at least easier. For example because
expressions of various types need to be passed to the macro.
</para>
@@ -936,19 +936,19 @@ MemoryContextSwitchTo(MemoryContext context)
<simplesect>
<title>Writing Signal Handlers</title>
<para>
- To be suitable to run inside a signal handler code has to be
+ To be suitable to run inside a signal handler, code has to be
written very carefully. The fundamental problem is that, unless
blocked, a signal handler can interrupt code at any time. If code
- inside the signal handler uses the same state as code outside
- chaos may ensue. As an example consider what happens if a signal
+ inside the signal handler uses the same state as code outside,
+ chaos may ensue. As an example, consider what happens if a signal
handler tries to acquire a lock that's already held in the
interrupted code.
</para>
<para>
- Barring special arrangements code in signal handlers may only
+ Barring special arrangements, code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
- functions in <command>postgres</command> are also deemed signal safe, importantly
+ functions in <command>postgres</command> are also deemed signal safe; specifically,
<function>SetLatch()</function>.
</para>
<para>
@@ -969,9 +969,9 @@ handle_sighup(SIGNAL_ARGS)
}
</programlisting>
<varname>errno</varname> is saved and restored because
- <function>SetLatch()</function> might change it. If that were not done
- interrupted code that's currently inspecting <varname>errno</varname> might see the wrong
- value.
+ <function>SetLatch()</function> might change it. If that were not done,
+ code interrupted by a signal might see the wrong value of
+ <varname>errno</varname>.
</para>
</simplesect>
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 3403269..5c17b10 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3364,11 +3364,11 @@ if (!ptr)
</indexterm>
<para>
- By default, a function is just a <quote>black box</quote> that the
- database system knows very little about the behavior of. However,
- that means that queries using the function may be executed much less
+ By default, a function is a <quote>black box</quote> that the
+ database system knows very little about, which
+ means queries calling the function may be executed less
efficiently than they could be. It is possible to supply additional
- knowledge that helps the planner optimize function calls.
+ information that helps the planner optimize function calls.
</para>
<para>
@@ -3381,7 +3381,7 @@ if (!ptr)
The parallel safety property (<literal>PARALLEL
UNSAFE</literal>, <literal>PARALLEL RESTRICTED</literal>, or
<literal>PARALLEL SAFE</literal>) must also be specified if you hope
- to use the function in parallelized queries.
+ queries calling the function to use parallel query.
It can also be useful to specify the function's estimated execution
cost, and/or the number of rows a set-returning function is estimated
to return. However, the declarative way of specifying those two
@@ -3393,7 +3393,7 @@ if (!ptr)
It is also possible to attach a <firstterm>planner support
function</firstterm> to a SQL-callable function (called
its <firstterm>target function</firstterm>), and thereby provide
- knowledge about the target function that is too complex to be
+ information about the target function that is too complex to be
represented declaratively. Planner support functions have to be
written in C (although their target functions might not be), so this is
an advanced feature that relatively few people will use.
--
2.1.4
v1-0003-JIT-typos.patchtext/x-diff; charset=us-asciiDownload
From 888d86c352dc0fe9efc7f16ec0dd405d4e4f61f3 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 17:24:35 -0500
Subject: [PATCH v1 3/8] JIT typos..
..which I sent to Andres some time ago and which I noticed were never applied
(nor rejected).
https://www.postgresql.org/message-id/20181127184133.GM10913%40telsasoft.com
---
src/backend/jit/llvm/llvmjit_deform.c | 22 +++++++++++-----------
src/backend/jit/llvm/llvmjit_inline.cpp | 2 +-
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/backend/jit/llvm/llvmjit_deform.c b/src/backend/jit/llvm/llvmjit_deform.c
index 94b4635..e4a430f 100644
--- a/src/backend/jit/llvm/llvmjit_deform.c
+++ b/src/backend/jit/llvm/llvmjit_deform.c
@@ -103,7 +103,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
funcname = llvm_expand_funcname(context, "deform");
/*
- * Check which columns do have to exist, so we don't have to check the
+ * Check which columns have to exist, so we don't have to check the
* rows natts unnecessarily.
*/
for (attnum = 0; attnum < desc->natts; attnum++)
@@ -298,7 +298,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
}
/*
- * Check if's guaranteed the all the desired attributes are available in
+ * Check if it's guaranteed that all the desired attributes are available in
* tuple. If so, we can start deforming. If not, need to make sure to
* fetch the missing columns.
*/
@@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
/*
* If this is the first attribute, slot->tts_nvalid was 0. Therefore
- * reset offset to 0 to, it be from a previous execution.
+ * also reset offset to 0, it may be from a previous execution.
*/
if (attnum == 0)
{
@@ -413,7 +413,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
/*
* Check for nulls if necessary. No need to take missing attributes
- * into account, because in case they're present the heaptuple's natts
+ * into account, because if they're present, the heaptuple's natts
* would have indicated that a slot_getmissingattrs() is needed.
*/
if (!att->attnotnull)
@@ -500,13 +500,13 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
(known_alignment < 0 || known_alignment != TYPEALIGN(alignto, known_alignment)))
{
/*
- * When accessing a varlena field we have to "peek" to see if we
+ * When accessing a varlena field, we have to "peek" to see if we
* are looking at a pad byte or the first byte of a 1-byte-header
* datum. A zero byte must be either a pad byte, or the first
- * byte of a correctly aligned 4-byte length word; in either case
+ * byte of a correctly aligned 4-byte length word; in either case,
* we can align safely. A non-zero byte must be either a 1-byte
* length word, or the first byte of a correctly aligned 4-byte
- * length word; in either case we need not align.
+ * length word; in either case, we need not align.
*/
if (att->attlen == -1)
{
@@ -600,8 +600,8 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
else if (att->attnotnull && attguaranteedalign && known_alignment >= 0)
{
/*
- * If the offset to the column was previously known a NOT NULL &
- * fixed width column guarantees that alignment is just the
+ * If the offset to the column was previously known, a NOT NULL &
+ * fixed-width column guarantees that alignment is just the
* previous alignment plus column width.
*/
Assert(att->attlen > 0);
@@ -642,8 +642,8 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
LLVMBuildGEP(b, v_tts_nulls, &l_attno, 1, ""));
/*
- * Store datum. For byval datums copy the value, extend to Datum's
- * width, and store. For byref types, store pointer to data.
+ * Store datum. For byval datums: copy the value, extend to Datum's
+ * width, and store. For byref types: store pointer to data.
*/
if (att->attbyval)
{
diff --git a/src/backend/jit/llvm/llvmjit_inline.cpp b/src/backend/jit/llvm/llvmjit_inline.cpp
index 96fc68a..07b5fc7 100644
--- a/src/backend/jit/llvm/llvmjit_inline.cpp
+++ b/src/backend/jit/llvm/llvmjit_inline.cpp
@@ -9,7 +9,7 @@
* for an external function is found - not guaranteed! - the index will then
* be used to judge their instruction count / inline worthiness. After doing
* so for all external functions, all the referenced functions (and
- * prerequisites) will be imorted.
+ * prerequisites) will be imported.
*
* Copyright (c) 2016-2019, PostgreSQL Global Development Group
*
--
2.1.4
v1-0004-Add-comma-for-readability.patchtext/x-diff; charset=us-asciiDownload
From 825ad8ebf9bdd1eab07bf5bedde35f349a75687e Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:37:35 -0500
Subject: [PATCH v1 4/8] Add comma for readability
---
doc/src/sgml/bki.sgml | 2 +-
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/indices.sgml | 2 +-
doc/src/sgml/installation.sgml | 2 +-
doc/src/sgml/ref/create_table.sgml | 2 +-
doc/src/sgml/ref/create_table_as.sgml | 2 +-
doc/src/sgml/ref/pgupgrade.sgml | 4 ++--
doc/src/sgml/ref/psql-ref.sgml | 2 +-
doc/src/sgml/sources.sgml | 4 ++--
9 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index aa3d6f8..e27fa76 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -403,7 +403,7 @@
8000—9999. This minimizes the risk of OID collisions with other
patches being developed concurrently. To keep the 8000—9999
range free for development purposes, after a patch has been committed
- to the master git repository its OIDs should be renumbered into
+ to the master git repository, its OIDs should be renumbered into
available space below that range. Typically, this will be done
near the end of each development cycle, moving all OIDs consumed by
patches committed in that cycle at the same time. The script
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 5f6873d..72f03c0 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3433,7 +3433,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
reached. The default is <literal>pause</literal>, which means recovery will
be paused. <literal>promote</literal> means the recovery process will finish
and the server will start to accept connections.
- Finally <literal>shutdown</literal> will stop the server after reaching the
+ Finally, <literal>shutdown</literal> will stop the server after reaching the
recovery target.
</para>
<para>
@@ -4128,7 +4128,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
</para>
<para>
The delay occurs once the database in recovery has reached a consistent
- state, until the standby is promoted or triggered. After that the standby
+ state, until the standby is promoted or triggered. After that, the standby
will end recovery without further waiting.
</para>
<para>
diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml
index 3493f48..0127ae9 100644
--- a/doc/src/sgml/indices.sgml
+++ b/doc/src/sgml/indices.sgml
@@ -1079,7 +1079,7 @@ SELECT x FROM tab WHERE x = 'key' AND z < 42;
scan. Even in the successful case, this approach trades visibility map
accesses for heap accesses; but since the visibility map is four orders
of magnitude smaller than the heap it describes, far less physical I/O is
- needed to access it. In most situations the visibility map remains
+ needed to access it. In most situations, the visibility map remains
cached in memory all the time.
</para>
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 4493862..847e028 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -2527,7 +2527,7 @@ xcodebuild -version -sdk macosx Path
</programlisting>
Note that building an extension using a different sysroot version than
was used to build the core server is not really recommended; in the
- worst case it could result in hard-to-debug ABI inconsistencies.
+ worst case, it could result in hard-to-debug ABI inconsistencies.
</para>
<para>
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 0172fa3..10fa7d4 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1177,7 +1177,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
This clause specifies optional storage parameters for a table or index;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should not contain OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml
index 679e8f5..ececc4a 100644
--- a/doc/src/sgml/ref/create_table_as.sgml
+++ b/doc/src/sgml/ref/create_table_as.sgml
@@ -127,7 +127,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
This clause specifies optional storage parameters for the new table;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should contain no OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml
index c896882..7fee896 100644
--- a/doc/src/sgml/ref/pgupgrade.sgml
+++ b/doc/src/sgml/ref/pgupgrade.sgml
@@ -726,7 +726,7 @@ psql --username=postgres --file=script.sql postgres
<application>pg_upgrade</application> launches short-lived postmasters in
the old and new data directories. Temporary Unix socket files for
communication with these postmasters are, by default, made in the current
- working directory. In some situations the path name for the current
+ working directory. In some situations, the path name for the current
directory might be too long to be a valid socket name. In that case you
can use the <option>-s</option> option to put the socket files in some
directory with a shorter path name. For security, be sure that that
@@ -793,7 +793,7 @@ psql --username=postgres --file=script.sql postgres
</para>
<para>
- In <productname>PostgreSQL</productname> 12 and later small tables by
+ In <productname>PostgreSQL</productname> 12 and later, small tables by
default don't have a free space map, as a space optimization. If you are
upgrading a pre-12 cluster, the free space maps of small tables will
likewise not be transferred to the new cluster.
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 1b5d82e..2f86885 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1053,7 +1053,7 @@ testdb=>
These operations are not as efficient as the <acronym>SQL</acronym>
<command>COPY</command> command with a file or program data source or
destination, because all data must pass through the client/server
- connection. For large amounts of data the <acronym>SQL</acronym>
+ connection. For large amounts of data, the <acronym>SQL</acronym>
command might be preferable.
</para>
</tip>
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 79f5322..520bbae 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -100,7 +100,7 @@ less -x4
<para>
There are two required elements for every message: a severity level
(ranging from <literal>DEBUG</literal> to <literal>PANIC</literal>) and a primary
- message text. In addition there are optional elements, the most
+ message text. In addition, there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
<function>ereport</function> itself is just a shell function that exists
@@ -473,7 +473,7 @@ Hint: the addendum
<para>
Rationale: Messages are not necessarily displayed on terminal-type
- displays. In GUI displays or browsers these formatting instructions are
+ displays. In GUI displays or browsers, these formatting instructions are
at best ignored.
</para>
--
2.1.4
v1-0005-Consistent-language-must-be-superuser.patchtext/x-diff; charset=us-asciiDownload
From 2a5c79d684f7b0ff61014d5df23779acdf5b9f02 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:40:49 -0500
Subject: [PATCH v1 5/8] Consistent language: "must be superuser"
---
src/backend/storage/ipc/signalfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/storage/ipc/signalfuncs.c b/src/backend/storage/ipc/signalfuncs.c
index 4769b1b..ab26328 100644
--- a/src/backend/storage/ipc/signalfuncs.c
+++ b/src/backend/storage/ipc/signalfuncs.c
@@ -115,7 +115,7 @@ pg_cancel_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to cancel superuser query"))));
+ (errmsg("must be superuser to cancel superuser query"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
@@ -139,12 +139,12 @@ pg_terminate_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to terminate superuser process"))));
+ (errmsg("must be superuser to terminate superuser process"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a member of the role whose process is being terminated or member of pg_signal_backend"))));
+ (errmsg("must be member of role whose process is being terminated or member of pg_signal_backend"))));
PG_RETURN_BOOL(r == SIGNAL_BACKEND_SUCCESS);
}
--
2.1.4
v1-0006-Consistent-spelling-timestamp.patchtext/x-diff; charset=us-asciiDownload
From 991664fb385ee824113d08e6f85f7d1bcca8301e Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:52:22 -0500
Subject: [PATCH v1 6/8] Consistent spelling: "timestamp"
---
doc/src/sgml/config.sgml | 14 ++++++-------
doc/src/sgml/datatype.sgml | 6 +++---
doc/src/sgml/ecpg.sgml | 4 ++--
doc/src/sgml/func.sgml | 30 +++++++++++++--------------
doc/src/sgml/logicaldecoding.sgml | 4 ++--
doc/src/sgml/plpgsql.sgml | 2 +-
doc/src/sgml/ref/pgbench.sgml | 6 +++---
doc/src/sgml/replication-origins.sgml | 2 +-
doc/src/sgml/trigger.sgml | 2 +-
doc/src/sgml/uuid-ossp.sgml | 2 +-
src/backend/utils/misc/guc.c | 4 ++--
src/backend/utils/misc/postgresql.conf.sample | 2 +-
src/include/catalog/pg_control.h | 4 ++--
src/interfaces/ecpg/pgtypeslib/timestamp.c | 4 ++--
14 files changed, 43 insertions(+), 43 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 72f03c0..3a58e4d 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3319,7 +3319,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
</term>
<listitem>
<para>
- This parameter specifies the time stamp up to which recovery
+ This parameter specifies the timestamp up to which recovery
will proceed.
The precise stopping point is also influenced by
<xref linkend="guc-recovery-target-inclusive"/>.
@@ -4111,7 +4111,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
<para>
It is possible that the replication delay between servers exceeds the
value of this parameter, in which case no delay is added.
- Note that the delay is calculated between the WAL time stamp as written
+ Note that the delay is calculated between the WAL timestamp as written
on master and the current time on the standby. Delays in transfer
because of network lag or cascading replication configurations
may reduce the actual wait time significantly. If the system
@@ -6162,7 +6162,7 @@ local0.* /var/log/postgresql
readability in log files.
This parameter can only be set in the <filename>postgresql.conf</filename>
file or on the server command line. The default is
- <literal>'%m [%p] '</literal> which logs a time stamp and the process ID.
+ <literal>'%m [%p] '</literal> which logs a timestamp and the process ID.
<informaltable>
<tgroup cols="3">
@@ -6241,7 +6241,7 @@ local0.* /var/log/postgresql
</row>
<row>
<entry><literal>%s</literal></entry>
- <entry>Process start time stamp</entry>
+ <entry>Process start timestamp</entry>
<entry>no</entry>
</row>
<row>
@@ -6296,7 +6296,7 @@ FROM pg_stat_activity;
<tip>
<para>
<application>Syslog</application> produces its own
- time stamp and process ID information, so you probably do not want to
+ timestamp and process ID information, so you probably do not want to
include those escapes if you are logging to <application>syslog</application>.
</para>
</tip>
@@ -6445,7 +6445,7 @@ log_line_prefix = '%m [%p] %q%u@%d/%a '
This option emits log lines in comma-separated-values
(<acronym>CSV</acronym>) format,
with these columns:
- time stamp with milliseconds,
+ timestamp with milliseconds,
user name,
database name,
process ID,
@@ -7854,7 +7854,7 @@ SET XML OPTION { DOCUMENT | CONTENT };
</term>
<listitem>
<para>
- Sets the time zone for displaying and interpreting time stamps.
+ Sets the time zone for displaying and interpreting timestamps.
The built-in default is <literal>GMT</literal>, but that is typically
overridden in <filename>postgresql.conf</filename>; <application>initdb</application>
will install a setting there corresponding to its system environment.
diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml
index 52c28e7..10ae238 100644
--- a/doc/src/sgml/datatype.sgml
+++ b/doc/src/sgml/datatype.sgml
@@ -2031,7 +2031,7 @@ MINUTE TO SECOND
</indexterm>
<para>
- Valid input for the time stamp types consists of the concatenation
+ Valid input for the timestamp types consists of the concatenation
of a date and a time, followed by an optional time zone,
followed by an optional <literal>AD</literal> or <literal>BC</literal>.
(Alternatively, <literal>AD</literal>/<literal>BC</literal> can appear
@@ -2159,12 +2159,12 @@ January 8 04:05:06 1999 PST
<row>
<entry><literal>infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>later than all other time stamps</entry>
+ <entry>later than all other timestamps</entry>
</row>
<row>
<entry><literal>-infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>earlier than all other time stamps</entry>
+ <entry>earlier than all other timestamps</entry>
</row>
<row>
<entry><literal>now</literal></entry>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index 798aae4..c2d29c9 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -1030,7 +1030,7 @@ struct varchar_var { int len; char arr[180]; } var;
the pgtypes library. The pgtypes library, described in detail
in <xref linkend="ecpg-pgtypes"/> contains basic functions to deal
with those types, such that you do not need to send a query to
- the SQL server just for adding an interval to a time stamp for
+ the SQL server just for adding an interval to a timestamp for
example.
</para>
@@ -3622,7 +3622,7 @@ void PGTYPESdecimal_free(decimal *var);
<term><literal>PGTYPESInvalidTimestamp</literal></term>
<listitem>
<para>
- A value of type timestamp representing an invalid time stamp. This is
+ A value of type timestamp representing an invalid timestamp. This is
returned by the function <function>PGTYPEStimestamp_from_asc</function> on
parse error.
Note that due to the internal representation of the <type>timestamp</type> data type,
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index d249011..df47ec2 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -5964,7 +5964,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_char(<type>timestamp</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>text</type></entry>
- <entry>convert time stamp to string</entry>
+ <entry>convert timestamp to string</entry>
<entry><literal>to_char(current_timestamp, 'HH12:MI:SS')</literal></entry>
</row>
<row>
@@ -6022,7 +6022,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_timestamp(<type>text</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>convert string to time stamp</entry>
+ <entry>convert string to timestamp</entry>
<entry><literal>to_timestamp('05 Dec 2000', 'DD Mon YYYY')</literal></entry>
</row>
</tbody>
@@ -7357,7 +7357,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<row>
<entry><literal><function>isfinite(<type>timestamp</type>)</function></literal></entry>
<entry><type>boolean</type></entry>
- <entry>Test for finite time stamp (not +/-infinity)</entry>
+ <entry>Test for finite timestamp (not +/-infinity)</entry>
<entry><literal>isfinite(timestamp '2001-02-16 21:28:30')</literal></entry>
<entry><literal>true</literal></entry>
</row>
@@ -7647,8 +7647,8 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
</synopsis>
This expression yields true when two time periods (defined by their
endpoints) overlap, false when they do not overlap. The endpoints
- can be specified as pairs of dates, times, or time stamps; or as
- a date, time, or time stamp followed by an interval. When a pair
+ can be specified as pairs of dates, times, or timestamps; or as
+ a date, time, or timestamp followed by an interval. When a pair
of values is provided, either the start or the end can be written
first; <literal>OVERLAPS</literal> automatically takes the earlier value
of the pair as the start. Each time period is considered to
@@ -7881,7 +7881,7 @@ SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');
</screen>
<para>
- You can convert an epoch value back to a time stamp
+ You can convert an epoch value back to a timestamp
with <function>to_timestamp</function>:
</para>
<screen>
@@ -8288,7 +8288,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<para>
The <literal>AT TIME ZONE</literal> converts time
stamp <emphasis>without time zone</emphasis> to/from
- time stamp <emphasis>with time zone</emphasis>, and
+ timestamp <emphasis>with time zone</emphasis>, and
<emphasis>time</emphasis> values to different time zones. <xref
linkend="functions-datetime-zoneconvert-table"/> shows its variants.
</para>
@@ -8310,7 +8310,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp without time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Treat given time stamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
+ <entry>Treat given timestamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
</row>
<row>
@@ -8318,7 +8318,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp with time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp without time zone</type></entry>
- <entry>Convert given time stamp <emphasis>with time zone</emphasis> to the new time
+ <entry>Convert given timestamp <emphasis>with time zone</emphasis> to the new time
zone, with no time zone designation</entry>
</row>
@@ -8355,7 +8355,7 @@ SELECT TIMESTAMP '2001-02-16 20:38:40-05' AT TIME ZONE 'Asia/Tokyo' AT TIME ZONE
</screen>
The first example adds a time zone to a value that lacks it, and
displays the value using the current <varname>TimeZone</varname>
- setting. The second example shifts the time stamp with time zone value
+ setting. The second example shifts the timestamp with time zone value
to the specified time zone, and returns the value without a time zone.
This allows storage and display of values different from the current
<varname>TimeZone</varname> setting. The third example converts
@@ -8448,7 +8448,7 @@ SELECT LOCALTIMESTAMP;
the intent is to allow a single transaction to have a consistent
notion of the <quote>current</quote> time, so that multiple
modifications within the same transaction bear the same
- time stamp.
+ timestamp.
</para>
<note>
@@ -20099,7 +20099,7 @@ postgres=# SELECT * FROM pg_walfile_name_offset(pg_stop_backup());
<literal><function>pg_last_xact_replay_timestamp()</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Get time stamp of last transaction replayed during recovery.
+ <entry>Get timestamp of last transaction replayed during recovery.
This is the time at which the commit or abort WAL record for that
transaction was generated on the primary.
If no transactions have been replayed during recovery, this function
@@ -21516,9 +21516,9 @@ SELECT convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');
</indexterm>
<para>
<function>pg_stat_file</function> returns a record containing the file
- size, last accessed time stamp, last modified time stamp,
- last file status change time stamp (Unix platforms only),
- file creation time stamp (Windows only), and a <type>boolean</type>
+ size, last accessed timestamp, last modified timestamp,
+ last file status change timestamp (Unix platforms only),
+ file creation timestamp (Windows only), and a <type>boolean</type>
indicating if it is a directory. Typical usages include:
<programlisting>
SELECT * FROM pg_stat_file('filename');
diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml
index 8db9686..01eacf7 100644
--- a/doc/src/sgml/logicaldecoding.sgml
+++ b/doc/src/sgml/logicaldecoding.sgml
@@ -536,7 +536,7 @@ typedef void (*LogicalDecodeBeginCB) (struct LogicalDecodingContext *ctx,
ReorderBufferTXN *txn);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID.
</para>
</sect3>
@@ -660,7 +660,7 @@ typedef void (*LogicalDecodeMessageCB) (struct LogicalDecodingContext *ctx,
const char *message);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID. Note however that it can be NULL when the message is
non-transactional and the XID was not assigned yet in the transaction
which logged the message. The <parameter>lsn</parameter> has WAL
diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml
index 50f1884..27dc1c7 100644
--- a/doc/src/sgml/plpgsql.sgml
+++ b/doc/src/sgml/plpgsql.sgml
@@ -4855,7 +4855,7 @@ $$ LANGUAGE plpgsql;
<application>PL/pgSQL</application> interpreter casts this
string to the <type>timestamp</type> type by calling the
<function>text_out</function> and <function>timestamp_in</function>
- functions for the conversion. So, the computed time stamp is updated
+ functions for the conversion. So, the computed timestamp is updated
on each execution as the programmer expects. Even though this
happens to work as expected, it's not terribly efficient, so
use of the <literal>now()</literal> function would still be a better idea.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index b4c7629..dbeec28 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -1665,9 +1665,9 @@ END;
<replaceable>script_no</replaceable> identifies which script file was used (useful when
multiple scripts were specified with <option>-f</option> or <option>-b</option>),
and <replaceable>time_epoch</replaceable>/<replaceable>time_us</replaceable> are a
- Unix-epoch time stamp and an offset
+ Unix-epoch timestamp and an offset
in microseconds (suitable for creating an ISO 8601
- time stamp with fractional seconds) showing when
+ timestamp with fractional seconds) showing when
the transaction completed.
The <replaceable>schedule_lag</replaceable> field is the difference between the
transaction's scheduled start time, and the time it actually started, in
@@ -1723,7 +1723,7 @@ END;
where
<replaceable>interval_start</replaceable> is the start of the interval (as a Unix
- epoch time stamp),
+ epoch timestamp),
<replaceable>num_transactions</replaceable> is the number of transactions
within the interval,
<replaceable>sum_latency</replaceable> is the sum of the transaction
diff --git a/doc/src/sgml/replication-origins.sgml b/doc/src/sgml/replication-origins.sgml
index a03ce76..aaa3705 100644
--- a/doc/src/sgml/replication-origins.sgml
+++ b/doc/src/sgml/replication-origins.sgml
@@ -61,7 +61,7 @@
marked as replaying from a remote node (using the
<link linkend="pg-replication-origin-session-setup"><function>pg_replication_origin_session_setup()</function></link>
function). Additionally the <acronym>LSN</acronym> and commit
- time stamp of every source transaction can be configured on a per
+ timestamp of every source transaction can be configured on a per
transaction basis using
<link linkend="pg-replication-origin-xact-setup"><function>pg_replication_origin_xact_setup()</function></link>.
If that's done replication progress will persist in a crash safe
diff --git a/doc/src/sgml/trigger.sgml b/doc/src/sgml/trigger.sgml
index 67e1861..1bd69f2 100644
--- a/doc/src/sgml/trigger.sgml
+++ b/doc/src/sgml/trigger.sgml
@@ -335,7 +335,7 @@
requirements to call the same function. As an example, there
could be a generalized trigger function that takes as its
arguments two column names and puts the current user in one and
- the current time stamp in the other. Properly written, this
+ the current timestamp in the other. Properly written, this
trigger function would be independent of the specific table it is
triggering on. So the same function could be used for
<command>INSERT</command> events on any table with suitable
diff --git a/doc/src/sgml/uuid-ossp.sgml b/doc/src/sgml/uuid-ossp.sgml
index b3b816c..db8871b 100644
--- a/doc/src/sgml/uuid-ossp.sgml
+++ b/doc/src/sgml/uuid-ossp.sgml
@@ -41,7 +41,7 @@
<entry>
<para>
This function generates a version 1 UUID. This involves the MAC
- address of the computer and a time stamp. Note that UUIDs of this
+ address of the computer and a timestamp. Note that UUIDs of this
kind reveal the identity of the computer that created the identifier
and the time at which it did so, which might make it unsuitable for
certain security-sensitive applications.
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 415cd78..1c18969 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3445,7 +3445,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- gettext_noop("Sets the time stamp up to which recovery will proceed."),
+ gettext_noop("Sets the timestamp up to which recovery will proceed."),
NULL
},
&recovery_target_time_string,
@@ -3827,7 +3827,7 @@ static struct config_string ConfigureNamesString[] =
{
{"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE,
- gettext_noop("Sets the time zone for displaying and interpreting time stamps."),
+ gettext_noop("Sets the time zone for displaying and interpreting timestamps."),
NULL,
GUC_REPORT
},
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index 684f5e7..d6f209f 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -255,7 +255,7 @@
# (change requires restart)
#recovery_target_name = '' # the named restore point to which recovery will proceed
# (change requires restart)
-#recovery_target_time = '' # the time stamp up to which recovery will proceed
+#recovery_target_time = '' # the timestamp up to which recovery will proceed
# (change requires restart)
#recovery_target_xid = '' # the transaction ID up to which recovery will proceed
# (change requires restart)
diff --git a/src/include/catalog/pg_control.h b/src/include/catalog/pg_control.h
index ff98d9e..06fbe76 100644
--- a/src/include/catalog/pg_control.h
+++ b/src/include/catalog/pg_control.h
@@ -48,7 +48,7 @@ typedef struct CheckPoint
Oid oldestXidDB; /* database with minimum datfrozenxid */
MultiXactId oldestMulti; /* cluster-wide minimum datminmxid */
Oid oldestMultiDB; /* database with minimum datminmxid */
- pg_time_t time; /* time stamp of checkpoint */
+ pg_time_t time; /* timestamp of checkpoint */
TransactionId oldestCommitTsXid; /* oldest Xid with valid commit
* timestamp */
TransactionId newestCommitTsXid; /* newest Xid with valid commit
@@ -125,7 +125,7 @@ typedef struct ControlFileData
* System status data
*/
DBState state; /* see enum above */
- pg_time_t time; /* time stamp of last pg_control update */
+ pg_time_t time; /* timestamp of last pg_control update */
XLogRecPtr checkPoint; /* last check point record ptr */
CheckPoint checkPointCopy; /* copy of last check point record */
diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c
index a7e0fe6..35697e2 100644
--- a/src/interfaces/ecpg/pgtypeslib/timestamp.c
+++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c
@@ -854,7 +854,7 @@ PGTYPEStimestamp_defmt_asc(const char *str, const char *fmt, timestamp * d)
}
/*
-* add an interval to a time stamp
+* add an interval to a timestamp
*
* *tout = tin + span
*
@@ -913,7 +913,7 @@ PGTYPEStimestamp_add_interval(timestamp * tin, interval * span, timestamp * tout
/*
-* subtract an interval from a time stamp
+* subtract an interval from a timestamp
*
* *tout = tin - span
*
--
2.1.4
Find attached updated patches for v12 docs.
Note that Alvaro applied an early patch for log_statement_sample_rate, but
unfortunately I hadn't sent a v2 patch with additional change from myon, so
there's one remaining hunk included here.
If needed I can split up differently for review, or resend a couple on separate
threads, or resend inline.
Patches are currently optimized for review, but maybe should be squished into
one and/or reindented before merging.
Justin
Attachments:
v2-0005-Consistent-language-must-be-superuser.patchtext/x-diff; charset=us-asciiDownload
From 19de2fe69d90c1ac6fa43a2ab537bb70c4f08958 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:40:49 -0500
Subject: [PATCH v2 05/12] Consistent language: "must be superuser"
---
src/backend/storage/ipc/signalfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/storage/ipc/signalfuncs.c b/src/backend/storage/ipc/signalfuncs.c
index 4769b1b..ab26328 100644
--- a/src/backend/storage/ipc/signalfuncs.c
+++ b/src/backend/storage/ipc/signalfuncs.c
@@ -115,7 +115,7 @@ pg_cancel_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to cancel superuser query"))));
+ (errmsg("must be superuser to cancel superuser query"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
@@ -139,12 +139,12 @@ pg_terminate_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to terminate superuser process"))));
+ (errmsg("must be superuser to terminate superuser process"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a member of the role whose process is being terminated or member of pg_signal_backend"))));
+ (errmsg("must be member of role whose process is being terminated or member of pg_signal_backend"))));
PG_RETURN_BOOL(r == SIGNAL_BACKEND_SUCCESS);
}
--
2.1.4
v2-0006-Consistent-spelling-timestamp.patchtext/x-diff; charset=us-asciiDownload
From ab72d0f7035867f54a5f57d1e7a26c60e6c3be59 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:52:22 -0500
Subject: [PATCH v2 06/12] Consistent spelling: "timestamp"
---
doc/src/sgml/config.sgml | 14 ++++++-------
doc/src/sgml/datatype.sgml | 6 +++---
doc/src/sgml/ecpg.sgml | 4 ++--
doc/src/sgml/func.sgml | 30 +++++++++++++--------------
doc/src/sgml/logicaldecoding.sgml | 4 ++--
doc/src/sgml/plpgsql.sgml | 2 +-
doc/src/sgml/ref/pgbench.sgml | 6 +++---
doc/src/sgml/replication-origins.sgml | 2 +-
doc/src/sgml/trigger.sgml | 2 +-
doc/src/sgml/uuid-ossp.sgml | 2 +-
src/backend/utils/misc/guc.c | 4 ++--
src/backend/utils/misc/postgresql.conf.sample | 2 +-
src/include/catalog/pg_control.h | 4 ++--
src/interfaces/ecpg/pgtypeslib/timestamp.c | 4 ++--
14 files changed, 43 insertions(+), 43 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index ab83885..4722392 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3344,7 +3344,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
</term>
<listitem>
<para>
- This parameter specifies the time stamp up to which recovery
+ This parameter specifies the timestamp up to which recovery
will proceed.
The precise stopping point is also influenced by
<xref linkend="guc-recovery-target-inclusive"/>.
@@ -4171,7 +4171,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
<para>
It is possible that the replication delay between servers exceeds the
value of this parameter, in which case no delay is added.
- Note that the delay is calculated between the WAL time stamp as written
+ Note that the delay is calculated between the WAL timestamp as written
on master and the current time on the standby. Delays in transfer
because of network lag or cascading replication configurations
may reduce the actual wait time significantly. If the system
@@ -6250,7 +6250,7 @@ local0.* /var/log/postgresql
readability in log files.
This parameter can only be set in the <filename>postgresql.conf</filename>
file or on the server command line. The default is
- <literal>'%m [%p] '</literal> which logs a time stamp and the process ID.
+ <literal>'%m [%p] '</literal> which logs a timestamp and the process ID.
<informaltable>
<tgroup cols="3">
@@ -6329,7 +6329,7 @@ local0.* /var/log/postgresql
</row>
<row>
<entry><literal>%s</literal></entry>
- <entry>Process start time stamp</entry>
+ <entry>Process start timestamp</entry>
<entry>no</entry>
</row>
<row>
@@ -6384,7 +6384,7 @@ FROM pg_stat_activity;
<tip>
<para>
<application>Syslog</application> produces its own
- time stamp and process ID information, so you probably do not want to
+ timestamp and process ID information, so you probably do not want to
include those escapes if you are logging to <application>syslog</application>.
</para>
</tip>
@@ -6533,7 +6533,7 @@ log_line_prefix = '%m [%p] %q%u@%d/%a '
This option emits log lines in comma-separated-values
(<acronym>CSV</acronym>) format,
with these columns:
- time stamp with milliseconds,
+ timestamp with milliseconds,
user name,
database name,
process ID,
@@ -7959,7 +7959,7 @@ SET XML OPTION { DOCUMENT | CONTENT };
</term>
<listitem>
<para>
- Sets the time zone for displaying and interpreting time stamps.
+ Sets the time zone for displaying and interpreting timestamps.
The built-in default is <literal>GMT</literal>, but that is typically
overridden in <filename>postgresql.conf</filename>; <application>initdb</application>
will install a setting there corresponding to its system environment.
diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml
index cced57b..ba7e70c 100644
--- a/doc/src/sgml/datatype.sgml
+++ b/doc/src/sgml/datatype.sgml
@@ -2031,7 +2031,7 @@ MINUTE TO SECOND
</indexterm>
<para>
- Valid input for the time stamp types consists of the concatenation
+ Valid input for the timestamp types consists of the concatenation
of a date and a time, followed by an optional time zone,
followed by an optional <literal>AD</literal> or <literal>BC</literal>.
(Alternatively, <literal>AD</literal>/<literal>BC</literal> can appear
@@ -2159,12 +2159,12 @@ January 8 04:05:06 1999 PST
<row>
<entry><literal>infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>later than all other time stamps</entry>
+ <entry>later than all other timestamps</entry>
</row>
<row>
<entry><literal>-infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>earlier than all other time stamps</entry>
+ <entry>earlier than all other timestamps</entry>
</row>
<row>
<entry><literal>now</literal></entry>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index 798aae4..c2d29c9 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -1030,7 +1030,7 @@ struct varchar_var { int len; char arr[180]; } var;
the pgtypes library. The pgtypes library, described in detail
in <xref linkend="ecpg-pgtypes"/> contains basic functions to deal
with those types, such that you do not need to send a query to
- the SQL server just for adding an interval to a time stamp for
+ the SQL server just for adding an interval to a timestamp for
example.
</para>
@@ -3622,7 +3622,7 @@ void PGTYPESdecimal_free(decimal *var);
<term><literal>PGTYPESInvalidTimestamp</literal></term>
<listitem>
<para>
- A value of type timestamp representing an invalid time stamp. This is
+ A value of type timestamp representing an invalid timestamp. This is
returned by the function <function>PGTYPEStimestamp_from_asc</function> on
parse error.
Note that due to the internal representation of the <type>timestamp</type> data type,
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 5c3724a..defc287 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -5964,7 +5964,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_char(<type>timestamp</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>text</type></entry>
- <entry>convert time stamp to string</entry>
+ <entry>convert timestamp to string</entry>
<entry><literal>to_char(current_timestamp, 'HH12:MI:SS')</literal></entry>
</row>
<row>
@@ -6022,7 +6022,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_timestamp(<type>text</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>convert string to time stamp</entry>
+ <entry>convert string to timestamp</entry>
<entry><literal>to_timestamp('05 Dec 2000', 'DD Mon YYYY')</literal></entry>
</row>
</tbody>
@@ -7357,7 +7357,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<row>
<entry><literal><function>isfinite(<type>timestamp</type>)</function></literal></entry>
<entry><type>boolean</type></entry>
- <entry>Test for finite time stamp (not +/-infinity)</entry>
+ <entry>Test for finite timestamp (not +/-infinity)</entry>
<entry><literal>isfinite(timestamp '2001-02-16 21:28:30')</literal></entry>
<entry><literal>true</literal></entry>
</row>
@@ -7647,8 +7647,8 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
</synopsis>
This expression yields true when two time periods (defined by their
endpoints) overlap, false when they do not overlap. The endpoints
- can be specified as pairs of dates, times, or time stamps; or as
- a date, time, or time stamp followed by an interval. When a pair
+ can be specified as pairs of dates, times, or timestamps; or as
+ a date, time, or timestamp followed by an interval. When a pair
of values is provided, either the start or the end can be written
first; <literal>OVERLAPS</literal> automatically takes the earlier value
of the pair as the start. Each time period is considered to
@@ -7881,7 +7881,7 @@ SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');
</screen>
<para>
- You can convert an epoch value back to a time stamp
+ You can convert an epoch value back to a timestamp
with <function>to_timestamp</function>:
</para>
<screen>
@@ -8288,7 +8288,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<para>
The <literal>AT TIME ZONE</literal> converts time
stamp <emphasis>without time zone</emphasis> to/from
- time stamp <emphasis>with time zone</emphasis>, and
+ timestamp <emphasis>with time zone</emphasis>, and
<emphasis>time</emphasis> values to different time zones. <xref
linkend="functions-datetime-zoneconvert-table"/> shows its variants.
</para>
@@ -8310,7 +8310,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp without time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Treat given time stamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
+ <entry>Treat given timestamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
</row>
<row>
@@ -8318,7 +8318,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp with time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp without time zone</type></entry>
- <entry>Convert given time stamp <emphasis>with time zone</emphasis> to the new time
+ <entry>Convert given timestamp <emphasis>with time zone</emphasis> to the new time
zone, with no time zone designation</entry>
</row>
@@ -8355,7 +8355,7 @@ SELECT TIMESTAMP '2001-02-16 20:38:40-05' AT TIME ZONE 'Asia/Tokyo' AT TIME ZONE
</screen>
The first example adds a time zone to a value that lacks it, and
displays the value using the current <varname>TimeZone</varname>
- setting. The second example shifts the time stamp with time zone value
+ setting. The second example shifts the timestamp with time zone value
to the specified time zone, and returns the value without a time zone.
This allows storage and display of values different from the current
<varname>TimeZone</varname> setting. The third example converts
@@ -8448,7 +8448,7 @@ SELECT LOCALTIMESTAMP;
the intent is to allow a single transaction to have a consistent
notion of the <quote>current</quote> time, so that multiple
modifications within the same transaction bear the same
- time stamp.
+ timestamp.
</para>
<note>
@@ -20143,7 +20143,7 @@ postgres=# SELECT * FROM pg_walfile_name_offset(pg_stop_backup());
<literal><function>pg_last_xact_replay_timestamp()</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Get time stamp of last transaction replayed during recovery.
+ <entry>Get timestamp of last transaction replayed during recovery.
This is the time at which the commit or abort WAL record for that
transaction was generated on the primary.
If no transactions have been replayed during recovery, this function
@@ -21601,9 +21601,9 @@ SELECT convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');
</indexterm>
<para>
<function>pg_stat_file</function> returns a record containing the file
- size, last accessed time stamp, last modified time stamp,
- last file status change time stamp (Unix platforms only),
- file creation time stamp (Windows only), and a <type>boolean</type>
+ size, last accessed timestamp, last modified timestamp,
+ last file status change timestamp (Unix platforms only),
+ file creation timestamp (Windows only), and a <type>boolean</type>
indicating if it is a directory. Typical usages include:
<programlisting>
SELECT * FROM pg_stat_file('filename');
diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml
index 8db9686..01eacf7 100644
--- a/doc/src/sgml/logicaldecoding.sgml
+++ b/doc/src/sgml/logicaldecoding.sgml
@@ -536,7 +536,7 @@ typedef void (*LogicalDecodeBeginCB) (struct LogicalDecodingContext *ctx,
ReorderBufferTXN *txn);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID.
</para>
</sect3>
@@ -660,7 +660,7 @@ typedef void (*LogicalDecodeMessageCB) (struct LogicalDecodingContext *ctx,
const char *message);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID. Note however that it can be NULL when the message is
non-transactional and the XID was not assigned yet in the transaction
which logged the message. The <parameter>lsn</parameter> has WAL
diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml
index 50f1884..27dc1c7 100644
--- a/doc/src/sgml/plpgsql.sgml
+++ b/doc/src/sgml/plpgsql.sgml
@@ -4855,7 +4855,7 @@ $$ LANGUAGE plpgsql;
<application>PL/pgSQL</application> interpreter casts this
string to the <type>timestamp</type> type by calling the
<function>text_out</function> and <function>timestamp_in</function>
- functions for the conversion. So, the computed time stamp is updated
+ functions for the conversion. So, the computed timestamp is updated
on each execution as the programmer expects. Even though this
happens to work as expected, it's not terribly efficient, so
use of the <literal>now()</literal> function would still be a better idea.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index 7d3cf25..ee111b8 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -1660,9 +1660,9 @@ END;
<replaceable>script_no</replaceable> identifies which script file was used (useful when
multiple scripts were specified with <option>-f</option> or <option>-b</option>),
and <replaceable>time_epoch</replaceable>/<replaceable>time_us</replaceable> are a
- Unix-epoch time stamp and an offset
+ Unix-epoch timestamp and an offset
in microseconds (suitable for creating an ISO 8601
- time stamp with fractional seconds) showing when
+ timestamp with fractional seconds) showing when
the transaction completed.
The <replaceable>schedule_lag</replaceable> field is the difference between the
transaction's scheduled start time, and the time it actually started, in
@@ -1718,7 +1718,7 @@ END;
where
<replaceable>interval_start</replaceable> is the start of the interval (as a Unix
- epoch time stamp),
+ epoch timestamp),
<replaceable>num_transactions</replaceable> is the number of transactions
within the interval,
<replaceable>sum_latency</replaceable> is the sum of the transaction
diff --git a/doc/src/sgml/replication-origins.sgml b/doc/src/sgml/replication-origins.sgml
index a03ce76..aaa3705 100644
--- a/doc/src/sgml/replication-origins.sgml
+++ b/doc/src/sgml/replication-origins.sgml
@@ -61,7 +61,7 @@
marked as replaying from a remote node (using the
<link linkend="pg-replication-origin-session-setup"><function>pg_replication_origin_session_setup()</function></link>
function). Additionally the <acronym>LSN</acronym> and commit
- time stamp of every source transaction can be configured on a per
+ timestamp of every source transaction can be configured on a per
transaction basis using
<link linkend="pg-replication-origin-xact-setup"><function>pg_replication_origin_xact_setup()</function></link>.
If that's done replication progress will persist in a crash safe
diff --git a/doc/src/sgml/trigger.sgml b/doc/src/sgml/trigger.sgml
index 67e1861..1bd69f2 100644
--- a/doc/src/sgml/trigger.sgml
+++ b/doc/src/sgml/trigger.sgml
@@ -335,7 +335,7 @@
requirements to call the same function. As an example, there
could be a generalized trigger function that takes as its
arguments two column names and puts the current user in one and
- the current time stamp in the other. Properly written, this
+ the current timestamp in the other. Properly written, this
trigger function would be independent of the specific table it is
triggering on. So the same function could be used for
<command>INSERT</command> events on any table with suitable
diff --git a/doc/src/sgml/uuid-ossp.sgml b/doc/src/sgml/uuid-ossp.sgml
index b3b816c..db8871b 100644
--- a/doc/src/sgml/uuid-ossp.sgml
+++ b/doc/src/sgml/uuid-ossp.sgml
@@ -41,7 +41,7 @@
<entry>
<para>
This function generates a version 1 UUID. This involves the MAC
- address of the computer and a time stamp. Note that UUIDs of this
+ address of the computer and a timestamp. Note that UUIDs of this
kind reveal the identity of the computer that created the identifier
and the time at which it did so, which might make it unsuitable for
certain security-sensitive applications.
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index f7f726b..965f517 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3534,7 +3534,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- gettext_noop("Sets the time stamp up to which recovery will proceed."),
+ gettext_noop("Sets the timestamp up to which recovery will proceed."),
NULL
},
&recovery_target_time_string,
@@ -3916,7 +3916,7 @@ static struct config_string ConfigureNamesString[] =
{
{"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE,
- gettext_noop("Sets the time zone for displaying and interpreting time stamps."),
+ gettext_noop("Sets the time zone for displaying and interpreting timestamps."),
NULL,
GUC_REPORT
},
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index 77bb7c2..73d8e31 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -259,7 +259,7 @@
# (change requires restart)
#recovery_target_name = '' # the named restore point to which recovery will proceed
# (change requires restart)
-#recovery_target_time = '' # the time stamp up to which recovery will proceed
+#recovery_target_time = '' # the timestamp up to which recovery will proceed
# (change requires restart)
#recovery_target_xid = '' # the transaction ID up to which recovery will proceed
# (change requires restart)
diff --git a/src/include/catalog/pg_control.h b/src/include/catalog/pg_control.h
index ff98d9e..06fbe76 100644
--- a/src/include/catalog/pg_control.h
+++ b/src/include/catalog/pg_control.h
@@ -48,7 +48,7 @@ typedef struct CheckPoint
Oid oldestXidDB; /* database with minimum datfrozenxid */
MultiXactId oldestMulti; /* cluster-wide minimum datminmxid */
Oid oldestMultiDB; /* database with minimum datminmxid */
- pg_time_t time; /* time stamp of checkpoint */
+ pg_time_t time; /* timestamp of checkpoint */
TransactionId oldestCommitTsXid; /* oldest Xid with valid commit
* timestamp */
TransactionId newestCommitTsXid; /* newest Xid with valid commit
@@ -125,7 +125,7 @@ typedef struct ControlFileData
* System status data
*/
DBState state; /* see enum above */
- pg_time_t time; /* time stamp of last pg_control update */
+ pg_time_t time; /* timestamp of last pg_control update */
XLogRecPtr checkPoint; /* last check point record ptr */
CheckPoint checkPointCopy; /* copy of last check point record */
diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c
index a7e0fe6..35697e2 100644
--- a/src/interfaces/ecpg/pgtypeslib/timestamp.c
+++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c
@@ -854,7 +854,7 @@ PGTYPEStimestamp_defmt_asc(const char *str, const char *fmt, timestamp * d)
}
/*
-* add an interval to a time stamp
+* add an interval to a timestamp
*
* *tout = tin + span
*
@@ -913,7 +913,7 @@ PGTYPEStimestamp_add_interval(timestamp * tin, interval * span, timestamp * tout
/*
-* subtract an interval from a time stamp
+* subtract an interval from a timestamp
*
* *tout = tin - span
*
--
2.1.4
v2-0001-Clean-up-docs-for-log_statement_sample_rate.patchtext/x-diff; charset=us-asciiDownload
From da9c81526918c49c3c30fdb6838323d2f66cba69 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 08:53:26 -0500
Subject: [PATCH v2 01/12] Clean up docs for log_statement_sample_rate..
..which was added at commit 88bdbd3f746049834ae3cc972e6e650586ec3c9d
And this one little bit was missed here:
https://www.postgresql.org/message-id/20190403215938.GA26375%40alvherre.pgsql
Author: Christoph Berg <myon@debian.org>
---
doc/src/sgml/config.sgml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 804406a..ad5a620 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -5887,7 +5887,7 @@ local0.* /var/log/postgresql
<para>
Determines the fraction of statements that exceed
<xref linkend="guc-log-min-duration-statement"/> to be logged.
- The default is <literal>1</literal>, meaning log all such
+ The default is <literal>1.0</literal>, meaning log all such
statements.
Setting this to zero disables logging by duration, same as setting
<varname>log_min_duration_statement</varname> to
--
2.1.4
v2-0002-review-docs-for-pg12dev.patchtext/x-diff; charset=us-asciiDownload
From 4c78b873d7db73ddc1e2f7aa94b6a2e816746d3b Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 18:50:03 -0500
Subject: [PATCH v2 02/12] review docs for pg12dev
---
doc/src/sgml/bloom.sgml | 2 +-
doc/src/sgml/catalogs.sgml | 4 ++--
doc/src/sgml/config.sgml | 13 ++++++-----
doc/src/sgml/ecpg.sgml | 18 +++++++-------
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/monitoring.sgml | 34 +++++++++++++--------------
doc/src/sgml/perform.sgml | 8 +++----
doc/src/sgml/ref/alter_table.sgml | 4 ++--
doc/src/sgml/ref/create_index.sgml | 4 ++--
doc/src/sgml/ref/pg_rewind.sgml | 17 +++++++-------
doc/src/sgml/ref/pgbench.sgml | 6 ++---
doc/src/sgml/ref/reindex.sgml | 2 +-
doc/src/sgml/runtime.sgml | 7 +++---
doc/src/sgml/sources.sgml | 48 +++++++++++++++++++-------------------
doc/src/sgml/xfunc.sgml | 12 +++++-----
src/bin/pg_upgrade/check.c | 6 ++---
16 files changed, 92 insertions(+), 95 deletions(-)
diff --git a/doc/src/sgml/bloom.sgml b/doc/src/sgml/bloom.sgml
index 6eeadde..c341b65 100644
--- a/doc/src/sgml/bloom.sgml
+++ b/doc/src/sgml/bloom.sgml
@@ -65,7 +65,7 @@
<para>
Number of bits generated for each index column. Each parameter's name
refers to the number of the index column that it controls. The default
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for
+ is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters for
index columns not actually used are ignored.
</para>
</listitem>
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index 1701863..40ddec4 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -3052,7 +3052,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
simplifies <command>ATTACH/DETACH PARTITION</command> operations:
the partition dependencies need only be added or removed.
Example: a child partitioned index is made partition-dependent
- on both the partition table it is on and the parent partitioned
+ on both the table partition and the parent partitioned
index, so that it goes away if either of those is dropped, but
not otherwise. The dependency on the parent index is primary,
so that if the user tries to drop the child partitioned index,
@@ -3115,7 +3115,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
Note that it's quite possible for two objects to be linked by more than
one <structname>pg_depend</structname> entry. For example, a child
partitioned index would have both a partition-type dependency on its
- associated partition table, and an auto dependency on each column of
+ associated table partition, and an auto dependency on each column of
that table that it indexes. This sort of situation expresses the union
of multiple dependency semantics. A dependent object can be dropped
without <literal>CASCADE</literal> if any of its dependencies satisfies
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index ad5a620..e45a321 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -112,7 +112,7 @@
For example, <literal>30.1 GB</literal> will be converted
to <literal>30822 MB</literal> not <literal>32319628902 B</literal>.
If the parameter is of integer type, a final rounding to integer
- occurs after any units conversion.
+ occurs after any unit conversion.
</para>
</listitem>
@@ -3433,7 +3433,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
current when the base backup was taken. The
value <literal>latest</literal> recovers
to the latest timeline found in the archive, which is useful in
- a standby server. <literal>latest</literal> is the default.
+ a standby server. The default is <literal>latest</literal>.
</para>
<para>
@@ -3540,7 +3540,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
servers or streaming base backup clients (i.e., the maximum number of
simultaneously running WAL sender processes). The default is
<literal>10</literal>. The value <literal>0</literal> means
- replication is disabled. Abrupt streaming client disconnection might
+ replication is disabled. Abrupt disconnection of a streaming client might
leave an orphaned connection slot behind until a timeout is reached,
so this parameter should be set slightly higher than the maximum
number of expected clients so disconnected clients can immediately
@@ -4195,8 +4195,9 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
This parameter is intended for use with streaming replication deployments;
however, if the parameter is specified it will be honored in all cases.
- <varname>hot_standby_feedback</varname> will be delayed by use of this feature
- which could lead to bloat on the master; use both together with care.
+ <varname>hot_standby_feedback</varname> will be delayed by use of this feature.
+ Combinining these settings could lead to bloat on the master, so should
+ be done only with care.
<warning>
<para>
@@ -6941,7 +6942,7 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
<para>
Causes each action executed by autovacuum to be logged if it ran for at
least the specified number of milliseconds. Setting this to zero logs
- all autovacuum actions. Minus-one (the default) disables logging
+ all autovacuum actions. <literal>-1</literal> (the default) disables logging
autovacuum actions. For example, if you set this to
<literal>250ms</literal> then all automatic vacuums and analyzes that run
250ms or longer will be logged. In addition, when this parameter is
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index d5ee6a5..798aae4 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -662,7 +662,7 @@ EXEC SQL DEALLOCATE PREPARE <replaceable>name</replaceable>;
not really useful in real applications. This section explains in
detail how you can pass data between your C program and the
embedded SQL statements using a simple mechanism called
- <firstterm>host variables</firstterm>. In an embedded SQL program we
+ <firstterm>host variables</firstterm>. In an embedded SQL program we
consider the SQL statements to be <firstterm>guests</firstterm> in the C
program code which is the <firstterm>host language</firstterm>. Therefore
the variables of the C program are called <firstterm>host
@@ -979,7 +979,7 @@ EXEC SQL END DECLARE SECTION;
<para>
The other way is using the <type>VARCHAR</type> type, which is a
- special type provided by ECPG. The definition on an array of
+ special type provided by ECPG. The definition of an array of
type <type>VARCHAR</type> is converted into a
named <type>struct</type> for every variable. A declaration like:
<programlisting>
@@ -989,7 +989,7 @@ VARCHAR var[180];
<programlisting>
struct varchar_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts the string
+ The member <structfield>arr</structfield> stores the string
including a terminating zero byte. Thus, to store a string in
a <type>VARCHAR</type> host variable, the host variable has to be
declared with the length including the zero byte terminator. The
@@ -1209,8 +1209,8 @@ EXEC SQL END DECLARE SECTION;
<title id="ecpg-type-bytea">bytea</title>
<para>
- The handling of the <type>bytea</type> type is also similar to
- the <type>VARCHAR</type>. The definition on an array of type
+ The handling of the <type>bytea</type> type is similar to
+ the <type>VARCHAR</type>. The definition of an array of type
<type>bytea</type> is converted into a named struct for every
variable. A declaration like:
<programlisting>
@@ -1220,9 +1220,8 @@ bytea var[180];
<programlisting>
struct bytea_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts binary format
- data. It also can handle even <literal>'\0'</literal> as part of
- data unlike <type>VARCHAR</type>.
+ The member <structfield>arr</structfield> stores binary format
+ data, which can include zero bytes, unlike <type>VARCHAR</type>.
The data is converted from/to hex format and sent/received by
ecpglib.
</para>
@@ -7571,8 +7570,7 @@ PREPARE <replaceable class="parameter">name</replaceable> FROM <replaceable clas
<listitem>
<para>
A literal C string or a host variable containing a preparable
- statement, one of the SELECT, INSERT, UPDATE, or
- DELETE.
+ statement (SELECT, INSERT, UPDATE, or DELETE).
</para>
</listitem>
</varlistentry>
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index fe833aa..c8e6919 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -1122,7 +1122,7 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname
<term><literal>connect_timeout</literal></term>
<listitem>
<para>
- Maximum wait for connection, in seconds (write as a decimal integer,
+ Maximum time to wait while connecting, in seconds (write as a decimal integer,
e.g. <literal>10</literal>). Zero, negative, or not specified means
wait indefinitely. The minimum allowed timeout is 2 seconds, therefore
a value of <literal>1</literal> is interpreted as <literal>2</literal>.
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index 4eb43f2..a1c3848 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -271,13 +271,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<para>
Some of the information in the dynamic statistics views shown in <xref
linkend="monitoring-stats-dynamic-views-table"/> is security restricted.
- Ordinary users can only see all the information about their own sessions
- (sessions belonging to a role that they are a member of). In rows about
+ Ordinary users can only see all information about their own sessions
+ (sessions belonging to a role of which they are a member). In rows for
other sessions, many columns will be null. Note, however, that the
existence of a session and its general properties such as its sessions user
and database are visible to all users. Superusers and members of the
built-in role <literal>pg_read_all_stats</literal> (see also <xref
- linkend="default-roles"/>) can see all the information about all sessions.
+ linkend="default-roles"/>) can see all information about all sessions.
</para>
<table id="monitoring-stats-dynamic-views-table">
@@ -3631,9 +3631,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<entry>
The index is being built by the access method-specific code. In this phase,
access methods that support progress reporting fill in their own progress data,
- and the subphase is indicated in this column. Typically,
+ and the subphase is indicated in this column.
<structname>blocks_total</structname> and <structname>blocks_done</structname>
- will contain progress data, as well as potentially
+ will contain progress data, as may
<structname>tuples_total</structname> and <structname>tuples_done</structname>.
</entry>
</row>
@@ -3718,16 +3718,16 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>VACUUM Progress Reporting</title>
<para>
- Whenever <command>VACUUM</command> is running, the
- <structname>pg_stat_progress_vacuum</structname> view will contain
- one row for each backend (including autovacuum worker processes) that is
- currently vacuuming. The tables below describe the information
+ The <structname>pg_stat_progress_vacuum</structname> view will contain one
+ row for each backend that is running <command>VACUUM</command>, including
+ autovacuum worker processes.
+ The tables below describe the information
that will be reported and provide information about how to interpret it.
- Progress for <command>VACUUM FULL</command> commands is reported via
- <structname>pg_stat_progress_cluster</structname>
- because both <command>VACUUM FULL</command> and <command>CLUSTER</command>
- rewrite the table, while regular <command>VACUUM</command> only modifies it
- in place. See <xref linkend='cluster-progress-reporting'/>.
+ Progress for <command>VACUUM FULL</command> commands is instead reported via
+ <structname>pg_stat_progress_cluster</structname>,
+ because <command>VACUUM FULL</command> rewrites the table, like <command>CLUSTER</command>,
+ while regular <command>VACUUM</command> modifies it in place. See <xref linkend='cluster-progress-reporting'/>.
+
</para>
<table id="pg-stat-progress-vacuum-view" xreflabel="pg_stat_progress_vacuum">
@@ -3910,9 +3910,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title>
<para>
- Whenever <command>CLUSTER</command> or <command>VACUUM FULL</command> is
- running, the <structname>pg_stat_progress_cluster</structname> view will
- contain a row for each backend that is currently running either command.
+ The <structname>pg_stat_progress_cluster</structname> view will contain a
+ row for each backend that is running either
+ <command>CLUSTER</command> or <command>VACUUM FULL</command>.
The tables below describe the information that will be reported and
provide information about how to interpret it.
</para>
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml
index a84be85..65c161b 100644
--- a/doc/src/sgml/perform.sgml
+++ b/doc/src/sgml/perform.sgml
@@ -899,10 +899,10 @@ EXPLAIN ANALYZE SELECT * FROM tenk1 WHERE unique1 < 100 AND unique2 > 9000
Generally, the <command>EXPLAIN</command> output will display details for
every plan node which was generated by the query planner. However, there
are cases where the executor is able to determine that certain nodes are
- not required; currently, the only node types to support this are the
- <literal>Append</literal> and <literal>MergeAppend</literal> nodes. These
- node types have the ability to discard subnodes which they are able to
- determine won't contain any records required by the query. It is possible
+ not required; currently, the only node types to support this are
+ <literal>Append</literal> and <literal>MergeAppend</literal>, which
+ are able to discard subnodes when it's deduced that
+ they will not contain any records required by the query. It is possible
to determine that nodes have been removed in this way by the presence of a
"Subplans Removed" property in the <command>EXPLAIN</command> output.
</para>
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 49b081a..dd80bd0 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -219,7 +219,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<para>
<literal>SET NOT NULL</literal> may only be applied to a column
- providing none of the records in the table contain a
+ provided none of the records in the table contain a
<literal>NULL</literal> value for the column. Ordinarily this is
checked during the <literal>ALTER TABLE</literal> by scanning the
entire table; however, if a valid <literal>CHECK</literal> constraint is
@@ -642,7 +642,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
When applied to a partitioned table, nothing is moved, but any
partitions created afterwards with
<command>CREATE TABLE PARTITION OF</command> will use that tablespace,
- unless the <literal>TABLESPACE</literal> clause is used to override it.
+ unless overridden by its <literal>TABLESPACE</literal> clause.
</para>
<para>
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index d9d95b2..14a557a 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -181,8 +181,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
</para>
<para>
- Currently, the B-tree and the GiST index access methods supports this
- feature. In B-tree and the GiST indexes, the values of columns listed
+ Currently, only the B-tree and GiST index access methods support this
+ feature. In B-tree and GiST indexes, the values of columns listed
in the <literal>INCLUDE</literal> clause are included in leaf tuples
which correspond to heap tuples, but are not included in upper-level
index entries used for tree navigation.
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml
index e9715d5..68c1c4d 100644
--- a/doc/src/sgml/ref/pg_rewind.sgml
+++ b/doc/src/sgml/ref/pg_rewind.sgml
@@ -106,15 +106,14 @@ PostgreSQL documentation
</para>
<para>
- <application>pg_rewind</application> will fail immediately if it finds
- files it cannot write directly to. This can happen for example when
- the source and the target server use the same file mapping for read-only
- SSL keys and certificates. If such files are present on the target server
+ <application>pg_rewind</application> will fail immediately if it experiences
+ a write error. This can happen for example when
+ the source and target server use the same file mapping for read-only
+ SSL keys and certificates. If such files are present on the target server,
it is recommended to remove them before running
- <application>pg_rewind</application>. After doing the rewind, some of
+ <application>pg_rewind</application>. After performing the rewind, some of
those files may have been copied from the source, in which case it may
- be necessary to remove the data copied and restore back the set of links
- used before the rewind.
+ be necessary to remove them and restore the files removed beforehand.
</para>
</warning>
</refsect1>
@@ -185,7 +184,7 @@ PostgreSQL documentation
<command>pg_rewind</command> to return without waiting, which is
faster, but means that a subsequent operating system crash can leave
the synchronized data folder corrupt. Generally, this option is
- useful for testing but should not be used when creating a production
+ useful for testing but should not be used on a production
installation.
</para>
</listitem>
@@ -266,7 +265,7 @@ GRANT EXECUTE ON function pg_catalog.pg_read_binary_file(text, bigint, bigint, b
<para>
When executing <application>pg_rewind</application> using an online
cluster as source which has been recently promoted, it is necessary
- to execute a <command>CHECKPOINT</command> after promotion so as its
+ to execute a <command>CHECKPOINT</command> after promotion such that its
control file reflects up-to-date timeline information, which is used by
<application>pg_rewind</application> to check if the target cluster
can be rewound using the designated source cluster.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index ee2501b..7d3cf25 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -474,10 +474,8 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
</listitem>
</itemizedlist>
- Because in "prepared" mode <application>pgbench</application> reuses
- the parse analysis result for the second and subsequent query
- iteration, <application>pgbench</application> runs faster in the
- prepared mode than in other modes.
+ <application>pgbench</application> runs faster in prepared mode because the
+ parse analysis happens only during the first query.
</para>
<para>
The default is simple query protocol. (See <xref linkend="protocol"/>
diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml
index e05a76c..a5a6eba 100644
--- a/doc/src/sgml/ref/reindex.sgml
+++ b/doc/src/sgml/ref/reindex.sgml
@@ -241,7 +241,7 @@ REINDEX [ ( VERBOSE ) ] { INDEX | TABLE | SCHEMA | DATABASE | SYSTEM } [ CONCURR
<para>
Reindexing a single index or table requires being the owner of that
index or table. Reindexing a schema or database requires being the
- owner of that schema or database. Note that is therefore sometimes
+ owner of that schema or database. Note specifically that it's
possible for non-superusers to rebuild indexes of tables owned by
other users. However, as a special exception, when
<command>REINDEX DATABASE</command>, <command>REINDEX SCHEMA</command>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index fde9dbc..032553a 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -2601,8 +2601,9 @@ openssl x509 -req -in server.csr -text -days 365 \
using <acronym>GSSAPI</acronym> to encrypt client/server communications for
increased security. Support requires that a <acronym>GSSAPI</acronym>
implementation (such as MIT krb5) is installed on both client and server
- systems, and that support in <productname>PostgreSQL</productname> is
- enabled at build time (see <xref linkend="installation"/>).
+ systems, and must be enabled at the time
+ <productname>PostgreSQL</productname> is built (see <xref
+ linkend="installation"/>).
</para>
<sect2 id="gssapi-setup">
@@ -2611,7 +2612,7 @@ openssl x509 -req -in server.csr -text -days 365 \
<para>
The <productname>PostgreSQL</productname> server will listen for both
normal and <acronym>GSSAPI</acronym>-encrypted connections on the same TCP
- port, and will negotiate with any connecting client on whether to
+ port, and will negotiate with any connecting client whether to
use <acronym>GSSAPI</acronym> for encryption (and for authentication). By
default, this decision is up to the client (which means it can be
downgraded by an attacker); see <xref linkend="auth-pg-hba-conf"/> about
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 419f753..79f5322 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -103,7 +103,7 @@ less -x4
message text. In addition there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
- <function>ereport</function> itself is just a shell function, that exists
+ <function>ereport</function> itself is just a shell function that exists
mainly for the syntactic convenience of making message generation
look like a function call in the C source code. The only parameter
accepted directly by <function>ereport</function> is the severity level.
@@ -359,7 +359,7 @@ ereport(ERROR,
specify suppression of the <literal>CONTEXT:</literal> portion of a message in
the postmaster log. This should only be used for verbose debugging
messages where the repeated inclusion of context would bloat the log
- volume too much.
+ too much.
</para>
</listitem>
</itemizedlist>
@@ -452,8 +452,8 @@ Hint: the addendum
enough for error messages. Detail and hint messages can be relegated to a
verbose mode, or perhaps a pop-up error-details window. Also, details and
hints would normally be suppressed from the server log to save
- space. Reference to implementation details is best avoided since users
- aren't expected to know the details.
+ space. References to implementation details are best avoided since users
+ aren't expected to know them.
</para>
</simplesect>
@@ -504,14 +504,14 @@ Hint: the addendum
<title>Use of Quotes</title>
<para>
- Use quotes always to delimit file names, user-supplied identifiers, and
+ Always use quotes to delimit file names, user-supplied identifiers, and
other variables that might contain words. Do not use them to mark up
variables that will not contain words (for example, operator names).
</para>
<para>
There are functions in the backend that will double-quote their own output
- at need (for example, <function>format_type_be()</function>). Do not put
+ as needed (for example, <function>format_type_be()</function>). Do not put
additional quotes around the output of such functions.
</para>
@@ -872,7 +872,7 @@ BETTER: unrecognized node type: 42
from a few platform dependent pieces.
</para>
<para>
- A few features included in the C99 standard are, at this time, not be
+ A few features included in the C99 standard are, at this time, not
permitted to be used in core <productname>PostgreSQL</productname>
code. This currently includes variable length arrays, intermingled
declarations and code, <literal>//</literal> comments, universal
@@ -880,16 +880,16 @@ BETTER: unrecognized node type: 42
practices.
</para>
<para>
- Features from later revision of the C standard or compiler specific
+ Features from later revisions of the C standard or compiler specific
features can be used, if a fallback is provided.
</para>
<para>
- For example <literal>_StaticAssert()</literal> and
+ For example, <literal>_StaticAssert()</literal> and
<literal>__builtin_constant_p</literal> are currently used, even though
- they are from newer revisions of the C standard and a
- <productname>GCC</productname> extension respectively. If not available
- we respectively fall back to using a C99 compatible replacement that
- performs the same checks, but emits rather cryptic messages and do not
+ they are from a newer revision of the C standard and a
+ <productname>GCC</productname> extension, respectively. If not available, in the first case,
+ we fall back to using a C99 compatible replacement that
+ performs the same checks, but emits rather cryptic messages; in the second case, we do not
use <literal>__builtin_constant_p</literal>.
</para>
</simplesect>
@@ -897,14 +897,14 @@ BETTER: unrecognized node type: 42
<simplesect>
<title>Function-Like Macros and Inline Functions</title>
<para>
- Both, macros with arguments and <literal>static inline</literal>
- functions, may be used. The latter are preferable if there are
+ Both macros with arguments and <literal>static inline</literal>
+ functions may be used. The latter are preferable if there are
multiple-evaluation hazards when written as a macro, as e.g. the
case with
<programlisting>
#define Max(x, y) ((x) > (y) ? (x) : (y))
</programlisting>
- or when the macro would be very long. In other cases it's only
+ or when the macro would be very long. In other cases, it's only
possible to use macros, or at least easier. For example because
expressions of various types need to be passed to the macro.
</para>
@@ -936,19 +936,19 @@ MemoryContextSwitchTo(MemoryContext context)
<simplesect>
<title>Writing Signal Handlers</title>
<para>
- To be suitable to run inside a signal handler code has to be
+ To be suitable to run inside a signal handler, code has to be
written very carefully. The fundamental problem is that, unless
blocked, a signal handler can interrupt code at any time. If code
- inside the signal handler uses the same state as code outside
- chaos may ensue. As an example consider what happens if a signal
+ inside the signal handler uses the same state as code outside,
+ chaos may ensue. As an example, consider what happens if a signal
handler tries to acquire a lock that's already held in the
interrupted code.
</para>
<para>
- Barring special arrangements code in signal handlers may only
+ Barring special arrangements, code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
- functions in <command>postgres</command> are also deemed signal safe, importantly
+ functions in <command>postgres</command> are also deemed signal safe; specifically,
<function>SetLatch()</function>.
</para>
<para>
@@ -969,9 +969,9 @@ handle_sighup(SIGNAL_ARGS)
}
</programlisting>
<varname>errno</varname> is saved and restored because
- <function>SetLatch()</function> might change it. If that were not done
- interrupted code that's currently inspecting <varname>errno</varname> might see the wrong
- value.
+ <function>SetLatch()</function> might change it. If that were not done,
+ code interrupted by a signal might see the wrong value of
+ <varname>errno</varname>.
</para>
</simplesect>
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 3403269..5c17b10 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3364,11 +3364,11 @@ if (!ptr)
</indexterm>
<para>
- By default, a function is just a <quote>black box</quote> that the
- database system knows very little about the behavior of. However,
- that means that queries using the function may be executed much less
+ By default, a function is a <quote>black box</quote> that the
+ database system knows very little about, which
+ means queries calling the function may be executed less
efficiently than they could be. It is possible to supply additional
- knowledge that helps the planner optimize function calls.
+ information that helps the planner optimize function calls.
</para>
<para>
@@ -3381,7 +3381,7 @@ if (!ptr)
The parallel safety property (<literal>PARALLEL
UNSAFE</literal>, <literal>PARALLEL RESTRICTED</literal>, or
<literal>PARALLEL SAFE</literal>) must also be specified if you hope
- to use the function in parallelized queries.
+ queries calling the function to use parallel query.
It can also be useful to specify the function's estimated execution
cost, and/or the number of rows a set-returning function is estimated
to return. However, the declarative way of specifying those two
@@ -3393,7 +3393,7 @@ if (!ptr)
It is also possible to attach a <firstterm>planner support
function</firstterm> to a SQL-callable function (called
its <firstterm>target function</firstterm>), and thereby provide
- knowledge about the target function that is too complex to be
+ information about the target function that is too complex to be
represented declaratively. Planner support functions have to be
written in C (although their target functions might not be), so this is
an advanced feature that relatively few people will use.
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index fc5aa70..04c9ed8 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -222,13 +222,13 @@ output_completion_banner(char *analyze_script_file_name,
/* Did we copy the free space files? */
if (GET_MAJOR_VERSION(old_cluster.major_version) >= 804)
pg_log(PG_REPORT,
- "Optimizer statistics are not transferred by pg_upgrade so,\n"
- "once you start the new server, consider running:\n"
+ "Optimizer statistics are not transferred by pg_upgrade.\n"
+ "Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
else
pg_log(PG_REPORT,
"Optimizer statistics and free space information are not transferred\n"
- "by pg_upgrade so, once you start the new server, consider running:\n"
+ "by pg_upgrade. Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
--
2.1.4
v2-0003-JIT-typos.patchtext/x-diff; charset=us-asciiDownload
From aae1a84b74436951222dba42b21de284ed8b1ac9 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 17:24:35 -0500
Subject: [PATCH v2 03/12] JIT typos..
..which I sent to Andres some time ago and which I noticed were never applied
(nor rejected).
https://www.postgresql.org/message-id/20181127184133.GM10913%40telsasoft.com
---
src/backend/jit/llvm/llvmjit_deform.c | 22 +++++++++++-----------
src/backend/jit/llvm/llvmjit_inline.cpp | 2 +-
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/backend/jit/llvm/llvmjit_deform.c b/src/backend/jit/llvm/llvmjit_deform.c
index 94b4635..e4a430f 100644
--- a/src/backend/jit/llvm/llvmjit_deform.c
+++ b/src/backend/jit/llvm/llvmjit_deform.c
@@ -103,7 +103,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
funcname = llvm_expand_funcname(context, "deform");
/*
- * Check which columns do have to exist, so we don't have to check the
+ * Check which columns have to exist, so we don't have to check the
* rows natts unnecessarily.
*/
for (attnum = 0; attnum < desc->natts; attnum++)
@@ -298,7 +298,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
}
/*
- * Check if's guaranteed the all the desired attributes are available in
+ * Check if it's guaranteed that all the desired attributes are available in
* tuple. If so, we can start deforming. If not, need to make sure to
* fetch the missing columns.
*/
@@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
/*
* If this is the first attribute, slot->tts_nvalid was 0. Therefore
- * reset offset to 0 to, it be from a previous execution.
+ * also reset offset to 0, it may be from a previous execution.
*/
if (attnum == 0)
{
@@ -413,7 +413,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
/*
* Check for nulls if necessary. No need to take missing attributes
- * into account, because in case they're present the heaptuple's natts
+ * into account, because if they're present, the heaptuple's natts
* would have indicated that a slot_getmissingattrs() is needed.
*/
if (!att->attnotnull)
@@ -500,13 +500,13 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
(known_alignment < 0 || known_alignment != TYPEALIGN(alignto, known_alignment)))
{
/*
- * When accessing a varlena field we have to "peek" to see if we
+ * When accessing a varlena field, we have to "peek" to see if we
* are looking at a pad byte or the first byte of a 1-byte-header
* datum. A zero byte must be either a pad byte, or the first
- * byte of a correctly aligned 4-byte length word; in either case
+ * byte of a correctly aligned 4-byte length word; in either case,
* we can align safely. A non-zero byte must be either a 1-byte
* length word, or the first byte of a correctly aligned 4-byte
- * length word; in either case we need not align.
+ * length word; in either case, we need not align.
*/
if (att->attlen == -1)
{
@@ -600,8 +600,8 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
else if (att->attnotnull && attguaranteedalign && known_alignment >= 0)
{
/*
- * If the offset to the column was previously known a NOT NULL &
- * fixed width column guarantees that alignment is just the
+ * If the offset to the column was previously known, a NOT NULL &
+ * fixed-width column guarantees that alignment is just the
* previous alignment plus column width.
*/
Assert(att->attlen > 0);
@@ -642,8 +642,8 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
LLVMBuildGEP(b, v_tts_nulls, &l_attno, 1, ""));
/*
- * Store datum. For byval datums copy the value, extend to Datum's
- * width, and store. For byref types, store pointer to data.
+ * Store datum. For byval datums: copy the value, extend to Datum's
+ * width, and store. For byref types: store pointer to data.
*/
if (att->attbyval)
{
diff --git a/src/backend/jit/llvm/llvmjit_inline.cpp b/src/backend/jit/llvm/llvmjit_inline.cpp
index 96fc68a..07b5fc7 100644
--- a/src/backend/jit/llvm/llvmjit_inline.cpp
+++ b/src/backend/jit/llvm/llvmjit_inline.cpp
@@ -9,7 +9,7 @@
* for an external function is found - not guaranteed! - the index will then
* be used to judge their instruction count / inline worthiness. After doing
* so for all external functions, all the referenced functions (and
- * prerequisites) will be imorted.
+ * prerequisites) will be imported.
*
* Copyright (c) 2016-2019, PostgreSQL Global Development Group
*
--
2.1.4
v2-0004-Add-comma-for-readability.patchtext/x-diff; charset=us-asciiDownload
From 888392260d2c4373dc685c2026e76256733c4136 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:37:35 -0500
Subject: [PATCH v2 04/12] Add comma for readability
---
doc/src/sgml/backup.sgml | 2 +-
doc/src/sgml/bki.sgml | 2 +-
doc/src/sgml/client-auth.sgml | 4 ++--
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/indices.sgml | 2 +-
doc/src/sgml/installation.sgml | 2 +-
doc/src/sgml/logical-replication.sgml | 2 +-
doc/src/sgml/ref/create_table.sgml | 2 +-
doc/src/sgml/ref/create_table_as.sgml | 2 +-
doc/src/sgml/ref/pgupgrade.sgml | 4 ++--
doc/src/sgml/ref/psql-ref.sgml | 2 +-
doc/src/sgml/sources.sgml | 4 ++--
doc/src/sgml/xoper.sgml | 2 +-
14 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/doc/src/sgml/backup.sgml b/doc/src/sgml/backup.sgml
index b67da89..ae41bc7 100644
--- a/doc/src/sgml/backup.sgml
+++ b/doc/src/sgml/backup.sgml
@@ -1024,7 +1024,7 @@ SELECT pg_start_backup('label', true);
consider during this backup.
</para>
<para>
- As noted above, if the server crashes during the backup it may not be
+ As noted above, if the server crashes during the backup, it may not be
possible to restart until the <literal>backup_label</literal> file has
been manually deleted from the <envar>PGDATA</envar> directory. Note
that it is very important to never remove the
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index aa3d6f8..e27fa76 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -403,7 +403,7 @@
8000—9999. This minimizes the risk of OID collisions with other
patches being developed concurrently. To keep the 8000—9999
range free for development purposes, after a patch has been committed
- to the master git repository its OIDs should be renumbered into
+ to the master git repository, its OIDs should be renumbered into
available space below that range. Typically, this will be done
near the end of each development cycle, moving all OIDs consumed by
patches committed in that cycle at the same time. The script
diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml
index 45a3cf3..16bd1ae 100644
--- a/doc/src/sgml/client-auth.sgml
+++ b/doc/src/sgml/client-auth.sgml
@@ -157,7 +157,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>SSL</acronym> support. Furthermore,
<acronym>SSL</acronym> must be enabled
by setting the <xref linkend="guc-ssl"/> configuration parameter (see
@@ -189,7 +189,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>GSSAPI</acronym> support. Otherwise,
the <literal>hostgssenc</literal> record is ignored except for logging
a warning that it cannot match any connections.
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index e45a321..ab83885 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3458,7 +3458,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
reached. The default is <literal>pause</literal>, which means recovery will
be paused. <literal>promote</literal> means the recovery process will finish
and the server will start to accept connections.
- Finally <literal>shutdown</literal> will stop the server after reaching the
+ Finally, <literal>shutdown</literal> will stop the server after reaching the
recovery target.
</para>
<para>
@@ -4188,7 +4188,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
</para>
<para>
The delay occurs once the database in recovery has reached a consistent
- state, until the standby is promoted or triggered. After that the standby
+ state, until the standby is promoted or triggered. After that, the standby
will end recovery without further waiting.
</para>
<para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 1fe27c5..612eb23 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3868,7 +3868,7 @@ CREATE INDEX ON measurement (logdate);
<title>Partition Maintenance</title>
<para>
- Normally the set of partitions established when initially defining the
+ Normally, the set of partitions established when initially defining the
table are not intended to remain static. It is common to want to
remove old partitions of data and periodically add new partitions for
new data. One of the most important advantages of partitioning is
diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml
index 95c0a19..e940ddb 100644
--- a/doc/src/sgml/indices.sgml
+++ b/doc/src/sgml/indices.sgml
@@ -1081,7 +1081,7 @@ SELECT x FROM tab WHERE x = 'key' AND z < 42;
scan. Even in the successful case, this approach trades visibility map
accesses for heap accesses; but since the visibility map is four orders
of magnitude smaller than the heap it describes, far less physical I/O is
- needed to access it. In most situations the visibility map remains
+ needed to access it. In most situations, the visibility map remains
cached in memory all the time.
</para>
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 4493862..847e028 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -2527,7 +2527,7 @@ xcodebuild -version -sdk macosx Path
</programlisting>
Note that building an extension using a different sysroot version than
was used to build the core server is not really recommended; in the
- worst case it could result in hard-to-debug ABI inconsistencies.
+ worst case, it could result in hard-to-debug ABI inconsistencies.
</para>
<para>
diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml
index 3f2f674..31c814c 100644
--- a/doc/src/sgml/logical-replication.sgml
+++ b/doc/src/sgml/logical-replication.sgml
@@ -201,7 +201,7 @@
<para>
Subscriptions are dumped by <command>pg_dump</command> if the current user
- is a superuser. Otherwise a warning is written and subscriptions are
+ is a superuser. Otherwise, a warning is written and subscriptions are
skipped, because non-superusers cannot read all subscription information
from the <structname>pg_subscription</structname> catalog.
</para>
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 3788011..c47408b 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1189,7 +1189,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
This clause specifies optional storage parameters for a table or index;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should not contain OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml
index 1371261..d1af36e 100644
--- a/doc/src/sgml/ref/create_table_as.sgml
+++ b/doc/src/sgml/ref/create_table_as.sgml
@@ -142,7 +142,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
This clause specifies optional storage parameters for the new table;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should contain no OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml
index c896882..7fee896 100644
--- a/doc/src/sgml/ref/pgupgrade.sgml
+++ b/doc/src/sgml/ref/pgupgrade.sgml
@@ -726,7 +726,7 @@ psql --username=postgres --file=script.sql postgres
<application>pg_upgrade</application> launches short-lived postmasters in
the old and new data directories. Temporary Unix socket files for
communication with these postmasters are, by default, made in the current
- working directory. In some situations the path name for the current
+ working directory. In some situations, the path name for the current
directory might be too long to be a valid socket name. In that case you
can use the <option>-s</option> option to put the socket files in some
directory with a shorter path name. For security, be sure that that
@@ -793,7 +793,7 @@ psql --username=postgres --file=script.sql postgres
</para>
<para>
- In <productname>PostgreSQL</productname> 12 and later small tables by
+ In <productname>PostgreSQL</productname> 12 and later, small tables by
default don't have a free space map, as a space optimization. If you are
upgrading a pre-12 cluster, the free space maps of small tables will
likewise not be transferred to the new cluster.
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 636df6c..3ce9ef6 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1053,7 +1053,7 @@ testdb=>
These operations are not as efficient as the <acronym>SQL</acronym>
<command>COPY</command> command with a file or program data source or
destination, because all data must pass through the client/server
- connection. For large amounts of data the <acronym>SQL</acronym>
+ connection. For large amounts of data, the <acronym>SQL</acronym>
command might be preferable.
</para>
</tip>
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 79f5322..520bbae 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -100,7 +100,7 @@ less -x4
<para>
There are two required elements for every message: a severity level
(ranging from <literal>DEBUG</literal> to <literal>PANIC</literal>) and a primary
- message text. In addition there are optional elements, the most
+ message text. In addition, there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
<function>ereport</function> itself is just a shell function that exists
@@ -473,7 +473,7 @@ Hint: the addendum
<para>
Rationale: Messages are not necessarily displayed on terminal-type
- displays. In GUI displays or browsers these formatting instructions are
+ displays. In GUI displays or browsers, these formatting instructions are
at best ignored.
</para>
diff --git a/doc/src/sgml/xoper.sgml b/doc/src/sgml/xoper.sgml
index 260e43c..55cd3b1 100644
--- a/doc/src/sgml/xoper.sgml
+++ b/doc/src/sgml/xoper.sgml
@@ -375,7 +375,7 @@ table1.column1 OP table2.column2
Another example is that on machines that meet the <acronym>IEEE</acronym>
floating-point standard, negative zero and positive zero are different
values (different bit patterns) but they are defined to compare equal.
- If a float value might contain negative zero then extra steps are needed
+ If a float value might contain negative zero, then extra steps are needed
to ensure it generates the same hash value as positive zero.
</para>
--
2.1.4
v2-0007-overridden-vs-overwritten.patchtext/x-diff; charset=us-asciiDownload
From 50190b412dce43dc3d7436ece2ab037791e743ed Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 13:18:12 -0500
Subject: [PATCH v2 07/12] overridden vs overwritten
---
doc/src/sgml/ref/pgbench.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
src/test/regress/expected/create_table.out | 2 +-
src/test/regress/sql/create_table.sql | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index ee111b8..0334229 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -941,7 +941,7 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
<row>
<entry> <literal>random_seed</literal> </entry>
- <entry>random generator seed (unless overwritten with <option>-D</option>)</entry>
+ <entry>random generator seed (unless overridden with <option>-D</option>)</entry>
</row>
<row>
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 3ce9ef6..464c196 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -478,7 +478,7 @@ EOF
leave off the equal sign. To set a variable with an empty value,
use the equal sign but leave off the value. These assignments are
done during command line processing, so variables that reflect
- connection state will get overwritten later.
+ connection state will be overridden later.
</para>
</listitem>
</varlistentry>
diff --git a/src/test/regress/expected/create_table.out b/src/test/regress/expected/create_table.out
index ad0cb32..44c7864 100644
--- a/src/test/regress/expected/create_table.out
+++ b/src/test/regress/expected/create_table.out
@@ -874,7 +874,7 @@ create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a no
insert into parted_notnull_inh_test (b) values (null);
ERROR: null value in column "b" violates not-null constraint
DETAIL: Failing row contains (1, null).
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
Table "public.parted_notnull_inh_test1"
Column | Type | Collation | Nullable | Default
diff --git a/src/test/regress/sql/create_table.sql b/src/test/regress/sql/create_table.sql
index 751c0d3..36222c2 100644
--- a/src/test/regress/sql/create_table.sql
+++ b/src/test/regress/sql/create_table.sql
@@ -720,7 +720,7 @@ CREATE TABLE part_c_1_10 PARTITION OF part_c FOR VALUES FROM (1) TO (10);
create table parted_notnull_inh_test (a int default 1, b int not null default 0) partition by list (a);
create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a not null, b default 1) for values in (1);
insert into parted_notnull_inh_test (b) values (null);
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
drop table parted_notnull_inh_test;
--
2.1.4
v2-0008-Clean-up-language-in-cf984672-Improve-behavior-of.patchtext/x-diff; charset=us-asciiDownload
From 01a366c2bbff465c6e732d74da1c2f68f0efbc28 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 03:42:35 -0500
Subject: [PATCH v2 08/12] Clean up language in cf984672: Improve behavior of
to_timestamp()/to_date() functions
---
doc/src/sgml/func.sgml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index defc287..4b3f768 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -6399,19 +6399,19 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
exceeds the number of separators in the template.
</para>
<para>
- If <literal>FX</literal> is specified, separator in template string
- matches to exactly one character in input string. Notice we don't insist
- input string character to be the same as template string separator.
+ If <literal>FX</literal> is specified, a separator in the template string
+ matches exactly one character in the input string. But note that the
+ character in the input string is not required to be the same character in the template string.
For example, <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
works, but <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
- returns an error because a space second template string space consumed
- letter <literal>J</literal> from the input string.
+ returns an error because a space in its template string consumes
+ the letter <literal>J</literal> from the input string.
</para>
</listitem>
<listitem>
<para>
- <literal>TZH</literal> template pattern can match a signed number.
+ The <literal>TZH</literal> template pattern can match a signed number.
Without the <literal>FX</literal> option, it may lead to ambiguity in
interpretation of the minus sign, which can also be interpreted as a separator.
This ambiguity is resolved as follows. If the number of separators before
--
2.1.4
v2-0009-its-own-is-possessive.patchtext/x-diff; charset=us-asciiDownload
From 47b72d94f2631ca29765c80118a27441a25d669a Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sun, 31 Mar 2019 13:59:06 -0500
Subject: [PATCH v2 09/12] "its own" is possessive
---
src/backend/utils/hash/dynahash.c | 2 +-
src/interfaces/libpq/fe-auth.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/backend/utils/hash/dynahash.c b/src/backend/utils/hash/dynahash.c
index 9dc2a55..0dfbec8 100644
--- a/src/backend/utils/hash/dynahash.c
+++ b/src/backend/utils/hash/dynahash.c
@@ -817,7 +817,7 @@ hash_destroy(HTAB *hashp)
{
/* allocation method must be one we know how to free, too */
Assert(hashp->alloc == DynaHashAlloc);
- /* so this hashtable must have it's own context */
+ /* so this hashtable must have its own context */
Assert(hashp->hcxt != NULL);
hash_stats("destroy", hashp);
diff --git a/src/interfaces/libpq/fe-auth.c b/src/interfaces/libpq/fe-auth.c
index 624e02b..bb04e27 100644
--- a/src/interfaces/libpq/fe-auth.c
+++ b/src/interfaces/libpq/fe-auth.c
@@ -879,7 +879,7 @@ pg_fe_sendauth(AuthRequest areq, int payloadlen, PGconn *conn)
case AUTH_REQ_SSPI:
/*
- * SSPI has it's own startup message so libpq can decide which
+ * SSPI has its own startup message so libpq can decide which
* method to use. Indicate to pg_SSPI_startup that we want SSPI
* negotiation instead of Kerberos.
*/
--
2.1.4
v2-0010-Duplicate-word-in-comment.patchtext/x-diff; charset=us-asciiDownload
From 1808271e54a7293cc3d4578a6bd660f603a7dbcd Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 4 Apr 2019 01:21:10 -0500
Subject: [PATCH v2 10/12] Duplicate word in comment
See also 9226a3b89b004b3472d963442856206f0c249a53
---
src/backend/optimizer/plan/planner.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c
index 5ed691c..0a6710c 100644
--- a/src/backend/optimizer/plan/planner.c
+++ b/src/backend/optimizer/plan/planner.c
@@ -118,7 +118,7 @@ typedef struct
/*
* Temporary structure for use during WindowClause reordering in order to be
- * be able to sort WindowClauses on partitioning/ordering prefix.
+ * able to sort WindowClauses on partitioning/ordering prefix.
*/
typedef struct
{
--
2.1.4
v2-0011-is-vs-are-plural.patchtext/x-diff; charset=us-asciiDownload
From 2fe90f71d0b34ebff33973c3ca612bad6b4ebc5b Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 4 Apr 2019 18:57:48 -0500
Subject: [PATCH v2 11/12] is vs are plural
---
doc/src/sgml/auto-explain.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/func.sgml | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/auto-explain.sgml b/doc/src/sgml/auto-explain.sgml
index da16164..1d0b226 100644
--- a/doc/src/sgml/auto-explain.sgml
+++ b/doc/src/sgml/auto-explain.sgml
@@ -179,8 +179,8 @@ LOAD 'auto_explain';
<listitem>
<para>
<varname>auto_explain.log_settings</varname> controls whether information
- about modified configuration options are printed when execution plan is logged.
- Only options affecting query planning with value different from the built-in
+ about modified configuration options is printed when an execution plan is logged.
+ Only those options which affect query planning and whose value differs from its built-in
default value are included in the output. This parameter is off by default.
Only superusers can change this setting.
</para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 612eb23..e1efd68 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3869,7 +3869,7 @@ CREATE INDEX ON measurement (logdate);
<para>
Normally, the set of partitions established when initially defining the
- table are not intended to remain static. It is common to want to
+ table is not intended to remain static. It is common to want to
remove old partitions of data and periodically add new partitions for
new data. One of the most important advantages of partitioning is
precisely that it allows this otherwise painful task to be executed
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 4b3f768..d33b1fc 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -10275,7 +10275,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple
<title>Producing XML Content</title>
<para>
- A set of functions and function-like expressions are available for
+ A set of functions and function-like expressions is available for
producing XML content from SQL data. As such, they are
particularly suitable for formatting query results into XML
documents for processing in client applications.
--
2.1.4
v2-0012-docs-create-or-reindex-progress-of-ptn-tables.patchtext/x-diff; charset=us-asciiDownload
From f3e31268f7118d0719dcff190bdd5e1de88389d5 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 4 Apr 2019 19:39:05 -0500
Subject: [PATCH v2 12/12] docs: create or reindex progress of ptn tables
---
doc/src/sgml/monitoring.sgml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index a1c3848..5ada8b7 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -3582,16 +3582,16 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<entry><structfield>partitions_total</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the total number of partitions on which the index is to be created.
+ When the index being created or reindexed is on a partitioned table,
+ this is the total number of partitions to be processed.
</entry>
</row>
<row>
<entry><structfield>partitions_done</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the number of partitions on which the index has been completed.
+ When the index being created or reindexed is on a partitioned table,
+ this is the number of partitions for which the process is complete.
</entry>
</row>
</tbody>
--
2.1.4
On Mon, Apr 08, 2019 at 09:18:28AM -0500, Justin Pryzby wrote:
Find attached updated patches for v12 docs.
Thanks for taking the time to dig into such things.
Note that Alvaro applied an early patch for log_statement_sample_rate, but
unfortunately I hadn't sent a v2 patch with additional change from myon, so
there's one remaining hunk included here.
This was in 0001. Committed separately from the rest as the author
and discussion are different.
If needed I can split up differently for review, or resend a couple on separate
threads, or resend inline.Patches are currently optimized for review, but maybe should be squished into
one and/or reindented before merging.
That's helpful. However most of what you are proposing does not seem
necessary, and the current phrasing looks correct English to me, but I
am not a native speaker. I am particularly referring to patches 0005
(publications use "a superuser" in error messages as well which could
be fixed as well?), 0006, 0007, 0008, 0011 and 0012. I have committed
the most obvious mistakes extracted your patch set though.
Here are some comments about portions which need more work based on
what I looked at.
- * Check if's guaranteed the all the desired attributes are available in
+ * Check if it's guaranteed that all the desired attributes are available in
* tuple. If so, we can start deforming. If not, need to make sure to
* fetch the missing columns.
Here I think that we should have "Check if all the desired attributes
are available in the tuple." for the first sentence.
* If this is the first attribute, slot->tts_nvalid was 0. Therefore
- * reset offset to 0 to, it be from a previous execution.
+ * also reset offset to 0, it may be from a previous execution.
The last part should be "as it may be from a previous execution"?
Andres, perhaps you have comments on these?
--
Michael
Thanks for committing those portions.
On Fri, Apr 19, 2019 at 05:00:26PM +0900, Michael Paquier wrote:
I am particularly referring to patches 0005
(publications use "a superuser" in error messages as well which could
be fixed as well?),
I deliberately avoided changing thesee "errhint" messages, since the style
guide indicates that errhint should be a complete sentence.
pryzbyj@pryzbyj:~/src/postgres$ git grep 'must be a superuser' |grep errhint
src/backend/commands/event_trigger.c: errhint("The owner of an event trigger must be a superuser.")));
src/backend/commands/foreigncmds.c: errhint("The owner of a foreign-data wrapper must be a superuser.")));
src/backend/commands/publicationcmds.c: errhint("The owner of a FOR ALL TABLES publication must be a superuser.")));
src/backend/commands/subscriptioncmds.c: errhint("The owner of a subscription must be a superuser.")));
Justin
On Fri, Apr 19, 2019 at 09:43:01AM -0500, Justin Pryzby wrote:
Thanks for committing those portions.
I have done an extra pass on your patch set to make sure that I am
missing nothing, and the last two remaining places which need some
tweaks are the comments from the JIT code you pointed out. Attached
is a patch with these adjustments.
--
Michael
Attachments:
jit_comments.patchtext/x-diff; charset=us-asciiDownload
diff --git a/src/backend/jit/llvm/llvmjit_deform.c b/src/backend/jit/llvm/llvmjit_deform.c
index 94b4635218..e7aa92e274 100644
--- a/src/backend/jit/llvm/llvmjit_deform.c
+++ b/src/backend/jit/llvm/llvmjit_deform.c
@@ -298,9 +298,9 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
}
/*
- * Check if's guaranteed the all the desired attributes are available in
- * tuple. If so, we can start deforming. If not, need to make sure to
- * fetch the missing columns.
+ * Check if all the desired attributes are available in the tuple. If so,
+ * we can start deforming. If not, we need to make sure to fetch the
+ * missing columns.
*/
if ((natts - 1) <= guaranteed_column_number)
{
@@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,
/*
* If this is the first attribute, slot->tts_nvalid was 0. Therefore
- * reset offset to 0 to, it be from a previous execution.
+ * reset offset to 0 too, as it may be from a previous execution.
*/
if (attnum == 0)
{
Hi,
On 2019-04-22 14:48:26 +0900, Michael Paquier wrote:
On Fri, Apr 19, 2019 at 09:43:01AM -0500, Justin Pryzby wrote:
Thanks for committing those portions.
I have done an extra pass on your patch set to make sure that I am
missing nothing, and the last two remaining places which need some
tweaks are the comments from the JIT code you pointed out. Attached
is a patch with these adjustments.
--
Michael
diff --git a/src/backend/jit/llvm/llvmjit_deform.c b/src/backend/jit/llvm/llvmjit_deform.c index 94b4635218..e7aa92e274 100644 --- a/src/backend/jit/llvm/llvmjit_deform.c +++ b/src/backend/jit/llvm/llvmjit_deform.c @@ -298,9 +298,9 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc, }/* - * Check if's guaranteed the all the desired attributes are available in - * tuple. If so, we can start deforming. If not, need to make sure to - * fetch the missing columns. + * Check if all the desired attributes are available in the tuple. If so, + * we can start deforming. If not, we need to make sure to fetch the + * missing columns. */
That's imo not an improvement. The guaranteed bit is actually
relevant. What this block is doing is eliding the check against the
tuple header for the number of attributes, if NOT NULL attributes for
later columns guarantee that the desired columns are present in the NULL
bitmap. But the rephrasing makes it sound like we're actually checking
against the tuple.
I think it'd be better just to fix s/the all/that all/.
if ((natts - 1) <= guaranteed_column_number)
{
@@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,/* * If this is the first attribute, slot->tts_nvalid was 0. Therefore - * reset offset to 0 to, it be from a previous execution. + * reset offset to 0 too, as it may be from a previous execution. */ if (attnum == 0) {
That obviously makes sense.
Greetings,
Andres Freund
On 2019-Apr-22, Andres Freund wrote:
On 2019-04-22 14:48:26 +0900, Michael Paquier wrote:
/* - * Check if's guaranteed the all the desired attributes are available in - * tuple. If so, we can start deforming. If not, need to make sure to - * fetch the missing columns. + * Check if all the desired attributes are available in the tuple. If so, + * we can start deforming. If not, we need to make sure to fetch the + * missing columns. */That's imo not an improvement. The guaranteed bit is actually
relevant. What this block is doing is eliding the check against the
tuple header for the number of attributes, if NOT NULL attributes for
later columns guarantee that the desired columns are present in the NULL
bitmap. But the rephrasing makes it sound like we're actually checking
against the tuple.I think it'd be better just to fix s/the all/that all/.
(and s/if's/if it's/)
if ((natts - 1) <= guaranteed_column_number)
{
@@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc,/* * If this is the first attribute, slot->tts_nvalid was 0. Therefore - * reset offset to 0 to, it be from a previous execution. + * reset offset to 0 too, as it may be from a previous execution. */ if (attnum == 0) {That obviously makes sense.
Hmm, I think "as it *is*", not "as it *may be*", right?
--
�lvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Alvaro Herrera <alvherre@2ndquadrant.com> writes:
On 2019-Apr-22, Andres Freund wrote:
On 2019-04-22 14:48:26 +0900, Michael Paquier wrote:
/* - * Check if's guaranteed the all the desired attributes are available in - * tuple. If so, we can start deforming. If not, need to make sure to - * fetch the missing columns. + * Check if all the desired attributes are available in the tuple. If so, + * we can start deforming. If not, we need to make sure to fetch the + * missing columns. */
That's imo not an improvement. The guaranteed bit is actually
relevant. What this block is doing is eliding the check against the
tuple header for the number of attributes, if NOT NULL attributes for
later columns guarantee that the desired columns are present in the NULL
bitmap. But the rephrasing makes it sound like we're actually checking
against the tuple.I think it'd be better just to fix s/the all/that all/.
(and s/if's/if it's/)
ISTM that Michael's proposed wording change shows that the existing
comment is easily misinterpreted. I don't think these minor grammatical
fixes will avoid the misinterpretation problem, and so some more-extensive
rewording is called for.
But TBH, now that I look at the code, I think the entire optimization
is a bad idea and should be removed. Am I right in thinking that the
presence of a wrong attnotnull marker could cause the generated code to
actually crash, thanks to not checking the tuple's natts field? I don't
have enough faith in our enforcement of those constraints to want to see
JIT taking that risk to save a nanosecond or two.
(Possibly I'd not think this if I weren't fresh off a couple of days
with my nose in the ALTER TABLE SET NOT NULL code. But right now,
I think that believing that that code does not and never will have
any bugs is just damfool.)
regards, tom lane
Hi,
On 2019-04-22 12:33:24 -0400, Tom Lane wrote:
ISTM that Michael's proposed wording change shows that the existing
comment is easily misinterpreted. I don't think these minor grammatical
fixes will avoid the misinterpretation problem, and so some more-extensive
rewording is called for.
Fair enough.
But TBH, now that I look at the code, I think the entire optimization
is a bad idea and should be removed. Am I right in thinking that the
presence of a wrong attnotnull marker could cause the generated code to
actually crash, thanks to not checking the tuple's natts field? I don't
have enough faith in our enforcement of those constraints to want to see
JIT taking that risk to save a nanosecond or two.
It's not a minor optimization, it's very measurable. Without the check
there's no pipeline stall when the memory for the tuple header is not in
the CPU cache (very common, especially for seqscans and such, due to the
"backward" memory location ordering of tuples in seqscans, which CPUs
don't predict). Server grade CPUs of the last ~5 years just march on and
start the work to fetch the first attributes (especially if they're NOT
NULL) - but can't do that if natts has to be checked. And starting to
check the NULL bitmap for NOT NULL attributes, would make that even
worse - and would required if we don't trust attnotnull.
(Possibly I'd not think this if I weren't fresh off a couple of days
with my nose in the ALTER TABLE SET NOT NULL code. But right now,
I think that believing that that code does not and never will have
any bugs is just damfool.)
But there's plenty places where we rely on NOT NULL actually working?
We'll return wrong query results, and even crash in non-JIT places
because we thought there was guaranteed to be datum?
Greetings,
Andres Freund
Hi,
On 2019-04-22 09:43:56 -0700, Andres Freund wrote:
On 2019-04-22 12:33:24 -0400, Tom Lane wrote:
ISTM that Michael's proposed wording change shows that the existing
comment is easily misinterpreted. I don't think these minor grammatical
fixes will avoid the misinterpretation problem, and so some more-extensive
rewording is called for.Fair enough.
The computation of that variable above has:
* If the column is possibly missing, we can't rely on its (or
* subsequent) NOT NULL constraints to indicate minimum attributes in
* the tuple, so stop here.
*/
if (att->atthasmissing)
break;
/*
* Column is NOT NULL and there've been no preceding missing columns,
* it's guaranteed that all columns up to here exist at least in the
* NULL bitmap.
*/
if (att->attnotnull)
guaranteed_column_number = attnum;
and only then the comment referenced in the discussion here follows:
/*
* Check if's guaranteed the all the desired attributes are available in
* tuple. If so, we can start deforming. If not, need to make sure to
* fetch the missing columns.
*/
I think just reformulating that to something like
/*
* Check if it's guaranteed that all the desired attributes are available
* in the tuple (but still possibly NULL), by dint of either the last
* to-be-deformed column being NOT NULL, or subsequent ones not accessed
* here being NOT NULL. If that's not guaranteed the tuple headers natt's
* has to be checked, and missing attributes potentially have to be
* fetched (using slot_getmissingattrs().
*/
should make that clearer?
Greetings,
Andres Freund
Andres Freund <andres@anarazel.de> writes:
On 2019-04-22 12:33:24 -0400, Tom Lane wrote:
But TBH, now that I look at the code, I think the entire optimization
is a bad idea and should be removed. Am I right in thinking that the
presence of a wrong attnotnull marker could cause the generated code to
actually crash, thanks to not checking the tuple's natts field? I don't
have enough faith in our enforcement of those constraints to want to see
JIT taking that risk to save a nanosecond or two.
It's not a minor optimization, it's very measurable.
Doesn't matter, if it's unsafe.
(Possibly I'd not think this if I weren't fresh off a couple of days
with my nose in the ALTER TABLE SET NOT NULL code. But right now,
I think that believing that that code does not and never will have
any bugs is just damfool.)
But there's plenty places where we rely on NOT NULL actually working?
I do not think there are any other places where we make this particular
assumption. Given the number of ways in which we rely on there being
natts checks to avoid rewriting tables, I'm very afraid of the idea
that JIT is making more assumptions than the mainline code does.
In hopes of putting some fear into you too, I exhibit the following
behavior, which is not a bug according to our current definitions:
regression=# create table pp(f1 int);
CREATE TABLE
regression=# create table cc() inherits (pp);
CREATE TABLE
regression=# insert into cc values(1);
INSERT 0 1
regression=# insert into cc values(2);
INSERT 0 1
regression=# insert into cc values(null);
INSERT 0 1
regression=# alter table pp add column f2 text;
ALTER TABLE
regression=# alter table pp add column f3 text;
ALTER TABLE
regression=# alter table only pp alter f3 set not null;
ALTER TABLE
regression=# select * from pp;
f1 | f2 | f3
----+----+----
1 | |
2 | |
| |
(3 rows)
The tuples coming out of cc will still have natts = 1, I believe.
If they were deformed according to pp's tupdesc, there'd be a
problem. Now, we shouldn't do that, because this is not the only
possible discrepancy between parent and child tupdescs --- but
I think this example shows that attnotnull is a lot spongier
than you are assuming, even without considering the possibility
of outright bugs.
regards, tom lane
Andres Freund <andres@anarazel.de> writes:
The computation of that variable above has:
* If the column is possibly missing, we can't rely on its (or
* subsequent) NOT NULL constraints to indicate minimum attributes in
* the tuple, so stop here.
*/
if (att->atthasmissing)
break;
BTW, why do we have to stop? ISTM that a not-null column without
atthasmissing is enough to prove this, regardless of the state of prior
columns. (This is assuming that you trust attnotnull for this, which
as I said I don't, but that's not relevant to this question.) I wonder
also if it wouldn't be smart to explicitly check that the "guaranteeing"
column is not attisdropped.
I think just reformulating that to something like
/*
* Check if it's guaranteed that all the desired attributes are available
* in the tuple (but still possibly NULL), by dint of either the last
* to-be-deformed column being NOT NULL, or subsequent ones not accessed
* here being NOT NULL. If that's not guaranteed the tuple headers natt's
* has to be checked, and missing attributes potentially have to be
* fetched (using slot_getmissingattrs().
*/
should make that clearer?
OK by me.
regards, tom lane
Hi,
On 2019-04-22 13:27:17 -0400, Tom Lane wrote:
Andres Freund <andres@anarazel.de> writes:
The computation of that variable above has:
* If the column is possibly missing, we can't rely on its (or
* subsequent) NOT NULL constraints to indicate minimum attributes in
* the tuple, so stop here.
*/
if (att->atthasmissing)
break;BTW, why do we have to stop? ISTM that a not-null column without
atthasmissing is enough to prove this, regardless of the state of prior
columns. (This is assuming that you trust attnotnull for this, which
as I said I don't, but that's not relevant to this question.)
Are you wondering if we could also use this kind of logic to infer the
length of the null bitmap if there's preceding columns with
atthasmissing true as long as there's a later !hasmissing column that's
NOT NULL? Right. The logic could be made more powerful - I implemented
the above after Andrew's commit of fast-not-null broke JIT (not because
of that logic, but because it simply didn't look up the missing
columns). I assume it doesn't terribly matter to be fast once
attributes after a previously missing one are accessed - it's likely not
going to be the hotly accessed data?
I wonder
also if it wouldn't be smart to explicitly check that the "guaranteeing"
column is not attisdropped.
Yea, that probably would be smart. I don't think there's an active
problem, because we remove NOT NULL when deleting an attribute, but it
seems good to be doubly sure / explain why that's safe:
/* Remove any NOT NULL constraint the column may have */
attStruct->attnotnull = false;
I'm a bit unsure whether to make it an assert, elog(ERROR) or just not
assume column presence?
Greetings,
Andres Freund
Andres Freund <andres@anarazel.de> writes:
On 2019-04-22 13:27:17 -0400, Tom Lane wrote:
I wonder
also if it wouldn't be smart to explicitly check that the "guaranteeing"
column is not attisdropped.
Yea, that probably would be smart. I don't think there's an active
problem, because we remove NOT NULL when deleting an attribute, but it
seems good to be doubly sure / explain why that's safe:
/* Remove any NOT NULL constraint the column may have */
attStruct->attnotnull = false;
I'm a bit unsure whether to make it an assert, elog(ERROR) or just not
assume column presence?
I'd just make the code look like
/*
* If it's NOT NULL then it must be present in every tuple,
* unless there's a "missing" entry that could provide a non-null
* value for it. Out of paranoia, also check !attisdropped.
*/
if (att->attnotnull &&
!att->atthasmissing &&
!att->attisdropped)
guaranteed_column_number = attnum;
I don't think the extra check is so expensive as to be worth obsessing
over.
regards, tom lane
Hi,
On 2019-04-22 14:17:48 -0400, Tom Lane wrote:
Andres Freund <andres@anarazel.de> writes:
On 2019-04-22 13:27:17 -0400, Tom Lane wrote:
I wonder
also if it wouldn't be smart to explicitly check that the "guaranteeing"
column is not attisdropped.Yea, that probably would be smart. I don't think there's an active
problem, because we remove NOT NULL when deleting an attribute, but it
seems good to be doubly sure / explain why that's safe:
/* Remove any NOT NULL constraint the column may have */
attStruct->attnotnull = false;
I'm a bit unsure whether to make it an assert, elog(ERROR) or just not
assume column presence?I'd just make the code look like
/*
* If it's NOT NULL then it must be present in every tuple,
* unless there's a "missing" entry that could provide a non-null
* value for it. Out of paranoia, also check !attisdropped.
*/
if (att->attnotnull &&
!att->atthasmissing &&
!att->attisdropped)
guaranteed_column_number = attnum;I don't think the extra check is so expensive as to be worth obsessing
over.
Oh, yea, the cost is irrelevant here - it's one-off work basically, and
pales in comparison to the cost of JITing. I was more thinking about
whether it's worth "escalating" the violation of assumptions.
Greetings,
Andres Freund
Hi,
On 2019-04-22 13:18:18 -0400, Tom Lane wrote:
Andres Freund <andres@anarazel.de> writes:
(Possibly I'd not think this if I weren't fresh off a couple of days
with my nose in the ALTER TABLE SET NOT NULL code. But right now,
I think that believing that that code does not and never will have
any bugs is just damfool.)But there's plenty places where we rely on NOT NULL actually working?
I do not think there are any other places where we make this particular
assumption.
Sure, not exactly the assumtion that JITed deforming benefits from, but
as far as I can tell, plenty things would be broken just as well if we
allowed NOT NULL columns to not be present (whether "physically" present
or present via atthasmissing) for tuples in a table. Fast defaults
wouldn't work, Assert(!isnull) checks would fire, primary keys would be
broken etc.
In hopes of putting some fear into you too, I exhibit the following
behavior, which is not a bug according to our current definitions:regression=# create table pp(f1 int);
CREATE TABLE
regression=# create table cc() inherits (pp);
CREATE TABLE
regression=# insert into cc values(1);
INSERT 0 1
regression=# insert into cc values(2);
INSERT 0 1
regression=# insert into cc values(null);
INSERT 0 1
regression=# alter table pp add column f2 text;
ALTER TABLE
regression=# alter table pp add column f3 text;
ALTER TABLE
regression=# alter table only pp alter f3 set not null;
ALTER TABLE
regression=# select * from pp;
f1 | f2 | f3
----+----+----
1 | |
2 | |
| |
(3 rows)The tuples coming out of cc will still have natts = 1, I believe.
If they were deformed according to pp's tupdesc, there'd be a
problem. Now, we shouldn't do that, because this is not the only
possible discrepancy between parent and child tupdescs --- but
I think this example shows that attnotnull is a lot spongier
than you are assuming, even without considering the possibility
of outright bugs.
Unortunately it doesn't really put the fear into me - given that
attribute numbers don't even have to match between inheritance children,
making inferrences about the length of the NULL bitmap seems peanuts
compared to the breakage of using the wrong tupdesc to deform.
Greetings,
Andres Freund
On Mon, Apr 22, 2019 at 12:19:55PM -0400, Alvaro Herrera wrote:
On 2019-Apr-22, Andres Freund wrote:
I think it'd be better just to fix s/the all/that all/.
(and s/if's/if it's/)
FWIW, I have noticed that part when gathering all the pieces for what
became 148266f, still the full paragraph was sort of confusing, so I
have just fixed the most obvious issues reported first.
--
Michael
Hi,
On Tue, Apr 23, 2019 at 11:50:42AM +0900, Michael Paquier wrote:
On Mon, Apr 22, 2019 at 12:19:55PM -0400, Alvaro Herrera wrote:
On 2019-Apr-22, Andres Freund wrote:
I think it'd be better just to fix s/the all/that all/.
(and s/if's/if it's/)
FWIW, I have noticed that part when gathering all the pieces for what
became 148266f, still the full paragraph was sort of confusing, so I
have just fixed the most obvious issues reported first.
I saw you closed the item here:
https://wiki.postgresql.org/index.php?title=PostgreSQL_12_Open_Items&diff=33390&oldid=33389
But I think the biggest part of the patch is still not even reviewed ?
I'm referring to ./*review-docs-for-pg12dev.patch
I haven't updated the JIT changes since there's larger discussion regarding the
code.
Justin
On Fri, Apr 26, 2019 at 12:17:22PM -0500, Justin Pryzby wrote:
But I think the biggest part of the patch is still not even reviewed ?
I'm referring to ./*review-docs-for-pg12dev.patch
Nope. I looked at the patch, and as mentioned upthread the suggested
changes did not seem like improvements as the existing sentences make
sense, at least to me. Do you have any particular part of your patch
where you think your wording is an improvement? Why do you think so?
--
Michael
On Sat, Apr 27, 2019 at 09:44:20AM +0900, Michael Paquier wrote:
On Fri, Apr 26, 2019 at 12:17:22PM -0500, Justin Pryzby wrote:
But I think the biggest part of the patch is still not even reviewed ?
I'm referring to ./*review-docs-for-pg12dev.patchNope. I looked at the patch, and as mentioned upthread the suggested
changes did not seem like improvements as the existing sentences make
sense, at least to me. Do you have any particular part of your patch
where you think your wording is an improvement? Why do you think so?
That's mostly new language from v12 commits which I specifically reviewed and
worth cleaning up before release.
If nobody else is interested then I'll forget about it, but they're *all*
(minor) improvements IMO.
I don't think it's be useful to enumerate justifications for each hunk; if one
of them isn't agreed to be an improvement, I'd just remove it.
But here's some one-liner excerpts.
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for
+ is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters for
Adding "the" makes it a complete sentence and not a fragment.
- all autovacuum actions. Minus-one (the default) disables logging
+ all autovacuum actions. <literal>-1</literal> (the default) disables logging
There's nothing else that says "minus-one" anywhere else on that page. I just
found one in auto-explain.sgml, which I changed.
- than 16KB; <function>gss_wrap_size_limit()</function> should be used by the
+ than 16kB; <function>gss_wrap_size_limit()</function> should be used by the
Every other use in documentation has a lowercase "kay", and PG itself doesn't
accept "KB" unit suffix.
- A few features included in the C99 standard are, at this time, not be
+ A few features included in the C99 standard are, at this time, not
permitted to be used in core <productname>PostgreSQL</productname>
Indisputably wrong ?
Justin
On Fri, Apr 26, 2019 at 09:56:47PM -0500, Justin Pryzby wrote:
But here's some one-liner excerpts.
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for + is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters forAdding "the" makes it a complete sentence and not a fragment.
Not sure here either that it matters.
- all autovacuum actions. Minus-one (the default) disables logging + all autovacuum actions. <literal>-1</literal> (the default) disables loggingThere's nothing else that says "minus-one" anywhere else on that page. I just
found one in auto-explain.sgml, which I changed.
That's one of these I am not sure about.
- than 16KB; <function>gss_wrap_size_limit()</function> should be used by the + than 16kB; <function>gss_wrap_size_limit()</function> should be used by theEvery other use in documentation has a lowercase "kay", and PG itself doesn't
accept "KB" unit suffix.
Right. There are more places like that, particularly in the comments
of the code.
- A few features included in the C99 standard are, at this time, not be + A few features included in the C99 standard are, at this time, not permitted to be used in core <productname>PostgreSQL</productname>Indisputably wrong ?
Yep, this one is wrong as-is.
--
Michael
Michael Paquier <michael@paquier.xyz> writes:
On Fri, Apr 26, 2019 at 09:56:47PM -0500, Justin Pryzby wrote:
- all autovacuum actions. Minus-one (the default) disables logging + all autovacuum actions. <literal>-1</literal> (the default) disables loggingThere's nothing else that says "minus-one" anywhere else on that page. I just
found one in auto-explain.sgml, which I changed.
That's one of these I am not sure about.
FWIW, I think we generally write this the way Justin suggests. It's
more precise, at least if you're reading it in a way that makes
<literal> text distinguishable from plain text: what to put into
the config file is exactly "-1", and not for instance "minus-one".
regards, tom lane
On Sat, Apr 27, 2019 at 11:10:46AM -0400, Tom Lane wrote:
FWIW, I think we generally write this the way Justin suggests. It's
more precise, at least if you're reading it in a way that makes
<literal> text distinguishable from plain text: what to put into
the config file is exactly "-1", and not for instance "minus-one".
Okay, sold. I have done and extra pass on v2-0002 and included again
some obvious mistakes. I have noticed a couple of things on the way.
--
Michael
Hi,
On 2019-04-22 14:17:48 -0400, Tom Lane wrote:
Andres Freund <andres@anarazel.de> writes:
On 2019-04-22 13:27:17 -0400, Tom Lane wrote:
I wonder
also if it wouldn't be smart to explicitly check that the "guaranteeing"
column is not attisdropped.Yea, that probably would be smart. I don't think there's an active
problem, because we remove NOT NULL when deleting an attribute, but it
seems good to be doubly sure / explain why that's safe:
/* Remove any NOT NULL constraint the column may have */
attStruct->attnotnull = false;
I'm a bit unsure whether to make it an assert, elog(ERROR) or just not
assume column presence?I'd just make the code look like
/*
* If it's NOT NULL then it must be present in every tuple,
* unless there's a "missing" entry that could provide a non-null
* value for it. Out of paranoia, also check !attisdropped.
*/
if (att->attnotnull &&
!att->atthasmissing &&
!att->attisdropped)
guaranteed_column_number = attnum;I don't think the extra check is so expensive as to be worth obsessing
over.
Pushed. Did so separately from Justin's changes, since this is a small
functional change.
Greetings,
Andres Freund
Hi,
On 2019-04-08 09:18:28 -0500, Justin Pryzby wrote:
From aae1a84b74436951222dba42b21de284ed8b1ac9 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 17:24:35 -0500
Subject: [PATCH v2 03/12] JIT typos....which I sent to Andres some time ago and which I noticed were never applied
(nor rejected)./messages/by-id/20181127184133.GM10913@telsasoft.com
---
src/backend/jit/llvm/llvmjit_deform.c | 22 +++++++++++-----------
src/backend/jit/llvm/llvmjit_inline.cpp | 2 +-
2 files changed, 12 insertions(+), 12 deletions(-)
I pushed these, minus the ones that were obsoleted by the slightly
larger changes resulting from the discussion of this patch.
Thanks for the patch!
Greetings,
Andres Freund
On Sat, Mar 30, 2019 at 05:43:33PM -0500, Justin Pryzby wrote:
I reviewed docs like this:
git log -p remotes/origin/REL_11_STABLE..HEAD -- doc
On Fri, Apr 19, 2019 at 05:00:26PM +0900, Michael Paquier wrote:
However most of what you are proposing does not seem necessary, and the
current phrasing looks correct English to me, but I am not a native speaker.
Michael reviewed and committed several portions of previous version of this
patch, but I think each of the remaining changes are individually each minor
improvements and combine are a significant improvement, so I'm requesting
additional review. I think it'd be much better than submission and review of
dozens of separate mails while individually rediscovering the same things..
Thanks in advance for any review.
Justin
Attachments:
v3-0001-review-docs-for-pg12dev.patchtext/x-diff; charset=us-asciiDownload
From 47e1c875ac18e722cf7c2cf1d3cbb2cff9f0d537 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 18:50:03 -0500
Subject: [PATCH v3 01/12] review docs for pg12dev
---
doc/src/sgml/bloom.sgml | 2 +-
doc/src/sgml/catalogs.sgml | 4 ++--
doc/src/sgml/config.sgml | 15 +++++++------
doc/src/sgml/ddl.sgml | 8 +++----
doc/src/sgml/ecpg.sgml | 16 ++++++--------
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/monitoring.sgml | 44 +++++++++++++++++++-------------------
doc/src/sgml/perform.sgml | 8 +++----
doc/src/sgml/protocol.sgml | 6 +++---
doc/src/sgml/ref/alter_table.sgml | 4 ++--
doc/src/sgml/ref/create_index.sgml | 4 ++--
doc/src/sgml/ref/pg_rewind.sgml | 17 +++++++--------
doc/src/sgml/ref/pgbench.sgml | 6 ++----
doc/src/sgml/ref/reindex.sgml | 2 +-
doc/src/sgml/runtime.sgml | 7 +++---
doc/src/sgml/sources.sgml | 36 +++++++++++++++----------------
doc/src/sgml/xfunc.sgml | 12 +++++------
src/bin/pg_upgrade/check.c | 6 +++---
18 files changed, 98 insertions(+), 101 deletions(-)
diff --git a/doc/src/sgml/bloom.sgml b/doc/src/sgml/bloom.sgml
index 6eeadde..c341b65 100644
--- a/doc/src/sgml/bloom.sgml
+++ b/doc/src/sgml/bloom.sgml
@@ -65,7 +65,7 @@
<para>
Number of bits generated for each index column. Each parameter's name
refers to the number of the index column that it controls. The default
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for
+ is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters for
index columns not actually used are ignored.
</para>
</listitem>
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index 4c7e938..d544e60 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -3052,7 +3052,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
simplifies <command>ATTACH/DETACH PARTITION</command> operations:
the partition dependencies need only be added or removed.
Example: a child partitioned index is made partition-dependent
- on both the partition table it is on and the parent partitioned
+ on both the table partition and the parent partitioned
index, so that it goes away if either of those is dropped, but
not otherwise. The dependency on the parent index is primary,
so that if the user tries to drop the child partitioned index,
@@ -3115,7 +3115,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
Note that it's quite possible for two objects to be linked by more than
one <structname>pg_depend</structname> entry. For example, a child
partitioned index would have both a partition-type dependency on its
- associated partition table, and an auto dependency on each column of
+ associated table partition, and an auto dependency on each column of
that table that it indexes. This sort of situation expresses the union
of multiple dependency semantics. A dependent object can be dropped
without <literal>CASCADE</literal> if any of its dependencies satisfies
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 36062c3..73eb768 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -112,7 +112,7 @@
For example, <literal>30.1 GB</literal> will be converted
to <literal>30822 MB</literal> not <literal>32319628902 B</literal>.
If the parameter is of integer type, a final rounding to integer
- occurs after any units conversion.
+ occurs after any unit conversion.
</para>
</listitem>
@@ -3433,7 +3433,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
current when the base backup was taken. The
value <literal>latest</literal> recovers
to the latest timeline found in the archive, which is useful in
- a standby server. <literal>latest</literal> is the default.
+ a standby server. The default is <literal>latest</literal>.
</para>
<para>
@@ -3540,7 +3540,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
servers or streaming base backup clients (i.e., the maximum number of
simultaneously running WAL sender processes). The default is
<literal>10</literal>. The value <literal>0</literal> means
- replication is disabled. Abrupt streaming client disconnection might
+ replication is disabled. Abrupt disconnection of a streaming client might
leave an orphaned connection slot behind until a timeout is reached,
so this parameter should be set slightly higher than the maximum
number of expected clients so disconnected clients can immediately
@@ -4195,8 +4195,9 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
This parameter is intended for use with streaming replication deployments;
however, if the parameter is specified it will be honored in all cases.
- <varname>hot_standby_feedback</varname> will be delayed by use of this feature
- which could lead to bloat on the master; use both together with care.
+ <varname>hot_standby_feedback</varname> will be delayed by use of this feature.
+ Combinining these settings could lead to bloat on the master, so should
+ be done only with care.
<warning>
<para>
@@ -6947,8 +6948,8 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
<para>
Causes each action executed by autovacuum to be logged if it ran for at
least the specified number of milliseconds. Setting this to zero logs
- all autovacuum actions. <literal>-1</literal> (the default) disables
- logging autovacuum actions. For example, if you set this to
+ all autovacuum actions. <literal>-1</literal> (the default) disables logging
+ autovacuum actions. For example, if you set this to
<literal>250ms</literal> then all automatic vacuums and analyzes that run
250ms or longer will be logged. In addition, when this parameter is
set to any value other than <literal>-1</literal>, a message will be
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index a0a7435..cfe83a8 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3867,12 +3867,12 @@ CREATE INDEX ON measurement (logdate);
<para>
Normally the set of partitions established when initially defining the
- table are not intended to remain static. It is common to want to
- remove old partitions of data and periodically add new partitions for
+ table are not intended to remain static. It's common to
+ remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
- precisely that it allows this otherwise painful task to be executed
+ allowing this otherwise painful task to be executed
nearly instantaneously by manipulating the partition structure, rather
- than physically moving large amounts of data around.
+ than physically moving around large amounts of data.
</para>
<para>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index 6641eee..d2dd96c 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -979,7 +979,7 @@ EXEC SQL END DECLARE SECTION;
<para>
The other way is using the <type>VARCHAR</type> type, which is a
- special type provided by ECPG. The definition on an array of
+ special type provided by ECPG. The definition of an array of
type <type>VARCHAR</type> is converted into a
named <type>struct</type> for every variable. A declaration like:
<programlisting>
@@ -989,7 +989,7 @@ VARCHAR var[180];
<programlisting>
struct varchar_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts the string
+ The member <structfield>arr</structfield> stores the string
including a terminating zero byte. Thus, to store a string in
a <type>VARCHAR</type> host variable, the host variable has to be
declared with the length including the zero byte terminator. The
@@ -1209,8 +1209,8 @@ EXEC SQL END DECLARE SECTION;
<title id="ecpg-type-bytea">bytea</title>
<para>
- The handling of the <type>bytea</type> type is also similar to
- the <type>VARCHAR</type>. The definition on an array of type
+ The handling of the <type>bytea</type> type is similar to
+ the <type>VARCHAR</type>. The definition of an array of type
<type>bytea</type> is converted into a named struct for every
variable. A declaration like:
<programlisting>
@@ -1220,9 +1220,8 @@ bytea var[180];
<programlisting>
struct bytea_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts binary format
- data. It also can handle even <literal>'\0'</literal> as part of
- data unlike <type>VARCHAR</type>.
+ The member <structfield>arr</structfield> stores binary format
+ data, which can include zero bytes, unlike <type>VARCHAR</type>.
The data is converted from/to hex format and sent/received by
ecpglib.
</para>
@@ -7571,8 +7570,7 @@ PREPARE <replaceable class="parameter">name</replaceable> FROM <replaceable clas
<listitem>
<para>
A literal C string or a host variable containing a preparable
- statement, one of the SELECT, INSERT, UPDATE, or
- DELETE.
+ statement (SELECT, INSERT, UPDATE, or DELETE).
</para>
</listitem>
</varlistentry>
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index 7f01fcc..8a8427f 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -1122,7 +1122,7 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname
<term><literal>connect_timeout</literal></term>
<listitem>
<para>
- Maximum wait for connection, in seconds (write as a decimal integer,
+ Maximum time to wait while connecting, in seconds (write as a decimal integer,
e.g. <literal>10</literal>). Zero, negative, or not specified means
wait indefinitely. The minimum allowed timeout is 2 seconds, therefore
a value of <literal>1</literal> is interpreted as <literal>2</literal>.
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index a179d61..6c98596 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -271,13 +271,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<para>
Some of the information in the dynamic statistics views shown in <xref
linkend="monitoring-stats-dynamic-views-table"/> is security restricted.
- Ordinary users can only see all the information about their own sessions
- (sessions belonging to a role that they are a member of). In rows about
+ Ordinary users can only see all information about their own sessions
+ (sessions belonging to a role of which they are a member). In rows for
other sessions, many columns will be null. Note, however, that the
existence of a session and its general properties such as its sessions user
and database are visible to all users. Superusers and members of the
built-in role <literal>pg_read_all_stats</literal> (see also <xref
- linkend="default-roles"/>) can see all the information about all sessions.
+ linkend="default-roles"/>) can see all information about all sessions.
</para>
<table id="monitoring-stats-dynamic-views-table">
@@ -2504,14 +2504,14 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<row>
<entry><structfield>datname</structfield></entry>
<entry><type>name</type></entry>
- <entry>Name of this database, or <literal>NULL</literal> for the shared
+ <entry>Name of this database, or <literal>NULL</literal> for shared
objects.</entry>
</row>
<row>
<entry><structfield>numbackends</structfield></entry>
<entry><type>integer</type></entry>
<entry>Number of backends currently connected to this database, or
- <literal>NULL</literal> for the shared objects. This is the only column
+ <literal>NULL</literal> for shared objects. This is the only column
in this view that returns a value reflecting current state; all other
columns return the accumulated values since the last reset.</entry>
</row>
@@ -2633,7 +2633,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<para>
The <structname>pg_stat_database</structname> view will contain one row
- for each database in the cluster, plus one for the shared objects, showing
+ for each database in the cluster, plus one for shared objects, showing
database-wide statistics.
</para>
@@ -3594,16 +3594,16 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<entry><structfield>partitions_total</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the total number of partitions on which the index is to be created.
+ When creating an index on a partitioned table, this is
+ the total number of partitions to be processed.
</entry>
</row>
<row>
<entry><structfield>partitions_done</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the number of partitions on which the index has been completed.
+ When creating an index on a partitioned table, this is
+ the number of partitions for which the process is complete.
</entry>
</row>
</tbody>
@@ -3643,9 +3643,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<entry>
The index is being built by the access method-specific code. In this phase,
access methods that support progress reporting fill in their own progress data,
- and the subphase is indicated in this column. Typically,
+ and the subphase is indicated in this column.
<structname>blocks_total</structname> and <structname>blocks_done</structname>
- will contain progress data, as well as potentially
+ will contain progress data, as may
<structname>tuples_total</structname> and <structname>tuples_done</structname>.
</entry>
</row>
@@ -3730,15 +3730,15 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>VACUUM Progress Reporting</title>
<para>
- Whenever <command>VACUUM</command> is running, the
- <structname>pg_stat_progress_vacuum</structname> view will contain
- one row for each backend (including autovacuum worker processes) that is
- currently vacuuming. The tables below describe the information
+ The <structname>pg_stat_progress_vacuum</structname> view will contain one
+ row for each backend that is running <command>VACUUM</command>, including
+ autovacuum worker processes.
+ The tables below describe the information
that will be reported and provide information about how to interpret it.
Progress for <command>VACUUM FULL</command> commands is reported via
- <structname>pg_stat_progress_cluster</structname>
- because both <command>VACUUM FULL</command> and <command>CLUSTER</command>
- rewrite the table, while regular <command>VACUUM</command> only modifies it
+ <structname>pg_stat_progress_cluster</structname>,
+ because <command>VACUUM FULL</command> rewrites the table, like <command>CLUSTER</command>,
+ while regular <command>VACUUM</command> only modifies it
in place. See <xref linkend='cluster-progress-reporting'/>.
</para>
@@ -3922,9 +3922,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title>
<para>
- Whenever <command>CLUSTER</command> or <command>VACUUM FULL</command> is
- running, the <structname>pg_stat_progress_cluster</structname> view will
- contain a row for each backend that is currently running either command.
+ The <structname>pg_stat_progress_cluster</structname> view will contain a
+ row for each backend that is running either
+ <command>CLUSTER</command> or <command>VACUUM FULL</command>.
The tables below describe the information that will be reported and
provide information about how to interpret it.
</para>
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml
index a84be85..65c161b 100644
--- a/doc/src/sgml/perform.sgml
+++ b/doc/src/sgml/perform.sgml
@@ -899,10 +899,10 @@ EXPLAIN ANALYZE SELECT * FROM tenk1 WHERE unique1 < 100 AND unique2 > 9000
Generally, the <command>EXPLAIN</command> output will display details for
every plan node which was generated by the query planner. However, there
are cases where the executor is able to determine that certain nodes are
- not required; currently, the only node types to support this are the
- <literal>Append</literal> and <literal>MergeAppend</literal> nodes. These
- node types have the ability to discard subnodes which they are able to
- determine won't contain any records required by the query. It is possible
+ not required; currently, the only node types to support this are
+ <literal>Append</literal> and <literal>MergeAppend</literal>, which
+ are able to discard subnodes when it's deduced that
+ they will not contain any records required by the query. It is possible
to determine that nodes have been removed in this way by the presence of a
"Subplans Removed" property in the <command>EXPLAIN</command> output.
</para>
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml
index b20f169..70f7286 100644
--- a/doc/src/sgml/protocol.sgml
+++ b/doc/src/sgml/protocol.sgml
@@ -1515,7 +1515,7 @@ SELECT 1/0;
the server will only accept encrypted packets from the client which are less
than 16kB; <function>gss_wrap_size_limit()</function> should be used by the
client to determine the size of the unencrypted message which will fit
- within this limit and larger messages should be broken up into multiple
+ within this limit; larger messages should be broken up into multiple
<function>gss_wrap()</function> calls. Typical segments are 8kB of
unencrypted data, resulting in encrypted packets of slightly larger than 8kB
but well within the 16kB maximum. The server can be expected to not send
@@ -1531,8 +1531,8 @@ SELECT 1/0;
support to <productname>PostgreSQL</productname>. In this case the
connection must be closed, but the frontend might choose to open a fresh
connection and proceed without requesting <acronym>GSSAPI</acronym>
- encryption. Given the length limits specified above, the ErrorMessage can
- not be confused with a proper response from the server with an appropriate
+ encryption. Given the length limits specified above, the ErrorMessage
+ cannot be confused with a proper response from the server with an appropriate
length.
</para>
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 49b081a..dd80bd0 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -219,7 +219,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<para>
<literal>SET NOT NULL</literal> may only be applied to a column
- providing none of the records in the table contain a
+ provided none of the records in the table contain a
<literal>NULL</literal> value for the column. Ordinarily this is
checked during the <literal>ALTER TABLE</literal> by scanning the
entire table; however, if a valid <literal>CHECK</literal> constraint is
@@ -642,7 +642,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
When applied to a partitioned table, nothing is moved, but any
partitions created afterwards with
<command>CREATE TABLE PARTITION OF</command> will use that tablespace,
- unless the <literal>TABLESPACE</literal> clause is used to override it.
+ unless overridden by its <literal>TABLESPACE</literal> clause.
</para>
<para>
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index 30bb38b..bf4f550 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -181,8 +181,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
</para>
<para>
- Currently, the B-tree and the GiST index access methods support this
- feature. In B-tree and the GiST indexes, the values of columns listed
+ Currently, only the B-tree and GiST index access methods support this
+ feature. In B-tree and GiST indexes, the values of columns listed
in the <literal>INCLUDE</literal> clause are included in leaf tuples
which correspond to heap tuples, but are not included in upper-level
index entries used for tree navigation.
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml
index 4d91eeb..6f6d220 100644
--- a/doc/src/sgml/ref/pg_rewind.sgml
+++ b/doc/src/sgml/ref/pg_rewind.sgml
@@ -106,15 +106,14 @@ PostgreSQL documentation
</para>
<para>
- <application>pg_rewind</application> will fail immediately if it finds
- files it cannot write directly to. This can happen for example when
- the source and the target server use the same file mapping for read-only
- SSL keys and certificates. If such files are present on the target server
+ <application>pg_rewind</application> will fail immediately if it experiences
+ a write error. This can happen for example when
+ the source and target server use the same file mapping for read-only
+ SSL keys and certificates. If such files are present on the target server,
it is recommended to remove them before running
- <application>pg_rewind</application>. After doing the rewind, some of
+ <application>pg_rewind</application>. After performing the rewind, some of
those files may have been copied from the source, in which case it may
- be necessary to remove the data copied and restore back the set of links
- used before the rewind.
+ be necessary to remove them and restore the files removed beforehand.
</para>
</warning>
</refsect1>
@@ -185,7 +184,7 @@ PostgreSQL documentation
<command>pg_rewind</command> to return without waiting, which is
faster, but means that a subsequent operating system crash can leave
the synchronized data folder corrupt. Generally, this option is
- useful for testing but should not be used when creating a production
+ useful for testing but should not be used on a production
installation.
</para>
</listitem>
@@ -266,7 +265,7 @@ GRANT EXECUTE ON function pg_catalog.pg_read_binary_file(text, bigint, bigint, b
<para>
When executing <application>pg_rewind</application> using an online
cluster as source which has been recently promoted, it is necessary
- to execute a <command>CHECKPOINT</command> after promotion so as its
+ to execute a <command>CHECKPOINT</command> after promotion such that its
control file reflects up-to-date timeline information, which is used by
<application>pg_rewind</application> to check if the target cluster
can be rewound using the designated source cluster.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index ef22a48..7e8fc19 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -474,10 +474,8 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
</listitem>
</itemizedlist>
- Because in "prepared" mode <application>pgbench</application> reuses
- the parse analysis result for the second and subsequent query
- iteration, <application>pgbench</application> runs faster in the
- prepared mode than in other modes.
+ <application>pgbench</application> runs faster in prepared mode because the
+ parse analysis happens only during the first query.
</para>
<para>
The default is simple query protocol. (See <xref linkend="protocol"/>
diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml
index 303436c..5a1f634 100644
--- a/doc/src/sgml/ref/reindex.sgml
+++ b/doc/src/sgml/ref/reindex.sgml
@@ -240,7 +240,7 @@ REINDEX [ ( VERBOSE ) ] { INDEX | TABLE | SCHEMA | DATABASE | SYSTEM } [ CONCURR
<para>
Reindexing a single index or table requires being the owner of that
index or table. Reindexing a schema or database requires being the
- owner of that schema or database. Note that is therefore sometimes
+ owner of that schema or database. Note specifically that it's
possible for non-superusers to rebuild indexes of tables owned by
other users. However, as a special exception, when
<command>REINDEX DATABASE</command>, <command>REINDEX SCHEMA</command>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index e053e2e..798da30 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -2634,8 +2634,9 @@ openssl x509 -req -in server.csr -text -days 365 \
using <acronym>GSSAPI</acronym> to encrypt client/server communications for
increased security. Support requires that a <acronym>GSSAPI</acronym>
implementation (such as MIT krb5) is installed on both client and server
- systems, and that support in <productname>PostgreSQL</productname> is
- enabled at build time (see <xref linkend="installation"/>).
+ systems, and must be enabled at the time
+ <productname>PostgreSQL</productname> is built (see <xref
+ linkend="installation"/>).
</para>
<sect2 id="gssapi-setup">
@@ -2644,7 +2645,7 @@ openssl x509 -req -in server.csr -text -days 365 \
<para>
The <productname>PostgreSQL</productname> server will listen for both
normal and <acronym>GSSAPI</acronym>-encrypted connections on the same TCP
- port, and will negotiate with any connecting client on whether to
+ port, and will negotiate with any connecting client whether to
use <acronym>GSSAPI</acronym> for encryption (and for authentication). By
default, this decision is up to the client (which means it can be
downgraded by an attacker); see <xref linkend="auth-pg-hba-conf"/> about
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index a339ebb..2b9f59d 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -103,7 +103,7 @@ less -x4
message text. In addition there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
- <function>ereport</function> itself is just a shell function, that exists
+ <function>ereport</function> itself is just a shell function that exists
mainly for the syntactic convenience of making message generation
look like a function call in the C source code. The only parameter
accepted directly by <function>ereport</function> is the severity level.
@@ -359,7 +359,7 @@ ereport(ERROR,
specify suppression of the <literal>CONTEXT:</literal> portion of a message in
the postmaster log. This should only be used for verbose debugging
messages where the repeated inclusion of context would bloat the log
- volume too much.
+ too much.
</para>
</listitem>
</itemizedlist>
@@ -452,8 +452,8 @@ Hint: the addendum
enough for error messages. Detail and hint messages can be relegated to a
verbose mode, or perhaps a pop-up error-details window. Also, details and
hints would normally be suppressed from the server log to save
- space. Reference to implementation details is best avoided since users
- aren't expected to know the details.
+ space. References to implementation details are best avoided since users
+ aren't expected to know them.
</para>
</simplesect>
@@ -504,14 +504,14 @@ Hint: the addendum
<title>Use of Quotes</title>
<para>
- Use quotes always to delimit file names, user-supplied identifiers, and
+ Always use quotes to delimit file names, user-supplied identifiers, and
other variables that might contain words. Do not use them to mark up
variables that will not contain words (for example, operator names).
</para>
<para>
There are functions in the backend that will double-quote their own output
- at need (for example, <function>format_type_be()</function>). Do not put
+ as needed (for example, <function>format_type_be()</function>). Do not put
additional quotes around the output of such functions.
</para>
@@ -880,16 +880,16 @@ BETTER: unrecognized node type: 42
practices.
</para>
<para>
- Features from later revision of the C standard or compiler specific
+ Features from later revisions of the C standard or compiler specific
features can be used, if a fallback is provided.
</para>
<para>
- For example <literal>_StaticAssert()</literal> and
+ For example, <literal>_StaticAssert()</literal> and
<literal>__builtin_constant_p</literal> are currently used, even though
- they are from newer revisions of the C standard and a
- <productname>GCC</productname> extension respectively. If not available
- we respectively fall back to using a C99 compatible replacement that
- performs the same checks, but emits rather cryptic messages and do not
+ they are from a newer revision of the C standard and a
+ <productname>GCC</productname> extension, respectively. If not available, in the first case,
+ we fall back to using a C99 compatible replacement that
+ performs the same checks, but emits rather cryptic messages; in the second case, we do not
use <literal>__builtin_constant_p</literal>.
</para>
</simplesect>
@@ -939,8 +939,8 @@ MemoryContextSwitchTo(MemoryContext context)
To be suitable to run inside a signal handler code has to be
written very carefully. The fundamental problem is that, unless
blocked, a signal handler can interrupt code at any time. If code
- inside the signal handler uses the same state as code outside
- chaos may ensue. As an example consider what happens if a signal
+ inside the signal handler uses the same state as code outside,
+ chaos may ensue. As an example, consider what happens if a signal
handler tries to acquire a lock that's already held in the
interrupted code.
</para>
@@ -948,7 +948,7 @@ MemoryContextSwitchTo(MemoryContext context)
Barring special arrangements code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
- functions in <command>postgres</command> are also deemed signal safe, importantly
+ functions in <command>postgres</command> are also deemed signal safe; specifically,
<function>SetLatch()</function>.
</para>
<para>
@@ -969,9 +969,9 @@ handle_sighup(SIGNAL_ARGS)
}
</programlisting>
<varname>errno</varname> is saved and restored because
- <function>SetLatch()</function> might change it. If that were not done
- interrupted code that's currently inspecting <varname>errno</varname> might see the wrong
- value.
+ <function>SetLatch()</function> might change it. If that were not done,
+ code interrupted by a signal might see the wrong value of
+ <varname>errno</varname>.
</para>
</simplesect>
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 3403269..5c17b10 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3364,11 +3364,11 @@ if (!ptr)
</indexterm>
<para>
- By default, a function is just a <quote>black box</quote> that the
- database system knows very little about the behavior of. However,
- that means that queries using the function may be executed much less
+ By default, a function is a <quote>black box</quote> that the
+ database system knows very little about, which
+ means queries calling the function may be executed less
efficiently than they could be. It is possible to supply additional
- knowledge that helps the planner optimize function calls.
+ information that helps the planner optimize function calls.
</para>
<para>
@@ -3381,7 +3381,7 @@ if (!ptr)
The parallel safety property (<literal>PARALLEL
UNSAFE</literal>, <literal>PARALLEL RESTRICTED</literal>, or
<literal>PARALLEL SAFE</literal>) must also be specified if you hope
- to use the function in parallelized queries.
+ queries calling the function to use parallel query.
It can also be useful to specify the function's estimated execution
cost, and/or the number of rows a set-returning function is estimated
to return. However, the declarative way of specifying those two
@@ -3393,7 +3393,7 @@ if (!ptr)
It is also possible to attach a <firstterm>planner support
function</firstterm> to a SQL-callable function (called
its <firstterm>target function</firstterm>), and thereby provide
- knowledge about the target function that is too complex to be
+ information about the target function that is too complex to be
represented declaratively. Planner support functions have to be
written in C (although their target functions might not be), so this is
an advanced feature that relatively few people will use.
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index 617270f..370c7aa 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -222,13 +222,13 @@ output_completion_banner(char *analyze_script_file_name,
/* Did we copy the free space files? */
if (GET_MAJOR_VERSION(old_cluster.major_version) >= 804)
pg_log(PG_REPORT,
- "Optimizer statistics are not transferred by pg_upgrade so,\n"
- "once you start the new server, consider running:\n"
+ "Optimizer statistics are not transferred by pg_upgrade.\n"
+ "Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
else
pg_log(PG_REPORT,
"Optimizer statistics and free space information are not transferred\n"
- "by pg_upgrade so, once you start the new server, consider running:\n"
+ "by pg_upgrade. Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
--
2.7.4
v3-0002-Add-comma-for-readability.patchtext/x-diff; charset=us-asciiDownload
From d8c8b5416726909203db53cfa73ea2c7cc0fe9a0 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:37:35 -0500
Subject: [PATCH v3 02/12] Add comma for readability
---
doc/src/sgml/backup.sgml | 2 +-
doc/src/sgml/bki.sgml | 2 +-
doc/src/sgml/client-auth.sgml | 4 ++--
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/indices.sgml | 2 +-
doc/src/sgml/installation.sgml | 2 +-
doc/src/sgml/logical-replication.sgml | 2 +-
doc/src/sgml/protocol.sgml | 6 +++---
doc/src/sgml/ref/create_table.sgml | 2 +-
doc/src/sgml/ref/create_table_as.sgml | 2 +-
doc/src/sgml/ref/pgupgrade.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
doc/src/sgml/sources.sgml | 14 +++++++-------
doc/src/sgml/wal.sgml | 2 +-
doc/src/sgml/xoper.sgml | 2 +-
16 files changed, 26 insertions(+), 26 deletions(-)
diff --git a/doc/src/sgml/backup.sgml b/doc/src/sgml/backup.sgml
index b67da89..ae41bc7 100644
--- a/doc/src/sgml/backup.sgml
+++ b/doc/src/sgml/backup.sgml
@@ -1024,7 +1024,7 @@ SELECT pg_start_backup('label', true);
consider during this backup.
</para>
<para>
- As noted above, if the server crashes during the backup it may not be
+ As noted above, if the server crashes during the backup, it may not be
possible to restart until the <literal>backup_label</literal> file has
been manually deleted from the <envar>PGDATA</envar> directory. Note
that it is very important to never remove the
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index aa3d6f8..e27fa76 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -403,7 +403,7 @@
8000—9999. This minimizes the risk of OID collisions with other
patches being developed concurrently. To keep the 8000—9999
range free for development purposes, after a patch has been committed
- to the master git repository its OIDs should be renumbered into
+ to the master git repository, its OIDs should be renumbered into
available space below that range. Typically, this will be done
near the end of each development cycle, moving all OIDs consumed by
patches committed in that cycle at the same time. The script
diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml
index ffed887..098900e 100644
--- a/doc/src/sgml/client-auth.sgml
+++ b/doc/src/sgml/client-auth.sgml
@@ -157,7 +157,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>SSL</acronym> support. Furthermore,
<acronym>SSL</acronym> must be enabled
by setting the <xref linkend="guc-ssl"/> configuration parameter (see
@@ -189,7 +189,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>GSSAPI</acronym> support. Otherwise,
the <literal>hostgssenc</literal> record is ignored except for logging
a warning that it cannot match any connections.
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 73eb768..54b91d3 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3458,7 +3458,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
reached. The default is <literal>pause</literal>, which means recovery will
be paused. <literal>promote</literal> means the recovery process will finish
and the server will start to accept connections.
- Finally <literal>shutdown</literal> will stop the server after reaching the
+ Finally, <literal>shutdown</literal> will stop the server after reaching the
recovery target.
</para>
<para>
@@ -4188,7 +4188,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
</para>
<para>
The delay occurs once the database in recovery has reached a consistent
- state, until the standby is promoted or triggered. After that the standby
+ state, until the standby is promoted or triggered. After that, the standby
will end recovery without further waiting.
</para>
<para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index cfe83a8..8135507 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3866,7 +3866,7 @@ CREATE INDEX ON measurement (logdate);
<title>Partition Maintenance</title>
<para>
- Normally the set of partitions established when initially defining the
+ Normally, the set of partitions established when initially defining the
table are not intended to remain static. It's common to
remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml
index 95c0a19..e940ddb 100644
--- a/doc/src/sgml/indices.sgml
+++ b/doc/src/sgml/indices.sgml
@@ -1081,7 +1081,7 @@ SELECT x FROM tab WHERE x = 'key' AND z < 42;
scan. Even in the successful case, this approach trades visibility map
accesses for heap accesses; but since the visibility map is four orders
of magnitude smaller than the heap it describes, far less physical I/O is
- needed to access it. In most situations the visibility map remains
+ needed to access it. In most situations, the visibility map remains
cached in memory all the time.
</para>
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 4493862..847e028 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -2527,7 +2527,7 @@ xcodebuild -version -sdk macosx Path
</programlisting>
Note that building an extension using a different sysroot version than
was used to build the core server is not really recommended; in the
- worst case it could result in hard-to-debug ABI inconsistencies.
+ worst case, it could result in hard-to-debug ABI inconsistencies.
</para>
<para>
diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml
index 3f2f674..31c814c 100644
--- a/doc/src/sgml/logical-replication.sgml
+++ b/doc/src/sgml/logical-replication.sgml
@@ -201,7 +201,7 @@
<para>
Subscriptions are dumped by <command>pg_dump</command> if the current user
- is a superuser. Otherwise a warning is written and subscriptions are
+ is a superuser. Otherwise, a warning is written and subscriptions are
skipped, because non-superusers cannot read all subscription information
from the <structname>pg_subscription</structname> catalog.
</para>
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml
index 70f7286..3f907f6 100644
--- a/doc/src/sgml/protocol.sgml
+++ b/doc/src/sgml/protocol.sgml
@@ -1449,7 +1449,7 @@ SELECT 1/0;
<literal>S</literal>, perform an <acronym>SSL</acronym> startup handshake
(not described here, part of the <acronym>SSL</acronym>
specification) with the server. If this is successful, continue
- with sending the usual StartupMessage. In this case the
+ with sending the usual StartupMessage. In this case, the
StartupMessage and all subsequent data will be
<acronym>SSL</acronym>-encrypted. To continue after
<literal>N</literal>, send the usual StartupMessage and proceed without
@@ -1462,7 +1462,7 @@ SELECT 1/0;
the server predates the addition of <acronym>SSL</acronym> support
to <productname>PostgreSQL</productname>. (Such servers are now very ancient,
and likely do not exist in the wild anymore.)
- In this case the connection must
+ In this case, the connection must
be closed, but the frontend might choose to open a fresh connection
and proceed without requesting <acronym>SSL</acronym>.
</para>
@@ -1528,7 +1528,7 @@ SELECT 1/0;
The frontend should also be prepared to handle an ErrorMessage
response to GSSENCRequest from the server. This would only occur if
the server predates the addition of <acronym>GSSAPI</acronym> encryption
- support to <productname>PostgreSQL</productname>. In this case the
+ support to <productname>PostgreSQL</productname>. In this case, the
connection must be closed, but the frontend might choose to open a fresh
connection and proceed without requesting <acronym>GSSAPI</acronym>
encryption. Given the length limits specified above, the ErrorMessage
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 44a61ef..dbb1468 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1189,7 +1189,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
This clause specifies optional storage parameters for a table or index;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should not contain OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml
index b5c4ce6..0880459 100644
--- a/doc/src/sgml/ref/create_table_as.sgml
+++ b/doc/src/sgml/ref/create_table_as.sgml
@@ -142,7 +142,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
This clause specifies optional storage parameters for the new table;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should contain no OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml
index 8288676..6a898d9 100644
--- a/doc/src/sgml/ref/pgupgrade.sgml
+++ b/doc/src/sgml/ref/pgupgrade.sgml
@@ -746,7 +746,7 @@ psql --username=postgres --file=script.sql postgres
<application>pg_upgrade</application> launches short-lived postmasters in
the old and new data directories. Temporary Unix socket files for
communication with these postmasters are, by default, made in the current
- working directory. In some situations the path name for the current
+ working directory. In some situations, the path name for the current
directory might be too long to be a valid socket name. In that case you
can use the <option>-s</option> option to put the socket files in some
directory with a shorter path name. For security, be sure that that
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index b867640..55cc78c 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1053,7 +1053,7 @@ testdb=>
These operations are not as efficient as the <acronym>SQL</acronym>
<command>COPY</command> command with a file or program data source or
destination, because all data must pass through the client/server
- connection. For large amounts of data the <acronym>SQL</acronym>
+ connection. For large amounts of data, the <acronym>SQL</acronym>
command might be preferable.
</para>
</tip>
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 2b9f59d..520bbae 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -100,7 +100,7 @@ less -x4
<para>
There are two required elements for every message: a severity level
(ranging from <literal>DEBUG</literal> to <literal>PANIC</literal>) and a primary
- message text. In addition there are optional elements, the most
+ message text. In addition, there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
<function>ereport</function> itself is just a shell function that exists
@@ -473,7 +473,7 @@ Hint: the addendum
<para>
Rationale: Messages are not necessarily displayed on terminal-type
- displays. In GUI displays or browsers these formatting instructions are
+ displays. In GUI displays or browsers, these formatting instructions are
at best ignored.
</para>
@@ -897,14 +897,14 @@ BETTER: unrecognized node type: 42
<simplesect>
<title>Function-Like Macros and Inline Functions</title>
<para>
- Both, macros with arguments and <literal>static inline</literal>
- functions, may be used. The latter are preferable if there are
+ Both macros with arguments and <literal>static inline</literal>
+ functions may be used. The latter are preferable if there are
multiple-evaluation hazards when written as a macro, as e.g. the
case with
<programlisting>
#define Max(x, y) ((x) > (y) ? (x) : (y))
</programlisting>
- or when the macro would be very long. In other cases it's only
+ or when the macro would be very long. In other cases, it's only
possible to use macros, or at least easier. For example because
expressions of various types need to be passed to the macro.
</para>
@@ -936,7 +936,7 @@ MemoryContextSwitchTo(MemoryContext context)
<simplesect>
<title>Writing Signal Handlers</title>
<para>
- To be suitable to run inside a signal handler code has to be
+ To be suitable to run inside a signal handler, code has to be
written very carefully. The fundamental problem is that, unless
blocked, a signal handler can interrupt code at any time. If code
inside the signal handler uses the same state as code outside,
@@ -945,7 +945,7 @@ MemoryContextSwitchTo(MemoryContext context)
interrupted code.
</para>
<para>
- Barring special arrangements code in signal handlers may only
+ Barring special arrangements, code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
functions in <command>postgres</command> are also deemed signal safe; specifically,
diff --git a/doc/src/sgml/wal.sgml b/doc/src/sgml/wal.sgml
index 4eb8feb..30bde24 100644
--- a/doc/src/sgml/wal.sgml
+++ b/doc/src/sgml/wal.sgml
@@ -326,7 +326,7 @@
before returning a success indication to the client. The client is
therefore guaranteed that a transaction reported to be committed will
be preserved, even in the event of a server crash immediately after.
- However, for short transactions this delay is a major component of the
+ However, for short transactions, this delay is a major component of the
total transaction time. Selecting asynchronous commit mode means that
the server returns success as soon as the transaction is logically
completed, before the <acronym>WAL</acronym> records it generated have
diff --git a/doc/src/sgml/xoper.sgml b/doc/src/sgml/xoper.sgml
index 260e43c..55cd3b1 100644
--- a/doc/src/sgml/xoper.sgml
+++ b/doc/src/sgml/xoper.sgml
@@ -375,7 +375,7 @@ table1.column1 OP table2.column2
Another example is that on machines that meet the <acronym>IEEE</acronym>
floating-point standard, negative zero and positive zero are different
values (different bit patterns) but they are defined to compare equal.
- If a float value might contain negative zero then extra steps are needed
+ If a float value might contain negative zero, then extra steps are needed
to ensure it generates the same hash value as positive zero.
</para>
--
2.7.4
v3-0003-Consistent-language-must-be-superuser.patchtext/x-diff; charset=us-asciiDownload
From 4d7e3b99d6e9e203e539cc8658554294121732b1 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:40:49 -0500
Subject: [PATCH v3 03/12] Consistent language: "must be superuser"
---
src/backend/storage/ipc/signalfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/storage/ipc/signalfuncs.c b/src/backend/storage/ipc/signalfuncs.c
index 4bfbd57..1df5861 100644
--- a/src/backend/storage/ipc/signalfuncs.c
+++ b/src/backend/storage/ipc/signalfuncs.c
@@ -115,7 +115,7 @@ pg_cancel_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to cancel superuser query"))));
+ (errmsg("must be superuser to cancel superuser query"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
@@ -139,12 +139,12 @@ pg_terminate_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to terminate superuser process"))));
+ (errmsg("must be superuser to terminate superuser process"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a member of the role whose process is being terminated or member of pg_signal_backend"))));
+ (errmsg("must be member of role whose process is being terminated or member of pg_signal_backend"))));
PG_RETURN_BOOL(r == SIGNAL_BACKEND_SUCCESS);
}
--
2.7.4
v3-0004-Consistent-spelling-timestamp.patchtext/x-diff; charset=us-asciiDownload
From 3bfc312896f1a1a573c25cd2c59b1262f6a5f354 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:52:22 -0500
Subject: [PATCH v3 04/12] Consistent spelling: "timestamp"
---
doc/src/sgml/config.sgml | 14 ++++++-------
doc/src/sgml/datatype.sgml | 6 +++---
doc/src/sgml/ecpg.sgml | 4 ++--
doc/src/sgml/func.sgml | 30 +++++++++++++--------------
doc/src/sgml/logicaldecoding.sgml | 4 ++--
doc/src/sgml/plpgsql.sgml | 2 +-
doc/src/sgml/ref/pgbench.sgml | 6 +++---
doc/src/sgml/replication-origins.sgml | 2 +-
doc/src/sgml/trigger.sgml | 2 +-
doc/src/sgml/uuid-ossp.sgml | 2 +-
src/backend/utils/misc/guc.c | 4 ++--
src/backend/utils/misc/postgresql.conf.sample | 2 +-
src/include/catalog/pg_control.h | 4 ++--
src/interfaces/ecpg/pgtypeslib/timestamp.c | 4 ++--
14 files changed, 43 insertions(+), 43 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 54b91d3..e919e2c 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3344,7 +3344,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
</term>
<listitem>
<para>
- This parameter specifies the time stamp up to which recovery
+ This parameter specifies the timestamp up to which recovery
will proceed.
The precise stopping point is also influenced by
<xref linkend="guc-recovery-target-inclusive"/>.
@@ -4171,7 +4171,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
<para>
It is possible that the replication delay between servers exceeds the
value of this parameter, in which case no delay is added.
- Note that the delay is calculated between the WAL time stamp as written
+ Note that the delay is calculated between the WAL timestamp as written
on master and the current time on the standby. Delays in transfer
because of network lag or cascading replication configurations
may reduce the actual wait time significantly. If the system
@@ -6255,7 +6255,7 @@ local0.* /var/log/postgresql
readability in log files.
This parameter can only be set in the <filename>postgresql.conf</filename>
file or on the server command line. The default is
- <literal>'%m [%p] '</literal> which logs a time stamp and the process ID.
+ <literal>'%m [%p] '</literal> which logs a timestamp and the process ID.
<informaltable>
<tgroup cols="3">
@@ -6334,7 +6334,7 @@ local0.* /var/log/postgresql
</row>
<row>
<entry><literal>%s</literal></entry>
- <entry>Process start time stamp</entry>
+ <entry>Process start timestamp</entry>
<entry>no</entry>
</row>
<row>
@@ -6389,7 +6389,7 @@ FROM pg_stat_activity;
<tip>
<para>
<application>Syslog</application> produces its own
- time stamp and process ID information, so you probably do not want to
+ timestamp and process ID information, so you probably do not want to
include those escapes if you are logging to <application>syslog</application>.
</para>
</tip>
@@ -6538,7 +6538,7 @@ log_line_prefix = '%m [%p] %q%u@%d/%a '
This option emits log lines in comma-separated-values
(<acronym>CSV</acronym>) format,
with these columns:
- time stamp with milliseconds,
+ timestamp with milliseconds,
user name,
database name,
process ID,
@@ -7976,7 +7976,7 @@ SET XML OPTION { DOCUMENT | CONTENT };
</term>
<listitem>
<para>
- Sets the time zone for displaying and interpreting time stamps.
+ Sets the time zone for displaying and interpreting timestamps.
The built-in default is <literal>GMT</literal>, but that is typically
overridden in <filename>postgresql.conf</filename>; <application>initdb</application>
will install a setting there corresponding to its system environment.
diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml
index fc300f6..0890106 100644
--- a/doc/src/sgml/datatype.sgml
+++ b/doc/src/sgml/datatype.sgml
@@ -2031,7 +2031,7 @@ MINUTE TO SECOND
</indexterm>
<para>
- Valid input for the time stamp types consists of the concatenation
+ Valid input for the timestamp types consists of the concatenation
of a date and a time, followed by an optional time zone,
followed by an optional <literal>AD</literal> or <literal>BC</literal>.
(Alternatively, <literal>AD</literal>/<literal>BC</literal> can appear
@@ -2159,12 +2159,12 @@ January 8 04:05:06 1999 PST
<row>
<entry><literal>infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>later than all other time stamps</entry>
+ <entry>later than all other timestamps</entry>
</row>
<row>
<entry><literal>-infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>earlier than all other time stamps</entry>
+ <entry>earlier than all other timestamps</entry>
</row>
<row>
<entry><literal>now</literal></entry>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index d2dd96c..3c42c0a 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -1030,7 +1030,7 @@ struct varchar_var { int len; char arr[180]; } var;
the pgtypes library. The pgtypes library, described in detail
in <xref linkend="ecpg-pgtypes"/> contains basic functions to deal
with those types, such that you do not need to send a query to
- the SQL server just for adding an interval to a time stamp for
+ the SQL server just for adding an interval to a timestamp for
example.
</para>
@@ -3622,7 +3622,7 @@ void PGTYPESdecimal_free(decimal *var);
<term><literal>PGTYPESInvalidTimestamp</literal></term>
<listitem>
<para>
- A value of type timestamp representing an invalid time stamp. This is
+ A value of type timestamp representing an invalid timestamp. This is
returned by the function <function>PGTYPEStimestamp_from_asc</function> on
parse error.
Note that due to the internal representation of the <type>timestamp</type> data type,
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index bc2275c..d425731 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -5990,7 +5990,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_char(<type>timestamp</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>text</type></entry>
- <entry>convert time stamp to string</entry>
+ <entry>convert timestamp to string</entry>
<entry><literal>to_char(current_timestamp, 'HH12:MI:SS')</literal></entry>
</row>
<row>
@@ -6048,7 +6048,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_timestamp(<type>text</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>convert string to time stamp</entry>
+ <entry>convert string to timestamp</entry>
<entry><literal>to_timestamp('05 Dec 2000', 'DD Mon YYYY')</literal></entry>
</row>
</tbody>
@@ -7383,7 +7383,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<row>
<entry><literal><function>isfinite(<type>timestamp</type>)</function></literal></entry>
<entry><type>boolean</type></entry>
- <entry>Test for finite time stamp (not +/-infinity)</entry>
+ <entry>Test for finite timestamp (not +/-infinity)</entry>
<entry><literal>isfinite(timestamp '2001-02-16 21:28:30')</literal></entry>
<entry><literal>true</literal></entry>
</row>
@@ -7673,8 +7673,8 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
</synopsis>
This expression yields true when two time periods (defined by their
endpoints) overlap, false when they do not overlap. The endpoints
- can be specified as pairs of dates, times, or time stamps; or as
- a date, time, or time stamp followed by an interval. When a pair
+ can be specified as pairs of dates, times, or timestamps; or as
+ a date, time, or timestamp followed by an interval. When a pair
of values is provided, either the start or the end can be written
first; <literal>OVERLAPS</literal> automatically takes the earlier value
of the pair as the start. Each time period is considered to
@@ -7907,7 +7907,7 @@ SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');
</screen>
<para>
- You can convert an epoch value back to a time stamp
+ You can convert an epoch value back to a timestamp
with <function>to_timestamp</function>:
</para>
<screen>
@@ -8314,7 +8314,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<para>
The <literal>AT TIME ZONE</literal> converts time
stamp <emphasis>without time zone</emphasis> to/from
- time stamp <emphasis>with time zone</emphasis>, and
+ timestamp <emphasis>with time zone</emphasis>, and
<emphasis>time</emphasis> values to different time zones. <xref
linkend="functions-datetime-zoneconvert-table"/> shows its variants.
</para>
@@ -8336,7 +8336,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp without time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Treat given time stamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
+ <entry>Treat given timestamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
</row>
<row>
@@ -8344,7 +8344,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp with time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp without time zone</type></entry>
- <entry>Convert given time stamp <emphasis>with time zone</emphasis> to the new time
+ <entry>Convert given timestamp <emphasis>with time zone</emphasis> to the new time
zone, with no time zone designation</entry>
</row>
@@ -8381,7 +8381,7 @@ SELECT TIMESTAMP '2001-02-16 20:38:40-05' AT TIME ZONE 'Asia/Tokyo' AT TIME ZONE
</screen>
The first example adds a time zone to a value that lacks it, and
displays the value using the current <varname>TimeZone</varname>
- setting. The second example shifts the time stamp with time zone value
+ setting. The second example shifts the timestamp with time zone value
to the specified time zone, and returns the value without a time zone.
This allows storage and display of values different from the current
<varname>TimeZone</varname> setting. The third example converts
@@ -8474,7 +8474,7 @@ SELECT LOCALTIMESTAMP;
the intent is to allow a single transaction to have a consistent
notion of the <quote>current</quote> time, so that multiple
modifications within the same transaction bear the same
- time stamp.
+ timestamp.
</para>
<note>
@@ -20171,7 +20171,7 @@ postgres=# SELECT * FROM pg_walfile_name_offset(pg_stop_backup());
<literal><function>pg_last_xact_replay_timestamp()</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Get time stamp of last transaction replayed during recovery.
+ <entry>Get timestamp of last transaction replayed during recovery.
This is the time at which the commit or abort WAL record for that
transaction was generated on the primary.
If no transactions have been replayed during recovery, this function
@@ -21631,9 +21631,9 @@ SELECT convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');
</indexterm>
<para>
<function>pg_stat_file</function> returns a record containing the file
- size, last accessed time stamp, last modified time stamp,
- last file status change time stamp (Unix platforms only),
- file creation time stamp (Windows only), and a <type>boolean</type>
+ size, last accessed timestamp, last modified timestamp,
+ last file status change timestamp (Unix platforms only),
+ file creation timestamp (Windows only), and a <type>boolean</type>
indicating if it is a directory. Typical usages include:
<programlisting>
SELECT * FROM pg_stat_file('filename');
diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml
index 8db9686..01eacf7 100644
--- a/doc/src/sgml/logicaldecoding.sgml
+++ b/doc/src/sgml/logicaldecoding.sgml
@@ -536,7 +536,7 @@ typedef void (*LogicalDecodeBeginCB) (struct LogicalDecodingContext *ctx,
ReorderBufferTXN *txn);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID.
</para>
</sect3>
@@ -660,7 +660,7 @@ typedef void (*LogicalDecodeMessageCB) (struct LogicalDecodingContext *ctx,
const char *message);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID. Note however that it can be NULL when the message is
non-transactional and the XID was not assigned yet in the transaction
which logged the message. The <parameter>lsn</parameter> has WAL
diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml
index ef1556b..6e3ace0 100644
--- a/doc/src/sgml/plpgsql.sgml
+++ b/doc/src/sgml/plpgsql.sgml
@@ -4855,7 +4855,7 @@ $$ LANGUAGE plpgsql;
<application>PL/pgSQL</application> interpreter casts this
string to the <type>timestamp</type> type by calling the
<function>text_out</function> and <function>timestamp_in</function>
- functions for the conversion. So, the computed time stamp is updated
+ functions for the conversion. So, the computed timestamp is updated
on each execution as the programmer expects. Even though this
happens to work as expected, it's not terribly efficient, so
use of the <literal>now()</literal> function would still be a better idea.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index 7e8fc19..54a2f9b 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -1660,9 +1660,9 @@ END;
<replaceable>script_no</replaceable> identifies which script file was used (useful when
multiple scripts were specified with <option>-f</option> or <option>-b</option>),
and <replaceable>time_epoch</replaceable>/<replaceable>time_us</replaceable> are a
- Unix-epoch time stamp and an offset
+ Unix-epoch timestamp and an offset
in microseconds (suitable for creating an ISO 8601
- time stamp with fractional seconds) showing when
+ timestamp with fractional seconds) showing when
the transaction completed.
The <replaceable>schedule_lag</replaceable> field is the difference between the
transaction's scheduled start time, and the time it actually started, in
@@ -1718,7 +1718,7 @@ END;
where
<replaceable>interval_start</replaceable> is the start of the interval (as a Unix
- epoch time stamp),
+ epoch timestamp),
<replaceable>num_transactions</replaceable> is the number of transactions
within the interval,
<replaceable>sum_latency</replaceable> is the sum of the transaction
diff --git a/doc/src/sgml/replication-origins.sgml b/doc/src/sgml/replication-origins.sgml
index a03ce76..aaa3705 100644
--- a/doc/src/sgml/replication-origins.sgml
+++ b/doc/src/sgml/replication-origins.sgml
@@ -61,7 +61,7 @@
marked as replaying from a remote node (using the
<link linkend="pg-replication-origin-session-setup"><function>pg_replication_origin_session_setup()</function></link>
function). Additionally the <acronym>LSN</acronym> and commit
- time stamp of every source transaction can be configured on a per
+ timestamp of every source transaction can be configured on a per
transaction basis using
<link linkend="pg-replication-origin-xact-setup"><function>pg_replication_origin_xact_setup()</function></link>.
If that's done replication progress will persist in a crash safe
diff --git a/doc/src/sgml/trigger.sgml b/doc/src/sgml/trigger.sgml
index 67e1861..1bd69f2 100644
--- a/doc/src/sgml/trigger.sgml
+++ b/doc/src/sgml/trigger.sgml
@@ -335,7 +335,7 @@
requirements to call the same function. As an example, there
could be a generalized trigger function that takes as its
arguments two column names and puts the current user in one and
- the current time stamp in the other. Properly written, this
+ the current timestamp in the other. Properly written, this
trigger function would be independent of the specific table it is
triggering on. So the same function could be used for
<command>INSERT</command> events on any table with suitable
diff --git a/doc/src/sgml/uuid-ossp.sgml b/doc/src/sgml/uuid-ossp.sgml
index b3b816c..db8871b 100644
--- a/doc/src/sgml/uuid-ossp.sgml
+++ b/doc/src/sgml/uuid-ossp.sgml
@@ -41,7 +41,7 @@
<entry>
<para>
This function generates a version 1 UUID. This involves the MAC
- address of the computer and a time stamp. Note that UUIDs of this
+ address of the computer and a timestamp. Note that UUIDs of this
kind reveal the identity of the computer that created the identifier
and the time at which it did so, which might make it unsuitable for
certain security-sensitive applications.
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index ed51da4..fac7a69 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3534,7 +3534,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- gettext_noop("Sets the time stamp up to which recovery will proceed."),
+ gettext_noop("Sets the timestamp up to which recovery will proceed."),
NULL
},
&recovery_target_time_string,
@@ -3916,7 +3916,7 @@ static struct config_string ConfigureNamesString[] =
{
{"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE,
- gettext_noop("Sets the time zone for displaying and interpreting time stamps."),
+ gettext_noop("Sets the time zone for displaying and interpreting timestamps."),
NULL,
GUC_REPORT
},
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index 5ee5e09..94a5e0e 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -259,7 +259,7 @@
# (change requires restart)
#recovery_target_name = '' # the named restore point to which recovery will proceed
# (change requires restart)
-#recovery_target_time = '' # the time stamp up to which recovery will proceed
+#recovery_target_time = '' # the timestamp up to which recovery will proceed
# (change requires restart)
#recovery_target_xid = '' # the transaction ID up to which recovery will proceed
# (change requires restart)
diff --git a/src/include/catalog/pg_control.h b/src/include/catalog/pg_control.h
index ff98d9e..06fbe76 100644
--- a/src/include/catalog/pg_control.h
+++ b/src/include/catalog/pg_control.h
@@ -48,7 +48,7 @@ typedef struct CheckPoint
Oid oldestXidDB; /* database with minimum datfrozenxid */
MultiXactId oldestMulti; /* cluster-wide minimum datminmxid */
Oid oldestMultiDB; /* database with minimum datminmxid */
- pg_time_t time; /* time stamp of checkpoint */
+ pg_time_t time; /* timestamp of checkpoint */
TransactionId oldestCommitTsXid; /* oldest Xid with valid commit
* timestamp */
TransactionId newestCommitTsXid; /* newest Xid with valid commit
@@ -125,7 +125,7 @@ typedef struct ControlFileData
* System status data
*/
DBState state; /* see enum above */
- pg_time_t time; /* time stamp of last pg_control update */
+ pg_time_t time; /* timestamp of last pg_control update */
XLogRecPtr checkPoint; /* last check point record ptr */
CheckPoint checkPointCopy; /* copy of last check point record */
diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c
index a7e0fe6..35697e2 100644
--- a/src/interfaces/ecpg/pgtypeslib/timestamp.c
+++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c
@@ -854,7 +854,7 @@ PGTYPEStimestamp_defmt_asc(const char *str, const char *fmt, timestamp * d)
}
/*
-* add an interval to a time stamp
+* add an interval to a timestamp
*
* *tout = tin + span
*
@@ -913,7 +913,7 @@ PGTYPEStimestamp_add_interval(timestamp * tin, interval * span, timestamp * tout
/*
-* subtract an interval from a time stamp
+* subtract an interval from a timestamp
*
* *tout = tin - span
*
--
2.7.4
v3-0005-Consistent-spelling-file-system.patchtext/x-diff; charset=us-asciiDownload
From b7814c710f09c990f213dd5d80d55e42b5d5e990 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Wed, 8 May 2019 19:19:16 -0500
Subject: [PATCH v3 05/12] Consistent spelling: file system
I prefer "filesystem" (possibly because that's what the manpges project uses),
but "file system" is what's in wide use, so fix divergent cases for now.
---
doc/src/sgml/config.sgml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index e919e2c..68e2225 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3624,9 +3624,9 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
<listitem>
<para>
If set to <literal>on</literal> (the default), this option causes new
- WAL files to be filled with zeroes. On some filesystems, this ensures
+ WAL files to be filled with zeroes. On some file systems, this ensures
that space is allocated before we need to write WAL records. However,
- <firstterm>Copy-On-Write</firstterm> (COW) filesystems may not benefit
+ <firstterm>Copy-On-Write</firstterm> (COW) file systems may not benefit
from this technique, so the option is given to skip the unnecessary
work. If set to <literal>off</literal>, only the final byte is written
when the file is created so that it has the expected size.
@@ -3644,7 +3644,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
<para>
If set to <literal>on</literal> (the default), this option causes WAL
files to be recycled by renaming them, avoiding the need to create new
- ones. On COW filesystems, it may be faster to create new ones, so the
+ ones. On COW file systems, it may be faster to create new ones, so the
option is given to disable this behavior.
</para>
</listitem>
@@ -8931,7 +8931,7 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
<para>
When set to off, which is the default, <productname>PostgreSQL</productname>
will raise a PANIC-level error on failure to flush modified data files
- to the filesystem. This causes the database server to crash. This
+ to the file system. This causes the database server to crash. This
parameter can only be set at server start.
</para>
<para>
--
2.7.4
v3-0006-consistent-language-not-implemented.patchtext/x-diff; charset=us-asciiDownload
From 7394bbaaef4d00ffe830aa7b5c5e318a3471c181 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Mon, 20 May 2019 12:57:17 -0500
Subject: [PATCH v3 06/12] consistent language: not implemented
Should we change the rest of these, too ?
git grep 'errmsg.*not yet implemented'
---
src/backend/catalog/index.c | 2 +-
src/backend/commands/indexcmds.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index c8d22e1..2a2dca3 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -3506,7 +3506,7 @@ reindex_relation(Oid relid, int flags, int options)
{
ereport(WARNING,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX of partitioned tables is not yet implemented, skipping \"%s\"",
+ errmsg("REINDEX of partitioned tables is not implemented, skipping \"%s\"",
RelationGetRelationName(rel))));
table_close(rel, ShareLock);
return false;
diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c
index 7e7c03e..b2b15ec 100644
--- a/src/backend/commands/indexcmds.c
+++ b/src/backend/commands/indexcmds.c
@@ -2862,7 +2862,7 @@ ReindexRelationConcurrently(Oid relationOid, int options)
/* see reindex_relation() */
ereport(WARNING,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX of partitioned tables is not yet implemented, skipping \"%s\"",
+ errmsg("REINDEX of partitioned tables is not implemented, skipping \"%s\"",
get_rel_name(relationOid))));
return false;
default:
@@ -3306,7 +3306,7 @@ ReindexPartitionedIndex(Relation parentIdx)
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX is not yet implemented for partitioned indexes")));
+ errmsg("REINDEX is not implemented for partitioned indexes")));
}
/*
--
2.7.4
v3-0007-overridden-vs-overwritten.patchtext/x-diff; charset=us-asciiDownload
From 56f899d1cc908577906f36c69c44ce159c4bc763 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 13:18:12 -0500
Subject: [PATCH v3 07/12] overridden vs overwritten
---
doc/src/sgml/ref/pgbench.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
src/test/regress/expected/create_table.out | 2 +-
src/test/regress/sql/create_table.sql | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index 54a2f9b..88bcd34 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -941,7 +941,7 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
<row>
<entry> <literal>random_seed</literal> </entry>
- <entry>random generator seed (unless overwritten with <option>-D</option>)</entry>
+ <entry>random generator seed (unless overridden with <option>-D</option>)</entry>
</row>
<row>
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 55cc78c..3bf11f0 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -478,7 +478,7 @@ EOF
leave off the equal sign. To set a variable with an empty value,
use the equal sign but leave off the value. These assignments are
done during command line processing, so variables that reflect
- connection state will get overwritten later.
+ connection state will be overridden later.
</para>
</listitem>
</varlistentry>
diff --git a/src/test/regress/expected/create_table.out b/src/test/regress/expected/create_table.out
index 204441e..3ee5e6b 100644
--- a/src/test/regress/expected/create_table.out
+++ b/src/test/regress/expected/create_table.out
@@ -874,7 +874,7 @@ create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a no
insert into parted_notnull_inh_test (b) values (null);
ERROR: null value in column "b" violates not-null constraint
DETAIL: Failing row contains (1, null).
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
Table "public.parted_notnull_inh_test1"
Column | Type | Collation | Nullable | Default
diff --git a/src/test/regress/sql/create_table.sql b/src/test/regress/sql/create_table.sql
index 751c0d3..36222c2 100644
--- a/src/test/regress/sql/create_table.sql
+++ b/src/test/regress/sql/create_table.sql
@@ -720,7 +720,7 @@ CREATE TABLE part_c_1_10 PARTITION OF part_c FOR VALUES FROM (1) TO (10);
create table parted_notnull_inh_test (a int default 1, b int not null default 0) partition by list (a);
create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a not null, b default 1) for values in (1);
insert into parted_notnull_inh_test (b) values (null);
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
drop table parted_notnull_inh_test;
--
2.7.4
v3-0008-Clean-up-language-in-cf984672-Improve-behavior-of.patchtext/x-diff; charset=us-asciiDownload
From 2ca5c2f2f8ad8bb8a681aea7ca78131f1f99d756 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sat, 30 Mar 2019 03:42:35 -0500
Subject: [PATCH v3 08/12] Clean up language in cf984672: Improve behavior of
to_timestamp()/to_date() functions
---
doc/src/sgml/func.sgml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index d425731..c5f1828 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -6426,20 +6426,20 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
</para>
<para>
If <literal>FX</literal> is specified, a separator in the template string
- matches exactly one character in input string. Notice we don't insist the
- input string character be the same as the template string separator.
+ matches exactly one character in the input string. But note that the
+ input string character is not required to be the same as the separator from the template string.
For example, <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
works, but <literal>to_timestamp('2000/JUN', 'FXYYYY MON')</literal>
- returns an error because the second template string space is consumed
- by the letter <literal>J</literal> in the input string.
+ returns an error because the second space in the template string consumes
+ the letter <literal>J</literal> from the input string.
</para>
</listitem>
<listitem>
<para>
A <literal>TZH</literal> template pattern can match a signed number.
- Without the <literal>FX</literal> option, it can lead to ambiguity in
- interpretation of the minus sign, which can also be interpreted as a separator.
+ Without the <literal>FX</literal> option, minus signs may be ambiguous,
+ and could be interpreted as a separator.
This ambiguity is resolved as follows: If the number of separators before
<literal>TZH</literal> in the template string is less than the number of
separators before the minus sign in the input string, the minus sign
--
2.7.4
v3-0009-spelling.patchtext/x-diff; charset=us-asciiDownload
From cd946b0188d68ab2e3524c5a159988103534ddd8 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 9 May 2019 21:13:55 -0500
Subject: [PATCH v3 09/12] spelling
---
doc/src/sgml/charset.sgml | 2 +-
doc/src/sgml/config.sgml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/doc/src/sgml/charset.sgml b/doc/src/sgml/charset.sgml
index 555d1b4..a2a46c6 100644
--- a/doc/src/sgml/charset.sgml
+++ b/doc/src/sgml/charset.sgml
@@ -896,7 +896,7 @@ CREATE COLLATION french FROM "fr-x-icu";
equal only if they consist of the same byte sequence. Nondeterministic
comparison may determine strings to be equal even if they consist of
different bytes. Typical situations include case-insensitive comparison,
- accent-insensitive comparison, as well as comparion of strings in
+ accent-insensitive comparison, as well as comparison of strings in
different Unicode normal forms. It is up to the collation provider to
actually implement such insensitive comparisons; the deterministic flag
only determines whether ties are to be broken using bytewise comparison.
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 68e2225..28e6650 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -4196,7 +4196,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
however, if the parameter is specified it will be honored in all cases.
<varname>hot_standby_feedback</varname> will be delayed by use of this feature.
- Combinining these settings could lead to bloat on the master, so should
+ Combining these settings could lead to bloat on the master, so should
be done only with care.
<warning>
--
2.7.4
v3-0010-is-vs-are-plural.patchtext/x-diff; charset=us-asciiDownload
From 4005a08151052a8d7e6fcb8010daec06a91b46ce Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 4 Apr 2019 18:57:48 -0500
Subject: [PATCH v3 10/12] is vs are plural
---
doc/src/sgml/auto-explain.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/func.sgml | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/auto-explain.sgml b/doc/src/sgml/auto-explain.sgml
index 3d619d4..9cd8718 100644
--- a/doc/src/sgml/auto-explain.sgml
+++ b/doc/src/sgml/auto-explain.sgml
@@ -180,8 +180,8 @@ LOAD 'auto_explain';
<listitem>
<para>
<varname>auto_explain.log_settings</varname> controls whether information
- about modified configuration options are printed when execution plan is logged.
- Only options affecting query planning with value different from the built-in
+ about modified configuration options is printed when an execution plan is logged.
+ Only those options which affect query planning and whose value differs from its built-in
default value are included in the output. This parameter is off by default.
Only superusers can change this setting.
</para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 8135507..b5da467 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3867,7 +3867,7 @@ CREATE INDEX ON measurement (logdate);
<para>
Normally, the set of partitions established when initially defining the
- table are not intended to remain static. It's common to
+ table is not intended to remain static. It's common to
remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
allowing this otherwise painful task to be executed
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index c5f1828..db5260c 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -10301,7 +10301,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple
<title>Producing XML Content</title>
<para>
- A set of functions and function-like expressions are available for
+ A set of functions and function-like expressions is available for
producing XML content from SQL data. As such, they are
particularly suitable for formatting query results into XML
documents for processing in client applications.
--
2.7.4
v3-0011-s-recommendable-recommended.patchtext/x-diff; charset=us-asciiDownload
From b0f0c9d4ac6593c51e43f06db422379008c8a828 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 9 May 2019 21:22:10 -0500
Subject: [PATCH v3 11/12] s/recommendable/recommended
---
doc/src/sgml/btree.sgml | 2 +-
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/runtime.sgml | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/doc/src/sgml/btree.sgml b/doc/src/sgml/btree.sgml
index 996932e..283db7f 100644
--- a/doc/src/sgml/btree.sgml
+++ b/doc/src/sgml/btree.sgml
@@ -60,7 +60,7 @@
contain the single-type operators (and associated support functions)
for its input data type, while cross-type comparison operators and
support functions are <quote>loose</quote> in the family. It is
- recommendable that a complete set of cross-type operators be included
+ recommended that a complete set of cross-type operators be included
in the family, thus ensuring that the planner can represent any
comparison conditions that it deduces from transitivity.
</para>
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index 8a8427f..4b031ff 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -7107,7 +7107,7 @@ int PQresultSetInstanceData(PGresult *res, PGEventProc proc, void *data);
Beware that any storage represented by <parameter>data</parameter>
will not be accounted for by <function>PQresultMemorySize</function>,
unless it is allocated using <function>PQresultAlloc</function>.
- (Doing so is recommendable because it eliminates the need to free
+ (Doing so is recommended because it eliminates the need to free
such storage explicitly when the result is destroyed.)
</para>
</listitem>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index 798da30..21a7ce3 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -111,7 +111,7 @@
<command>initdb</command> will attempt to create the directory you
specify if it does not already exist. Of course, this will fail if
<command>initdb</command> does not have permissions to write in the
- parent directory. It's generally recommendable that the
+ parent directory. It's generally recommended that the
<productname>PostgreSQL</productname> user own not just the data
directory but its parent directory as well, so that this should not
be a problem. If the desired parent directory doesn't exist either,
--
2.7.4
v3-0012-Cleanup-remove-update-references-to-OID-column.patchtext/x-diff; charset=us-asciiDownload
From 267cdaa3ac4ff6ede71f9437cf82436935a07812 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Tue, 2 Apr 2019 19:13:55 -0500
Subject: [PATCH v3 12/12] Cleanup/remove/update references to OID column...
..in wake of 578b229718e8f.
See also
93507e67c9ca54026019ebec3026de35d30370f9
1464755fc490a9911214817fe83077a3689250ab
f6b39171f3d65155b9390c2c69bc5b3469f923a8
---
doc/src/sgml/catalogs.sgml | 2 +-
doc/src/sgml/information_schema.sgml | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index d544e60..0f9c6f2 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -610,7 +610,7 @@
<entry><structfield>oid</structfield></entry>
<entry><type>oid</type></entry>
<entry></entry>
- <entry>Row identifier (hidden attribute; must be explicitly selected)</entry>
+ <entry>Row identifier</entry>
</row>
<row>
diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgml
index 234a3bb..9c618b1 100644
--- a/doc/src/sgml/information_schema.sgml
+++ b/doc/src/sgml/information_schema.sgml
@@ -1312,8 +1312,8 @@
<para>
The view <literal>columns</literal> contains information about all
table columns (or view columns) in the database. System columns
- (<literal>ctid</literal>, etc.) are not included. Only those columns are
- shown that the current user has access to (by way of being the
+ (<literal>ctid</literal>, etc.) are not included. The only columns shown
+ are those to which the current user has access (by way of being the
owner or having some privilege).
</para>
--
2.7.4
Hi,
On 2019-05-20 13:20:01 -0500, Justin Pryzby wrote:
On Sat, Mar 30, 2019 at 05:43:33PM -0500, Justin Pryzby wrote:
Thanks in advance for any review.
I find these pretty tedious to work with. I'm somewhat dyslexic, not a
native speaker. So it requires a lot of concentration to go through
them...
@@ -3052,7 +3052,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l simplifies <command>ATTACH/DETACH PARTITION</command> operations: the partition dependencies need only be added or removed. Example: a child partitioned index is made partition-dependent - on both the partition table it is on and the parent partitioned + on both the table partition and the parent partitioned index, so that it goes away if either of those is dropped, but not otherwise. The dependency on the parent index is primary, so that if the user tries to drop the child partitioned index,
@@ -3115,7 +3115,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l Note that it's quite possible for two objects to be linked by more than one <structname>pg_depend</structname> entry. For example, a child partitioned index would have both a partition-type dependency on its - associated partition table, and an auto dependency on each column of + associated table partition, and an auto dependency on each column of that table that it indexes. This sort of situation expresses the union of multiple dependency semantics. A dependent object can be dropped without <literal>CASCADE</literal> if any of its dependencies satisfies
Hm, that's not an improvement from my POV? The version before isn't great either,
but it seems to improve this'd require a somewhat bigger hammer.
@@ -6947,8 +6948,8 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv; <para> Causes each action executed by autovacuum to be logged if it ran for at least the specified number of milliseconds. Setting this to zero logs - all autovacuum actions. <literal>-1</literal> (the default) disables - logging autovacuum actions. For example, if you set this to + all autovacuum actions. <literal>-1</literal> (the default) disables logging + autovacuum actions. For example, if you set this to <literal>250ms</literal> then all automatic vacuums and analyzes that run 250ms or longer will be logged. In addition, when this parameter is set to any value other than <literal>-1</literal>, a message will be
Hm?
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index a0a7435..cfe83a8 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -3867,12 +3867,12 @@ CREATE INDEX ON measurement (logdate);<para> Normally the set of partitions established when initially defining the - table are not intended to remain static. It is common to want to - remove old partitions of data and periodically add new partitions for + table are not intended to remain static. It's common to + remove partitions of old data and add partitions for new data. One of the most important advantages of partitioning is - precisely that it allows this otherwise painful task to be executed + allowing this otherwise painful task to be executed nearly instantaneously by manipulating the partition structure, rather - than physically moving large amounts of data around. + than physically moving around large amounts of data. </para>
I don't understand what the point of changing things like "It is" to
"It's". There's more uses of the former in the docs.
I'm also not sure that I like the removal of "to want" etc,
because just because it's a common desire, it's not automatically common
practice. And I think the 'periodically' is actually a reasonable hint
that partition creation doesn't happen automatically or in the
foreground.
<row> <entry><structfield>partitions_done</structfield></entry> <entry><type>bigint</type></entry> <entry> - When creating an index on a partitioned table, this column is set to - the number of partitions on which the index has been completed. + When creating an index on a partitioned table, this is + the number of partitions for which the process is complete. </entry> </row> </tbody>
@@ -3643,9 +3643,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid, <entry> The index is being built by the access method-specific code. In this phase, access methods that support progress reporting fill in their own progress data, - and the subphase is indicated in this column. Typically, + and the subphase is indicated in this column. <structname>blocks_total</structname> and <structname>blocks_done</structname> - will contain progress data, as well as potentially + will contain progress data, as may <structname>tuples_total</structname> and <structname>tuples_done</structname>. </entry>
Hm, if you're intent on removing "this column", why not here?
Is the removal of "typically" and "potentially" actually correct here?
Somebody clearly wanted to indicate it's not guaranteed?
@@ -3922,9 +3922,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title><para> - Whenever <command>CLUSTER</command> or <command>VACUUM FULL</command> is - running, the <structname>pg_stat_progress_cluster</structname> view will - contain a row for each backend that is currently running either command. + The <structname>pg_stat_progress_cluster</structname> view will contain a + row for each backend that is running either + <command>CLUSTER</command> or <command>VACUUM FULL</command>. The tables below describe the information that will be reported and provide information about how to interpret it. </para>
Unrelated to your change, but I noticed it in this hunk. Isn't it weird
to say "will contain" rather than just "contains" for this type of
reference documentation?
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml index a84be85..65c161b 100644 --- a/doc/src/sgml/perform.sgml +++ b/doc/src/sgml/perform.sgml @@ -899,10 +899,10 @@ EXPLAIN ANALYZE SELECT * FROM tenk1 WHERE unique1 < 100 AND unique2 > 9000 Generally, the <command>EXPLAIN</command> output will display details for every plan node which was generated by the query planner. However, there are cases where the executor is able to determine that certain nodes are - not required; currently, the only node types to support this are the - <literal>Append</literal> and <literal>MergeAppend</literal> nodes. These - node types have the ability to discard subnodes which they are able to - determine won't contain any records required by the query. It is possible + not required; currently, the only node types to support this are + <literal>Append</literal> and <literal>MergeAppend</literal>, which + are able to discard subnodes when it's deduced that + they will not contain any records required by the query. It is possible to determine that nodes have been removed in this way by the presence of a "Subplans Removed" property in the <command>EXPLAIN</command> output. </para>
Shrug.
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index 49b081a..dd80bd0 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -219,7 +219,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM<para> <literal>SET NOT NULL</literal> may only be applied to a column - providing none of the records in the table contain a + provided none of the records in the table contain a <literal>NULL</literal> value for the column. Ordinarily this is checked during the <literal>ALTER TABLE</literal> by scanning the entire table; however, if a valid <literal>CHECK</literal> constraint is
It'd be easier to review / apply this kind of thing if stylistic
choices, especially borderline ones, were separated from clear typos
(like this one).
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml index 30bb38b..bf4f550 100644 --- a/doc/src/sgml/ref/create_index.sgml +++ b/doc/src/sgml/ref/create_index.sgml @@ -181,8 +181,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class= </para><para> - Currently, the B-tree and the GiST index access methods support this - feature. In B-tree and the GiST indexes, the values of columns listed + Currently, only the B-tree and GiST index access methods support this + feature. In B-tree and GiST indexes, the values of columns listed in the <literal>INCLUDE</literal> clause are included in leaf tuples which correspond to heap tuples, but are not included in upper-level index entries used for tree navigation.
Hm. External index AMs also can also support uniqueness. So perhaps not
adding only is actually better? I realize that other places in the same
file already say "only".
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml index 4d91eeb..6f6d220 100644 --- a/doc/src/sgml/ref/pg_rewind.sgml +++ b/doc/src/sgml/ref/pg_rewind.sgml @@ -106,15 +106,14 @@ PostgreSQL documentation </para><para> - <application>pg_rewind</application> will fail immediately if it finds - files it cannot write directly to. This can happen for example when - the source and the target server use the same file mapping for read-only - SSL keys and certificates. If such files are present on the target server + <application>pg_rewind</application> will fail immediately if it experiences + a write error. This can happen for example when + the source and target server use the same file mapping for read-only + SSL keys and certificates. If such files are present on the target server, it is recommended to remove them before running
That's not really the same. The failure will often be *before* a write
error. E.g.
mode = O_WRONLY | O_CREAT | PG_BINARY;
if (trunc)
mode |= O_TRUNC;
dstfd = open(dstpath, mode, pg_file_create_mode);
if (dstfd < 0)
pg_fatal("could not open target file \"%s\": %m",
dstpath);
will fail, rather than a write().
@@ -474,10 +474,8 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
</listitem>
</itemizedlist>- Because in "prepared" mode <application>pgbench</application> reuses - the parse analysis result for the second and subsequent query - iteration, <application>pgbench</application> runs faster in the - prepared mode than in other modes. + <application>pgbench</application> runs faster in prepared mode because the + parse analysis happens only during the first query. </para>
That text seems wrong before and after. It's not just parse analysis,
but also planning?
--- a/doc/src/sgml/runtime.sgml +++ b/doc/src/sgml/runtime.sgml @@ -2634,8 +2634,9 @@ openssl x509 -req -in server.csr -text -days 365 \ using <acronym>GSSAPI</acronym> to encrypt client/server communications for increased security. Support requires that a <acronym>GSSAPI</acronym> implementation (such as MIT krb5) is installed on both client and server - systems, and that support in <productname>PostgreSQL</productname> is - enabled at build time (see <xref linkend="installation"/>). + systems, and must be enabled at the time + <productname>PostgreSQL</productname> is built (see <xref + linkend="installation"/>). </para>
This is weird before and after. I'd just say "that PostgreSQL has been
built with GSSAPI support".
<para> - For example <literal>_StaticAssert()</literal> and + For example, <literal>_StaticAssert()</literal> and <literal>__builtin_constant_p</literal> are currently used, even though - they are from newer revisions of the C standard and a - <productname>GCC</productname> extension respectively. If not available - we respectively fall back to using a C99 compatible replacement that - performs the same checks, but emits rather cryptic messages and do not + they are from a newer revision of the C standard and a + <productname>GCC</productname> extension, respectively. If not available, in the first case, + we fall back to using a C99 compatible replacement that + performs the same checks, but emits rather cryptic messages; in the second case, we do not use <literal>__builtin_constant_p</literal>. </para>
To me the point of changing just about equivalent formulations into
another isn't clear.
@@ -3381,7 +3381,7 @@ if (!ptr) The parallel safety property (<literal>PARALLEL UNSAFE</literal>, <literal>PARALLEL RESTRICTED</literal>, or <literal>PARALLEL SAFE</literal>) must also be specified if you hope - to use the function in parallelized queries. + queries calling the function to use parallel query. It can also be useful to specify the function's estimated execution cost, and/or the number of rows a set-returning function is estimated to return. However, the declarative way of specifying those two
Seems like a larger rewrite is needed
@@ -3393,7 +3393,7 @@ if (!ptr) It is also possible to attach a <firstterm>planner support function</firstterm> to a SQL-callable function (called its <firstterm>target function</firstterm>), and thereby provide - knowledge about the target function that is too complex to be + information about the target function that is too complex to be represented declaratively. Planner support functions have to be written in C (although their target functions might not be), so this is an advanced feature that relatively few people will use.
Why s/knowledge/information/?
From d8c8b5416726909203db53cfa73ea2c7cc0fe9a0 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:37:35 -0500
Subject: [PATCH v3 02/12] Add comma for readability
You did plenty of that in the previous set of changes...
---
doc/src/sgml/backup.sgml | 2 +-
doc/src/sgml/bki.sgml | 2 +-
doc/src/sgml/client-auth.sgml | 4 ++--
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/indices.sgml | 2 +-
doc/src/sgml/installation.sgml | 2 +-
doc/src/sgml/logical-replication.sgml | 2 +-
doc/src/sgml/protocol.sgml | 6 +++---
doc/src/sgml/ref/create_table.sgml | 2 +-
doc/src/sgml/ref/create_table_as.sgml | 2 +-
doc/src/sgml/ref/pgupgrade.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
doc/src/sgml/sources.sgml | 14 +++++++-------
doc/src/sgml/wal.sgml | 2 +-
doc/src/sgml/xoper.sgml | 2 +-
16 files changed, 26 insertions(+), 26 deletions(-)diff --git a/doc/src/sgml/backup.sgml b/doc/src/sgml/backup.sgml index b67da89..ae41bc7 100644 --- a/doc/src/sgml/backup.sgml +++ b/doc/src/sgml/backup.sgml @@ -1024,7 +1024,7 @@ SELECT pg_start_backup('label', true); consider during this backup. </para> <para> - As noted above, if the server crashes during the backup it may not be + As noted above, if the server crashes during the backup, it may not be possible to restart until the <literal>backup_label</literal> file has been manually deleted from the <envar>PGDATA</envar> directory. Note that it is very important to never remove the diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml index aa3d6f8..e27fa76 100644 --- a/doc/src/sgml/bki.sgml +++ b/doc/src/sgml/bki.sgml @@ -403,7 +403,7 @@ 8000—9999. This minimizes the risk of OID collisions with other patches being developed concurrently. To keep the 8000—9999 range free for development purposes, after a patch has been committed - to the master git repository its OIDs should be renumbered into + to the master git repository, its OIDs should be renumbered into available space below that range. Typically, this will be done near the end of each development cycle, moving all OIDs consumed by patches committed in that cycle at the same time. The script diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml index ffed887..098900e 100644 --- a/doc/src/sgml/client-auth.sgml +++ b/doc/src/sgml/client-auth.sgml @@ -157,7 +157,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable </para><para> - To make use of this option the server must be built with + To make use of this option, the server must be built with <acronym>SSL</acronym> support. Furthermore, <acronym>SSL</acronym> must be enabled by setting the <xref linkend="guc-ssl"/> configuration parameter (see @@ -189,7 +189,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable </para><para> - To make use of this option the server must be built with + To make use of this option, the server must be built with <acronym>GSSAPI</acronym> support. Otherwise, the <literal>hostgssenc</literal> record is ignored except for logging a warning that it cannot match any connections. diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 73eb768..54b91d3 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -3458,7 +3458,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows reached. The default is <literal>pause</literal>, which means recovery will be paused. <literal>promote</literal> means the recovery process will finish and the server will start to accept connections. - Finally <literal>shutdown</literal> will stop the server after reaching the + Finally, <literal>shutdown</literal> will stop the server after reaching the recovery target. </para> <para> @@ -4188,7 +4188,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class=" </para> <para> The delay occurs once the database in recovery has reached a consistent - state, until the standby is promoted or triggered. After that the standby + state, until the standby is promoted or triggered. After that, the standby will end recovery without further waiting. </para> <para> diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index cfe83a8..8135507 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -3866,7 +3866,7 @@ CREATE INDEX ON measurement (logdate); <title>Partition Maintenance</title><para> - Normally the set of partitions established when initially defining the + Normally, the set of partitions established when initially defining the table are not intended to remain static. It's common to remove partitions of old data and add partitions for new data. One of the most important advantages of partitioning is diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml index 95c0a19..e940ddb 100644 --- a/doc/src/sgml/indices.sgml +++ b/doc/src/sgml/indices.sgml @@ -1081,7 +1081,7 @@ SELECT x FROM tab WHERE x = 'key' AND z < 42; scan. Even in the successful case, this approach trades visibility map accesses for heap accesses; but since the visibility map is four orders of magnitude smaller than the heap it describes, far less physical I/O is - needed to access it. In most situations the visibility map remains + needed to access it. In most situations, the visibility map remains cached in memory all the time. </para>diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index 4493862..847e028 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -2527,7 +2527,7 @@ xcodebuild -version -sdk macosx Path </programlisting> Note that building an extension using a different sysroot version than was used to build the core server is not really recommended; in the - worst case it could result in hard-to-debug ABI inconsistencies. + worst case, it could result in hard-to-debug ABI inconsistencies. </para><para> diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml index 3f2f674..31c814c 100644 --- a/doc/src/sgml/logical-replication.sgml +++ b/doc/src/sgml/logical-replication.sgml @@ -201,7 +201,7 @@<para> Subscriptions are dumped by <command>pg_dump</command> if the current user - is a superuser. Otherwise a warning is written and subscriptions are + is a superuser. Otherwise, a warning is written and subscriptions are skipped, because non-superusers cannot read all subscription information from the <structname>pg_subscription</structname> catalog. </para> diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index 70f7286..3f907f6 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -1449,7 +1449,7 @@ SELECT 1/0; <literal>S</literal>, perform an <acronym>SSL</acronym> startup handshake (not described here, part of the <acronym>SSL</acronym> specification) with the server. If this is successful, continue - with sending the usual StartupMessage. In this case the + with sending the usual StartupMessage. In this case, the StartupMessage and all subsequent data will be <acronym>SSL</acronym>-encrypted. To continue after <literal>N</literal>, send the usual StartupMessage and proceed without @@ -1462,7 +1462,7 @@ SELECT 1/0; the server predates the addition of <acronym>SSL</acronym> support to <productname>PostgreSQL</productname>. (Such servers are now very ancient, and likely do not exist in the wild anymore.) - In this case the connection must + In this case, the connection must be closed, but the frontend might choose to open a fresh connection and proceed without requesting <acronym>SSL</acronym>. </para> @@ -1528,7 +1528,7 @@ SELECT 1/0; The frontend should also be prepared to handle an ErrorMessage response to GSSENCRequest from the server. This would only occur if the server predates the addition of <acronym>GSSAPI</acronym> encryption - support to <productname>PostgreSQL</productname>. In this case the + support to <productname>PostgreSQL</productname>. In this case, the connection must be closed, but the frontend might choose to open a fresh connection and proceed without requesting <acronym>GSSAPI</acronym> encryption. Given the length limits specified above, the ErrorMessage diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml index 44a61ef..dbb1468 100644 --- a/doc/src/sgml/ref/create_table.sgml +++ b/doc/src/sgml/ref/create_table.sgml @@ -1189,7 +1189,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM This clause specifies optional storage parameters for a table or index; see <xref linkend="sql-createtable-storage-parameters" endterm="sql-createtable-storage-parameters-title"/> for more - information. For backward-compatibility the <literal>WITH</literal> + information. For backward-compatibility, the <literal>WITH</literal> clause for a table can also include <literal>OIDS=FALSE</literal> to specify that rows of the new table should not contain OIDs (object identifiers), <literal>OIDS=TRUE</literal> is not supported anymore. diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml index b5c4ce6..0880459 100644 --- a/doc/src/sgml/ref/create_table_as.sgml +++ b/doc/src/sgml/ref/create_table_as.sgml @@ -142,7 +142,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI This clause specifies optional storage parameters for the new table; see <xref linkend="sql-createtable-storage-parameters" endterm="sql-createtable-storage-parameters-title"/> for more - information. For backward-compatibility the <literal>WITH</literal> + information. For backward-compatibility, the <literal>WITH</literal> clause for a table can also include <literal>OIDS=FALSE</literal> to specify that rows of the new table should contain no OIDs (object identifiers), <literal>OIDS=TRUE</literal> is not supported anymore. diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml index 8288676..6a898d9 100644 --- a/doc/src/sgml/ref/pgupgrade.sgml +++ b/doc/src/sgml/ref/pgupgrade.sgml @@ -746,7 +746,7 @@ psql --username=postgres --file=script.sql postgres <application>pg_upgrade</application> launches short-lived postmasters in the old and new data directories. Temporary Unix socket files for communication with these postmasters are, by default, made in the current - working directory. In some situations the path name for the current + working directory. In some situations, the path name for the current directory might be too long to be a valid socket name. In that case you can use the <option>-s</option> option to put the socket files in some directory with a shorter path name. For security, be sure that that diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml index b867640..55cc78c 100644 --- a/doc/src/sgml/ref/psql-ref.sgml +++ b/doc/src/sgml/ref/psql-ref.sgml @@ -1053,7 +1053,7 @@ testdb=> These operations are not as efficient as the <acronym>SQL</acronym> <command>COPY</command> command with a file or program data source or destination, because all data must pass through the client/server - connection. For large amounts of data the <acronym>SQL</acronym> + connection. For large amounts of data, the <acronym>SQL</acronym> command might be preferable. </para> </tip> diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml index 2b9f59d..520bbae 100644 --- a/doc/src/sgml/sources.sgml +++ b/doc/src/sgml/sources.sgml @@ -100,7 +100,7 @@ less -x4 <para> There are two required elements for every message: a severity level (ranging from <literal>DEBUG</literal> to <literal>PANIC</literal>) and a primary - message text. In addition there are optional elements, the most + message text. In addition, there are optional elements, the most common of which is an error identifier code that follows the SQL spec's SQLSTATE conventions. <function>ereport</function> itself is just a shell function that exists @@ -473,7 +473,7 @@ Hint: the addendum<para> Rationale: Messages are not necessarily displayed on terminal-type - displays. In GUI displays or browsers these formatting instructions are + displays. In GUI displays or browsers, these formatting instructions are at best ignored. </para>@@ -897,14 +897,14 @@ BETTER: unrecognized node type: 42 <simplesect> <title>Function-Like Macros and Inline Functions</title> <para> - Both, macros with arguments and <literal>static inline</literal> - functions, may be used. The latter are preferable if there are + Both macros with arguments and <literal>static inline</literal> + functions may be used. The latter are preferable if there are multiple-evaluation hazards when written as a macro, as e.g. the case with <programlisting> #define Max(x, y) ((x) > (y) ? (x) : (y)) </programlisting> - or when the macro would be very long. In other cases it's only + or when the macro would be very long. In other cases, it's only possible to use macros, or at least easier. For example because expressions of various types need to be passed to the macro. </para> @@ -936,7 +936,7 @@ MemoryContextSwitchTo(MemoryContext context) <simplesect> <title>Writing Signal Handlers</title> <para> - To be suitable to run inside a signal handler code has to be + To be suitable to run inside a signal handler, code has to be written very carefully. The fundamental problem is that, unless blocked, a signal handler can interrupt code at any time. If code inside the signal handler uses the same state as code outside, @@ -945,7 +945,7 @@ MemoryContextSwitchTo(MemoryContext context) interrupted code. </para> <para> - Barring special arrangements code in signal handlers may only + Barring special arrangements, code in signal handlers may only call async-signal safe functions (as defined in POSIX) and access variables of type <literal>volatile sig_atomic_t</literal>. A few functions in <command>postgres</command> are also deemed signal safe; specifically, diff --git a/doc/src/sgml/wal.sgml b/doc/src/sgml/wal.sgml index 4eb8feb..30bde24 100644 --- a/doc/src/sgml/wal.sgml +++ b/doc/src/sgml/wal.sgml @@ -326,7 +326,7 @@ before returning a success indication to the client. The client is therefore guaranteed that a transaction reported to be committed will be preserved, even in the event of a server crash immediately after. - However, for short transactions this delay is a major component of the + However, for short transactions, this delay is a major component of the total transaction time. Selecting asynchronous commit mode means that the server returns success as soon as the transaction is logically completed, before the <acronym>WAL</acronym> records it generated have diff --git a/doc/src/sgml/xoper.sgml b/doc/src/sgml/xoper.sgml index 260e43c..55cd3b1 100644 --- a/doc/src/sgml/xoper.sgml +++ b/doc/src/sgml/xoper.sgml @@ -375,7 +375,7 @@ table1.column1 OP table2.column2 Another example is that on machines that meet the <acronym>IEEE</acronym> floating-point standard, negative zero and positive zero are different values (different bit patterns) but they are defined to compare equal. - If a float value might contain negative zero then extra steps are needed + If a float value might contain negative zero, then extra steps are needed to ensure it generates the same hash value as positive zero. </para>--
2.7.4
From 4d7e3b99d6e9e203e539cc8658554294121732b1 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:40:49 -0500
Subject: [PATCH v3 03/12] Consistent language: "must be superuser"---
src/backend/storage/ipc/signalfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)diff --git a/src/backend/storage/ipc/signalfuncs.c b/src/backend/storage/ipc/signalfuncs.c index 4bfbd57..1df5861 100644 --- a/src/backend/storage/ipc/signalfuncs.c +++ b/src/backend/storage/ipc/signalfuncs.c @@ -115,7 +115,7 @@ pg_cancel_backend(PG_FUNCTION_ARGS) if (r == SIGNAL_BACKEND_NOSUPERUSER) ereport(ERROR, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), - (errmsg("must be a superuser to cancel superuser query")))); + (errmsg("must be superuser to cancel superuser query"))));if (r == SIGNAL_BACKEND_NOPERMISSION) ereport(ERROR, @@ -139,12 +139,12 @@ pg_terminate_backend(PG_FUNCTION_ARGS) if (r == SIGNAL_BACKEND_NOSUPERUSER) ereport(ERROR, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), - (errmsg("must be a superuser to terminate superuser process")))); + (errmsg("must be superuser to terminate superuser process"))));
There's a number of
errhint("The owner of a subscription must be a superuser.")));
style messages, if you're trying for further consistency here...
... Out of steam. And, as it turns out, battery power.
Greetings,
Andres Freund
Hi,
On 2019/05/21 7:59, Andres Freund wrote:
On 2019-05-20 13:20:01 -0500, Justin Pryzby wrote:
@@ -3052,7 +3052,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l simplifies <command>ATTACH/DETACH PARTITION</command> operations: the partition dependencies need only be added or removed. Example: a child partitioned index is made partition-dependent - on both the partition table it is on and the parent partitioned + on both the table partition and the parent partitioned index, so that it goes away if either of those is dropped, but not otherwise. The dependency on the parent index is primary, so that if the user tries to drop the child partitioned index,@@ -3115,7 +3115,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l Note that it's quite possible for two objects to be linked by more than one <structname>pg_depend</structname> entry. For example, a child partitioned index would have both a partition-type dependency on its - associated partition table, and an auto dependency on each column of + associated table partition, and an auto dependency on each column of that table that it indexes. This sort of situation expresses the union of multiple dependency semantics. A dependent object can be dropped without <literal>CASCADE</literal> if any of its dependencies satisfiesHm, that's not an improvement from my POV? The version before isn't great either,
but it seems to improve this'd require a somewhat bigger hammer.
The original "partition table" is meant as "table that is a partition", so
not wrong as such, though I agree about the bigger hammer part,
especially seeing "a child partitioned index" in both the sentences that
Justin's patch touches, which should really be "an index partition". So
the two sentences could be modified as follows, including Justin's change
for consistency of the use of "partition":
@@ -3051,13 +3051,12 @@ SCRAM-SHA-256$<replaceable><iteration
count></replaceable>:<replaceable>&l
instead of, any dependencies the object would normally have. This
simplifies <command>ATTACH/DETACH PARTITION</command> operations:
the partition dependencies need only be added or removed.
- Example: a child partitioned index is made partition-dependent
- on both the partition table it is on and the parent partitioned
- index, so that it goes away if either of those is dropped, but
- not otherwise. The dependency on the parent index is primary,
- so that if the user tries to drop the child partitioned index,
- the error message will suggest dropping the parent index instead
- (not the table).
+ Example: an index partition is made partition-dependent on both the
+ table partition it is on and the parent partitioned index, so that it
+ goes away if either of those is dropped, but not otherwise.
+ The dependency on the parent index is primary, so that if the user
+ tries to drop the index partition, the error will suggest dropping the
+ parent index instead (not the table).
</para>
</listitem>
</varlistentry>
@@ -3113,10 +3112,10 @@ SCRAM-SHA-256$<replaceable><iteration
count></replaceable>:<replaceable>&l
<para>
Note that it's quite possible for two objects to be linked by more than
- one <structname>pg_depend</structname> entry. For example, a child
- partitioned index would have both a partition-type dependency on its
- associated partition table, and an auto dependency on each column of
- that table that it indexes. This sort of situation expresses the union
+ one <structname>pg_depend</structname> entry. For example, an index
+ partition would have both a partition-type dependency on its assosiated
+ table partition, and an auto dependency on each column of that table that
+ it indexes. This sort of situation expresses the union
of multiple dependency semantics. A dependent object can be dropped
without <literal>CASCADE</literal> if any of its dependencies satisfies
its condition for automatic dropping. Conversely, all the
Thanks,
Amit
Hello,
I'm sorry if this is the wrong place for this or it's already been
covered (I did scan though this whole thread and a couple others), but
I noticed the docs at
https://www.postgresql.org/docs/devel/ddl-partitioning.html still say
you can't create a foreign key referencing a partitioned table, even
though the docs for
https://www.postgresql.org/docs/devel/sql-createtable.html have been
updated (compared to v11). My understanding is that foreign keys
*still* don't work as expected when pointing at traditional INHERITS
tables, but they *will* work with declaratively-partitioned tables. In
that case I suggest this change:
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index a0a7435a03..3b4f43bbad 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3966,14 +3966,6 @@ ALTER TABLE measurement ATTACH PARTITION
measurement_y2008m02
- <listitem>
- <para>
- While primary keys are supported on partitioned tables, foreign
- keys referencing partitioned tables are not supported. (Foreign key
- references from a partitioned table to some other table are supported.)
- </para>
- </listitem>
-
<listitem>
<para>
<literal>BEFORE ROW</literal> triggers, if necessary, must be defined
on individual partitions, not the partitioned table.
</para>
@@ -4366,6 +4358,14 @@ ALTER TABLE measurement_y2008m02 INHERIT measurement;
</para>
</listitem>
+ <listitem>
+ <para>
+ While primary keys are supported on inheritance-partitioned
tables, foreign
+ keys referencing these tables are not supported. (Foreign key
+ references from an inheritance-partitioned table to some other
table are supported.)
+ </para>
+ </listitem>
+
<listitem>
<para>
If you are using manual <command>VACUUM</command> or
(I've also attached it as a patch file.) In other words, we should
move this caveat from the section on declaratively-partitioned tables
to the section on inheritance-partitioned tables.
Sorry again if this is the wrong conversation for this!
Yours,
Paul
Attachments:
inheritance_fk_docs_v0001.patchapplication/octet-stream; name=inheritance_fk_docs_v0001.patchDownload
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index a0a7435a03..3b4f43bbad 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3966,14 +3966,6 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02
<listitem>
<para>
- While primary keys are supported on partitioned tables, foreign
- keys referencing partitioned tables are not supported. (Foreign key
- references from a partitioned table to some other table are supported.)
- </para>
- </listitem>
-
- <listitem>
- <para>
<literal>BEFORE ROW</literal> triggers, if necessary, must be defined
on individual partitions, not the partitioned table.
</para>
@@ -4366,6 +4358,14 @@ ALTER TABLE measurement_y2008m02 INHERIT measurement;
</para>
</listitem>
+ <listitem>
+ <para>
+ While primary keys are supported on inheritance-partitioned tables, foreign
+ keys referencing these tables are not supported. (Foreign key
+ references from an inheritance-partitioned table to some other table are supported.)
+ </para>
+ </listitem>
+
<listitem>
<para>
If you are using manual <command>VACUUM</command> or
Hi Paul,
On 2019/05/21 13:25, Paul A Jungwirth wrote:
I'm sorry if this is the wrong place for this or it's already been
covered (I did scan though this whole thread and a couple others), but
I noticed the docs at
https://www.postgresql.org/docs/devel/ddl-partitioning.html still say
you can't create a foreign key referencing a partitioned table, even
though the docs for
https://www.postgresql.org/docs/devel/sql-createtable.html have been
updated (compared to v11). My understanding is that foreign keys
*still* don't work as expected when pointing at traditional INHERITS
tables, but they *will* work with declaratively-partitioned tables.
You're right. I think it's simply an oversight of f56f8f8da6, which
missed updating ddl.sgml
(I've also attached it as a patch file.) In other words, we should
move this caveat from the section on declaratively-partitioned tables
to the section on inheritance-partitioned tables.Sorry again if this is the wrong conversation for this!
Thanks for the patch. To avoid it getting lost in the discussions of this
thread, it might be better to post the patch to a separate thread.
Thanks,
Amit
On Mon, May 20, 2019 at 9:36 PM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:
Thanks for the patch. To avoid it getting lost in the discussions of this
thread, it might be better to post the patch to a separate thread.
Okay, I'll make a new thread and a new CF entry. Thanks!
On 2019/05/21 13:39, Paul A Jungwirth wrote:
On Mon, May 20, 2019 at 9:36 PM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:Thanks for the patch. To avoid it getting lost in the discussions of this
thread, it might be better to post the patch to a separate thread.Okay, I'll make a new thread and a new CF entry. Thanks!
This sounds more like an open item to me [1]https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items, not something that have to
be postponed until the next CF.
Thanks,
Amit
[1]: https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items
On Mon, May 20, 2019 at 9:44 PM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:
This sounds more like an open item to me [1], not something that have to
be postponed until the next CF.[1] https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items
Oh sorry, I already created the CF entry. Should I withdraw it? I'll
ask on -infra about getting editor permission for the wiki and add a
note there instead.
Paul
On 2019/05/21 13:47, Paul A Jungwirth wrote:
On Mon, May 20, 2019 at 9:44 PM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:This sounds more like an open item to me [1], not something that have to
be postponed until the next CF.[1] https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items
Oh sorry, I already created the CF entry. Should I withdraw it? I'll
ask on -infra about getting editor permission for the wiki and add a
note there instead.
You could link the CF entry from the wiki (the open item), but then it
will have to be closed when the open entry will be closed, so double work
for whoever does the cleaning up duties. Maybe, it's better to withdraw
it now.
Thanks,
Amit
On Tue, May 21, 2019 at 01:55:46PM +0900, Amit Langote wrote:
You could link the CF entry from the wiki (the open item), but then it
will have to be closed when the open entry will be closed, so double work
for whoever does the cleaning up duties. Maybe, it's better to withdraw
it now.
If you could clean up the CF entry, and keep only the open item in the
list, that would be nice. Thanks.
--
Michael
On Mon, May 20, 2019 at 10:22 PM Michael Paquier <michael@paquier.xyz> wrote:
If you could clean up the CF entry, and keep only the open item in the
list, that would be nice. Thanks.
I withdrew the CF entry; hopefully that is all that needs to be done,
but if I should do anything else let me know.
Thanks,
Paul
On 2019-May-20, Paul A Jungwirth wrote:
On Mon, May 20, 2019 at 9:44 PM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:This sounds more like an open item to me [1], not something that have to
be postponed until the next CF.[1] https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items
Oh sorry, I already created the CF entry. Should I withdraw it? I'll
ask on -infra about getting editor permission for the wiki and add a
note there instead.
You didn't actually ask, but I did it anyway.
--
�lvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
This patch was applied as f73293aba4d4. Thanks, Paul and Michael.
--
�lvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
On Thu, Jun 20, 2019 at 07:34:10PM -0400, Alvaro Herrera wrote:
This patch was applied as f73293aba4d4. Thanks, Paul and Michael.
Thanks for the thread update, Alvaro. I completely forgot to mention
the commit on this thread.
--
Michael
I made bunch of changes based on Andres' review and I split some more
indisputable 1 line changes from the large commit, hoping it will be easier to
review both. Several bits and pieces of the patch have been applied piecemeal,
but I was hoping to avoid continuing to do that.
I think at least these are also necessary.
v5-0002-Say-it-more-naturally.patch
v5-0010-spelling-and-typos.patch
I suggest to anyone reading to look at the large patch last, since its changes
are longer and less easy to read. Many of the changes are intended to improve
the text rather than to fix a definite error.
Justin
Attachments:
v5-0008-Consistent-language-contains.patchtext/x-diff; charset=us-asciiDownload
From e4101c7f192ab82866e5593d5d913a19595ca10d Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Mon, 20 May 2019 19:04:15 -0500
Subject: [PATCH v5 08/12] Consistent language: contains
---
doc/src/sgml/monitoring.sgml | 46 ++++++++++++++++++++++----------------------
1 file changed, 23 insertions(+), 23 deletions(-)
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index df5df62..964c8c5 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -1976,9 +1976,9 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_replication</structname> view will contain one row
- per WAL sender process, showing statistics about replication to that
- sender's connected standby server. Only directly connected standbys are
+ The <structname>pg_stat_replication</structname> view contains one row
+ per WAL sender process, showing statistics about replication to the
+ associated standby server. Only directly connected standbys are
listed; no information is available about downstream standby servers.
</para>
@@ -2126,7 +2126,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_wal_receiver</structname> view will contain only
+ The <structname>pg_stat_wal_receiver</structname> view contains only
one row, showing statistics about the WAL receiver from that receiver's
connected server.
</para>
@@ -2198,8 +2198,8 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_subscription</structname> view will contain one
- row per subscription for main worker (with null PID if the worker is
+ The <structname>pg_stat_subscription</structname> view contains one
+ row per subscription for the main worker (with null PID if the worker is
not running), and additional rows for workers handling the initial data
copy of the subscribed tables.
</para>
@@ -2281,9 +2281,9 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_ssl</structname> view will contain one row per
+ The <structname>pg_stat_ssl</structname> view contains one row per
backend or WAL sender process, showing statistics about SSL usage on
- this connection. It can be joined to <structname>pg_stat_activity</structname>
+ the associated connection. It can be joined to <structname>pg_stat_activity</structname>
or <structname>pg_stat_replication</structname> on the
<structfield>pid</structfield> column to get more details about the
connection.
@@ -2330,8 +2330,8 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_gssapi</structname> view will contain one row per
- backend, showing information about GSSAPI usage on this connection. It can
+ The <structname>pg_stat_gssapi</structname> view contains one row per
+ backend, showing information about GSSAPI usage on the associated connection. It can
be joined to <structname>pg_stat_activity</structname> or
<structname>pg_stat_replication</structname> on the
<structfield>pid</structfield> column to get more details about the
@@ -2632,7 +2632,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_database</structname> view will contain one row
+ The <structname>pg_stat_database</structname> view contains one row
for each database in the cluster, plus one for shared objects, showing
database-wide statistics.
</para>
@@ -2694,7 +2694,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_database_conflicts</structname> view will contain
+ The <structname>pg_stat_database_conflicts</structname> view contains
one row per database, showing database-wide statistics about
query cancels occurring due to conflicts with recovery on standby servers.
This view will only contain information on standby servers, since
@@ -2835,7 +2835,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_all_tables</structname> view will contain
+ The <structname>pg_stat_all_tables</structname> view contains
one row for each table in the current database (including TOAST
tables), showing statistics about accesses to that specific table. The
<structname>pg_stat_user_tables</structname> and
@@ -2902,7 +2902,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_all_indexes</structname> view will contain
+ The <structname>pg_stat_all_indexes</structname> view contains
one row for each index in the current database,
showing statistics about accesses to that specific index. The
<structname>pg_stat_user_indexes</structname> and
@@ -3012,7 +3012,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_statio_all_tables</structname> view will contain
+ The <structname>pg_statio_all_tables</structname> view contains
one row for each table in the current database (including TOAST
tables), showing statistics about I/O on that specific table. The
<structname>pg_statio_user_tables</structname> and
@@ -3073,7 +3073,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_statio_all_indexes</structname> view will contain
+ The <structname>pg_statio_all_indexes</structname> view contains
one row for each index in the current database,
showing statistics about I/O on that specific index. The
<structname>pg_statio_user_indexes</structname> and
@@ -3124,7 +3124,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_statio_all_sequences</structname> view will contain
+ The <structname>pg_statio_all_sequences</structname> view contains
one row for each sequence in the current database,
showing statistics about I/O on that specific sequence.
</para>
@@ -3178,7 +3178,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
</table>
<para>
- The <structname>pg_stat_user_functions</structname> view will contain
+ The <structname>pg_stat_user_functions</structname> view contains
one row for each tracked function, showing statistics about executions of
that function. The <xref linkend="guc-track-functions"/> parameter
controls exactly which functions are tracked.
@@ -3490,7 +3490,7 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<para>
Whenever <command>CREATE INDEX</command> or <command>REINDEX</command> is running, the
- <structname>pg_stat_progress_create_index</structname> view will contain
+ <structname>pg_stat_progress_create_index</structname> view contains
one row for each backend that is currently creating indexes. The tables
below describe the information that will be reported and provide information
about how to interpret it.
@@ -3653,7 +3653,7 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
The index is being built by code specific to the access method, and if
it supports progress reporting, this indicates the method's subphase.
<structname>blocks_total</structname> and <structname>blocks_done</structname>
- will contain progress data, as may
+ contain progress data, as may
<structname>tuples_total</structname> and <structname>tuples_done</structname>.
</entry>
</row>
@@ -3738,7 +3738,7 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>VACUUM Progress Reporting</title>
<para>
- The <structname>pg_stat_progress_vacuum</structname> view will contain one
+ The <structname>pg_stat_progress_vacuum</structname> view contains one
row for each backend that is running <command>VACUUM</command>, including
autovacuum worker processes.
The tables below describe the information
@@ -3930,8 +3930,8 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title>
<para>
- The <structname>pg_stat_progress_cluster</structname> view will contain a
- row for each backend that is running either
+ The <structname>pg_stat_progress_cluster</structname> view contains a
+ row for each backend running
<command>CLUSTER</command> or <command>VACUUM FULL</command>.
The tables below describe the information that will be reported and
provide information about how to interpret it.
--
2.7.4
v5-0009-overridden-vs-overwritten.patchtext/x-diff; charset=us-asciiDownload
From dccb832daa0f339dbc7bd34687f8690df441cdd5 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 13:18:12 -0500
Subject: [PATCH v5 09/12] overridden vs overwritten
---
doc/src/sgml/ref/pgbench.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
src/test/regress/expected/create_table.out | 2 +-
src/test/regress/sql/create_table.sql | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index 5460765..f0f0a0c 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -942,7 +942,7 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
<row>
<entry> <literal>random_seed</literal> </entry>
- <entry>random generator seed (unless overwritten with <option>-D</option>)</entry>
+ <entry>random generator seed (unless overridden with <option>-D</option>)</entry>
</row>
<row>
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 8076495..7b5949b 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -478,7 +478,7 @@ EOF
leave off the equal sign. To set a variable with an empty value,
use the equal sign but leave off the value. These assignments are
done during command line processing, so variables that reflect
- connection state will get overwritten later.
+ connection state will be overridden later.
</para>
</listitem>
</varlistentry>
diff --git a/src/test/regress/expected/create_table.out b/src/test/regress/expected/create_table.out
index 262abf2..654cbfe 100644
--- a/src/test/regress/expected/create_table.out
+++ b/src/test/regress/expected/create_table.out
@@ -874,7 +874,7 @@ create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a no
insert into parted_notnull_inh_test (b) values (null);
ERROR: null value in column "b" violates not-null constraint
DETAIL: Failing row contains (1, null).
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
Table "public.parted_notnull_inh_test1"
Column | Type | Collation | Nullable | Default
diff --git a/src/test/regress/sql/create_table.sql b/src/test/regress/sql/create_table.sql
index 9c6d86a..b2eeb34 100644
--- a/src/test/regress/sql/create_table.sql
+++ b/src/test/regress/sql/create_table.sql
@@ -720,7 +720,7 @@ CREATE TABLE part_c_1_10 PARTITION OF part_c FOR VALUES FROM (1) TO (10);
create table parted_notnull_inh_test (a int default 1, b int not null default 0) partition by list (a);
create table parted_notnull_inh_test1 partition of parted_notnull_inh_test (a not null, b default 1) for values in (1);
insert into parted_notnull_inh_test (b) values (null);
--- note that while b's default is overriden, a's default is preserved
+-- note that while b's default is overridden, a's default is preserved
\d parted_notnull_inh_test1
drop table parted_notnull_inh_test;
--
2.7.4
v5-0010-spelling-and-typos.patchtext/x-diff; charset=us-asciiDownload
From 204275836f9283ade5a68b2349b2f4712e9c4dd7 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 9 May 2019 21:13:55 -0500
Subject: [PATCH v5 10/12] spelling and typos
---
doc/src/sgml/bloom.sgml | 2 +-
doc/src/sgml/config.sgml | 2 +-
doc/src/sgml/func.sgml | 4 ++--
doc/src/sgml/ref/alter_table.sgml | 2 +-
doc/src/sgml/sources.sgml | 4 ++--
5 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/doc/src/sgml/bloom.sgml b/doc/src/sgml/bloom.sgml
index 6eeadde..c341b65 100644
--- a/doc/src/sgml/bloom.sgml
+++ b/doc/src/sgml/bloom.sgml
@@ -65,7 +65,7 @@
<para>
Number of bits generated for each index column. Each parameter's name
refers to the number of the index column that it controls. The default
- is <literal>2</literal> bits and maximum is <literal>4095</literal>. Parameters for
+ is <literal>2</literal> bits and the maximum is <literal>4095</literal>. Parameters for
index columns not actually used are ignored.
</para>
</listitem>
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index bdc1d12..095cfb5 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -4196,7 +4196,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
however, if the parameter is specified it will be honored in all cases.
<varname>hot_standby_feedback</varname> will be delayed by use of this feature.
- Combinining these settings could lead to bloat on the master, so should
+ Combining these settings could lead to bloat on the master, so should
be done only with care.
<warning>
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 90b592d..0139ceb 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -12268,7 +12268,7 @@ table2-mapping
<entry><literal>@@</literal></entry>
<entry><type>jsonpath</type></entry>
<entry>JSON path predicate check result for the specified JSON value.
- Only first result item is taken into account. If there are no results
+ Only the first result item is taken into account. If there are no results
or the first result item is not Boolean, then null
is returned.</entry>
<entry><literal>'{"a":[1,2,3,4,5]}'::jsonb @@ '$.a[*] > 2'</literal></entry>
@@ -12934,7 +12934,7 @@ table2-mapping
<entry><type>boolean</type></entry>
<entry>
Returns JSON path predicate result for the specified JSON value.
- Only first result item is taken into account. If there are no results
+ Only the first result item is taken into account. If there are no results
or the first result item is not Boolean, then null
is returned.
</entry>
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 058324e..6b079a7 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -220,7 +220,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<para>
<literal>SET NOT NULL</literal> may only be applied to a column
- providing none of the records in the table contain a
+ provided none of the records in the table contain a
<literal>NULL</literal> value for the column. Ordinarily this is
checked during the <literal>ALTER TABLE</literal> by scanning the
entire table; however, if a valid <literal>CHECK</literal> constraint is
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index c57f51d..65efd8c 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -511,7 +511,7 @@ Hint: the addendum
<para>
There are functions in the backend that will double-quote their own output
- at need (for example, <function>format_type_be()</function>). Do not put
+ as needed (for example, <function>format_type_be()</function>). Do not put
additional quotes around the output of such functions.
</para>
@@ -880,7 +880,7 @@ BETTER: unrecognized node type: 42
practices.
</para>
<para>
- Features from later revision of the C standard or compiler specific
+ Features from later revisions of the C standard or compiler specific
features can be used, if a fallback is provided.
</para>
<para>
--
2.7.4
v5-0011-is-vs-are-plural.patchtext/x-diff; charset=us-asciiDownload
From 981a4e0b43c463b2253b5f7375fe8868ea138d27 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 4 Apr 2019 18:57:48 -0500
Subject: [PATCH v5 11/12] is vs are plural
---
doc/src/sgml/auto-explain.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/func.sgml | 2 +-
doc/src/sgml/sources.sgml | 4 ++--
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/doc/src/sgml/auto-explain.sgml b/doc/src/sgml/auto-explain.sgml
index 3d619d4..9cd8718 100644
--- a/doc/src/sgml/auto-explain.sgml
+++ b/doc/src/sgml/auto-explain.sgml
@@ -180,8 +180,8 @@ LOAD 'auto_explain';
<listitem>
<para>
<varname>auto_explain.log_settings</varname> controls whether information
- about modified configuration options are printed when execution plan is logged.
- Only options affecting query planning with value different from the built-in
+ about modified configuration options is printed when an execution plan is logged.
+ Only those options which affect query planning and whose value differs from its built-in
default value are included in the output. This parameter is off by default.
Only superusers can change this setting.
</para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 093ef05..a364127 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3868,7 +3868,7 @@ CREATE INDEX ON measurement (logdate);
<para>
Normally, the set of partitions established when initially defining the
- table are not intended to remain static. It is common to
+ table is not intended to remain static. It is common to
remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
allowing this otherwise painful task to be executed
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 0139ceb..5dfdf38 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -10295,7 +10295,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple
<title>Producing XML Content</title>
<para>
- A set of functions and function-like expressions are available for
+ A set of functions and function-like expressions is available for
producing XML content from SQL data. As such, they are
particularly suitable for formatting query results into XML
documents for processing in client applications.
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 65efd8c..520bbae 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -452,8 +452,8 @@ Hint: the addendum
enough for error messages. Detail and hint messages can be relegated to a
verbose mode, or perhaps a pop-up error-details window. Also, details and
hints would normally be suppressed from the server log to save
- space. Reference to implementation details is best avoided since users
- aren't expected to know the details.
+ space. References to implementation details are best avoided since users
+ aren't expected to know them.
</para>
</simplesect>
--
2.7.4
v5-0012-s-recommendable-recommended.patchtext/x-diff; charset=us-asciiDownload
From a9dec43c45a23e27ea716aeb2a3dc639cfcab117 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 9 May 2019 21:22:10 -0500
Subject: [PATCH v5 12/12] s/recommendable/recommended
---
doc/src/sgml/btree.sgml | 2 +-
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/runtime.sgml | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/doc/src/sgml/btree.sgml b/doc/src/sgml/btree.sgml
index 5881ea5..b0e0f08 100644
--- a/doc/src/sgml/btree.sgml
+++ b/doc/src/sgml/btree.sgml
@@ -60,7 +60,7 @@
contain the single-type operators (and associated support functions)
for its input data type, while cross-type comparison operators and
support functions are <quote>loose</quote> in the family. It is
- recommendable that a complete set of cross-type operators be included
+ recommended that a complete set of cross-type operators be included
in the family, thus ensuring that the planner can represent any
comparison conditions that it deduces from transitivity.
</para>
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index 8a8427f..4b031ff 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -7107,7 +7107,7 @@ int PQresultSetInstanceData(PGresult *res, PGEventProc proc, void *data);
Beware that any storage represented by <parameter>data</parameter>
will not be accounted for by <function>PQresultMemorySize</function>,
unless it is allocated using <function>PQresultAlloc</function>.
- (Doing so is recommendable because it eliminates the need to free
+ (Doing so is recommended because it eliminates the need to free
such storage explicitly when the result is destroyed.)
</para>
</listitem>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index ecdaafc..e3d0dec 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -111,7 +111,7 @@
<command>initdb</command> will attempt to create the directory you
specify if it does not already exist. Of course, this will fail if
<command>initdb</command> does not have permissions to write in the
- parent directory. It's generally recommendable that the
+ parent directory. It's generally recommended that the
<productname>PostgreSQL</productname> user own not just the data
directory but its parent directory as well, so that this should not
be a problem. If the desired parent directory doesn't exist either,
--
2.7.4
v5-0001-review-docs-for-pg12dev.patchtext/x-diff; charset=us-asciiDownload
From 292f9854ac0f847a1783a7d276e6009b3bdd3e91 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Thu, 28 Mar 2019 18:50:03 -0500
Subject: [PATCH v5 01/12] review docs for pg12dev
---
doc/src/sgml/catalogs.sgml | 4 ++--
doc/src/sgml/config.sgml | 14 +++++++------
doc/src/sgml/ddl.sgml | 16 +++++++-------
doc/src/sgml/ecpg.sgml | 16 +++++++-------
doc/src/sgml/monitoring.sgml | 43 +++++++++++++++++++-------------------
doc/src/sgml/perform.sgml | 8 +++----
doc/src/sgml/protocol.sgml | 6 +++---
doc/src/sgml/ref/create_index.sgml | 4 ++--
doc/src/sgml/ref/pg_rewind.sgml | 13 ++++++------
doc/src/sgml/ref/pgbench.sgml | 7 +++----
doc/src/sgml/ref/vacuum.sgml | 6 +++---
doc/src/sgml/runtime.sgml | 4 ++--
doc/src/sgml/sources.sgml | 18 ++++++++--------
doc/src/sgml/xfunc.sgml | 12 +++++------
src/bin/pg_upgrade/check.c | 6 +++---
15 files changed, 87 insertions(+), 90 deletions(-)
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index 3428a7c..47482f2 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -3060,7 +3060,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
simplifies <command>ATTACH/DETACH PARTITION</command> operations:
the partition dependencies need only be added or removed.
Example: a child partitioned index is made partition-dependent
- on both the partition table it is on and the parent partitioned
+ on both the table partition and the parent partitioned
index, so that it goes away if either of those is dropped, but
not otherwise. The dependency on the parent index is primary,
so that if the user tries to drop the child partitioned index,
@@ -3123,7 +3123,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l
Note that it's quite possible for two objects to be linked by more than
one <structname>pg_depend</structname> entry. For example, a child
partitioned index would have both a partition-type dependency on its
- associated partition table, and an auto dependency on each column of
+ associated table partition, and an auto dependency on each column of
that table that it indexes. This sort of situation expresses the union
of multiple dependency semantics. A dependent object can be dropped
without <literal>CASCADE</literal> if any of its dependencies satisfies
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index aaab1c5..fa8b40a 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3433,7 +3433,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
current when the base backup was taken. The
value <literal>latest</literal> recovers
to the latest timeline found in the archive, which is useful in
- a standby server. <literal>latest</literal> is the default.
+ a standby server. The default is <literal>latest</literal>.
</para>
<para>
@@ -4195,8 +4195,9 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
This parameter is intended for use with streaming replication deployments;
however, if the parameter is specified it will be honored in all cases.
- <varname>hot_standby_feedback</varname> will be delayed by use of this feature
- which could lead to bloat on the master; use both together with care.
+ <varname>hot_standby_feedback</varname> will be delayed by use of this feature.
+ Combinining these settings could lead to bloat on the master, so should
+ be done only with care.
<warning>
<para>
@@ -5305,9 +5306,10 @@ SELECT * FROM parent WHERE key = 2400;
<listitem>
<para>
Prepared statements (either explicitly prepared or implicitly
- generated, for example in PL/pgSQL) can be executed using custom or
- generic plans. A custom plan is replanned for a new parameter value,
- a generic plan is reused for repeated executions of the prepared
+ generated, for example in PL/pgSQL) can be executed using a custom or
+ generic plan. If executed with a custom plan, the prepared statement
+ is replanned for its specific parameter values; if executed with a
+ generic plan, the same plan is reused for repeated executions of the prepared
statement. The choice between them is normally made automatically.
This setting overrides the default behavior and forces either a custom
or a generic plan. This can be used to work around performance
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index ed2d9c6..cf390a2 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3868,12 +3868,12 @@ CREATE INDEX ON measurement (logdate);
<para>
Normally the set of partitions established when initially defining the
- table are not intended to remain static. It is common to want to
- remove old partitions of data and periodically add new partitions for
+ table are not intended to remain static. It is common to
+ remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
- precisely that it allows this otherwise painful task to be executed
+ allowing this otherwise painful task to be executed
nearly instantaneously by manipulating the partition structure, rather
- than physically moving large amounts of data around.
+ than physically moving around large amounts of data.
</para>
<para>
@@ -3951,10 +3951,10 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02
</para>
<para>
- As explained above, it is possible to create indexes on partitioned tables
- and they are applied automatically to the entire hierarchy. This is very
- convenient, as not only the existing partitions will become indexed, but
- also any partitions that are created in the future will. One limitation is
+ As explained above, it is possible to create indexes on partitioned tables;
+ such indexes are propagated automatically to the entire hierarchy, and
+ any partitions created in the future will be indexed, in addition to the
+ existing partitions. One limitation is
that it's not possible to use the <literal>CONCURRENTLY</literal>
qualifier when creating such a partitioned index. To overcome long lock
times, it is possible to use <command>CREATE INDEX ON ONLY</command>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index 6641eee..d2dd96c 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -979,7 +979,7 @@ EXEC SQL END DECLARE SECTION;
<para>
The other way is using the <type>VARCHAR</type> type, which is a
- special type provided by ECPG. The definition on an array of
+ special type provided by ECPG. The definition of an array of
type <type>VARCHAR</type> is converted into a
named <type>struct</type> for every variable. A declaration like:
<programlisting>
@@ -989,7 +989,7 @@ VARCHAR var[180];
<programlisting>
struct varchar_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts the string
+ The member <structfield>arr</structfield> stores the string
including a terminating zero byte. Thus, to store a string in
a <type>VARCHAR</type> host variable, the host variable has to be
declared with the length including the zero byte terminator. The
@@ -1209,8 +1209,8 @@ EXEC SQL END DECLARE SECTION;
<title id="ecpg-type-bytea">bytea</title>
<para>
- The handling of the <type>bytea</type> type is also similar to
- the <type>VARCHAR</type>. The definition on an array of type
+ The handling of the <type>bytea</type> type is similar to
+ the <type>VARCHAR</type>. The definition of an array of type
<type>bytea</type> is converted into a named struct for every
variable. A declaration like:
<programlisting>
@@ -1220,9 +1220,8 @@ bytea var[180];
<programlisting>
struct bytea_var { int len; char arr[180]; } var;
</programlisting>
- The member <structfield>arr</structfield> hosts binary format
- data. It also can handle even <literal>'\0'</literal> as part of
- data unlike <type>VARCHAR</type>.
+ The member <structfield>arr</structfield> stores binary format
+ data, which can include zero bytes, unlike <type>VARCHAR</type>.
The data is converted from/to hex format and sent/received by
ecpglib.
</para>
@@ -7571,8 +7570,7 @@ PREPARE <replaceable class="parameter">name</replaceable> FROM <replaceable clas
<listitem>
<para>
A literal C string or a host variable containing a preparable
- statement, one of the SELECT, INSERT, UPDATE, or
- DELETE.
+ statement (SELECT, INSERT, UPDATE, or DELETE).
</para>
</listitem>
</varlistentry>
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index bf72d0c..7cec551 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -271,13 +271,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<para>
Some of the information in the dynamic statistics views shown in <xref
linkend="monitoring-stats-dynamic-views-table"/> is security restricted.
- Ordinary users can only see all the information about their own sessions
- (sessions belonging to a role that they are a member of). In rows about
+ Ordinary users can only see all information about their own sessions
+ (sessions belonging to a role of which they are a member). In rows for
other sessions, many columns will be null. Note, however, that the
existence of a session and its general properties such as its sessions user
and database are visible to all users. Superusers and members of the
built-in role <literal>pg_read_all_stats</literal> (see also <xref
- linkend="default-roles"/>) can see all the information about all sessions.
+ linkend="default-roles"/>) can see all information about all sessions.
</para>
<table id="monitoring-stats-dynamic-views-table">
@@ -667,7 +667,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<entry><type>timestamp with time zone</type></entry>
<entry>Time when this process' current transaction was started, or null
if no transaction is active. If the current
- query is the first of its transaction, this column is equal to the
+ query is the first of its transaction, this is equal to the
<structfield>query_start</structfield> column.
</entry>
</row>
@@ -3603,16 +3603,16 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<entry><structfield>partitions_total</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the total number of partitions on which the index is to be created.
+ When creating an index on a partitioned table, this is
+ the total number of partitions to be processed.
</entry>
</row>
<row>
<entry><structfield>partitions_done</structfield></entry>
<entry><type>bigint</type></entry>
<entry>
- When creating an index on a partitioned table, this column is set to
- the number of partitions on which the index has been completed.
+ When creating an index on a partitioned table, this is
+ the number of partitions for which the process is complete.
</entry>
</row>
</tbody>
@@ -3650,11 +3650,10 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<row>
<entry><literal>building index</literal></entry>
<entry>
- The index is being built by the access method-specific code. In this phase,
- access methods that support progress reporting fill in their own progress data,
- and the subphase is indicated in this column. Typically,
+ The index is being built by code specific to the access method, and if
+ it supports progress reporting, this indicates the method's subphase.
<structname>blocks_total</structname> and <structname>blocks_done</structname>
- will contain progress data, as well as potentially
+ will contain progress data, as may
<structname>tuples_total</structname> and <structname>tuples_done</structname>.
</entry>
</row>
@@ -3739,15 +3738,15 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>VACUUM Progress Reporting</title>
<para>
- Whenever <command>VACUUM</command> is running, the
- <structname>pg_stat_progress_vacuum</structname> view will contain
- one row for each backend (including autovacuum worker processes) that is
- currently vacuuming. The tables below describe the information
+ The <structname>pg_stat_progress_vacuum</structname> view will contain one
+ row for each backend that is running <command>VACUUM</command>, including
+ autovacuum worker processes.
+ The tables below describe the information
that will be reported and provide information about how to interpret it.
Progress for <command>VACUUM FULL</command> commands is reported via
- <structname>pg_stat_progress_cluster</structname>
- because both <command>VACUUM FULL</command> and <command>CLUSTER</command>
- rewrite the table, while regular <command>VACUUM</command> only modifies it
+ <structname>pg_stat_progress_cluster</structname>,
+ because <command>VACUUM FULL</command> rewrites the table, like <command>CLUSTER</command>,
+ while regular <command>VACUUM</command> only modifies it
in place. See <xref linkend='cluster-progress-reporting'/>.
</para>
@@ -3931,9 +3930,9 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<title>CLUSTER Progress Reporting</title>
<para>
- Whenever <command>CLUSTER</command> or <command>VACUUM FULL</command> is
- running, the <structname>pg_stat_progress_cluster</structname> view will
- contain a row for each backend that is currently running either command.
+ The <structname>pg_stat_progress_cluster</structname> view will contain a
+ row for each backend that is running either
+ <command>CLUSTER</command> or <command>VACUUM FULL</command>.
The tables below describe the information that will be reported and
provide information about how to interpret it.
</para>
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml
index 8e16583..0e34652 100644
--- a/doc/src/sgml/perform.sgml
+++ b/doc/src/sgml/perform.sgml
@@ -899,10 +899,10 @@ EXPLAIN ANALYZE SELECT * FROM tenk1 WHERE unique1 < 100 AND unique2 > 9000
Generally, the <command>EXPLAIN</command> output will display details for
every plan node which was generated by the query planner. However, there
are cases where the executor is able to determine that certain nodes are
- not required; currently, the only node types to support this are the
- <literal>Append</literal> and <literal>MergeAppend</literal> nodes. These
- node types have the ability to discard subnodes which they are able to
- determine won't contain any records required by the query. It is possible
+ not required; currently, the only node types to support this are
+ <literal>Append</literal> and <literal>MergeAppend</literal>, which
+ are able to discard subnodes when it's deduced that
+ they will not contain any records required by the query. It is possible
to determine that nodes have been removed in this way by the presence of a
"Subplans Removed" property in the <command>EXPLAIN</command> output.
</para>
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml
index b20f169..70f7286 100644
--- a/doc/src/sgml/protocol.sgml
+++ b/doc/src/sgml/protocol.sgml
@@ -1515,7 +1515,7 @@ SELECT 1/0;
the server will only accept encrypted packets from the client which are less
than 16kB; <function>gss_wrap_size_limit()</function> should be used by the
client to determine the size of the unencrypted message which will fit
- within this limit and larger messages should be broken up into multiple
+ within this limit; larger messages should be broken up into multiple
<function>gss_wrap()</function> calls. Typical segments are 8kB of
unencrypted data, resulting in encrypted packets of slightly larger than 8kB
but well within the 16kB maximum. The server can be expected to not send
@@ -1531,8 +1531,8 @@ SELECT 1/0;
support to <productname>PostgreSQL</productname>. In this case the
connection must be closed, but the frontend might choose to open a fresh
connection and proceed without requesting <acronym>GSSAPI</acronym>
- encryption. Given the length limits specified above, the ErrorMessage can
- not be confused with a proper response from the server with an appropriate
+ encryption. Given the length limits specified above, the ErrorMessage
+ cannot be confused with a proper response from the server with an appropriate
length.
</para>
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index 629a31e..713e2c3 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -181,8 +181,8 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
</para>
<para>
- Currently, the B-tree and the GiST index access methods support this
- feature. In B-tree and the GiST indexes, the values of columns listed
+ Currently, only the B-tree and GiST index access methods support this
+ feature. In B-tree and GiST indexes, the values of columns listed
in the <literal>INCLUDE</literal> clause are included in leaf tuples
which correspond to heap tuples, but are not included in upper-level
index entries used for tree navigation.
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml
index 4d91eeb..f39fe53 100644
--- a/doc/src/sgml/ref/pg_rewind.sgml
+++ b/doc/src/sgml/ref/pg_rewind.sgml
@@ -106,15 +106,14 @@ PostgreSQL documentation
</para>
<para>
- <application>pg_rewind</application> will fail immediately if it finds
- files it cannot write directly to. This can happen for example when
- the source and the target server use the same file mapping for read-only
- SSL keys and certificates. If such files are present on the target server
+ <application>pg_rewind</application> will fail immediately if it experiences
+ a write error. This can happen for example when
+ the source and target server use the same file mapping for read-only
+ SSL keys and certificates. If such files are present on the target server,
it is recommended to remove them before running
- <application>pg_rewind</application>. After doing the rewind, some of
+ <application>pg_rewind</application>. After performing the rewind, some of
those files may have been copied from the source, in which case it may
- be necessary to remove the data copied and restore back the set of links
- used before the rewind.
+ be necessary to remove them and restore the files removed beforehand.
</para>
</warning>
</refsect1>
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index e3b73a4..cc2e533 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -474,10 +474,9 @@ pgbench <optional> <replaceable>options</replaceable> </optional> <replaceable>d
</listitem>
</itemizedlist>
- Because in "prepared" mode <application>pgbench</application> reuses
- the parse analysis result for the second and subsequent query
- iteration, <application>pgbench</application> runs faster in the
- prepared mode than in other modes.
+ <application>pgbench</application> runs faster in prepared mode because
+ parse analysis and planning are done only once rather than during each
+ query.
</para>
<para>
The default is simple query protocol. (See <xref linkend="protocol"/>
diff --git a/doc/src/sgml/ref/vacuum.sgml b/doc/src/sgml/ref/vacuum.sgml
index f9b0fb8..ec2503d 100644
--- a/doc/src/sgml/ref/vacuum.sgml
+++ b/doc/src/sgml/ref/vacuum.sgml
@@ -215,9 +215,9 @@ VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ANALYZE ] [ <replaceable class="paramet
the operating system. This is normally the desired behavior
and is the default unless the <literal>vacuum_truncate</literal>
option has been set to false for the table to be vacuumed.
- Setting this option to false may be useful to avoid
- <literal>ACCESS EXCLUSIVE</literal> lock on the table that
- the truncation requires. This option is ignored if the
+ Setting this option to false may be useful to avoid an
+ <literal>ACCESS EXCLUSIVE</literal> lock on the table as needed for
+ truncation. This option is ignored if the
<literal>FULL</literal> option is used.
</para>
</listitem>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index 365ec75..cefff77 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -2632,8 +2632,8 @@ openssl x509 -req -in server.csr -text -days 365 \
using <acronym>GSSAPI</acronym> to encrypt client/server communications for
increased security. Support requires that a <acronym>GSSAPI</acronym>
implementation (such as MIT krb5) is installed on both client and server
- systems, and that support in <productname>PostgreSQL</productname> is
- enabled at build time (see <xref linkend="installation"/>).
+ systems, and that <productname>PostgreSQL</productname> was built with
+ <acronym>GSSAPI</acronym> support (see <xref linkend="installation"/>).
</para>
<sect2 id="gssapi-setup">
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index a339ebb..e869a31 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -103,7 +103,7 @@ less -x4
message text. In addition there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
- <function>ereport</function> itself is just a shell function, that exists
+ <function>ereport</function> itself is just a shell function that exists
mainly for the syntactic convenience of making message generation
look like a function call in the C source code. The only parameter
accepted directly by <function>ereport</function> is the severity level.
@@ -886,10 +886,10 @@ BETTER: unrecognized node type: 42
<para>
For example <literal>_StaticAssert()</literal> and
<literal>__builtin_constant_p</literal> are currently used, even though
- they are from newer revisions of the C standard and a
- <productname>GCC</productname> extension respectively. If not available
- we respectively fall back to using a C99 compatible replacement that
- performs the same checks, but emits rather cryptic messages and do not
+ they are from a newer revision of the C standard and a
+ <productname>GCC</productname> extension, respectively. If not available, in the first case,
+ we fall back to using a C99 compatible replacement that
+ performs the same checks, but emits rather cryptic messages; in the second case, we do not
use <literal>__builtin_constant_p</literal>.
</para>
</simplesect>
@@ -948,7 +948,7 @@ MemoryContextSwitchTo(MemoryContext context)
Barring special arrangements code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
- functions in <command>postgres</command> are also deemed signal safe, importantly
+ functions in <command>postgres</command> are also deemed signal safe; specifically,
<function>SetLatch()</function>.
</para>
<para>
@@ -969,9 +969,9 @@ handle_sighup(SIGNAL_ARGS)
}
</programlisting>
<varname>errno</varname> is saved and restored because
- <function>SetLatch()</function> might change it. If that were not done
- interrupted code that's currently inspecting <varname>errno</varname> might see the wrong
- value.
+ <function>SetLatch()</function> might change it. If that were not done,
+ code interrupted by a signal might see the wrong value of
+ <varname>errno</varname>.
</para>
</simplesect>
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 34a1938..d14457b 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3364,11 +3364,11 @@ if (!ptr)
</indexterm>
<para>
- By default, a function is just a <quote>black box</quote> that the
- database system knows very little about the behavior of. However,
- that means that queries using the function may be executed much less
+ By default, a function is a <quote>black box</quote> that the
+ database system knows very little about, which
+ means queries calling the function may be executed less
efficiently than they could be. It is possible to supply additional
- knowledge that helps the planner optimize function calls.
+ information that helps the planner optimize function calls.
</para>
<para>
@@ -3381,7 +3381,7 @@ if (!ptr)
The parallel safety property (<literal>PARALLEL
UNSAFE</literal>, <literal>PARALLEL RESTRICTED</literal>, or
<literal>PARALLEL SAFE</literal>) must also be specified if you hope
- to use the function in parallelized queries.
+ queries calling the function to be run using the parallel infrastructure.
It can also be useful to specify the function's estimated execution
cost, and/or the number of rows a set-returning function is estimated
to return. However, the declarative way of specifying those two
@@ -3393,7 +3393,7 @@ if (!ptr)
It is also possible to attach a <firstterm>planner support
function</firstterm> to a SQL-callable function (called
its <firstterm>target function</firstterm>), and thereby provide
- knowledge about the target function that is too complex to be
+ information about the target function that is too complex to be
represented declaratively. Planner support functions have to be
written in C (although their target functions might not be), so this is
an advanced feature that relatively few people will use.
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index 617270f..370c7aa 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -222,13 +222,13 @@ output_completion_banner(char *analyze_script_file_name,
/* Did we copy the free space files? */
if (GET_MAJOR_VERSION(old_cluster.major_version) >= 804)
pg_log(PG_REPORT,
- "Optimizer statistics are not transferred by pg_upgrade so,\n"
- "once you start the new server, consider running:\n"
+ "Optimizer statistics are not transferred by pg_upgrade.\n"
+ "Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
else
pg_log(PG_REPORT,
"Optimizer statistics and free space information are not transferred\n"
- "by pg_upgrade so, once you start the new server, consider running:\n"
+ "by pg_upgrade. Once you start the new server, consider running:\n"
" %s\n\n", analyze_script_file_name);
--
2.7.4
v5-0002-Say-it-more-naturally.patchtext/x-diff; charset=us-asciiDownload
From 52164bf5147dcf13599881f21e918cafcd99c369 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Tue, 9 Jul 2019 10:42:26 -0500
Subject: [PATCH v5 02/12] Say it more naturally
---
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/libpq.sgml | 2 +-
doc/src/sgml/monitoring.sgml | 6 +++---
doc/src/sgml/ref/alter_table.sgml | 2 +-
doc/src/sgml/ref/pg_rewind.sgml | 4 ++--
doc/src/sgml/ref/reindex.sgml | 2 +-
doc/src/sgml/runtime.sgml | 2 +-
doc/src/sgml/sources.sgml | 4 ++--
9 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index fa8b40a..ff60875 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -112,7 +112,7 @@
For example, <literal>30.1 GB</literal> will be converted
to <literal>30822 MB</literal> not <literal>32319628902 B</literal>.
If the parameter is of integer type, a final rounding to integer
- occurs after any units conversion.
+ occurs after any unit conversion.
</para>
</listitem>
@@ -3540,7 +3540,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
servers or streaming base backup clients (i.e., the maximum number of
simultaneously running WAL sender processes). The default is
<literal>10</literal>. The value <literal>0</literal> means
- replication is disabled. Abrupt streaming client disconnection might
+ replication is disabled. Abrupt disconnection of a streaming client might
leave an orphaned connection slot behind until a timeout is reached,
so this parameter should be set slightly higher than the maximum
number of expected clients so disconnected clients can immediately
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index cf390a2..98cb89f 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3941,7 +3941,7 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02
Before running the <command>ATTACH PARTITION</command> command, it is
recommended to create a <literal>CHECK</literal> constraint on the table to
be attached describing the desired partition constraint. That way,
- the system will be able to skip the scan to validate the implicit
+ the system will be able to skip the scan which is otherwise needed to validate the implicit
partition constraint. Without such a constraint, the table will be
scanned to validate the partition constraint while holding an
<literal>ACCESS EXCLUSIVE</literal> lock on that partition
diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml
index 7f01fcc..8a8427f 100644
--- a/doc/src/sgml/libpq.sgml
+++ b/doc/src/sgml/libpq.sgml
@@ -1122,7 +1122,7 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname
<term><literal>connect_timeout</literal></term>
<listitem>
<para>
- Maximum wait for connection, in seconds (write as a decimal integer,
+ Maximum time to wait while connecting, in seconds (write as a decimal integer,
e.g. <literal>10</literal>). Zero, negative, or not specified means
wait indefinitely. The minimum allowed timeout is 2 seconds, therefore
a value of <literal>1</literal> is interpreted as <literal>2</literal>.
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index 7cec551..728db6b 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -2504,14 +2504,14 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<row>
<entry><structfield>datname</structfield></entry>
<entry><type>name</type></entry>
- <entry>Name of this database, or <literal>NULL</literal> for the shared
+ <entry>Name of this database, or <literal>NULL</literal> for shared
objects.</entry>
</row>
<row>
<entry><structfield>numbackends</structfield></entry>
<entry><type>integer</type></entry>
<entry>Number of backends currently connected to this database, or
- <literal>NULL</literal> for the shared objects. This is the only column
+ <literal>NULL</literal> for shared objects. This is the only column
in this view that returns a value reflecting current state; all other
columns return the accumulated values since the last reset.</entry>
</row>
@@ -2633,7 +2633,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<para>
The <structname>pg_stat_database</structname> view will contain one row
- for each database in the cluster, plus one for the shared objects, showing
+ for each database in the cluster, plus one for shared objects, showing
database-wide statistics.
</para>
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 90bf195..058324e 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -643,7 +643,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
When applied to a partitioned table, nothing is moved, but any
partitions created afterwards with
<command>CREATE TABLE PARTITION OF</command> will use that tablespace,
- unless the <literal>TABLESPACE</literal> clause is used to override it.
+ unless overridden by its <literal>TABLESPACE</literal> clause.
</para>
<para>
diff --git a/doc/src/sgml/ref/pg_rewind.sgml b/doc/src/sgml/ref/pg_rewind.sgml
index f39fe53..6f6d220 100644
--- a/doc/src/sgml/ref/pg_rewind.sgml
+++ b/doc/src/sgml/ref/pg_rewind.sgml
@@ -184,7 +184,7 @@ PostgreSQL documentation
<command>pg_rewind</command> to return without waiting, which is
faster, but means that a subsequent operating system crash can leave
the synchronized data folder corrupt. Generally, this option is
- useful for testing but should not be used when creating a production
+ useful for testing but should not be used on a production
installation.
</para>
</listitem>
@@ -265,7 +265,7 @@ GRANT EXECUTE ON function pg_catalog.pg_read_binary_file(text, bigint, bigint, b
<para>
When executing <application>pg_rewind</application> using an online
cluster as source which has been recently promoted, it is necessary
- to execute a <command>CHECKPOINT</command> after promotion so as its
+ to execute a <command>CHECKPOINT</command> after promotion such that its
control file reflects up-to-date timeline information, which is used by
<application>pg_rewind</application> to check if the target cluster
can be rewound using the designated source cluster.
diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml
index 303436c..5a1f634 100644
--- a/doc/src/sgml/ref/reindex.sgml
+++ b/doc/src/sgml/ref/reindex.sgml
@@ -240,7 +240,7 @@ REINDEX [ ( VERBOSE ) ] { INDEX | TABLE | SCHEMA | DATABASE | SYSTEM } [ CONCURR
<para>
Reindexing a single index or table requires being the owner of that
index or table. Reindexing a schema or database requires being the
- owner of that schema or database. Note that is therefore sometimes
+ owner of that schema or database. Note specifically that it's
possible for non-superusers to rebuild indexes of tables owned by
other users. However, as a special exception, when
<command>REINDEX DATABASE</command>, <command>REINDEX SCHEMA</command>
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index cefff77..ecdaafc 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -2642,7 +2642,7 @@ openssl x509 -req -in server.csr -text -days 365 \
<para>
The <productname>PostgreSQL</productname> server will listen for both
normal and <acronym>GSSAPI</acronym>-encrypted connections on the same TCP
- port, and will negotiate with any connecting client on whether to
+ port, and will negotiate with any connecting client whether to
use <acronym>GSSAPI</acronym> for encryption (and for authentication). By
default, this decision is up to the client (which means it can be
downgraded by an attacker); see <xref linkend="auth-pg-hba-conf"/> about
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index e869a31..b94e7f7 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -359,7 +359,7 @@ ereport(ERROR,
specify suppression of the <literal>CONTEXT:</literal> portion of a message in
the postmaster log. This should only be used for verbose debugging
messages where the repeated inclusion of context would bloat the log
- volume too much.
+ too much.
</para>
</listitem>
</itemizedlist>
@@ -504,7 +504,7 @@ Hint: the addendum
<title>Use of Quotes</title>
<para>
- Use quotes always to delimit file names, user-supplied identifiers, and
+ Always use quotes to delimit file names, user-supplied identifiers, and
other variables that might contain words. Do not use them to mark up
variables that will not contain words (for example, operator names).
</para>
--
2.7.4
v5-0003-Add-comma-for-readability.patchtext/x-diff; charset=us-asciiDownload
From 37a5f024bd6ded444b99cd441ef33062da950d1d Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:37:35 -0500
Subject: [PATCH v5 03/12] Add comma for readability
---
doc/src/sgml/backup.sgml | 2 +-
doc/src/sgml/bki.sgml | 2 +-
doc/src/sgml/client-auth.sgml | 4 ++--
doc/src/sgml/config.sgml | 4 ++--
doc/src/sgml/ddl.sgml | 2 +-
doc/src/sgml/indices.sgml | 2 +-
doc/src/sgml/installation.sgml | 2 +-
doc/src/sgml/logical-replication.sgml | 2 +-
doc/src/sgml/monitoring.sgml | 8 ++++----
doc/src/sgml/protocol.sgml | 6 +++---
doc/src/sgml/ref/create_table.sgml | 2 +-
doc/src/sgml/ref/create_table_as.sgml | 2 +-
doc/src/sgml/ref/pgupgrade.sgml | 2 +-
doc/src/sgml/ref/psql-ref.sgml | 2 +-
doc/src/sgml/sources.sgml | 20 ++++++++++----------
doc/src/sgml/wal.sgml | 2 +-
doc/src/sgml/xoper.sgml | 2 +-
17 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/doc/src/sgml/backup.sgml b/doc/src/sgml/backup.sgml
index 9d4c000..aba0414 100644
--- a/doc/src/sgml/backup.sgml
+++ b/doc/src/sgml/backup.sgml
@@ -1024,7 +1024,7 @@ SELECT pg_start_backup('label', true);
consider during this backup.
</para>
<para>
- As noted above, if the server crashes during the backup it may not be
+ As noted above, if the server crashes during the backup, it may not be
possible to restart until the <literal>backup_label</literal> file has
been manually deleted from the <envar>PGDATA</envar> directory. Note
that it is very important to never remove the
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index aa3d6f8..e27fa76 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -403,7 +403,7 @@
8000—9999. This minimizes the risk of OID collisions with other
patches being developed concurrently. To keep the 8000—9999
range free for development purposes, after a patch has been committed
- to the master git repository its OIDs should be renumbered into
+ to the master git repository, its OIDs should be renumbered into
available space below that range. Typically, this will be done
near the end of each development cycle, moving all OIDs consumed by
patches committed in that cycle at the same time. The script
diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml
index 3ed74d8..4a01b1b 100644
--- a/doc/src/sgml/client-auth.sgml
+++ b/doc/src/sgml/client-auth.sgml
@@ -157,7 +157,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>SSL</acronym> support. Furthermore,
<acronym>SSL</acronym> must be enabled
by setting the <xref linkend="guc-ssl"/> configuration parameter (see
@@ -189,7 +189,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceable
</para>
<para>
- To make use of this option the server must be built with
+ To make use of this option, the server must be built with
<acronym>GSSAPI</acronym> support. Otherwise,
the <literal>hostgssenc</literal> record is ignored except for logging
a warning that it cannot match any connections.
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index ff60875..b898214 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3458,7 +3458,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
reached. The default is <literal>pause</literal>, which means recovery will
be paused. <literal>promote</literal> means the recovery process will finish
and the server will start to accept connections.
- Finally <literal>shutdown</literal> will stop the server after reaching the
+ Finally, <literal>shutdown</literal> will stop the server after reaching the
recovery target.
</para>
<para>
@@ -4188,7 +4188,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
</para>
<para>
The delay occurs once the database in recovery has reached a consistent
- state, until the standby is promoted or triggered. After that the standby
+ state, until the standby is promoted or triggered. After that, the standby
will end recovery without further waiting.
</para>
<para>
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 98cb89f..093ef05 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3867,7 +3867,7 @@ CREATE INDEX ON measurement (logdate);
<title>Partition Maintenance</title>
<para>
- Normally the set of partitions established when initially defining the
+ Normally, the set of partitions established when initially defining the
table are not intended to remain static. It is common to
remove partitions of old data and add partitions for
new data. One of the most important advantages of partitioning is
diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml
index 95c0a19..e940ddb 100644
--- a/doc/src/sgml/indices.sgml
+++ b/doc/src/sgml/indices.sgml
@@ -1081,7 +1081,7 @@ SELECT x FROM tab WHERE x = 'key' AND z < 42;
scan. Even in the successful case, this approach trades visibility map
accesses for heap accesses; but since the visibility map is four orders
of magnitude smaller than the heap it describes, far less physical I/O is
- needed to access it. In most situations the visibility map remains
+ needed to access it. In most situations, the visibility map remains
cached in memory all the time.
</para>
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 4493862..847e028 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -2527,7 +2527,7 @@ xcodebuild -version -sdk macosx Path
</programlisting>
Note that building an extension using a different sysroot version than
was used to build the core server is not really recommended; in the
- worst case it could result in hard-to-debug ABI inconsistencies.
+ worst case, it could result in hard-to-debug ABI inconsistencies.
</para>
<para>
diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml
index f657d1d..a27ff0b 100644
--- a/doc/src/sgml/logical-replication.sgml
+++ b/doc/src/sgml/logical-replication.sgml
@@ -201,7 +201,7 @@
<para>
Subscriptions are dumped by <command>pg_dump</command> if the current user
- is a superuser. Otherwise a warning is written and subscriptions are
+ is a superuser. Otherwise, a warning is written and subscriptions are
skipped, because non-superusers cannot read all subscription information
from the <structname>pg_subscription</structname> catalog.
</para>
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index 728db6b..cba36c0 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -2841,7 +2841,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<structname>pg_stat_user_tables</structname> and
<structname>pg_stat_sys_tables</structname> views
contain the same information,
- but filtered to only show user and system tables respectively.
+ but filtered to only show user and system tables, respectively.
</para>
<table id="pg-stat-all-indexes-view" xreflabel="pg_stat_all_indexes">
@@ -2908,7 +2908,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<structname>pg_stat_user_indexes</structname> and
<structname>pg_stat_sys_indexes</structname> views
contain the same information,
- but filtered to only show user and system indexes respectively.
+ but filtered to only show user and system indexes, respectively.
</para>
<para>
@@ -3018,7 +3018,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<structname>pg_statio_user_tables</structname> and
<structname>pg_statio_sys_tables</structname> views
contain the same information,
- but filtered to only show user and system tables respectively.
+ but filtered to only show user and system tables, respectively.
</para>
<table id="pg-statio-all-indexes-view" xreflabel="pg_statio_all_indexes">
@@ -3079,7 +3079,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<structname>pg_statio_user_indexes</structname> and
<structname>pg_statio_sys_indexes</structname> views
contain the same information,
- but filtered to only show user and system indexes respectively.
+ but filtered to only show user and system indexes, respectively.
</para>
<table id="pg-statio-all-sequences-view" xreflabel="pg_statio_all_sequences">
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml
index 70f7286..3f907f6 100644
--- a/doc/src/sgml/protocol.sgml
+++ b/doc/src/sgml/protocol.sgml
@@ -1449,7 +1449,7 @@ SELECT 1/0;
<literal>S</literal>, perform an <acronym>SSL</acronym> startup handshake
(not described here, part of the <acronym>SSL</acronym>
specification) with the server. If this is successful, continue
- with sending the usual StartupMessage. In this case the
+ with sending the usual StartupMessage. In this case, the
StartupMessage and all subsequent data will be
<acronym>SSL</acronym>-encrypted. To continue after
<literal>N</literal>, send the usual StartupMessage and proceed without
@@ -1462,7 +1462,7 @@ SELECT 1/0;
the server predates the addition of <acronym>SSL</acronym> support
to <productname>PostgreSQL</productname>. (Such servers are now very ancient,
and likely do not exist in the wild anymore.)
- In this case the connection must
+ In this case, the connection must
be closed, but the frontend might choose to open a fresh connection
and proceed without requesting <acronym>SSL</acronym>.
</para>
@@ -1528,7 +1528,7 @@ SELECT 1/0;
The frontend should also be prepared to handle an ErrorMessage
response to GSSENCRequest from the server. This would only occur if
the server predates the addition of <acronym>GSSAPI</acronym> encryption
- support to <productname>PostgreSQL</productname>. In this case the
+ support to <productname>PostgreSQL</productname>. In this case, the
connection must be closed, but the frontend might choose to open a fresh
connection and proceed without requesting <acronym>GSSAPI</acronym>
encryption. Given the length limits specified above, the ErrorMessage
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index 9009add..4f3ff1d 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1189,7 +1189,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
This clause specifies optional storage parameters for a table or index;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should not contain OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml
index b5c4ce6..0880459 100644
--- a/doc/src/sgml/ref/create_table_as.sgml
+++ b/doc/src/sgml/ref/create_table_as.sgml
@@ -142,7 +142,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
This clause specifies optional storage parameters for the new table;
see <xref linkend="sql-createtable-storage-parameters"
endterm="sql-createtable-storage-parameters-title"/> for more
- information. For backward-compatibility the <literal>WITH</literal>
+ information. For backward-compatibility, the <literal>WITH</literal>
clause for a table can also include <literal>OIDS=FALSE</literal> to
specify that rows of the new table should contain no OIDs (object
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml
index 8288676..6a898d9 100644
--- a/doc/src/sgml/ref/pgupgrade.sgml
+++ b/doc/src/sgml/ref/pgupgrade.sgml
@@ -746,7 +746,7 @@ psql --username=postgres --file=script.sql postgres
<application>pg_upgrade</application> launches short-lived postmasters in
the old and new data directories. Temporary Unix socket files for
communication with these postmasters are, by default, made in the current
- working directory. In some situations the path name for the current
+ working directory. In some situations, the path name for the current
directory might be too long to be a valid socket name. In that case you
can use the <option>-s</option> option to put the socket files in some
directory with a shorter path name. For security, be sure that that
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 7789fc6..8076495 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1056,7 +1056,7 @@ testdb=>
These operations are not as efficient as the <acronym>SQL</acronym>
<command>COPY</command> command with a file or program data source or
destination, because all data must pass through the client/server
- connection. For large amounts of data the <acronym>SQL</acronym>
+ connection. For large amounts of data, the <acronym>SQL</acronym>
command might be preferable.
</para>
</tip>
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index b94e7f7..c57f51d 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -100,7 +100,7 @@ less -x4
<para>
There are two required elements for every message: a severity level
(ranging from <literal>DEBUG</literal> to <literal>PANIC</literal>) and a primary
- message text. In addition there are optional elements, the most
+ message text. In addition, there are optional elements, the most
common of which is an error identifier code that follows the SQL spec's
SQLSTATE conventions.
<function>ereport</function> itself is just a shell function that exists
@@ -473,7 +473,7 @@ Hint: the addendum
<para>
Rationale: Messages are not necessarily displayed on terminal-type
- displays. In GUI displays or browsers these formatting instructions are
+ displays. In GUI displays or browsers, these formatting instructions are
at best ignored.
</para>
@@ -884,7 +884,7 @@ BETTER: unrecognized node type: 42
features can be used, if a fallback is provided.
</para>
<para>
- For example <literal>_StaticAssert()</literal> and
+ For example, <literal>_StaticAssert()</literal> and
<literal>__builtin_constant_p</literal> are currently used, even though
they are from a newer revision of the C standard and a
<productname>GCC</productname> extension, respectively. If not available, in the first case,
@@ -897,14 +897,14 @@ BETTER: unrecognized node type: 42
<simplesect>
<title>Function-Like Macros and Inline Functions</title>
<para>
- Both, macros with arguments and <literal>static inline</literal>
- functions, may be used. The latter are preferable if there are
+ Both macros with arguments and <literal>static inline</literal>
+ functions may be used. The latter are preferable if there are
multiple-evaluation hazards when written as a macro, as e.g. the
case with
<programlisting>
#define Max(x, y) ((x) > (y) ? (x) : (y))
</programlisting>
- or when the macro would be very long. In other cases it's only
+ or when the macro would be very long. In other cases, it's only
possible to use macros, or at least easier. For example because
expressions of various types need to be passed to the macro.
</para>
@@ -936,16 +936,16 @@ MemoryContextSwitchTo(MemoryContext context)
<simplesect>
<title>Writing Signal Handlers</title>
<para>
- To be suitable to run inside a signal handler code has to be
+ To be suitable to run inside a signal handler, code has to be
written very carefully. The fundamental problem is that, unless
blocked, a signal handler can interrupt code at any time. If code
- inside the signal handler uses the same state as code outside
- chaos may ensue. As an example consider what happens if a signal
+ inside the signal handler uses the same state as code outside,
+ chaos may ensue. As an example, consider what happens if a signal
handler tries to acquire a lock that's already held in the
interrupted code.
</para>
<para>
- Barring special arrangements code in signal handlers may only
+ Barring special arrangements, code in signal handlers may only
call async-signal safe functions (as defined in POSIX) and access
variables of type <literal>volatile sig_atomic_t</literal>. A few
functions in <command>postgres</command> are also deemed signal safe; specifically,
diff --git a/doc/src/sgml/wal.sgml b/doc/src/sgml/wal.sgml
index 4eb8feb..30bde24 100644
--- a/doc/src/sgml/wal.sgml
+++ b/doc/src/sgml/wal.sgml
@@ -326,7 +326,7 @@
before returning a success indication to the client. The client is
therefore guaranteed that a transaction reported to be committed will
be preserved, even in the event of a server crash immediately after.
- However, for short transactions this delay is a major component of the
+ However, for short transactions, this delay is a major component of the
total transaction time. Selecting asynchronous commit mode means that
the server returns success as soon as the transaction is logically
completed, before the <acronym>WAL</acronym> records it generated have
diff --git a/doc/src/sgml/xoper.sgml b/doc/src/sgml/xoper.sgml
index 260e43c..55cd3b1 100644
--- a/doc/src/sgml/xoper.sgml
+++ b/doc/src/sgml/xoper.sgml
@@ -375,7 +375,7 @@ table1.column1 OP table2.column2
Another example is that on machines that meet the <acronym>IEEE</acronym>
floating-point standard, negative zero and positive zero are different
values (different bit patterns) but they are defined to compare equal.
- If a float value might contain negative zero then extra steps are needed
+ If a float value might contain negative zero, then extra steps are needed
to ensure it generates the same hash value as positive zero.
</para>
--
2.7.4
v5-0004-Consistent-language-must-be-superuser.patchtext/x-diff; charset=us-asciiDownload
From 0a1257363330e4c30d4c6c65ca8e748ba125f743 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:40:49 -0500
Subject: [PATCH v5 04/12] Consistent language: "must be superuser"
---
src/backend/storage/ipc/signalfuncs.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/storage/ipc/signalfuncs.c b/src/backend/storage/ipc/signalfuncs.c
index ade8d71..1eec165 100644
--- a/src/backend/storage/ipc/signalfuncs.c
+++ b/src/backend/storage/ipc/signalfuncs.c
@@ -115,7 +115,7 @@ pg_cancel_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to cancel superuser query"))));
+ (errmsg("must be superuser to cancel superuser query"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
@@ -139,12 +139,12 @@ pg_terminate_backend(PG_FUNCTION_ARGS)
if (r == SIGNAL_BACKEND_NOSUPERUSER)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a superuser to terminate superuser process"))));
+ (errmsg("must be superuser to terminate superuser process"))));
if (r == SIGNAL_BACKEND_NOPERMISSION)
ereport(ERROR,
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
- (errmsg("must be a member of the role whose process is being terminated or member of pg_signal_backend"))));
+ (errmsg("must be member of role whose process is being terminated or member of pg_signal_backend"))));
PG_RETURN_BOOL(r == SIGNAL_BACKEND_SUCCESS);
}
--
2.7.4
v5-0005-Consistent-spelling-timestamp.patchtext/x-diff; charset=us-asciiDownload
From 443db8ffc2157c137cb84563c1326da727d95850 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Fri, 29 Mar 2019 19:52:22 -0500
Subject: [PATCH v5 05/12] Consistent spelling: "timestamp"
---
doc/src/sgml/config.sgml | 14 ++++++-------
doc/src/sgml/datatype.sgml | 6 +++---
doc/src/sgml/ecpg.sgml | 4 ++--
doc/src/sgml/func.sgml | 30 +++++++++++++--------------
doc/src/sgml/logicaldecoding.sgml | 4 ++--
doc/src/sgml/plpgsql.sgml | 2 +-
doc/src/sgml/ref/pgbench.sgml | 6 +++---
doc/src/sgml/replication-origins.sgml | 2 +-
doc/src/sgml/trigger.sgml | 2 +-
doc/src/sgml/uuid-ossp.sgml | 2 +-
src/backend/utils/misc/guc.c | 4 ++--
src/backend/utils/misc/postgresql.conf.sample | 2 +-
src/include/catalog/pg_control.h | 4 ++--
src/interfaces/ecpg/pgtypeslib/timestamp.c | 4 ++--
14 files changed, 43 insertions(+), 43 deletions(-)
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index b898214..bdc1d12 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3344,7 +3344,7 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
</term>
<listitem>
<para>
- This parameter specifies the time stamp up to which recovery
+ This parameter specifies the timestamp up to which recovery
will proceed.
The precise stopping point is also influenced by
<xref linkend="guc-recovery-target-inclusive"/>.
@@ -4171,7 +4171,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
<para>
It is possible that the replication delay between servers exceeds the
value of this parameter, in which case no delay is added.
- Note that the delay is calculated between the WAL time stamp as written
+ Note that the delay is calculated between the WAL timestamp as written
on master and the current time on the standby. Delays in transfer
because of network lag or cascading replication configurations
may reduce the actual wait time significantly. If the system
@@ -6256,7 +6256,7 @@ local0.* /var/log/postgresql
readability in log files.
This parameter can only be set in the <filename>postgresql.conf</filename>
file or on the server command line. The default is
- <literal>'%m [%p] '</literal> which logs a time stamp and the process ID.
+ <literal>'%m [%p] '</literal> which logs a timestamp and the process ID.
<informaltable>
<tgroup cols="3">
@@ -6335,7 +6335,7 @@ local0.* /var/log/postgresql
</row>
<row>
<entry><literal>%s</literal></entry>
- <entry>Process start time stamp</entry>
+ <entry>Process start timestamp</entry>
<entry>no</entry>
</row>
<row>
@@ -6390,7 +6390,7 @@ FROM pg_stat_activity;
<tip>
<para>
<application>Syslog</application> produces its own
- time stamp and process ID information, so you probably do not want to
+ timestamp and process ID information, so you probably do not want to
include those escapes if you are logging to <application>syslog</application>.
</para>
</tip>
@@ -6539,7 +6539,7 @@ log_line_prefix = '%m [%p] %q%u@%d/%a '
This option emits log lines in comma-separated-values
(<acronym>CSV</acronym>) format,
with these columns:
- time stamp with milliseconds,
+ timestamp with milliseconds,
user name,
database name,
process ID,
@@ -7977,7 +7977,7 @@ SET XML OPTION { DOCUMENT | CONTENT };
</term>
<listitem>
<para>
- Sets the time zone for displaying and interpreting time stamps.
+ Sets the time zone for displaying and interpreting timestamps.
The built-in default is <literal>GMT</literal>, but that is typically
overridden in <filename>postgresql.conf</filename>; <application>initdb</application>
will install a setting there corresponding to its system environment.
diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml
index 35ecd48..9f3e7a0 100644
--- a/doc/src/sgml/datatype.sgml
+++ b/doc/src/sgml/datatype.sgml
@@ -2031,7 +2031,7 @@ MINUTE TO SECOND
</indexterm>
<para>
- Valid input for the time stamp types consists of the concatenation
+ Valid input for the timestamp types consists of the concatenation
of a date and a time, followed by an optional time zone,
followed by an optional <literal>AD</literal> or <literal>BC</literal>.
(Alternatively, <literal>AD</literal>/<literal>BC</literal> can appear
@@ -2159,12 +2159,12 @@ January 8 04:05:06 1999 PST
<row>
<entry><literal>infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>later than all other time stamps</entry>
+ <entry>later than all other timestamps</entry>
</row>
<row>
<entry><literal>-infinity</literal></entry>
<entry><type>date</type>, <type>timestamp</type></entry>
- <entry>earlier than all other time stamps</entry>
+ <entry>earlier than all other timestamps</entry>
</row>
<row>
<entry><literal>now</literal></entry>
diff --git a/doc/src/sgml/ecpg.sgml b/doc/src/sgml/ecpg.sgml
index d2dd96c..3c42c0a 100644
--- a/doc/src/sgml/ecpg.sgml
+++ b/doc/src/sgml/ecpg.sgml
@@ -1030,7 +1030,7 @@ struct varchar_var { int len; char arr[180]; } var;
the pgtypes library. The pgtypes library, described in detail
in <xref linkend="ecpg-pgtypes"/> contains basic functions to deal
with those types, such that you do not need to send a query to
- the SQL server just for adding an interval to a time stamp for
+ the SQL server just for adding an interval to a timestamp for
example.
</para>
@@ -3622,7 +3622,7 @@ void PGTYPESdecimal_free(decimal *var);
<term><literal>PGTYPESInvalidTimestamp</literal></term>
<listitem>
<para>
- A value of type timestamp representing an invalid time stamp. This is
+ A value of type timestamp representing an invalid timestamp. This is
returned by the function <function>PGTYPEStimestamp_from_asc</function> on
parse error.
Note that due to the internal representation of the <type>timestamp</type> data type,
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 185a184..90b592d 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -5984,7 +5984,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_char(<type>timestamp</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>text</type></entry>
- <entry>convert time stamp to string</entry>
+ <entry>convert timestamp to string</entry>
<entry><literal>to_char(current_timestamp, 'HH12:MI:SS')</literal></entry>
</row>
<row>
@@ -6042,7 +6042,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<literal><function>to_timestamp(<type>text</type>, <type>text</type>)</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>convert string to time stamp</entry>
+ <entry>convert string to timestamp</entry>
<entry><literal>to_timestamp('05 Dec 2000', 'DD Mon YYYY')</literal></entry>
</row>
</tbody>
@@ -7377,7 +7377,7 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
<row>
<entry><literal><function>isfinite(<type>timestamp</type>)</function></literal></entry>
<entry><type>boolean</type></entry>
- <entry>Test for finite time stamp (not +/-infinity)</entry>
+ <entry>Test for finite timestamp (not +/-infinity)</entry>
<entry><literal>isfinite(timestamp '2001-02-16 21:28:30')</literal></entry>
<entry><literal>true</literal></entry>
</row>
@@ -7667,8 +7667,8 @@ SELECT regexp_match('abc01234xyz', '(?:(.*?)(\d+)(.*)){1,1}');
</synopsis>
This expression yields true when two time periods (defined by their
endpoints) overlap, false when they do not overlap. The endpoints
- can be specified as pairs of dates, times, or time stamps; or as
- a date, time, or time stamp followed by an interval. When a pair
+ can be specified as pairs of dates, times, or timestamps; or as
+ a date, time, or timestamp followed by an interval. When a pair
of values is provided, either the start or the end can be written
first; <literal>OVERLAPS</literal> automatically takes the earlier value
of the pair as the start. Each time period is considered to
@@ -7901,7 +7901,7 @@ SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');
</screen>
<para>
- You can convert an epoch value back to a time stamp
+ You can convert an epoch value back to a timestamp
with <function>to_timestamp</function>:
</para>
<screen>
@@ -8308,7 +8308,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<para>
The <literal>AT TIME ZONE</literal> converts time
stamp <emphasis>without time zone</emphasis> to/from
- time stamp <emphasis>with time zone</emphasis>, and
+ timestamp <emphasis>with time zone</emphasis>, and
<emphasis>time</emphasis> values to different time zones. <xref
linkend="functions-datetime-zoneconvert-table"/> shows its variants.
</para>
@@ -8330,7 +8330,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp without time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Treat given time stamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
+ <entry>Treat given timestamp <emphasis>without time zone</emphasis> as located in the specified time zone</entry>
</row>
<row>
@@ -8338,7 +8338,7 @@ SELECT date_trunc('hour', INTERVAL '3 days 02:47:33');
<literal><type>timestamp with time zone</type> AT TIME ZONE <replaceable>zone</replaceable></literal>
</entry>
<entry><type>timestamp without time zone</type></entry>
- <entry>Convert given time stamp <emphasis>with time zone</emphasis> to the new time
+ <entry>Convert given timestamp <emphasis>with time zone</emphasis> to the new time
zone, with no time zone designation</entry>
</row>
@@ -8375,7 +8375,7 @@ SELECT TIMESTAMP '2001-02-16 20:38:40-05' AT TIME ZONE 'Asia/Tokyo' AT TIME ZONE
</screen>
The first example adds a time zone to a value that lacks it, and
displays the value using the current <varname>TimeZone</varname>
- setting. The second example shifts the time stamp with time zone value
+ setting. The second example shifts the timestamp with time zone value
to the specified time zone, and returns the value without a time zone.
This allows storage and display of values different from the current
<varname>TimeZone</varname> setting. The third example converts
@@ -8468,7 +8468,7 @@ SELECT LOCALTIMESTAMP;
the intent is to allow a single transaction to have a consistent
notion of the <quote>current</quote> time, so that multiple
modifications within the same transaction bear the same
- time stamp.
+ timestamp.
</para>
<note>
@@ -20218,7 +20218,7 @@ postgres=# SELECT * FROM pg_walfile_name_offset(pg_stop_backup());
<literal><function>pg_last_xact_replay_timestamp()</function></literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
- <entry>Get time stamp of last transaction replayed during recovery.
+ <entry>Get timestamp of last transaction replayed during recovery.
This is the time at which the commit or abort WAL record for that
transaction was generated on the primary.
If no transactions have been replayed during recovery, this function
@@ -21678,9 +21678,9 @@ SELECT convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');
</indexterm>
<para>
<function>pg_stat_file</function> returns a record containing the file
- size, last accessed time stamp, last modified time stamp,
- last file status change time stamp (Unix platforms only),
- file creation time stamp (Windows only), and a <type>boolean</type>
+ size, last accessed timestamp, last modified timestamp,
+ last file status change timestamp (Unix platforms only),
+ file creation timestamp (Windows only), and a <type>boolean</type>
indicating if it is a directory. Typical usages include:
<programlisting>
SELECT * FROM pg_stat_file('filename');
diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml
index 8db9686..01eacf7 100644
--- a/doc/src/sgml/logicaldecoding.sgml
+++ b/doc/src/sgml/logicaldecoding.sgml
@@ -536,7 +536,7 @@ typedef void (*LogicalDecodeBeginCB) (struct LogicalDecodingContext *ctx,
ReorderBufferTXN *txn);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID.
</para>
</sect3>
@@ -660,7 +660,7 @@ typedef void (*LogicalDecodeMessageCB) (struct LogicalDecodingContext *ctx,
const char *message);
</programlisting>
The <parameter>txn</parameter> parameter contains meta information about
- the transaction, like the time stamp at which it has been committed and
+ the transaction, like the timestamp at which it has been committed and
its XID. Note however that it can be NULL when the message is
non-transactional and the XID was not assigned yet in the transaction
which logged the message. The <parameter>lsn</parameter> has WAL
diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml
index ef1556b..6e3ace0 100644
--- a/doc/src/sgml/plpgsql.sgml
+++ b/doc/src/sgml/plpgsql.sgml
@@ -4855,7 +4855,7 @@ $$ LANGUAGE plpgsql;
<application>PL/pgSQL</application> interpreter casts this
string to the <type>timestamp</type> type by calling the
<function>text_out</function> and <function>timestamp_in</function>
- functions for the conversion. So, the computed time stamp is updated
+ functions for the conversion. So, the computed timestamp is updated
on each execution as the programmer expects. Even though this
happens to work as expected, it's not terribly efficient, so
use of the <literal>now()</literal> function would still be a better idea.
diff --git a/doc/src/sgml/ref/pgbench.sgml b/doc/src/sgml/ref/pgbench.sgml
index cc2e533..5460765 100644
--- a/doc/src/sgml/ref/pgbench.sgml
+++ b/doc/src/sgml/ref/pgbench.sgml
@@ -1661,9 +1661,9 @@ END;
<replaceable>script_no</replaceable> identifies which script file was used (useful when
multiple scripts were specified with <option>-f</option> or <option>-b</option>),
and <replaceable>time_epoch</replaceable>/<replaceable>time_us</replaceable> are a
- Unix-epoch time stamp and an offset
+ Unix-epoch timestamp and an offset
in microseconds (suitable for creating an ISO 8601
- time stamp with fractional seconds) showing when
+ timestamp with fractional seconds) showing when
the transaction completed.
The <replaceable>schedule_lag</replaceable> field is the difference between the
transaction's scheduled start time, and the time it actually started, in
@@ -1719,7 +1719,7 @@ END;
where
<replaceable>interval_start</replaceable> is the start of the interval (as a Unix
- epoch time stamp),
+ epoch timestamp),
<replaceable>num_transactions</replaceable> is the number of transactions
within the interval,
<replaceable>sum_latency</replaceable> is the sum of the transaction
diff --git a/doc/src/sgml/replication-origins.sgml b/doc/src/sgml/replication-origins.sgml
index a03ce76..aaa3705 100644
--- a/doc/src/sgml/replication-origins.sgml
+++ b/doc/src/sgml/replication-origins.sgml
@@ -61,7 +61,7 @@
marked as replaying from a remote node (using the
<link linkend="pg-replication-origin-session-setup"><function>pg_replication_origin_session_setup()</function></link>
function). Additionally the <acronym>LSN</acronym> and commit
- time stamp of every source transaction can be configured on a per
+ timestamp of every source transaction can be configured on a per
transaction basis using
<link linkend="pg-replication-origin-xact-setup"><function>pg_replication_origin_xact_setup()</function></link>.
If that's done replication progress will persist in a crash safe
diff --git a/doc/src/sgml/trigger.sgml b/doc/src/sgml/trigger.sgml
index 67e1861..1bd69f2 100644
--- a/doc/src/sgml/trigger.sgml
+++ b/doc/src/sgml/trigger.sgml
@@ -335,7 +335,7 @@
requirements to call the same function. As an example, there
could be a generalized trigger function that takes as its
arguments two column names and puts the current user in one and
- the current time stamp in the other. Properly written, this
+ the current timestamp in the other. Properly written, this
trigger function would be independent of the specific table it is
triggering on. So the same function could be used for
<command>INSERT</command> events on any table with suitable
diff --git a/doc/src/sgml/uuid-ossp.sgml b/doc/src/sgml/uuid-ossp.sgml
index b3b816c..db8871b 100644
--- a/doc/src/sgml/uuid-ossp.sgml
+++ b/doc/src/sgml/uuid-ossp.sgml
@@ -41,7 +41,7 @@
<entry>
<para>
This function generates a version 1 UUID. This involves the MAC
- address of the computer and a time stamp. Note that UUIDs of this
+ address of the computer and a timestamp. Note that UUIDs of this
kind reveal the identity of the computer that created the identifier
and the time at which it did so, which might make it unsuitable for
certain security-sensitive applications.
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index fc46360..cf564ca 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3534,7 +3534,7 @@ static struct config_string ConfigureNamesString[] =
},
{
{"recovery_target_time", PGC_POSTMASTER, WAL_RECOVERY_TARGET,
- gettext_noop("Sets the time stamp up to which recovery will proceed."),
+ gettext_noop("Sets the timestamp up to which recovery will proceed."),
NULL
},
&recovery_target_time_string,
@@ -3916,7 +3916,7 @@ static struct config_string ConfigureNamesString[] =
{
{"TimeZone", PGC_USERSET, CLIENT_CONN_LOCALE,
- gettext_noop("Sets the time zone for displaying and interpreting time stamps."),
+ gettext_noop("Sets the time zone for displaying and interpreting timestamps."),
NULL,
GUC_REPORT
},
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index cfad86c..16e4360 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -259,7 +259,7 @@
# (change requires restart)
#recovery_target_name = '' # the named restore point to which recovery will proceed
# (change requires restart)
-#recovery_target_time = '' # the time stamp up to which recovery will proceed
+#recovery_target_time = '' # the timestamp up to which recovery will proceed
# (change requires restart)
#recovery_target_xid = '' # the transaction ID up to which recovery will proceed
# (change requires restart)
diff --git a/src/include/catalog/pg_control.h b/src/include/catalog/pg_control.h
index ff98d9e..06fbe76 100644
--- a/src/include/catalog/pg_control.h
+++ b/src/include/catalog/pg_control.h
@@ -48,7 +48,7 @@ typedef struct CheckPoint
Oid oldestXidDB; /* database with minimum datfrozenxid */
MultiXactId oldestMulti; /* cluster-wide minimum datminmxid */
Oid oldestMultiDB; /* database with minimum datminmxid */
- pg_time_t time; /* time stamp of checkpoint */
+ pg_time_t time; /* timestamp of checkpoint */
TransactionId oldestCommitTsXid; /* oldest Xid with valid commit
* timestamp */
TransactionId newestCommitTsXid; /* newest Xid with valid commit
@@ -125,7 +125,7 @@ typedef struct ControlFileData
* System status data
*/
DBState state; /* see enum above */
- pg_time_t time; /* time stamp of last pg_control update */
+ pg_time_t time; /* timestamp of last pg_control update */
XLogRecPtr checkPoint; /* last check point record ptr */
CheckPoint checkPointCopy; /* copy of last check point record */
diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c
index efd9f3a..4d33453 100644
--- a/src/interfaces/ecpg/pgtypeslib/timestamp.c
+++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c
@@ -850,7 +850,7 @@ PGTYPEStimestamp_defmt_asc(const char *str, const char *fmt, timestamp * d)
}
/*
-* add an interval to a time stamp
+* add an interval to a timestamp
*
* *tout = tin + span
*
@@ -909,7 +909,7 @@ PGTYPEStimestamp_add_interval(timestamp * tin, interval * span, timestamp * tout
/*
-* subtract an interval from a time stamp
+* subtract an interval from a timestamp
*
* *tout = tin - span
*
--
2.7.4
v5-0006-consistent-language-not-implemented.patchtext/x-diff; charset=us-asciiDownload
From 8fe7597a4cdf87a721d98e214e90fc689dbfcd49 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Mon, 20 May 2019 12:57:17 -0500
Subject: [PATCH v5 06/12] consistent language: not implemented
Should we change the rest of these, too ?
git grep 'errmsg.*not yet implemented'
---
src/backend/catalog/index.c | 2 +-
src/backend/commands/indexcmds.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index bb60b23..7f607e6 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -3511,7 +3511,7 @@ reindex_relation(Oid relid, int flags, int options)
{
ereport(WARNING,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX of partitioned tables is not yet implemented, skipping \"%s\"",
+ errmsg("REINDEX of partitioned tables is not implemented, skipping \"%s\"",
RelationGetRelationName(rel))));
table_close(rel, ShareLock);
return false;
diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c
index 6fa5738..5b0ae20 100644
--- a/src/backend/commands/indexcmds.c
+++ b/src/backend/commands/indexcmds.c
@@ -2898,7 +2898,7 @@ ReindexRelationConcurrently(Oid relationOid, int options)
/* see reindex_relation() */
ereport(WARNING,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX of partitioned tables is not yet implemented, skipping \"%s\"",
+ errmsg("REINDEX of partitioned tables is not implemented, skipping \"%s\"",
get_rel_name(relationOid))));
return false;
default:
@@ -3344,7 +3344,7 @@ ReindexPartitionedIndex(Relation parentIdx)
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("REINDEX is not yet implemented for partitioned indexes")));
+ errmsg("REINDEX is not implemented for partitioned indexes")));
}
/*
--
2.7.4
v5-0007-consistent-language-to-which.patchtext/x-diff; charset=us-asciiDownload
From ec0ff2e46bd59bea87178b83d03fd07c8769e788 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Mon, 20 May 2019 19:02:42 -0500
Subject: [PATCH v5 07/12] consistent language: to which
XXX: should have trailing period in tables?
---
doc/src/sgml/monitoring.sgml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml
index cba36c0..df5df62 100644
--- a/doc/src/sgml/monitoring.sgml
+++ b/doc/src/sgml/monitoring.sgml
@@ -602,12 +602,12 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<row>
<entry><structfield>datid</structfield></entry>
<entry><type>oid</type></entry>
- <entry>OID of the database this backend is connected to</entry>
+ <entry>OID of the database to which this backend is connected</entry>
</row>
<row>
<entry><structfield>datname</structfield></entry>
<entry><type>name</type></entry>
- <entry>Name of the database this backend is connected to</entry>
+ <entry>Name of the database to which this backend is connected</entry>
</row>
<row>
<entry><structfield>pid</structfield></entry>
@@ -2099,7 +2099,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<entry><type>text</type></entry>
<entry>
Host of the <productname>PostgreSQL</productname> instance
- this WAL receiver is connected to. This can be a host name,
+ to which this WAL receiver is connected. This can be a host name,
an IP address, or a directory path if the connection is via
Unix socket. (The path case can be distinguished because it
will always be an absolute path, beginning with <literal>/</literal>.)
@@ -2110,7 +2110,7 @@ SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event i
<entry><type>integer</type></entry>
<entry>
Port number of the <productname>PostgreSQL</productname> instance
- this WAL receiver is connected to.
+ to which this WAL receiver is connected.
</entry>
</row>
<row>
@@ -3375,7 +3375,7 @@ SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
<row>
<entry><literal><function>pg_stat_get_backend_dbid(integer)</function></literal></entry>
<entry><type>oid</type></entry>
- <entry>OID of the database this backend is connected to</entry>
+ <entry>OID of the database to which this backend is connected</entry>
</row>
<row>
--
2.7.4