-
Notifications
You must be signed in to change notification settings - Fork 476
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
pageserver: coalesce index uploads when possible (#10248)
## Problem With upload queue reordering in #10218, we can easily get into a situation where multiple index uploads are queued back to back, which can't be parallelized. This will happen e.g. when multiple layer flushes enqueue layer/index/layer/index/... and the layers skip the queue and are uploaded in parallel. These index uploads will incur serial S3 roundtrip latencies, and may block later operations. Touches #10096. ## Summary of changes When multiple back-to-back index uploads are ready to upload, only upload the most recent index and drop the rest.
- Loading branch information
1 parent
e58e29e
commit 6debb49
Showing
3 changed files
with
67 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6debb49
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
7455 tests run: 7073 passed, 1 failed, 381 skipped (full report)
Failures on Postgres 16
test_layer_map[github-actions-selfhosted]
: release-x86-64Flaky tests (1)
Postgres 16
test_pageserver_metrics_removed_after_detach
: release-arm64Code coverage* (full report)
functions
:32.9% (8144 of 24779 functions)
lines
:48.1% (68254 of 141935 lines)
* collected from Rust tests only
6debb49 at 2025-01-14T23:28:15.974Z :recycle: