Skip to content

Commit 3ad43c6

Browse files
add nullify test
1 parent 9570d62 commit 3ad43c6

2 files changed

Lines changed: 12 additions & 1 deletion

File tree

consensus/src/threshold_simplex/actors/voter/actor.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,15 @@ impl<
213213
// Check if already issued finalize
214214
let Some(finalize) = &self.finalizes[public_key_index as usize] else {
215215
// Store the nullify
216-
return self.nullifies.insert(public_key_index, nullify).is_none();
216+
let entry = self.nullifies.entry(public_key_index);
217+
return match entry {
218+
std::collections::hash_map::Entry::Occupied(_) => false,
219+
std::collections::hash_map::Entry::Vacant(_) => {
220+
entry.or_insert(nullify.clone());
221+
self.reporter.report(Activity::Nullify(nullify)).await;
222+
true
223+
}
224+
};
217225
};
218226

219227
// Create fault

consensus/src/threshold_simplex/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,6 +1085,9 @@ mod tests {
10851085
{
10861086
let nullifies = supervisor.nullifies.lock().unwrap();
10871087
for view in offline_views.iter() {
1088+
if *view == 0 {
1089+
continue;
1090+
}
10881091
let nullifies = nullifies.get(view).unwrap();
10891092
if nullifies.len() < threshold as usize {
10901093
panic!("view: {}", view);

0 commit comments

Comments
 (0)