Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pageserver: assert that uploads don't modify indexed layers #10228

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

erikgrinaker
Copy link
Contributor

@erikgrinaker erikgrinaker commented Dec 23, 2024

Problem

It's not legal to modify layers that are referenced by the current layer index. Assert this in the upload queue, as preparation for upload queue reordering.

Touches #10096.

Summary of changes

Add a debug assertion that the upload queue does not modify layers referenced by the current index.

I could be convinced that this should be a plain assertion, but will be conservative for now.

Copy link

github-actions bot commented Dec 23, 2024

7381 tests run: 7057 passed, 26 failed, 298 skipped (full report)


Failures on Postgres 14

# Run all failed tests locally:
scripts/pytest -vv -n $(nproc) -k "test_sharding_split_failures[release-pg14-failure0] or test_sharding_split_failures[release-pg14-failure1] or test_sharding_split_failures[release-pg14-failure2] or test_sharding_split_failures[release-pg14-failure3] or test_sharding_split_failures[release-pg14-failure4] or test_sharding_split_failures[release-pg14-failure6] or test_sharding_split_failures[release-pg14-failure8] or test_sharding_split_failures[release-pg14-failure7] or test_sharding_split_failures[release-pg14-failure9] or test_sharding_split_failures[release-pg14-failure10] or test_sharding_split_failures[release-pg14-failure11] or test_sharding_split_failures[release-pg14-failure12] or test_sharding_split_failures[release-pg14-failure13] or test_sharding_split_failures[release-pg14-failure14] or test_sharding_split_failures[release-pg14-failure5] or test_sharding_split_failures[release-pg14-failure15] or test_sharding_split_failures[release-pg14-failure17] or test_sharding_split_failures[release-pg14-failure18] or test_sharding_split_failures[release-pg14-failure19] or test_sharding_split_failures[release-pg14-failure20] or test_sharding_split_failures[release-pg14-failure16] or test_storage_controller_heartbeats[release-pg14-failure4] or test_storage_controller_heartbeats[release-pg14-failure0] or test_storage_controller_heartbeats[release-pg14-failure1] or test_storage_controller_heartbeats[release-pg14-failure2] or test_storage_controller_heartbeats[release-pg14-failure3]"
Flaky tests (553)

Postgres 17

Postgres 15

Postgres 14

Code coverage* (full report)

  • functions: 31.3% (8403 of 26878 functions)
  • lines: 48.0% (66724 of 139081 lines)

* collected from Rust tests only


The comment gets automatically updated with the latest test results
d2ae0f6 at 2024-12-27T16:58:15.644Z :recycle:

@erikgrinaker

This comment was marked as outdated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant