diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/src/sgml/amcheck.sgml | 4 | ||||
-rw-r--r-- | doc/src/sgml/bki.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/catalogs.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/datatype.sgml | 15 | ||||
-rw-r--r-- | doc/src/sgml/func.sgml | 45 | ||||
-rw-r--r-- | doc/src/sgml/installation.sgml | 10 | ||||
-rw-r--r-- | doc/src/sgml/logicaldecoding.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/maintenance.sgml | 5 | ||||
-rw-r--r-- | doc/src/sgml/pgbuffercache.sgml | 6 | ||||
-rw-r--r-- | doc/src/sgml/ref/alter_table.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/ref/copy.sgml | 38 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_trigger.sgml | 9 | ||||
-rw-r--r-- | doc/src/sgml/ref/pg_amcheck.sgml | 12 | ||||
-rw-r--r-- | doc/src/sgml/ref/pgupgrade.sgml | 3 | ||||
-rw-r--r-- | doc/src/sgml/sepgsql.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/system-views.sgml | 3 |
16 files changed, 119 insertions, 41 deletions
diff --git a/doc/src/sgml/amcheck.sgml b/doc/src/sgml/amcheck.sgml index 211a0ae1945..0aff0a6c8c6 100644 --- a/doc/src/sgml/amcheck.sgml +++ b/doc/src/sgml/amcheck.sgml @@ -278,8 +278,8 @@ SET client_min_messages = DEBUG1; TOAST table. </para> <para> - This option is known to be slow. Also, if the toast table or its - index is corrupt, checking it against toast values could conceivably + This option is known to be slow. Also, if the TOAST table or its + index is corrupt, checking it against TOAST values could conceivably crash the server, although in many cases this would just produce an error. </para> diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml index 3cd5bee7ffa..53a982bf60d 100644 --- a/doc/src/sgml/bki.sgml +++ b/doc/src/sgml/bki.sgml @@ -1042,7 +1042,7 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat </listitem> <listitem> <para> - Define indexes and toast tables. + Define indexes and TOAST tables. </para> </listitem> <listitem> diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml index fa86c569dc4..4f9192316e0 100644 --- a/doc/src/sgml/catalogs.sgml +++ b/doc/src/sgml/catalogs.sgml @@ -1951,7 +1951,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l </para> <para> The OID of the data type that corresponds to this table's row type, - if any; zero for indexes, sequences, and toast tables, which have + if any; zero for indexes, sequences, and TOAST tables, which have no <structname>pg_type</structname> entry </para></entry> </row> diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index 09309ba0390..49a7c180a80 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -4738,6 +4738,10 @@ INSERT INTO mytable VALUES(-1); -- fails </indexterm> <indexterm zone="datatype-oid"> + <primary>regdatabase</primary> + </indexterm> + + <indexterm zone="datatype-oid"> <primary>regdictionary</primary> </indexterm> @@ -4879,6 +4883,13 @@ SELECT * FROM pg_attribute </row> <row> + <entry><type>regdatabase</type></entry> + <entry><structname>pg_database</structname></entry> + <entry>database name</entry> + <entry><literal>template1</literal></entry> + </row> + + <row> <entry><type>regdictionary</type></entry> <entry><structname>pg_ts_dict</structname></entry> <entry>text search dictionary</entry> @@ -5049,8 +5060,8 @@ WHERE ... be dropped without first removing the default expression. The alternative of <literal>nextval('my_seq'::text)</literal> does not create a dependency. - (<type>regrole</type> is an exception to this property. Constants of this - type are not allowed in stored expressions.) + (<type>regdatabase</type> and <type>regrole</type> are exceptions to this + property. Constants of these types are not allowed in stored expressions.) </para> <para> diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 298791858be..810b2b50f0d 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -26753,6 +26753,23 @@ SELECT currval(pg_get_serial_sequence('sometable', 'id')); <row> <entry role="func_table_entry"><para role="func_signature"> <indexterm> + <primary>to_regdatabase</primary> + </indexterm> + <function>to_regdatabase</function> ( <type>text</type> ) + <returnvalue>regdatabase</returnvalue> + </para> + <para> + Translates a textual database name to its OID. A similar result is + obtained by casting the string to type <type>regdatabase</type> (see + <xref linkend="datatype-oid"/>); however, this function will return + <literal>NULL</literal> rather than throwing an error if the name is + not found. + </para></entry> + </row> + + <row> + <entry role="func_table_entry"><para role="func_signature"> + <indexterm> <primary>to_regcollation</primary> </indexterm> <function>to_regcollation</function> ( <type>text</type> ) @@ -27687,6 +27704,31 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres} details. </para></entry> </row> + + <row> + <entry role="func_table_entry"><para role="func_signature"> + <indexterm> + <primary>pg_get_multixact_members</primary> + </indexterm> + <function>pg_get_multixact_members</function> ( <parameter>multixid</parameter> <type>xid</type> ) + <returnvalue>setof record</returnvalue> + ( <parameter>xid</parameter> <type>xid</type>, + <parameter>mode</parameter> <type>text</type> ) + </para> + <para> + Returns the transaction ID and lock mode for each member of the + specified multixact ID. The lock modes <literal>forupd</literal>, + <literal>fornokeyupd</literal>, <literal>sh</literal>, and + <literal>keysh</literal> correspond to the row-level locks + <literal>FOR UPDATE</literal>, <literal>FOR NO KEY UPDATE</literal>, + <literal>FOR SHARE</literal>, and <literal>FOR KEY SHARE</literal>, + respectively, as described in <xref linkend="locking-rows"/>. Two + additional modes are specific to multixacts: + <literal>nokeyupd</literal>, used by updates that do not modify key + columns, and <literal>upd</literal>, used by updates or deletes that + modify key columns. + </para></entry> + </row> </tbody> </tgroup> </table> @@ -27695,7 +27737,8 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres} The internal transaction ID type <type>xid</type> is 32 bits wide and wraps around every 4 billion transactions. However, the functions shown in <xref linkend="functions-pg-snapshot"/>, except - <function>age</function> and <function>mxid_age</function>, use a + <function>age</function>, <function>mxid_age</function>, and + <function>pg_get_multixact_members</function>, use a 64-bit type <type>xid8</type> that does not wrap around during the life of an installation and can be converted to <type>xid</type> by casting if required; see <xref linkend="transaction-id"/> for details. diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index de19f3ad929..8e5da767c48 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -65,7 +65,7 @@ </para> <para> - The minimum required version of <application>Meson</application> is 0.54. + The minimum required version of <application>Meson</application> is 0.57.2. </para> </listitem> @@ -3847,17 +3847,13 @@ make: *** [postgres] Error 1 <para> Both 32-bit and 64-bit builds are possible with the Microsoft Compiler suite. 32-bit PostgreSQL builds are possible with - <productname>Visual Studio 2015</productname> to + <productname>Visual Studio 2019</productname> to <productname>Visual Studio 2022</productname>, as well as standalone Windows SDK releases 10 and above. 64-bit PostgreSQL builds are supported with <productname>Microsoft Windows SDK</productname> version 10 and above or - <productname>Visual Studio 2015</productname> and above. + <productname>Visual Studio 2019</productname> and above. <!-- - For 2015 requirements: - https://docs.microsoft.com/en-us/visualstudio/productinfo/vs2015-sysrequirements-vs - For 2017 requirements: - https://docs.microsoft.com/en-us/visualstudio/productinfo/vs2017-system-requirements-vs For 2019 requirements: https://docs.microsoft.com/en-us/visualstudio/releases/2019/system-requirements For 2022 requirements: diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml index fc288d691b9..a45a1412416 100644 --- a/doc/src/sgml/logicaldecoding.sgml +++ b/doc/src/sgml/logicaldecoding.sgml @@ -1412,7 +1412,7 @@ commit_prepared_cb(...); <-- commit of the prepared transaction currently used for decoded changes) is selected and streamed. However, in some cases we still have to spill to disk even if streaming is enabled because we exceed the memory threshold but still have not decoded the - complete tuple e.g., only decoded toast table insert but not the main table + complete tuple e.g., only decoded TOAST table insert but not the main table insert. </para> diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index 600e4b3f2f3..e7a9f58c015 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -779,7 +779,10 @@ HINT: Execute a database-wide VACUUM in that database. careful aging management, storage cleanup, and wraparound handling. There is a separate storage area which holds the list of members in each multixact, which also uses a 32-bit counter and which must also - be managed. + be managed. The system function + <function>pg_get_multixact_members()</function> described in + <xref linkend="functions-pg-snapshot"/> can be used to examine the + transaction IDs associated with a multixact ID. </para> <para> diff --git a/doc/src/sgml/pgbuffercache.sgml b/doc/src/sgml/pgbuffercache.sgml index 537d6014942..546ace8369e 100644 --- a/doc/src/sgml/pgbuffercache.sgml +++ b/doc/src/sgml/pgbuffercache.sgml @@ -37,12 +37,12 @@ <para> This module provides the <function>pg_buffercache_pages()</function> - function (wrapped in the <structname>pg_buffercache</structname> view), + function (wrapped in the <structname>pg_buffercache</structname> view), the <function>pg_buffercache_numa_pages()</function> function (wrapped in the <structname>pg_buffercache_numa</structname> view), the <function>pg_buffercache_summary()</function> function, the <function>pg_buffercache_usage_counts()</function> function, the - <function>pg_buffercache_evict()</function>, the + <function>pg_buffercache_evict()</function> function, the <function>pg_buffercache_evict_relation()</function> function and the <function>pg_buffercache_evict_all()</function> function. </para> @@ -55,7 +55,7 @@ </para> <para> - The <function>pg_buffercache_numa_pages()</function> provides + The <function>pg_buffercache_numa_pages()</function> function provides <acronym>NUMA</acronym> node mappings for shared buffer entries. This information is not part of <function>pg_buffercache_pages()</function> itself, as it is much slower to retrieve. diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index d1696991683..1e4f26c13f6 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -852,7 +852,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM <para> <literal>SHARE UPDATE EXCLUSIVE</literal> lock will be taken for - fillfactor, toast and autovacuum storage parameters, as well as the + fillfactor, TOAST and autovacuum storage parameters, as well as the planner parameter <varname>parallel_workers</varname>. </para> </listitem> diff --git a/doc/src/sgml/ref/copy.sgml b/doc/src/sgml/ref/copy.sgml index 8433344e5b6..c2d1fbc1fbe 100644 --- a/doc/src/sgml/ref/copy.sgml +++ b/doc/src/sgml/ref/copy.sgml @@ -37,7 +37,7 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable DELIMITER '<replaceable class="parameter">delimiter_character</replaceable>' NULL '<replaceable class="parameter">null_string</replaceable>' DEFAULT '<replaceable class="parameter">default_string</replaceable>' - HEADER [ <replaceable class="parameter">boolean</replaceable> | MATCH ] + HEADER [ <replaceable class="parameter">boolean</replaceable> | <replaceable class="parameter">integer</replaceable> | MATCH ] QUOTE '<replaceable class="parameter">quote_character</replaceable>' ESCAPE '<replaceable class="parameter">escape_character</replaceable>' FORCE_QUOTE { ( <replaceable class="parameter">column_name</replaceable> [, ...] ) | * } @@ -213,6 +213,15 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable </varlistentry> <varlistentry> + <term><replaceable class="parameter">integer</replaceable></term> + <listitem> + <para> + Specifies a non-negative integer value passed to the selected option. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><literal>FORMAT</literal></term> <listitem> <para> @@ -303,16 +312,25 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable <term><literal>HEADER</literal></term> <listitem> <para> - Specifies that the file contains a header line with the names of each - column in the file. On output, the first line contains the column - names from the table. On input, the first line is discarded when this - option is set to <literal>true</literal> (or equivalent Boolean value). - If this option is set to <literal>MATCH</literal>, the number and names - of the columns in the header line must match the actual column names of - the table, in order; otherwise an error is raised. + On output, if this option is set to <literal>true</literal> + (or an equivalent Boolean value), the first line of the output will + contain the column names from the table. + Integer values <literal>0</literal> and <literal>1</literal> are + accepted as Boolean values, but other integers are not allowed for + <command>COPY TO</command> commands. + </para> + <para> + On input, if this option is set to <literal>true</literal> + (or an equivalent Boolean value), the first line of the input is + discarded. If set to a non-negative integer, that number of + lines are discarded. If set to <literal>MATCH</literal>, the first line + is discarded, and it must contain column names that exactly match the + table's columns, in both number and order; otherwise, an error is raised. + The <literal>MATCH</literal> value is only valid for + <command>COPY FROM</command> commands. + </para> + <para> This option is not allowed when using <literal>binary</literal> format. - The <literal>MATCH</literal> option is only valid for <command>COPY - FROM</command> commands. </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/ref/create_trigger.sgml b/doc/src/sgml/ref/create_trigger.sgml index 982ab6f3ee4..dc437b82edb 100644 --- a/doc/src/sgml/ref/create_trigger.sgml +++ b/doc/src/sgml/ref/create_trigger.sgml @@ -29,7 +29,7 @@ PostgreSQL documentation CREATE [ OR REPLACE ] [ CONSTRAINT ] TRIGGER <replaceable class="parameter">name</replaceable> { BEFORE | AFTER | INSTEAD OF } { <replaceable class="parameter">event</replaceable> [ OR ... ] } ON <replaceable class="parameter">table_name</replaceable> [ FROM <replaceable class="parameter">referenced_table_name</replaceable> ] - [ NOT DEFERRABLE | [ DEFERRABLE ] [ INITIALLY IMMEDIATE | INITIALLY DEFERRED ] ] + [ NOT DEFERRABLE | [ DEFERRABLE ] [ INITIALLY IMMEDIATE | INITIALLY DEFERRED ] ] [ ENFORCED ] [ REFERENCING { { OLD | NEW } TABLE [ AS ] <replaceable class="parameter">transition_relation_name</replaceable> } [ ... ] ] [ FOR [ EACH ] { ROW | STATEMENT } ] [ WHEN ( <replaceable class="parameter">condition</replaceable> ) ] @@ -322,6 +322,13 @@ UPDATE OF <replaceable>column_name1</replaceable> [, <replaceable>column_name2</ </varlistentry> <varlistentry> + <term><literal>ENFORCED</literal></term> + <listitem> + This is a noise word. Constraint triggers are always enforced. + </listitem> + </varlistitem> + + <varlistentry> <term><literal>REFERENCING</literal></term> <listitem> <para> diff --git a/doc/src/sgml/ref/pg_amcheck.sgml b/doc/src/sgml/ref/pg_amcheck.sgml index 6bfe28799c4..ef2bdfd19ae 100644 --- a/doc/src/sgml/ref/pg_amcheck.sgml +++ b/doc/src/sgml/ref/pg_amcheck.sgml @@ -41,7 +41,7 @@ PostgreSQL documentation </para> <para> - Only ordinary and toast table relations, materialized views, sequences, and + Only ordinary and TOAST table relations, materialized views, sequences, and btree indexes are currently supported. Other relation types are silently skipped. </para> @@ -276,7 +276,7 @@ PostgreSQL documentation <term><option>--no-dependent-toast</option></term> <listitem> <para> - By default, if a table is checked, its toast table, if any, will also + By default, if a table is checked, its TOAST table, if any, will also be checked, even if it is not explicitly selected by an option such as <literal>--table</literal> or <literal>--relation</literal>. This option suppresses that behavior. @@ -306,9 +306,9 @@ PostgreSQL documentation <term><option>--exclude-toast-pointers</option></term> <listitem> <para> - By default, whenever a toast pointer is encountered in a table, + By default, whenever a TOAST pointer is encountered in a table, a lookup is performed to ensure that it references apparently-valid - entries in the toast table. These checks can be quite slow, and this + entries in the TOAST table. These checks can be quite slow, and this option can be used to skip them. </para> </listitem> @@ -368,9 +368,9 @@ PostgreSQL documentation End checking at the specified block number. An error will occur if the table relation being checked has fewer than this number of blocks. This option does not apply to indexes, and is probably only useful when - checking a single table relation. If both a regular table and a toast + checking a single table relation. If both a regular table and a TOAST table are checked, this option will apply to both, but higher-numbered - toast blocks may still be accessed while validating toast pointers, + TOAST blocks may still be accessed while validating TOAST pointers, unless that is suppressed using <option>--exclude-toast-pointers</option>. </para> diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml index aeeed297437..5ddf3a8ae92 100644 --- a/doc/src/sgml/ref/pgupgrade.sgml +++ b/doc/src/sgml/ref/pgupgrade.sgml @@ -1110,7 +1110,8 @@ psql --username=postgres --file=script.sql postgres <member><type>regproc</type></member> <member><type>regprocedure</type></member> </simplelist> - (<type>regclass</type>, <type>regrole</type>, and <type>regtype</type> can be upgraded.) + (<type>regclass</type>, <type>regdatabase</type>, <type>regrole</type>, and + <type>regtype</type> can be upgraded.) </para> <para> diff --git a/doc/src/sgml/sepgsql.sgml b/doc/src/sgml/sepgsql.sgml index 03ed7d1c90d..0708e48bcd9 100644 --- a/doc/src/sgml/sepgsql.sgml +++ b/doc/src/sgml/sepgsql.sgml @@ -442,7 +442,7 @@ UPDATE t1 SET x = 2, y = func1(y) WHERE z = 100; <para> The default database privilege system allows database superusers to modify system catalogs using DML commands, and reference or modify - toast tables. These operations are prohibited when + TOAST tables. These operations are prohibited when <filename>sepgsql</filename> is enabled. </para> </sect3> diff --git a/doc/src/sgml/system-views.sgml b/doc/src/sgml/system-views.sgml index 986ae1f543d..82825db03bb 100644 --- a/doc/src/sgml/system-views.sgml +++ b/doc/src/sgml/system-views.sgml @@ -2832,8 +2832,7 @@ SELECT * FROM pg_locks pl LEFT JOIN pg_prepared_xacts ppx </itemizedlist> The last two states are seen only when <xref linkend="guc-max-slot-wal-keep-size"/> is - non-negative. If <structfield>restart_lsn</structfield> is NULL, this - field is null. + non-negative. </para></entry> </row> |