=== Applying patches on top of PostgreSQL commit ID 07961ef86625be91e243f1dff8911cb1d70e443f === /etc/rc.d/jail: WARNING: Per-jail configuration via jail_* variables is obsolete. Please consider migrating to /etc/jail.conf. Fri Nov 7 17:50:20 UTC 2025 On branch cf/5556 nothing to commit, working tree clean === using 'git am' to apply patch ./v18-0001-Expand-HOT-update-path-to-include-expression-and.patch === Applying: Expand HOT update path to include expression and partial indexes Using index info to reconstruct a base tree... M doc/src/sgml/ref/create_table.sgml M src/backend/access/common/reloptions.c M src/backend/access/heap/heapam.c M src/backend/catalog/indexing.c M src/backend/executor/execIndexing.c M src/backend/executor/execPartition.c M src/backend/executor/execReplication.c M src/backend/replication/logical/worker.c M src/backend/utils/cache/relcache.c M src/bin/psql/tab-complete.in.c M src/include/access/heapam.h M src/include/catalog/index.h M src/include/executor/executor.h M src/include/nodes/execnodes.h M src/include/utils/rel.h M src/test/regress/parallel_schedule 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/test/regress/parallel_schedule Auto-merging src/include/utils/rel.h Auto-merging src/include/nodes/execnodes.h Auto-merging src/include/executor/executor.h Auto-merging src/include/catalog/index.h Auto-merging src/include/access/heapam.h CONFLICT (content): Merge conflict in src/include/access/heapam.h Auto-merging src/bin/psql/tab-complete.in.c Auto-merging src/backend/utils/cache/relcache.c Auto-merging src/backend/replication/logical/worker.c Auto-merging src/backend/executor/execReplication.c Auto-merging src/backend/executor/execPartition.c Auto-merging src/backend/executor/execIndexing.c Auto-merging src/backend/catalog/indexing.c Auto-merging src/backend/access/heap/heapam.c CONFLICT (content): Merge conflict in src/backend/access/heap/heapam.c Auto-merging src/backend/access/common/reloptions.c Auto-merging doc/src/sgml/ref/create_table.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 Expand HOT update path to include expression and partial indexes 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/create_table.sgml M doc/src/sgml/storage.sgml M src/backend/access/common/reloptions.c 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/table/tableam.c M src/backend/catalog/index.c M src/backend/catalog/indexing.c M src/backend/commands/copyfrom.c M src/backend/executor/execExpr.c M src/backend/executor/execIndexing.c M src/backend/executor/execPartition.c M src/backend/executor/execReplication.c M src/backend/executor/nodeModifyTable.c M src/backend/replication/logical/worker.c M src/backend/utils/cache/relcache.c M src/bin/psql/tab-complete.in.c M src/include/access/heapam.h M src/include/access/tableam.h M src/include/catalog/index.h M src/include/executor/executor.h M src/include/nodes/execnodes.h M src/include/utils/rel.h M src/include/utils/relcache.h M src/test/regress/parallel_schedule M src/tools/pgindent/typedefs.list Removing src/test/regress/expected/heap_hot_updates.out Removing src/test/regress/sql/heap_hot_updates.sql === using patch(1) to apply patch ./v18-0001-Expand-HOT-update-path-to-include-expression-and.patch === patching file doc/src/sgml/ref/create_table.sgml Hunk #1 succeeded at 2012 (offset 15 lines). patching file doc/src/sgml/storage.sgml patching file src/backend/access/common/reloptions.c Hunk #2 succeeded at 1935 (offset 11 lines). patching file src/backend/access/heap/README.HOT patching file src/backend/access/heap/heapam.c Hunk #1 succeeded at 3257 with fuzz 2 (offset 11 lines). Hunk #2 succeeded at 3294 (offset 11 lines). Hunk #3 succeeded at 3345 (offset 11 lines). Hunk #4 succeeded at 3362 (offset 11 lines). Hunk #5 succeeded at 3432 (offset 11 lines). Hunk #6 succeeded at 3734 (offset 11 lines). Hunk #7 succeeded at 4056 (offset 11 lines). Hunk #8 succeeded at 4242 (offset 11 lines). Hunk #9 FAILED at 4521. 1 out of 9 hunks FAILED -- saving rejects to file src/backend/access/heap/heapam.c.rej patching file src/backend/access/heap/heapam_handler.c patching file src/backend/access/table/tableam.c patching file src/backend/catalog/index.c patching file src/backend/catalog/indexing.c Hunk #2 succeeded at 313 with fuzz 1. Hunk #3 succeeded at 339 with fuzz 1. patching file src/backend/commands/copyfrom.c patching file src/backend/executor/execExpr.c patching file src/backend/executor/execIndexing.c patching file src/backend/executor/execPartition.c patching file src/backend/executor/execReplication.c patching file src/backend/executor/nodeModifyTable.c patching file src/backend/replication/logical/worker.c Hunk #1 succeeded at 2697 (offset 25 lines). Hunk #2 succeeded at 2920 (offset 25 lines). Hunk #3 succeeded at 3078 (offset 25 lines). patching file src/backend/utils/cache/relcache.c patching file src/bin/psql/tab-complete.in.c Hunk #1 succeeded at 3057 (offset 12 lines). patching file src/include/access/heapam.h Hunk #2 succeeded at 325 with fuzz 1. Hunk #3 FAILED at 360. 1 out of 3 hunks FAILED -- saving rejects to file src/include/access/heapam.h.rej patching file src/include/access/tableam.h patching file src/include/catalog/index.h patching file src/include/executor/executor.h Hunk #1 succeeded at 737 (offset 3 lines). Hunk #2 succeeded at 755 with fuzz 1 (offset 3 lines). patching file src/include/nodes/execnodes.h patching file src/include/utils/rel.h Hunk #2 succeeded at 350 (offset 1 line). Hunk #3 succeeded at 412 (offset 1 line). patching file src/include/utils/relcache.h patching file src/test/regress/expected/heap_hot_updates.out patching file src/test/regress/parallel_schedule patching file src/test/regress/sql/heap_hot_updates.sql patching file src/tools/pgindent/typedefs.list Hunk #1 succeeded at 2990 (offset 9 lines). Hunk #2 succeeded at 3178 (offset 9 lines). Unstaged changes after reset: M doc/src/sgml/ref/create_table.sgml M doc/src/sgml/storage.sgml M src/backend/access/common/reloptions.c 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/table/tableam.c M src/backend/catalog/index.c M src/backend/catalog/indexing.c M src/backend/commands/copyfrom.c M src/backend/executor/execExpr.c M src/backend/executor/execIndexing.c M src/backend/executor/execPartition.c M src/backend/executor/execReplication.c M src/backend/executor/nodeModifyTable.c M src/backend/replication/logical/worker.c M src/backend/utils/cache/relcache.c M src/bin/psql/tab-complete.in.c M src/include/access/heapam.h M src/include/access/tableam.h M src/include/catalog/index.h M src/include/executor/executor.h M src/include/nodes/execnodes.h M src/include/utils/rel.h M src/include/utils/relcache.h M src/test/regress/parallel_schedule M src/tools/pgindent/typedefs.list Removing src/backend/access/heap/heapam.c.rej Removing src/include/access/heapam.h.rej Removing src/test/regress/expected/heap_hot_updates.out Removing src/test/regress/sql/heap_hot_updates.sql === using 'git apply' to apply patch ./v18-0001-Expand-HOT-update-path-to-include-expression-and.patch === Applied patch to 'doc/src/sgml/ref/create_table.sgml' cleanly. Applied patch to 'doc/src/sgml/storage.sgml' cleanly. Applied patch to 'src/backend/access/common/reloptions.c' cleanly. Applied patch to 'src/backend/access/heap/README.HOT' cleanly. Applied patch to 'src/backend/access/heap/heapam.c' with conflicts. Applied patch to 'src/backend/access/heap/heapam_handler.c' cleanly. Applied patch to 'src/backend/access/table/tableam.c' cleanly. Applied patch to 'src/backend/catalog/index.c' cleanly. Applied patch to 'src/backend/catalog/indexing.c' cleanly. Applied patch to 'src/backend/commands/copyfrom.c' cleanly. Applied patch to 'src/backend/executor/execExpr.c' cleanly. Applied patch to 'src/backend/executor/execIndexing.c' cleanly. Applied patch to 'src/backend/executor/execPartition.c' cleanly. Applied patch to 'src/backend/executor/execReplication.c' cleanly. Applied patch to 'src/backend/executor/nodeModifyTable.c' cleanly. Applied patch to 'src/backend/replication/logical/worker.c' cleanly. Applied patch to 'src/backend/utils/cache/relcache.c' cleanly. Applied patch to 'src/bin/psql/tab-complete.in.c' cleanly. Applied patch to 'src/include/access/heapam.h' with conflicts. Applied patch to 'src/include/access/tableam.h' cleanly. Applied patch to 'src/include/catalog/index.h' cleanly. Applied patch to 'src/include/executor/executor.h' cleanly. Applied patch to 'src/include/nodes/execnodes.h' cleanly. Applied patch to 'src/include/utils/rel.h' cleanly. Applied patch to 'src/include/utils/relcache.h' cleanly. Falling back to direct application... Applied patch to 'src/test/regress/parallel_schedule' cleanly. Falling back to direct application... Applied patch to 'src/tools/pgindent/typedefs.list' cleanly. U src/backend/access/heap/heapam.c U src/include/access/heapam.h diff --cc src/backend/access/heap/heapam.c index 36fee9c994e,78d7e9dfc2d..00000000000 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@@ -3255,10 -3244,9 +3255,9 @@@ simple_heap_delete(Relation relation, c * generated by another transaction). */ TM_Result -heap_update(Relation relation, ItemPointer otid, HeapTuple newtup, +heap_update(Relation relation, const ItemPointerData *otid, HeapTuple newtup, CommandId cid, Snapshot crosscheck, bool wait, - TM_FailureData *tmfd, LockTupleMode *lockmode, - TU_UpdateIndexes *update_indexes) + TM_FailureData *tmfd, UpdateContext *updateCxt) { TM_Result result; TransactionId xid = GetCurrentTransactionId(); @@@ -4499,8 -4520,8 +4531,13 @@@ HeapDetermineColumnsInfo(Relation relat * via ereport(). */ void ++<<<<<<< ours +simple_heap_update(Relation relation, const ItemPointerData *otid, HeapTuple tup, + TU_UpdateIndexes *update_indexes) ++======= + simple_heap_update(Relation relation, ItemPointer otid, HeapTuple tup, + UpdateContext *updateCxt) ++>>>>>>> theirs { TM_Result result; TM_FailureData tmfd; diff --cc src/include/access/heapam.h index 909db73b7bb,d1c9135b06d..00000000000 --- a/src/include/access/heapam.h +++ b/src/include/access/heapam.h @@@ -316,16 -317,15 +317,15 @@@ extern void heap_insert(Relation relati extern void heap_multi_insert(Relation relation, TupleTableSlot **slots, int ntuples, CommandId cid, int options, BulkInsertState bistate); -extern TM_Result heap_delete(Relation relation, ItemPointer tid, +extern TM_Result heap_delete(Relation relation, const ItemPointerData *tid, CommandId cid, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, bool changingPart); -extern void heap_finish_speculative(Relation relation, ItemPointer tid); -extern void heap_abort_speculative(Relation relation, ItemPointer tid); -extern TM_Result heap_update(Relation relation, ItemPointer otid, +extern void heap_finish_speculative(Relation relation, const ItemPointerData *tid); +extern void heap_abort_speculative(Relation relation, const ItemPointerData *tid); +extern TM_Result heap_update(Relation relation, const ItemPointerData *otid, HeapTuple newtup, CommandId cid, Snapshot crosscheck, bool wait, - TM_FailureData *tmfd, LockTupleMode *lockmode, - TU_UpdateIndexes *update_indexes); + TM_FailureData *tmfd, UpdateContext *updateCxt); extern TM_Result heap_lock_tuple(Relation relation, HeapTuple tuple, CommandId cid, LockTupleMode mode, LockWaitPolicy wait_policy, bool follow_updates, @@@ -358,9 -358,9 +358,15 @@@ extern bool heap_tuple_should_freeze(He extern bool heap_tuple_needs_eventual_freeze(HeapTupleHeader tuple); extern void simple_heap_insert(Relation relation, HeapTuple tup); ++<<<<<<< ours +extern void simple_heap_delete(Relation relation, const ItemPointerData *tid); +extern void simple_heap_update(Relation relation, const ItemPointerData *otid, + HeapTuple tup, TU_UpdateIndexes *update_indexes); ++======= + extern void simple_heap_delete(Relation relation, ItemPointer tid); + extern void simple_heap_update(Relation relation, ItemPointer otid, + HeapTuple tup, UpdateContext *updateCxt); ++>>>>>>> theirs extern TransactionId heap_index_delete_tuples(Relation rel, TM_IndexDeleteOp *delstate);