-
Notifications
You must be signed in to change notification settings - Fork 296
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
storage: possible race in migration logic #4344
Labels
A-upgrades
Area: Relates to chain upgrades
needs-refinement
unclear, incomplete, or stub issue that needs work
Comments
github-actions
bot
added
the
needs-refinement
unclear, incomplete, or stub issue that needs work
label
May 7, 2024
pub async fn last_block_timestamp(home: PathBuf) -> anyhow::Result<tendermint::Time> {
let rocksdb = home.join("rocksdb");
let storage = Storage::load(rocksdb, SUBSTORE_PREFIXES.to_vec())
.await
.context("error loading store for timestamp")?;
let state = storage.latest_snapshot();
let last_block_time = state
.get_block_timestamp()
.await
.context("error reading latest block timestamp")?;
Ok(last_block_time)
} I think adding |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-upgrades
Area: Relates to chain upgrades
needs-refinement
unclear, incomplete, or stub issue that needs work
Describe the bug
When running
pd migrate
, which I've been doing frequently lately, occasionally I'll encounter an error about failing to lock the rocksdb for writing:To Reproduce
Steps to reproduce the behavior:
pd
is accessing storage dirs)cargo run --release --bin pd -- migrate
Expected behavior
The
pd migrate
command should have no problem gaining a lock on storage, and shouldn't fight with itself.Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Full logs from a CI run (on #4337)
I don't yet know that this is an actual bug, but filing it early to reference later if need be.
The text was updated successfully, but these errors were encountered: