mirror of
https://github.com/neondatabase/neon.git
synced 2026-05-23 16:10:37 +00:00
## 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>
19 lines
305 B
JSON
19 lines
305 B
JSON
{
|
|
"v17": [
|
|
"17.4",
|
|
"0d59c91c1a23e667f1d1169d5f040b3fa0a0ab44"
|
|
],
|
|
"v16": [
|
|
"16.8",
|
|
"05ddf212e2e07b788b5c8b88bdcf98630941f6ae"
|
|
],
|
|
"v15": [
|
|
"15.12",
|
|
"72f83df76c61ce18d81bd371f0afd2a43d59c052"
|
|
],
|
|
"v14": [
|
|
"14.17",
|
|
"06b405bc982fd53522689aa4acbfd9c44b7993cf"
|
|
]
|
|
}
|