mirror of
https://github.com/neondatabase/neon.git
synced 2026-06-04 22:10:39 +00:00
Change prefetch logic in vacuum (#11650)
## Problem See https://neondb.slack.com/archives/C03QLRH7PPD/p1745003314183649 Vacuum doesn't use prefetch because this strange logic in `lazy_scan_heap`: ``` /* And only up to the next unskippable block */ if (next_prefetch_block + prefetch_budget > vacrel->next_unskippable_block) prefetch_budget = vacrel->next_unskippable_block - next_prefetch_block; ``` ## Summary of changes Disable prefetch only if vacuum jumps to next skippable block (there is SKIP_PAGES_THRESHOLD) which cancel seqscan and perform jump only if gap is large enough). Postgres PRs: https://github.com/neondatabase/postgres/pull/620 https://github.com/neondatabase/postgres/pull/621 https://github.com/neondatabase/postgres/pull/622 https://github.com/neondatabase/postgres/pull/623 --------- Co-authored-by: Konstantin Knizhnik <knizhnik@neon.tech>
This commit is contained in:
committed by
GitHub
parent
b37bb7d7ed
commit
101e115b38
2
vendor/postgres-v14
vendored
2
vendor/postgres-v14
vendored
Submodule vendor/postgres-v14 updated: 108856a4ae...06b405bc98
2
vendor/postgres-v15
vendored
2
vendor/postgres-v15
vendored
Submodule vendor/postgres-v15 updated: b838c8969b...72f83df76c
2
vendor/postgres-v17
vendored
2
vendor/postgres-v17
vendored
Submodule vendor/postgres-v17 updated: b763ab54b9...0d59c91c1a
6
vendor/revisions.json
vendored
6
vendor/revisions.json
vendored
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"v17": [
|
||||
"17.4",
|
||||
"b763ab54b98d232a0959371ab1d07f06ed77c49e"
|
||||
"0d59c91c1a23e667f1d1169d5f040b3fa0a0ab44"
|
||||
],
|
||||
"v16": [
|
||||
"16.8",
|
||||
@@ -9,10 +9,10 @@
|
||||
],
|
||||
"v15": [
|
||||
"15.12",
|
||||
"b838c8969b7c63f3e637a769656f5f36793b797c"
|
||||
"72f83df76c61ce18d81bd371f0afd2a43d59c052"
|
||||
],
|
||||
"v14": [
|
||||
"14.17",
|
||||
"108856a4ae76be285b04497a0ed08fcbe60ddbe9"
|
||||
"06b405bc982fd53522689aa4acbfd9c44b7993cf"
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user