File tree Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -111,7 +111,18 @@ impl redux::EnablingCondition<crate::State> for BlockProducerAction {
111
111
|| proven_block. is_some_and ( |b| Arc :: ptr_eq ( & b. block , & tip. block ) )
112
112
} )
113
113
} ;
114
- this. current . won_slot_should_produce ( time) && has_genesis_proven_if_needed ( )
114
+ this. current . won_slot_should_produce ( time)
115
+ && has_genesis_proven_if_needed ( )
116
+ // don't start block production (particularly staged ledger diff creation),
117
+ // if transition frontier sync commit is pending,
118
+ // as in case when fork is being committed, there
119
+ // is no guarantee that staged ledger for the current
120
+ // best tip (chosen as a parent for the new block being produced),
121
+ // will be still there, once the staged ledger
122
+ // diff creation request reaches the ledger service.
123
+ // So we would be trying to build on top of
124
+ // non-existent staged ledger causing a failure.
125
+ && !state. transition_frontier . sync . is_commit_pending ( )
115
126
} )
116
127
}
117
128
BlockProducerAction :: WonSlotTransactionsGet => {
You can’t perform that action at this time.
0 commit comments