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

tool: add a command to compute sstable lineage from logs #3068

Open
jbowens opened this issue Nov 14, 2023 · 0 comments
Open

tool: add a command to compute sstable lineage from logs #3068

jbowens opened this issue Nov 14, 2023 · 0 comments

Comments

@jbowens
Copy link
Collaborator

jbowens commented Nov 14, 2023

When investigating corruption, it can be useful to try to understand the lineage of a particular sstable. This can be painstakingly reconstructed from the pebble logs by grepping for file numbers to find compactions that constructed the sstable, repeating on compaction inputs. This forms a tree with the particular sstable at the root, compactions forming interior nodes, and flushes/ingests forming the leaves.

We could add a command to the debug tool to perform this search. The tree can be as deep as the beginning of the store's history, so we'll want to be able to prune it. It might be useful to prune by depth, but also by start timestamp (eg, if you know the timestamp of a key, you can search for tree leaves around the key's timestamp and younger).

Motivated by cockroachdb/cockroach#114421.

Jira issue: PEBBLE-81

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: Backlog
Development

No branches or pull requests

1 participant