mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-09 20:11:09 +00:00
ensure meta is actually in the right column and sanity check on iterator (#820)
This commit is contained in:
committed by
Gav Wood
parent
e5b48030b5
commit
a3285e43f6
@@ -151,8 +151,8 @@ pub struct BlockchainDb<Block: BlockT> {
|
||||
|
||||
impl<Block: BlockT> BlockchainDb<Block> {
|
||||
fn new(db: Arc<KeyValueDB>) -> Result<Self, client::error::Error> {
|
||||
let meta = read_meta::<Block>(&*db, columns::HEADER)?;
|
||||
let leaves = LeafSet::read_from_db(&*db, columns::HEADER, meta_keys::LEAF_PREFIX)?;
|
||||
let meta = read_meta::<Block>(&*db, columns::META)?;
|
||||
let leaves = LeafSet::read_from_db(&*db, columns::META, meta_keys::LEAF_PREFIX)?;
|
||||
Ok(BlockchainDb {
|
||||
db,
|
||||
leaves: RwLock::new(leaves),
|
||||
@@ -638,7 +638,7 @@ impl<Block> client::backend::Backend<Block, Blake2Hasher> for Backend<Block> whe
|
||||
{
|
||||
let mut leaves = self.blockchain.leaves.write();
|
||||
let displaced_leaf = leaves.import(hash, number, parent_hash);
|
||||
leaves.prepare_transaction(&mut transaction, columns::HEADER, meta_keys::LEAF_PREFIX);
|
||||
leaves.prepare_transaction(&mut transaction, columns::META, meta_keys::LEAF_PREFIX);
|
||||
|
||||
let write_result = self.storage.db.write(transaction).map_err(db_err);
|
||||
if let Err(e) = write_result {
|
||||
|
||||
@@ -92,8 +92,8 @@ impl<Block> LightStorage<Block>
|
||||
columns::HEADER,
|
||||
columns::AUTHORITIES
|
||||
)?;
|
||||
let meta = RwLock::new(read_meta::<Block>(&*db, columns::HEADER)?);
|
||||
let leaves = RwLock::new(LeafSet::read_from_db(&*db, columns::HEADER, meta_keys::LEAF_PREFIX)?);
|
||||
let meta = RwLock::new(read_meta::<Block>(&*db, columns::META)?);
|
||||
let leaves = RwLock::new(LeafSet::read_from_db(&*db, columns::META, meta_keys::LEAF_PREFIX)?);
|
||||
|
||||
Ok(LightStorage {
|
||||
db,
|
||||
|
||||
Reference in New Issue
Block a user