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: hold GC while reading from a timeline #10559

Merged
merged 1 commit into from
Jan 29, 2025

Conversation

VladLazar
Copy link
Contributor

@VladLazar VladLazar commented Jan 29, 2025

Problem

If we are GC-ing because a new image layer was added while traversing the timeline, then it will remove layers that are required for fulfilling the current get request (read-path cannot "look back" and notice the new image layer).

Summary of Changes

Prevent GC from progressing on the current timeline while it is being visited for a read.

Epic: #9376

Problem

If we are GC-ing because a new image layer was added while traversing
the timeline, then it will remove layers that are required for fulfilling
the current get request (read-path cannot "look back" and notice the new
image layer).

Summary of Changes

Prevent GC from progressing on the current timeline while it is being
visited for a read.
Copy link

github-actions bot commented Jan 29, 2025

7440 tests run: 7088 passed, 0 failed, 352 skipped (full report)


Flaky tests (12)

Postgres 17

Postgres 16

Postgres 15

Postgres 14

Code coverage* (full report)

  • functions: 33.3% (8494 of 25495 functions)
  • lines: 49.1% (71425 of 145535 lines)

* collected from Rust tests only


The comment gets automatically updated with the latest test results
c92dc89 at 2025-01-29T15:25:29.690Z :recycle:

@VladLazar VladLazar marked this pull request as ready for review January 29, 2025 16:38
@VladLazar VladLazar requested a review from a team as a code owner January 29, 2025 16:38
@VladLazar VladLazar requested a review from arpad-m January 29, 2025 16:39
@VladLazar VladLazar enabled auto-merge January 29, 2025 16:48
@VladLazar VladLazar added this pull request to the merge queue Jan 29, 2025
Merged via the queue into main with commit fdfbc7b Jan 29, 2025
88 checks passed
@VladLazar VladLazar deleted the vlad/hold-gc-cutoff-lsn-on-read-path branch January 29, 2025 17:09
winter-loo pushed a commit to winter-loo/neon that referenced this pull request Feb 4, 2025
## Problem

If we are GC-ing because a new image layer was added while traversing
the timeline, then it will remove layers that are required for
fulfilling the current get request (read-path cannot "look back" and
notice the new image layer).

## Summary of Changes

Prevent GC from progressing on the current timeline while it is being
visited for a read.

Epic: neondatabase#9376
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.

3 participants