Skip to content

Commit 51d4794

Browse files
authored
Merge of #4877
2 parents 58a926b + 2836176 commit 51d4794

File tree

2 files changed

+13
-28
lines changed

2 files changed

+13
-28
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
- Removed handling of failed atomic batches from `handle_inner_tx_results` that
2+
was never hit. ([\#4450](https://github.com/namada-net/namada/issues/4450))

crates/node/src/shell/finalize_block.rs

Lines changed: 11 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -482,37 +482,20 @@ where
482482
let mut temp_log = TempTxLogs::new_from_tx_logs(tx_logs);
483483

484484
let ValidityFlags {
485-
commit_batch_hash,
486-
is_any_tx_invalid,
485+
commit_batch_hash, ..
487486
} = temp_log.check_inner_results(&mut tx_result, tx_data.height);
488487

489-
if tx_data.is_atomic_batch && is_any_tx_invalid {
490-
// Atomic batches need custom handling when even a single tx fails,
491-
// since we need to drop everything
492-
let unrun_txs = tx_data
493-
.commitments_len
494-
.checked_sub(
495-
u64::try_from(tx_result.len())
496-
.expect("Should be able to convert to u64"),
497-
)
498-
.expect("Shouldn't underflow");
499-
temp_log.stats.set_failing_atomic_batch(unrun_txs);
500-
temp_log.commit_stats_only(tx_logs);
501-
self.state.write_log_mut().drop_batch();
502-
tx_logs.tx_event.extend(Code(ResultCode::WasmRuntimeError));
503-
} else {
504-
self.state.write_log_mut().commit_batch_and_current_tx();
505-
self.state
506-
.in_mem_mut()
507-
.block
508-
.results
509-
.accept(tx_data.tx_index);
510-
temp_log.commit(tx_logs, response);
488+
self.state.write_log_mut().commit_batch_and_current_tx();
489+
self.state
490+
.in_mem_mut()
491+
.block
492+
.results
493+
.accept(tx_data.tx_index);
494+
temp_log.commit(tx_logs, response);
511495

512-
// Atomic successful batches or non-atomic batches (even if the
513-
// inner txs failed) are marked as Ok
514-
tx_logs.tx_event.extend(Code(ResultCode::Ok));
515-
}
496+
// Atomic successful batches or non-atomic batches (even if the
497+
// inner txs failed) are marked as Ok
498+
tx_logs.tx_event.extend(Code(ResultCode::Ok));
516499

517500
if commit_batch_hash {
518501
// If at least one of the inner txs of the batch requires its hash

0 commit comments

Comments
 (0)