[next-0.10] cache layout check result

This commit is contained in:
Alex Auvolat
2024-03-27 13:37:20 +01:00
parent 01a0bd5410
commit 32f1786f9f
3 changed files with 11 additions and 3 deletions
+2 -2
View File
@@ -160,12 +160,12 @@ impl LayoutManager {
fn merge_layout(&self, adv: &LayoutHistory) -> Option<LayoutHistory> {
let mut layout = self.layout.write().unwrap();
let prev_digest = layout.digest();
let prev_layout_check = layout.inner().check().is_ok();
let prev_layout_check = layout.is_check_ok();
if !prev_layout_check || adv.check().is_ok() {
if layout.update(|l| l.merge(adv)) {
layout.update_trackers(self.node_id);
if prev_layout_check && layout.inner().check().is_err() {
if prev_layout_check && !layout.is_check_ok() {
panic!("Merged two correct layouts and got an incorrect layout.");
}
assert!(layout.digest() != prev_digest);