Compare commits

...

3 Commits

Author SHA1 Message Date
Peilun Li
a409689c40 Fix proof insertion. 2024-10-12 16:20:54 +08:00
Peilun Li
dd8d23e1ea Update contracts. 2024-10-12 15:46:40 +08:00
Peilun Li
cab3600044 Fix wrong root before the first segment. 2024-10-12 14:12:14 +08:00
8 changed files with 25 additions and 25 deletions

View File

@ -226,18 +226,18 @@ impl<E: HashElement, A: Algorithm<E>> AppendMerkleTree<E, A> {
&mut self, &mut self,
proof: RangeProof<E>, proof: RangeProof<E>,
) -> Result<Vec<(usize, usize, E)>> { ) -> Result<Vec<(usize, usize, E)>> {
self.fill_with_proof( let mut updated_nodes = Vec::new();
proof let mut left_nodes = proof.left_proof.proof_nodes_in_tree();
.left_proof if left_nodes.len() >= self.leaf_height {
.proof_nodes_in_tree() updated_nodes
.split_off(self.leaf_height), .append(&mut self.fill_with_proof(left_nodes.split_off(self.leaf_height))?);
)?; }
self.fill_with_proof( let mut right_nodes = proof.right_proof.proof_nodes_in_tree();
proof if right_nodes.len() >= self.leaf_height {
.right_proof updated_nodes
.proof_nodes_in_tree() .append(&mut self.fill_with_proof(right_nodes.split_off(self.leaf_height))?);
.split_off(self.leaf_height), }
) Ok(updated_nodes)
} }
pub fn fill_with_file_proof( pub fn fill_with_file_proof(

View File

@ -9,5 +9,5 @@ exit-future = "0.2.0"
futures = "0.3.21" futures = "0.3.21"
lazy_static = "1.4.0" lazy_static = "1.4.0"
lighthouse_metrics = { path = "../lighthouse_metrics" } lighthouse_metrics = { path = "../lighthouse_metrics" }
tokio = { version = "1.19.2", features = ["rt"] } tokio = { version = "1.38.0", features = ["full"] }
tracing = "0.1.35" tracing = "0.1.35"

View File

@ -29,7 +29,7 @@ itertools = "0.13.0"
serde = { version = "1.0.197", features = ["derive"] } serde = { version = "1.0.197", features = ["derive"] }
parking_lot = "0.12.3" parking_lot = "0.12.3"
serde_json = "1.0.127" serde_json = "1.0.127"
tokio = { version = "1.10.0", features = ["sync"] } tokio = { version = "1.38.0", features = ["full"] }
task_executor = { path = "../../common/task_executor" } task_executor = { path = "../../common/task_executor" }
[dev-dependencies] [dev-dependencies]

View File

@ -712,7 +712,7 @@ impl LogManager {
tx_store.rebuild_last_chunk_merkle(pora_chunks_merkle.leaves(), tx_seq)? tx_store.rebuild_last_chunk_merkle(pora_chunks_merkle.leaves(), tx_seq)?
} }
// Initialize // Initialize
None => Merkle::new_with_depth(vec![], log2_pow2(PORA_CHUNK_SIZE) + 1, None), None => Merkle::new_with_depth(vec![], 1, None),
}; };
debug!( debug!(
@ -761,6 +761,10 @@ impl LogManager {
.merkle .merkle
.write() .write()
.try_initialize(&log_manager.flow_store)?; .try_initialize(&log_manager.flow_store)?;
info!(
"Log manager initialized, state={:?}",
log_manager.get_context()?
);
Ok(log_manager) Ok(log_manager)
} }

View File

@ -335,11 +335,7 @@ impl TransactionStore {
} }
let mut merkle = if last_chunk_start_index == 0 { let mut merkle = if last_chunk_start_index == 0 {
// The first entry hash is initialized as zero. // The first entry hash is initialized as zero.
AppendMerkleTree::<H256, Sha3Algorithm>::new_with_depth( AppendMerkleTree::<H256, Sha3Algorithm>::new_with_depth(vec![H256::zero()], 1, None)
vec![H256::zero()],
log2_pow2(PORA_CHUNK_SIZE) + 1,
None,
)
} else { } else {
AppendMerkleTree::<H256, Sha3Algorithm>::new_with_depth( AppendMerkleTree::<H256, Sha3Algorithm>::new_with_depth(
vec![], vec![],

View File

@ -1 +1 @@
5f2694d043c7b3dfaebe7240262b370fd4f2ce4c 66ff70bc88547c7467efd35ba500ae5f25cf8960

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long