diff options
| author | Heikki Linnakangas | 2024-03-25 12:59:58 +0000 |
|---|---|---|
| committer | Heikki Linnakangas | 2024-03-25 12:59:58 +0000 |
| commit | f83d709760d84253b539ee454ce9ce1ceb9ad9ac (patch) | |
| tree | faab56d6b5fc4c320ff10838238cbb2a14588409 /src/tools | |
| parent | d44032d0146306971cd5ccf232fe37269717d6f2 (diff) | |
Merge prune, freeze and vacuum WAL record formats
The new combined WAL record is now used for pruning, freezing and 2nd
pass of vacuum. This is in preparation for changing VACUUM to write a
combined prune+freeze record per page, instead of separate two
records. The new WAL record format now supports that, but the code
still always writes separate records for pruning and freezing.
This reserves separate XLOG_HEAP2_* info codes for when the pruning
record is emitted for on-access pruning or VACUUM, per Peter
Geoghegan's suggestion. The record format is identical, but having
separate info codes makes it easier analyze pruning and vacuuming with
pg_waldump.
The function to emit the new WAL record, log_heap_prune_and_freeze(),
is in pruneheap.c. The existing heap_log_freeze_plan() and its
subroutines are moved to pruneheap.c without changes, to keep them
together with log_heap_prune_and_freeze().
Author: Melanie Plageman <melanieplageman@gmail.com>
Discussion: https://www.postgresql.org/message-id/CAAKRu_azf-zH%3DDgVbquZ3tFWjMY1w5pO8m-TXJaMdri8z3933g@mail.gmail.com
Discussion: https://www.postgresql.org/message-id/CAAKRu_b2oE4GL%3Dq4g9mcByS9yT7wTQvEH9OLpabj28e%2BWKFi2A@mail.gmail.com
Diffstat (limited to 'src/tools')
| -rw-r--r-- | src/tools/pgindent/typedefs.list | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list index e2a0525dd4a..4679660837c 100644 --- a/src/tools/pgindent/typedefs.list +++ b/src/tools/pgindent/typedefs.list @@ -2192,6 +2192,7 @@ ProjectionPath PromptInterruptContext ProtocolVersion PrsStorage +PruneReason PruneResult PruneState PruneStepResult @@ -3968,8 +3969,6 @@ xl_hash_update_meta_page xl_hash_vacuum_one_page xl_heap_confirm xl_heap_delete -xl_heap_freeze_page -xl_heap_freeze_plan xl_heap_header xl_heap_inplace xl_heap_insert @@ -3981,7 +3980,6 @@ xl_heap_prune xl_heap_rewrite_mapping xl_heap_truncate xl_heap_update -xl_heap_vacuum xl_heap_visible xl_invalid_page xl_invalid_page_key @@ -4021,6 +4019,9 @@ xl_xact_stats_items xl_xact_subxacts xl_xact_twophase xl_xact_xinfo +xlhp_freeze_plan +xlhp_freeze_plans +xlhp_prune_items xmlBuffer xmlBufferPtr xmlChar |
