aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/config.sgml4
-rw-r--r--doc/src/sgml/func.sgml171
-rw-r--r--doc/src/sgml/release-18.sgml66
3 files changed, 25 insertions, 216 deletions
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index aa8f47a1591..ca2a567b2b1 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -140,7 +140,7 @@
An example of what this file might look like is:
<programlisting>
# This is a comment
-log_connections = yes
+log_connections = all
log_destination = 'syslog'
search_path = '"$user", public'
shared_buffers = 128MB
@@ -337,7 +337,7 @@ UPDATE pg_settings SET setting = reset_val WHERE name = 'configuration_parameter
<option>-c name=value</option> command-line parameter, or its equivalent
<option>--name=value</option> variation. For example,
<programlisting>
-postgres -c log_connections=yes --log-destination='syslog'
+postgres -c log_connections=all --log-destination='syslog'
</programlisting>
Settings provided in this way override those set via
<filename>postgresql.conf</filename> or <command>ALTER SYSTEM</command>,
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index b405525a465..c67688cbf5f 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -28666,143 +28666,6 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres}
<row>
<entry role="func_table_entry"><para role="func_signature">
<indexterm>
- <primary>pg_get_process_memory_contexts</primary>
- </indexterm>
- <function>pg_get_process_memory_contexts</function> ( <parameter>pid</parameter> <type>integer</type>, <parameter>summary</parameter> <type>boolean</type>, <parameter>timeout</parameter> <type>float</type> )
- <returnvalue>setof record</returnvalue>
- ( <parameter>name</parameter> <type>text</type>,
- <parameter>ident</parameter> <type>text</type>,
- <parameter>type</parameter> <type>text</type>,
- <parameter>path</parameter> <type>integer[]</type>,
- <parameter>level</parameter> <type>integer</type>,
- <parameter>total_bytes</parameter> <type>bigint</type>,
- <parameter>total_nblocks</parameter> <type>bigint</type>,
- <parameter>free_bytes</parameter> <type>bigint</type>,
- <parameter>free_chunks</parameter> <type>bigint</type>,
- <parameter>used_bytes</parameter> <type>bigint</type>,
- <parameter>num_agg_contexts</parameter> <type>integer</type>,
- <parameter>stats_timestamp</parameter> <type>timestamptz</type> )
- </para>
- <para>
- This function handles requests to display the memory contexts of a
- <productname>PostgreSQL</productname> process with the specified
- process ID. The function can be used to send requests to backends as
- well as <glossterm linkend="glossary-auxiliary-proc">auxiliary processes</glossterm>.
- </para>
- <para>
- The returned record contains extended statistics per each memory
- context:
- <itemizedlist spacing="compact">
- <listitem>
- <para>
- <parameter>name</parameter> - The name of the memory context.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>ident</parameter> - Memory context ID (if any).
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>type</parameter> - The type of memory context, possible
- values are: AllocSet, Generation, Slab and Bump.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>path</parameter> - Memory contexts are organized in a
- tree model with TopMemoryContext as the root, and all other memory
- contexts as nodes in the tree. The <parameter>path</parameter>
- displays the path from the root to the current memory context. The
- path is limited to 100 children per node, which each node limited
- to a max depth of 100, to preserve memory during reporting. The
- printed path will also be limited to 100 nodes counting from the
- TopMemoryContext.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>level</parameter> - The level in the tree of the current
- memory context.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>total_bytes</parameter> - The total number of bytes
- allocated to this memory context.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>total_nblocks</parameter> - The total number of blocks
- used for the allocated memory.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>free_bytes</parameter> - The amount of free memory in
- this memory context.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>free_chunks</parameter> - The number of chunks that
- <parameter>free_bytes</parameter> corresponds to.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>used_bytes</parameter> - The total number of bytes
- currently occupied.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>num_agg_contexts</parameter> - The number of memory
- contexts aggregated in the displayed statistics.
- </para>
- </listitem>
- <listitem>
- <para>
- <parameter>stats_timestamp</parameter> - When the statistics were
- extracted from the process.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- When <parameter>summary</parameter> is <literal>true</literal>, statistics
- for memory contexts at levels 1 and 2 are displayed, with level 1
- representing the root node (i.e., <literal>TopMemoryContext</literal>).
- Statistics for contexts on level 2 and below are aggregates of all
- child contexts' statistics, where <literal>num_agg_contexts</literal>
- indicate the number aggregated child contexts. When
- <parameter>summary</parameter> is <literal>false</literal>,
- <literal>the num_agg_contexts</literal> value is <literal>1</literal>,
- indicating that individual statistics are being displayed.
- </para>
- <para>
- Busy processes can delay reporting memory context statistics,
- <parameter>timeout</parameter> specifies the number of seconds
- to wait for updated statistics. <parameter>timeout</parameter> can be
- specified in fractions of a second.
- </para>
- <para>
- After receiving memory context statistics from the target process, it
- returns the results as one row per context. If all the contexts don't
- fit within the pre-determined size limit, the remaining context
- statistics are aggregated and a cumulative total is displayed. The
- <literal>num_agg_contexts</literal> column indicates the number of
- contexts aggregated in the displayed statistics. When
- <literal>num_agg_contexts</literal> is <literal>1</literal> it means
- that the context statistics are displayed separately.
- </para></entry>
- </row>
-
- <row>
- <entry role="func_table_entry"><para role="func_signature">
- <indexterm>
<primary>pg_log_backend_memory_contexts</primary>
</indexterm>
<function>pg_log_backend_memory_contexts</function> ( <parameter>pid</parameter> <type>integer</type> )
@@ -28939,40 +28802,6 @@ LOG: Grand total: 1651920 bytes in 201 blocks; 622360 free (88 chunks); 1029560
because it may generate a large number of log messages.
</para>
- <para>
- <function>pg_get_process_memory_contexts</function> can be used to request
- memory contexts statistics of any <productname>PostgreSQL</productname>
- process. For example:
-<programlisting>
-postgres=# SELECT * FROM pg_get_process_memory_contexts(
- (SELECT pid FROM pg_stat_activity
- WHERE backend_type = 'checkpointer'),
- false, 0.5) LIMIT 1;
--[ RECORD 1 ]----+------------------------------
-name | TopMemoryContext
-ident |
-type | AllocSet
-path | {1}
-level | 1
-total_bytes | 90304
-total_nblocks | 3
-free_bytes | 2880
-free_chunks | 1
-used_bytes | 87424
-num_agg_contexts | 1
-stats_timestamp | 2025-03-24 13:55:47.796698+01
-</programlisting>
- <note>
- <para>
- While <function>pg_get_process_memory_contexts</function> can be used to
- query memory contexts of the local backend,
- <structname>pg_backend_memory_contexts</structname>
- (see <xref linkend="view-pg-backend-memory-contexts"/> for more details)
- will be less resource intensive when only the local backend is of interest.
- </para>
- </note>
- </para>
-
</sect2>
<sect2 id="functions-admin-backup">
diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml
index cdf47ac6d2a..2ae03065f94 100644
--- a/doc/src/sgml/release-18.sgml
+++ b/doc/src/sgml/release-18.sgml
@@ -6,7 +6,7 @@
<formalpara>
<title>Release date:</title>
- <para>2025-??-??, CURRENT AS OF 2025-05-01</para>
+ <para>2025-??-??, CURRENT AS OF 2025-05-23</para>
</formalpara>
<sect2 id="release-18-highlights">
@@ -459,8 +459,6 @@ Author: Peter Geoghegan <pg@bowt.ie>
2025-04-04 [92fe23d93] Add nbtree skip scan optimization.
Author: Peter Geoghegan <pg@bowt.ie>
2025-04-04 [8a510275d] Further optimize nbtree search scan key comparisons.
-Author: Peter Geoghegan <pg@bowt.ie>
-2025-04-04 [8a510275d] Further optimize nbtree search scan key comparisons.
-->
<listitem>
@@ -468,11 +466,11 @@ Author: Peter Geoghegan <pg@bowt.ie>
Allow skip scans of btree indexes (Peter Geoghegan)
<ulink url="&commit_baseurl;92fe23d93">&sect;</ulink>
<ulink url="&commit_baseurl;8a510275d">&sect;</ulink>
-<ulink url="&commit_baseurl;8a510275d">&sect;</ulink>
</para>
<para>
-This is effective if the earlier non-referenced columns contain few unique values.
+This allows multi-column btree indexes to be used by queries that only
+equality-reference the second or later indexed columns.
</para>
</listitem>
@@ -589,27 +587,6 @@ Improve the locking performance of queries that access many relations (Tomas Von
</listitem>
<!--
-Author: Amit Langote <amitlan@postgresql.org>
-2025-01-30 [bb3ec16e1] Move PartitionPruneInfo out of plan nodes into PlannedSt
-Author: Amit Langote <amitlan@postgresql.org>
-2025-01-31 [d47cbf474] Perform runtime initial pruning outside ExecInitNode()
-Author: Amit Langote <amitlan@postgresql.org>
-2025-02-07 [cbc127917] Track unpruned relids to avoid processing pruned relatio
-Author: Amit Langote <amitlan@postgresql.org>
-2025-02-20 [525392d57] Don't lock partitions pruned by initial pruning
--->
-
-<listitem>
-<para>
-Avoid the locking of pruned partitions during execution (Amit Langote)
-<ulink url="&commit_baseurl;bb3ec16e1">&sect;</ulink>
-<ulink url="&commit_baseurl;d47cbf474">&sect;</ulink>
-<ulink url="&commit_baseurl;cbc127917">&sect;</ulink>
-<ulink url="&commit_baseurl;525392d57">&sect;</ulink>
-</para>
-</listitem>
-
-<!--
Author: David Rowley <drowley@postgresql.org>
2024-08-20 [adf97c156] Speed up Hash Join by making ExprStates support hashing
Author: David Rowley <drowley@postgresql.org>
@@ -985,21 +962,6 @@ This is true even if the tables in different schemas have different column names
</listitem>
<!--
-Author: Daniel Gustafsson <dgustafsson@postgresql.org>
-2025-04-08 [042a66291] Add function to get memory context stats for processes
-Author: Daniel Gustafsson <dgustafsson@postgresql.org>
-2025-04-08 [c57971034] Rename argument in pg_get_process_memory_contexts().
--->
-
-<listitem>
-<para>
-Add function pg_get_process_memory_contexts() to report process memory context statistics (Rahila Syed)
-<ulink url="&commit_baseurl;042a66291">&sect;</ulink>
-<ulink url="&commit_baseurl;c57971034">&sect;</ulink>
-</para>
-</listitem>
-
-<!--
Author: David Rowley <drowley@postgresql.org>
2024-07-01 [12227a1d5] Add context type field to pg_backend_memory_contexts
-->
@@ -1250,12 +1212,15 @@ This is useful for operating system configuration.
<!--
Author: Peter Eisentraut <peter@eisentraut.org>
2025-03-19 [4f7f7b037] extension_control_path
+Author: Peter Eisentraut <peter@eisentraut.org>
+2025-05-02 [81eaaa2c4] Make "directory" setting work with extension_control_pat
-->
<listitem>
<para>
Add server variable extension_control_path to specify the location of extension control files (Peter Eisentraut, Matheus Alcantara)
<ulink url="&commit_baseurl;4f7f7b037">&sect;</ulink>
+<ulink url="&commit_baseurl;81eaaa2c4">&sect;</ulink>
</para>
</listitem>
@@ -1339,7 +1304,7 @@ Author: Amit Kapila <akapila@postgresql.org>
<listitem>
<para>
-Change the default CREATE SUBSCRIPTION streaming option from "off" to "parallel" (Hayato Kuroda, Masahiko Sawada, Peter Smith, Amit Kapila)
+Change the default CREATE SUBSCRIPTION streaming option from "off" to "parallel" (Vignesh C)
<ulink url="&commit_baseurl;1bf1140be">&sect;</ulink>
</para>
</listitem>
@@ -2620,12 +2585,15 @@ Add pg_dump options --with-schema, --with-data, and --with-statistics (Jeff Davi
<!--
Author: Nathan Bossart <nathan@postgresql.org>
2025-03-25 [9c49f0e8c] pg_dump: Add - -sequence-data.
+Author: Nathan Bossart <nathan@postgresql.org>
+2025-05-07 [acea3fc49] pg_dumpall: Add - -sequence-data.
-->
<listitem>
<para>
-Add pg_dump option --sequence-data to dump sequence data that would normally be excluded (Nathan Bossart)
+Add pg_dump and pg_dumpall option --sequence-data to dump sequence data that would normally be excluded (Nathan Bossart)
<ulink url="&commit_baseurl;9c49f0e8c">&sect;</ulink>
+<ulink url="&commit_baseurl;acea3fc49">&sect;</ulink>
</para>
</listitem>
@@ -2872,6 +2840,18 @@ Injection points can now be created, but not run, via INJECTION_POINT_LOAD(), an
</listitem>
<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2025-05-10 [371f2db8b] Add support for runtime arguments in injection points
+-->
+
+<listitem>
+<para>
+Support runtime arguments in injection points (Michael Paquier)
+<ulink url="&commit_baseurl;371f2db8b">&sect;</ulink>
+</para>
+</listitem>
+
+<!--
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
2024-07-26 [20e0e7da9] Add test for early backend startup errors
-->