=== Applying patches on top of PostgreSQL commit ID e8ca9ed1d260e214f02f7f5464f125fe86e55597 === /etc/rc.d/jail: WARNING: Per-jail configuration via jail_* variables is obsolete. Please consider migrating to /etc/jail.conf. Sun Apr 27 06:08:20 UTC 2025 On branch cf/5526 nothing to commit, working tree clean === using 'git am' to apply patch ./v4-0001-Add-storage-I-O-tracking-to-BUFFERS-option.patch === Applying: Add storage I/O tracking to 'BUFFERS' option Using index info to reconstruct a base tree... M doc/src/sgml/ref/explain.sgml M src/backend/access/gin/gininsert.c M src/include/commands/explain.h M src/tools/pgindent/typedefs.list Falling back to patching base and 3-way merge... Auto-merging src/tools/pgindent/typedefs.list Auto-merging src/include/commands/explain.h Auto-merging src/backend/access/gin/gininsert.c Auto-merging doc/src/sgml/ref/explain.sgml CONFLICT (content): Merge conflict in doc/src/sgml/ref/explain.sgml error: Failed to merge in the changes. hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 Add storage I/O tracking to 'BUFFERS' option When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". Unstaged changes after reset: M doc/src/sgml/ref/explain.sgml M src/backend/access/brin/brin.c M src/backend/access/gin/gininsert.c M src/backend/access/nbtree/nbtsort.c M src/backend/commands/explain.c M src/backend/commands/prepare.c M src/backend/commands/vacuumparallel.c M src/backend/executor/execParallel.c M src/backend/executor/instrument.c M src/include/commands/explain.h M src/include/executor/execParallel.h M src/include/executor/instrument.h M src/include/port/win32/sys/resource.h M src/port/win32getrusage.c M src/tools/pgindent/typedefs.list Removing src/test/regress/expected/explain_1.out === using patch(1) to apply patch ./v4-0001-Add-storage-I-O-tracking-to-BUFFERS-option.patch === patching file doc/src/sgml/ref/explain.sgml Hunk #1 FAILED at 201. 1 out of 1 hunk FAILED -- saving rejects to file doc/src/sgml/ref/explain.sgml.rej patching file src/backend/access/brin/brin.c patching file src/backend/access/gin/gininsert.c patching file src/backend/access/nbtree/nbtsort.c patching file src/backend/commands/explain.c patching file src/backend/commands/prepare.c patching file src/backend/commands/vacuumparallel.c patching file src/backend/executor/execParallel.c patching file src/backend/executor/instrument.c patching file src/include/commands/explain.h patching file src/include/executor/execParallel.h patching file src/include/executor/instrument.h patching file src/include/port/win32/sys/resource.h patching file src/port/win32getrusage.c patching file src/test/regress/expected/explain_1.out patching file src/tools/pgindent/typedefs.list Hunk #1 succeeded at 2637 (offset 1 line). Unstaged changes after reset: M src/backend/access/brin/brin.c M src/backend/access/gin/gininsert.c M src/backend/access/nbtree/nbtsort.c M src/backend/commands/explain.c M src/backend/commands/prepare.c M src/backend/commands/vacuumparallel.c M src/backend/executor/execParallel.c M src/backend/executor/instrument.c M src/include/commands/explain.h M src/include/executor/execParallel.h M src/include/executor/instrument.h M src/include/port/win32/sys/resource.h M src/port/win32getrusage.c M src/tools/pgindent/typedefs.list Removing doc/src/sgml/ref/explain.sgml.rej Removing src/test/regress/expected/explain_1.out === using 'git apply' to apply patch ./v4-0001-Add-storage-I-O-tracking-to-BUFFERS-option.patch === Applied patch to 'doc/src/sgml/ref/explain.sgml' with conflicts. Applied patch to 'src/backend/access/brin/brin.c' cleanly. Applied patch to 'src/backend/access/gin/gininsert.c' cleanly. Applied patch to 'src/backend/access/nbtree/nbtsort.c' cleanly. Applied patch to 'src/backend/commands/explain.c' cleanly. Applied patch to 'src/backend/commands/prepare.c' cleanly. Applied patch to 'src/backend/commands/vacuumparallel.c' cleanly. Applied patch to 'src/backend/executor/execParallel.c' cleanly. Applied patch to 'src/backend/executor/instrument.c' cleanly. Applied patch to 'src/include/commands/explain.h' cleanly. Applied patch to 'src/include/executor/execParallel.h' cleanly. Applied patch to 'src/include/executor/instrument.h' cleanly. Applied patch to 'src/include/port/win32/sys/resource.h' cleanly. Applied patch to 'src/port/win32getrusage.c' cleanly. Falling back to direct application... Applied patch to 'src/tools/pgindent/typedefs.list' cleanly. U doc/src/sgml/ref/explain.sgml diff --cc doc/src/sgml/ref/explain.sgml index 6dda680aa0d,493afe6a345..00000000000 --- a/doc/src/sgml/ref/explain.sgml +++ b/doc/src/sgml/ref/explain.sgml @@@ -201,8 -201,27 +201,32 @@@ ROLLBACK query processing. The number of blocks shown for an upper-level node includes those used by all its child nodes. In text ++<<<<<<< ours + format, only non-zero values are printed. Buffers information is + automatically included when ANALYZE is used. ++======= + format, only non-zero values are printed. + If possible, this option also displays the number of read and write + operations performed on storage during the planning and execution phases, + shown at the end of the plan. These values are obtained from the + getrusage() system call. Note that on platforms that + do not support getrusage(), such as Windows, no output + will be shown, even if reads or writes actually occur. Additionally, even + on platforms where getrusage() is supported, if the + kernel is built without the necessary options to track storage read and + write operations, no output will be shown. Also, When + io_method is set to worker, no output + will be shown, as I/O handled by asynchronous workers cannot be measured + accurately. + The timing and unit of measurement for read and write operations may vary + depending on the platform. For example, on Linux, a read is counted only + if this process caused data to be fetched from the storage layer, and a + write is counted at the page-dirtying time. On Linux, the unit of + measurement for read and write operations is 512 bytes. + Buffers information is included by default when ANALYZE + is used but otherwise is not included by default, but can be enabled using + this option. ++>>>>>>> theirs