Do not upgrade db_version on metadata reading failure. (#11081)

This commit is contained in:
cheme
2022-03-22 10:53:49 +01:00
committed by GitHub
parent 330acd47e6
commit 61f1b2e6ab
4 changed files with 5 additions and 4 deletions
+2 -2
View File
@@ -6697,9 +6697,9 @@ dependencies = [
[[package]]
name = "parity-db"
version = "0.3.8"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "865edee5b792f537356d9e55cbc138e7f4718dc881a7ea45a18b37bf61c21e3d"
checksum = "3d121a9af17a43efd0a38c6afa508b927ba07785bd4709efb2ac03bf77efef8d"
dependencies = [
"blake2-rfc",
"crc32fast",
+1 -1
View File
@@ -33,7 +33,7 @@ sc-state-db = { version = "0.10.0-dev", path = "../state-db" }
sp-trie = { version = "6.0.0", path = "../../primitives/trie" }
sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
sp-database = { version = "4.0.0-dev", path = "../../primitives/database" }
parity-db = { version = "0.3.8", optional = true }
parity-db = { version = "0.3.9", optional = true }
[dev-dependencies]
sp-tracing = { version = "5.0.0", path = "../../primitives/tracing" }
+1 -1
View File
@@ -73,7 +73,7 @@ pub fn open<H: Clone + AsRef<[u8]>>(
if upgrade {
log::info!("Upgrading database metadata.");
if let Some(meta) = parity_db::Options::load_metadata(path)? {
config.write_metadata(path, &meta.salt)?;
config.write_metadata_with_version(path, &meta.salt, Some(meta.version))?;
}
}
+1
View File
@@ -275,6 +275,7 @@ fn open_parity_db<Block: BlockT>(path: &Path, db_type: DatabaseType, create: boo
match crate::parity_db::open(path, db_type, create, false) {
Ok(db) => Ok(db),
Err(parity_db::Error::InvalidConfiguration(_)) => {
log::warn!("Invalid parity db configuration, attempting database metadata update.");
// Try to update the database with the new config
Ok(crate::parity_db::open(path, db_type, create, true)?)
},