refactor: don't set deadline in mempool settings; use a timeout and calculate the deadline dynamically

This commit is contained in:
Jude Nelson
2021-08-26 22:52:41 -04:00
parent c792bec867
commit 2d00a82ba2

View File

@@ -451,6 +451,7 @@ impl<'a> StacksMicroblockBuilder<'a> {
miner_key: &Secp256k1PrivateKey,
) -> Result<StacksMicroblock, Error> {
let mut txs_included = vec![];
let mempool_settings = self.settings.mempool_settings.clone();
let mut clarity_tx = self
.clarity_tx
@@ -467,12 +468,6 @@ impl<'a> StacksMicroblockBuilder<'a> {
let mut num_txs = self.runtime.num_mined;
let deadline = get_epoch_time_ms() + (self.settings.max_miner_time_ms as u128);
let mempool_settings = self
.settings
.mempool_settings
.clone()
.with_deadline(deadline as u64);
let result = mem_pool.iterate_candidates(
&mut clarity_tx,
self.anchor_block_height,
@@ -1416,6 +1411,7 @@ impl StacksBlockBuilder {
event_observer: Option<&dyn MemPoolEventDispatcher>,
) -> Result<(StacksBlock, ExecutionCost, u64), Error> {
let execution_budget = settings.execution_cost;
let mempool_settings = settings.mempool_settings;
let max_miner_time_ms = settings.max_miner_time_ms;
if let TransactionPayload::Coinbase(..) = coinbase_tx.payload {
@@ -1460,11 +1456,6 @@ impl StacksBlockBuilder {
let mut block_limit_hit = BlockLimitFunction::NO_LIMIT_HIT;
let deadline = ts_start + (max_miner_time_ms as u128);
let mempool_settings = settings
.mempool_settings
.clone()
.with_deadline(deadline as u64);
let result = mempool.iterate_candidates(
&mut epoch_tx,
tip_height,