From fff6267519bc2161b6b5c76923c69489f30f96f3 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Wed, 12 Mar 2025 13:25:16 -0400 Subject: [PATCH v2.8 25/38] docs: Reframe track_io_timing related docs as wait time With AIO it does not make sense anymore to track the time for each individual IO, as multiple IOs can be in-flight at the same time. Instead we now track the time spent *waiting* for IOs. This should be reflected in the docs. While, so far, we only do a subset of reads, and no other operations, via AIO, describing the GUC and view columns as measuring IO waits is accurate for synchronous and asynchronous IO. Discussion: https://postgr.es/m/5dzyoduxlvfg55oqtjyjehez5uoq6hnwgzor4kkybkfdgkj7ag@rbi4gsmzaczk --- doc/src/sgml/config.sgml | 4 ++-- doc/src/sgml/monitoring.sgml | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 8d53478f53a..69638d7c1f9 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -8549,7 +8549,7 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv; - Enables timing of database I/O calls. This parameter is off by + Enables timing of database I/O waits. This parameter is off by default, as it will repeatedly query the operating system for the current time, which may cause significant overhead on some platforms. You can use the tool to @@ -8583,7 +8583,7 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv; - Enables timing of WAL I/O calls. This parameter is off by default, + Enables timing of WAL I/O waits. This parameter is off by default, as it will repeatedly query the operating system for the current time, which may cause significant overhead on some platforms. You can use the pg_test_timing tool to diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index aaa6586d3a4..7598340072f 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -2733,7 +2733,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage read_time double precision - Time spent in read operations in milliseconds (if + Time spent waiting for read operations in milliseconds (if is enabled and object is not wal, or if is enabled @@ -2771,7 +2771,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage write_time double precision - Time spent in write operations in milliseconds (if + Time spent waiting for write operations in milliseconds (if is enabled and object is not wal, or if is enabled @@ -2799,7 +2799,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage writeback_time double precision - Time spent in writeback operations in milliseconds (if + Time spent waiting for writeback operations in milliseconds (if is enabled, otherwise zero). This includes the time spent queueing write-out requests and, potentially, the time spent to write out the dirty data. @@ -2835,7 +2835,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage extend_time double precision - Time spent in extend operations in milliseconds. (if + Time spent waiting for extend operations in milliseconds. (if is enabled and object is not wal, or if is enabled @@ -2909,7 +2909,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage fsync_time double precision - Time spent in fsync operations in milliseconds (if + Time spent waiting for fsync operations in milliseconds (if is enabled and object is not wal, or if is enabled @@ -2996,7 +2996,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage - Columns tracking I/O time will only be non-zero when + Columns tracking I/O wait time will only be non-zero when is enabled. The user should be careful when referencing these columns in combination with their corresponding I/O operations in case track_io_timing -- 2.48.1.76.g4e746b1a31.dirty