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

Duplicate L1 generation #5077

Closed
koivunej opened this issue Aug 23, 2023 · 4 comments
Closed

Duplicate L1 generation #5077

koivunej opened this issue Aug 23, 2023 · 4 comments
Labels
c/storage/pageserver Component: storage: pageserver t/bug Issue Type: Bug triaged bugs that were already triaged

Comments

@koivunej
Copy link
Member

#4088 was closed via the fix to get silently rid of it, we should still overwrite existing.

After looking at the metadata updates in https://github.com/neondatabase/neon/pull/5074/files#r1302831422 thought that we should track the most recent L0->L1 compaction LSN. As in, after Timeline::compact_level0 finishes, we would be in a state where we would only consider deleting the "input L0"'s.

I wonder if we would have to define last_compact_l0 as something which can be reset if we fail to upload L1's and still have the L0's? The last_compact_l0 would be beneficial for tests as well, currently we do sleep + wait_for_uploads.

This has most likely been discussed already, but I don't remember having seen any of that.

@jcsp
Copy link
Collaborator

jcsp commented May 2, 2024

This is probably no longer relevant now that we reset from remote storage on startup; feel free to re-open if there is still an issue here.

@jcsp jcsp closed this as completed May 2, 2024
@koivunej
Copy link
Member Author

Let's just reopen this as it is still relevant.

@koivunej koivunej reopened this May 20, 2024
@jcsp
Copy link
Collaborator

jcsp commented May 20, 2024

What's the distinction between #7790 and this issue?

As I understand the status from that issue:

  • We don't have any known issues in prod where we would generate duplicate layers
  • We have some tests that do failure injection in a way that can generate duplicate layers (because they do return Ok(()) in places they shouldn't)
  • Current WiP tiered compaction code has a bug where it can emit duplicate layers.

@koivunej
Copy link
Member Author

It can very much happen, but it has not. Well, I guess we can handle that on #7790 as well.

@koivunej koivunej closed this as not planned Won't fix, can't repro, duplicate, stale May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c/storage/pageserver Component: storage: pageserver t/bug Issue Type: Bug triaged bugs that were already triaged
Projects
None yet
Development

No branches or pull requests

3 participants