=== Applying patches on top of PostgreSQL commit ID d6bf0ab1704c62f94875d25dd71c4baa1feac5be === /etc/rc.d/jail: WARNING: Per-jail configuration via jail_* variables is obsolete. Please consider migrating to /etc/jail.conf. Wed Aug 12 11:11:29 UTC 2026 === expanding ./v67-tepid.tgz x v67-0001-Add-tests-to-cover-a-variety-of-heap-HOT-update-.patch x v67-0002-Identify-modified-indexed-attributes-in-the-exec.patch x v67-0003-Implement-the-heap-AM-s-modified-attrs-compariso.patch x v67-0004-Add-the-HOT-indexed-on-disk-format-inline-attr-b.patch x v67-0005-Add-HOT-indexed-updates-selective-index-maintena.patch x v67-0006-Fix-a-BitmapAnd-BitmapOr-false-negative-on-HOT-i.patch x v67-0007-Collapse-dead-HOT-indexed-chains-to-xid-free-stu.patch x v67-0008-Teach-amcheck-to-recognize-HOT-indexed-chains-an.patch x v67-0009-Add-HOT-indexed-statistics-and-the-comprehensive.patch x v67-0010-Gate-HOT-indexed-updates-on-the-logical-replicat.patch x v67-0011-DO-NOT-MERGE-Add-a-HOT-SIU-benchmark-harness.patch On branch cf/6968 nothing to commit, working tree clean === using 'git am' to apply patch ./v67-0001-Add-tests-to-cover-a-variety-of-heap-HOT-update-.patch === Applying: Add tests to cover a variety of heap HOT update behaviors === using 'git am' to apply patch ./v67-0002-Identify-modified-indexed-attributes-in-the-exec.patch === Applying: Identify modified indexed attributes in the executor on UPDATE === using 'git am' to apply patch ./v67-0003-Implement-the-heap-AM-s-modified-attrs-compariso.patch === Applying: Implement the heap AM's modified-attrs comparison callback === using 'git am' to apply patch ./v67-0004-Add-the-HOT-indexed-on-disk-format-inline-attr-b.patch === Applying: Add the HOT-indexed on-disk format: inline attr bitmap and stubs === using 'git am' to apply patch ./v67-0005-Add-HOT-indexed-updates-selective-index-maintena.patch === Applying: Add HOT-indexed updates: selective index maintenance and reads error: sha1 information is lacking or useless (src/backend/commands/repack.c). error: could not build fake ancestor hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 Add HOT-indexed updates: selective index maintenance and reads 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". === using patch(1) to apply patch ./v67-0005-Add-HOT-indexed-updates-selective-index-maintena.patch === patching file contrib/pageinspect/expected/hot_updates.out patching file contrib/pageinspect/sql/hot_updates.sql patching file src/backend/access/heap/README.HOT patching file src/backend/access/heap/heapam.c patching file src/backend/access/heap/heapam_handler.c patching file src/backend/access/heap/heapam_indexscan.c patching file src/backend/access/index/genam.c patching file src/backend/access/index/indexam.c patching file src/backend/access/nbtree/nbtinsert.c patching file src/backend/access/nbtree/nbtree.c patching file src/backend/access/table/tableam.c patching file src/backend/catalog/indexing.c patching file src/backend/catalog/toasting.c patching file src/backend/commands/repack.c Hunk #1 succeeded at 2692 (offset 13 lines). Hunk #2 succeeded at 2714 (offset 13 lines). patching file src/backend/executor/execIndexing.c patching file src/backend/executor/execReplication.c patching file src/backend/executor/nodeIndexonlyscan.c Hunk #1 succeeded at 105 (offset 1 line). Hunk #2 succeeded at 174 (offset 1 line). Hunk #3 succeeded at 231 (offset -18 lines). Hunk #4 succeeded at 810 (offset 5 lines). Hunk #5 succeeded at 861 (offset 5 lines). patching file src/backend/executor/nodeIndexscan.c patching file src/backend/nodes/makefuncs.c patching file src/backend/utils/activity/pgstat_relation.c Hunk #1 succeeded at 431 (offset 47 lines). Hunk #2 succeeded at 451 (offset 47 lines). Hunk #3 succeeded at 919 (offset 53 lines). patching file src/backend/utils/cache/relcache.c patching file src/include/access/amapi.h patching file src/include/access/heapam.h patching file src/include/access/relscan.h patching file src/include/nodes/execnodes.h patching file src/include/pgstat.h Hunk #2 FAILED at 230. Hunk #4 succeeded at 783 (offset 14 lines). Hunk #5 succeeded at 805 (offset 14 lines). 1 out of 5 hunks FAILED -- saving rejects to file src/include/pgstat.h.rej patching file src/include/utils/rel.h patching file src/include/utils/relcache.h patching file src/tools/pgindent/typedefs.list Hunk #2 succeeded at 3145 (offset 3 lines). Unstaged changes after reset: M contrib/pageinspect/expected/hot_updates.out M contrib/pageinspect/sql/hot_updates.sql M src/backend/access/heap/README.HOT M src/backend/access/heap/heapam.c M src/backend/access/heap/heapam_handler.c M src/backend/access/heap/heapam_indexscan.c M src/backend/access/index/genam.c M src/backend/access/index/indexam.c M src/backend/access/nbtree/nbtinsert.c M src/backend/access/nbtree/nbtree.c M src/backend/access/table/tableam.c M src/backend/catalog/indexing.c M src/backend/catalog/toasting.c M src/backend/commands/repack.c M src/backend/executor/execIndexing.c M src/backend/executor/execReplication.c M src/backend/executor/nodeIndexonlyscan.c M src/backend/executor/nodeIndexscan.c M src/backend/nodes/makefuncs.c M src/backend/utils/activity/pgstat_relation.c M src/backend/utils/cache/relcache.c M src/include/access/amapi.h M src/include/access/heapam.h M src/include/access/relscan.h M src/include/nodes/execnodes.h M src/include/pgstat.h M src/include/utils/rel.h M src/include/utils/relcache.h M src/tools/pgindent/typedefs.list Removing src/include/pgstat.h.rej === using 'git apply' to apply patch ./v67-0005-Add-HOT-indexed-updates-selective-index-maintena.patch === Applied patch to 'contrib/pageinspect/expected/hot_updates.out' cleanly. Applied patch to 'contrib/pageinspect/sql/hot_updates.sql' cleanly. Applied patch to 'src/backend/access/heap/README.HOT' cleanly. Applied patch to 'src/backend/access/heap/heapam.c' cleanly. Applied patch to 'src/backend/access/heap/heapam_handler.c' cleanly. Applied patch to 'src/backend/access/heap/heapam_indexscan.c' cleanly. Applied patch to 'src/backend/access/index/genam.c' cleanly. Applied patch to 'src/backend/access/index/indexam.c' cleanly. Applied patch to 'src/backend/access/nbtree/nbtinsert.c' cleanly. Applied patch to 'src/backend/access/nbtree/nbtree.c' cleanly. Applied patch to 'src/backend/access/table/tableam.c' cleanly. Applied patch to 'src/backend/catalog/indexing.c' cleanly. Applied patch to 'src/backend/catalog/toasting.c' cleanly. error: repository lacks the necessary blob to perform 3-way merge. Falling back to direct application... Applied patch to 'src/backend/executor/execIndexing.c' cleanly. Applied patch to 'src/backend/executor/execReplication.c' cleanly. Applied patch to 'src/backend/executor/nodeIndexonlyscan.c' cleanly. Applied patch to 'src/backend/executor/nodeIndexscan.c' cleanly. Applied patch to 'src/backend/nodes/makefuncs.c' cleanly. Applied patch to 'src/backend/utils/activity/pgstat_relation.c' cleanly. Applied patch to 'src/backend/utils/cache/relcache.c' cleanly. Applied patch to 'src/include/access/amapi.h' cleanly. Applied patch to 'src/include/access/heapam.h' cleanly. Applied patch to 'src/include/access/relscan.h' cleanly. Applied patch to 'src/include/nodes/execnodes.h' cleanly. Applied patch to 'src/include/pgstat.h' cleanly. Applied patch to 'src/include/utils/rel.h' cleanly. Applied patch to 'src/include/utils/relcache.h' cleanly. Applied patch to 'src/tools/pgindent/typedefs.list' cleanly. [cf/6968 79d6af46d46] Add HOT-indexed updates: selective index maintenance and reads Author: Greg Burd Date: Wed Jun 17 17:35:17 2026 -0400 29 files changed, 1880 insertions(+), 417 deletions(-) === using 'git am' to apply patch ./v67-0006-Fix-a-BitmapAnd-BitmapOr-false-negative-on-HOT-i.patch === Applying: Fix a BitmapAnd/BitmapOr false negative on HOT-indexed fresh entries === using 'git am' to apply patch ./v67-0007-Collapse-dead-HOT-indexed-chains-to-xid-free-stu.patch === Applying: Collapse dead HOT-indexed chains to xid-free stubs on prune/vacuum === using 'git am' to apply patch ./v67-0008-Teach-amcheck-to-recognize-HOT-indexed-chains-an.patch === Applying: Teach amcheck to recognize HOT-indexed chains and collapse stubs === using 'git am' to apply patch ./v67-0009-Add-HOT-indexed-statistics-and-the-comprehensive.patch === Applying: Add HOT-indexed statistics and the comprehensive test suite Using index info to reconstruct a base tree... M contrib/pg_surgery/expected/heap_surgery.out M contrib/pg_surgery/heap_surgery.c M contrib/pg_surgery/sql/heap_surgery.sql M doc/src/sgml/monitoring.sgml M src/backend/catalog/system_views.sql M src/backend/utils/adt/pgstatfuncs.c M src/include/catalog/pg_proc.dat M src/test/isolation/isolation_schedule M src/test/recovery/meson.build M src/test/regress/expected/rules.out Falling back to patching base and 3-way merge... Auto-merging src/test/regress/expected/rules.out CONFLICT (content): Merge conflict in src/test/regress/expected/rules.out Auto-merging src/test/recovery/meson.build CONFLICT (content): Merge conflict in src/test/recovery/meson.build Auto-merging src/test/isolation/isolation_schedule CONFLICT (content): Merge conflict in src/test/isolation/isolation_schedule Auto-merging src/include/catalog/pg_proc.dat Auto-merging src/backend/utils/adt/pgstatfuncs.c Auto-merging src/backend/catalog/system_views.sql CONFLICT (content): Merge conflict in src/backend/catalog/system_views.sql Auto-merging doc/src/sgml/monitoring.sgml Auto-merging contrib/pg_surgery/sql/heap_surgery.sql Auto-merging contrib/pg_surgery/heap_surgery.c Auto-merging contrib/pg_surgery/expected/heap_surgery.out 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 HOT-indexed statistics and the comprehensive test suite 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". === using patch(1) to apply patch ./v67-0009-Add-HOT-indexed-statistics-and-the-comprehensive.patch === patching file contrib/pageinspect/Makefile patching file contrib/pageinspect/expected/hot_indexed_updates.out patching file contrib/pageinspect/meson.build patching file contrib/pageinspect/sql/hot_indexed_updates.sql patching file contrib/pg_surgery/Makefile patching file contrib/pg_surgery/expected/heap_surgery.out Hunk #1 succeeded at 192 (offset 17 lines). patching file contrib/pg_surgery/heap_surgery.c patching file contrib/pg_surgery/sql/heap_surgery.sql Hunk #1 succeeded at 91 (offset 8 lines). patching file doc/src/sgml/monitoring.sgml Hunk #1 succeeded at 4622 (offset 155 lines). Hunk #2 succeeded at 5105 (offset 155 lines). Hunk #3 succeeded at 5807 (offset 155 lines). patching file src/backend/access/heap/Makefile patching file src/backend/access/heap/hot_indexed_stats.c patching file src/backend/access/heap/meson.build patching file src/backend/catalog/system_views.sql Hunk #3 FAILED at 871. 1 out of 3 hunks FAILED -- saving rejects to file src/backend/catalog/system_views.sql.rej patching file src/backend/utils/adt/pgstatfuncs.c Hunk #2 succeeded at 1959 (offset 62 lines). patching file src/include/catalog/pg_proc.dat patching file src/test/isolation/expected/hot_indexed_adversarial.out patching file src/test/isolation/isolation_schedule Hunk #1 FAILED at 128. 1 out of 1 hunk FAILED -- saving rejects to file src/test/isolation/isolation_schedule.rej patching file src/test/isolation/specs/hot_indexed_adversarial.spec patching file src/test/recovery/Makefile patching file src/test/recovery/meson.build Hunk #1 FAILED at 63. 1 out of 1 hunk FAILED -- saving rejects to file src/test/recovery/meson.build.rej patching file src/test/recovery/t/055_hot_indexed_recovery.pl patching file src/test/regress/expected/rules.out Hunk #1 FAILED at 1810. 1 out of 9 hunks FAILED -- saving rejects to file src/test/regress/expected/rules.out.rej Unstaged changes after reset: M contrib/pageinspect/Makefile M contrib/pageinspect/meson.build M contrib/pg_surgery/Makefile M contrib/pg_surgery/expected/heap_surgery.out M contrib/pg_surgery/heap_surgery.c M contrib/pg_surgery/sql/heap_surgery.sql M doc/src/sgml/monitoring.sgml M src/backend/access/heap/Makefile M src/backend/access/heap/meson.build M src/backend/catalog/system_views.sql M src/backend/utils/adt/pgstatfuncs.c M src/include/catalog/pg_proc.dat M src/test/recovery/Makefile M src/test/regress/expected/rules.out Removing contrib/pageinspect/expected/hot_indexed_updates.out Removing contrib/pageinspect/sql/hot_indexed_updates.sql Removing src/backend/access/heap/hot_indexed_stats.c Removing src/backend/catalog/system_views.sql.rej Removing src/test/isolation/expected/hot_indexed_adversarial.out Removing src/test/isolation/isolation_schedule.rej Removing src/test/isolation/specs/hot_indexed_adversarial.spec Removing src/test/recovery/meson.build.rej Removing src/test/recovery/t/055_hot_indexed_recovery.pl Removing src/test/regress/expected/rules.out.rej === using 'git apply' to apply patch ./v67-0009-Add-HOT-indexed-statistics-and-the-comprehensive.patch === Applied patch to 'contrib/pageinspect/Makefile' cleanly. Falling back to direct application... Applied patch to 'contrib/pageinspect/meson.build' cleanly. Falling back to direct application... Applied patch to 'contrib/pg_surgery/Makefile' cleanly. Applied patch to 'contrib/pg_surgery/expected/heap_surgery.out' cleanly. Applied patch to 'contrib/pg_surgery/heap_surgery.c' cleanly. Applied patch to 'contrib/pg_surgery/sql/heap_surgery.sql' cleanly. Applied patch to 'doc/src/sgml/monitoring.sgml' cleanly. Applied patch to 'src/backend/access/heap/Makefile' cleanly. Falling back to direct application... Applied patch to 'src/backend/access/heap/meson.build' cleanly. Applied patch to 'src/backend/catalog/system_views.sql' with conflicts. Applied patch to 'src/backend/utils/adt/pgstatfuncs.c' cleanly. Applied patch to 'src/include/catalog/pg_proc.dat' cleanly. Falling back to direct application... Applied patch to 'src/test/isolation/isolation_schedule' with conflicts. Falling back to direct application... Applied patch to 'src/test/recovery/Makefile' cleanly. Applied patch to 'src/test/recovery/meson.build' with conflicts. Falling back to direct application... Applied patch to 'src/test/regress/expected/rules.out' with conflicts. U src/backend/catalog/system_views.sql U src/test/isolation/isolation_schedule U src/test/recovery/meson.build U src/test/regress/expected/rules.out diff --cc src/backend/catalog/system_views.sql index 8612d99a890,7186dd6c4d7..00000000000 --- a/src/backend/catalog/system_views.sql +++ b/src/backend/catalog/system_views.sql @@@ -865,11 -867,13 +867,21 @@@ CREATE VIEW pg_stat_all_indexes A N.nspname AS schemaname, C.relname AS relname, I.relname AS indexrelname, ++<<<<<<< ours + pg_stat_get_idx_numscans(I.oid) AS idx_scan, + pg_stat_get_idx_lastscan(I.oid) AS last_idx_scan, + pg_stat_get_idx_tuples_returned(I.oid) AS idx_tup_read, + pg_stat_get_idx_tuples_fetched(I.oid) AS idx_tup_fetch, + pg_stat_get_idx_stat_reset_time(I.oid) AS stats_reset ++======= + pg_stat_get_numscans(I.oid) AS idx_scan, + pg_stat_get_lastscan(I.oid) AS last_idx_scan, + pg_stat_get_tuples_returned(I.oid) AS idx_tup_read, + pg_stat_get_tuples_fetched(I.oid) AS idx_tup_fetch, + pg_stat_get_tuples_hot_indexed_updated_skipped(I.oid) AS n_tup_hot_indexed_upd_skipped, + pg_stat_get_tuples_hot_indexed_updated_matched(I.oid) AS n_tup_hot_indexed_upd_matched, + pg_stat_get_stat_reset_time(I.oid) AS stats_reset ++>>>>>>> theirs FROM pg_class C JOIN pg_index X ON C.oid = X.indrelid JOIN pg_class I ON I.oid = X.indexrelid diff --cc src/test/isolation/isolation_schedule index a27480a86a2,e9afb48199e..00000000000 --- a/src/test/isolation/isolation_schedule +++ b/src/test/isolation/isolation_schedule @@@ -129,5 -128,4 +129,9 @@@ test: matview-write-ske test: lock-nowait test: for-portion-of test: ddl-dependency-locking ++<<<<<<< ours +test: pub-concurrent-drop +test: drop-owned-grant ++======= + test: hot_indexed_adversarial ++>>>>>>> theirs diff --cc src/test/recovery/meson.build index 39ec8c4946d,8dbcda35775..00000000000 --- a/src/test/recovery/meson.build +++ b/src/test/recovery/meson.build @@@ -63,7 -63,7 +63,11 @@@ tests += 't/052_checkpoint_segment_missing.pl', 't/053_standby_login_event_trigger.pl', 't/054_unlogged_sequence_promotion.pl', ++<<<<<<< ours + 't/055_cascade_reconnect.pl', ++======= + 't/055_hot_indexed_recovery.pl', ++>>>>>>> theirs ], }, } diff --cc src/test/regress/expected/rules.out index 1a29d46213e,a3b2cd98ff8..00000000000 --- a/src/test/regress/expected/rules.out +++ b/src/test/regress/expected/rules.out @@@ -1806,11 -1806,13 +1806,21 @@@ pg_stat_all_indexes| SELECT c.oid AS re n.nspname AS schemaname, c.relname, i.relname AS indexrelname, ++<<<<<<< ours + pg_stat_get_idx_numscans(i.oid) AS idx_scan, + pg_stat_get_idx_lastscan(i.oid) AS last_idx_scan, + pg_stat_get_idx_tuples_returned(i.oid) AS idx_tup_read, + pg_stat_get_idx_tuples_fetched(i.oid) AS idx_tup_fetch, + pg_stat_get_idx_stat_reset_time(i.oid) AS stats_reset ++======= + pg_stat_get_numscans(i.oid) AS idx_scan, + pg_stat_get_lastscan(i.oid) AS last_idx_scan, + pg_stat_get_tuples_returned(i.oid) AS idx_tup_read, + pg_stat_get_tuples_fetched(i.oid) AS idx_tup_fetch, + pg_stat_get_tuples_hot_indexed_updated_skipped(i.oid) AS n_tup_hot_indexed_upd_skipped, + pg_stat_get_tuples_hot_indexed_updated_matched(i.oid) AS n_tup_hot_indexed_upd_matched, + pg_stat_get_stat_reset_time(i.oid) AS stats_reset ++>>>>>>> theirs FROM (((pg_class c JOIN pg_index x ON ((c.oid = x.indrelid))) JOIN pg_class i ON ((i.oid = x.indexrelid)))