Remove unnecessary block by hash loookup
This commit is contained in:
parent
a29b618296
commit
b3c2f6de01
1 changed files with 6 additions and 6 deletions
|
@ -65,17 +65,17 @@ bool nano::scheduler::priority::activate (secure::transaction const & transactio
|
|||
return false; // Not activated
|
||||
}
|
||||
|
||||
bool nano::scheduler::priority::activate (secure::transaction const & transaction, nano::account const & account, nano::account_info const & info, nano::confirmation_height_info const & conf_info)
|
||||
bool nano::scheduler::priority::activate (secure::transaction const & transaction, nano::account const & account, nano::account_info const & account_info, nano::confirmation_height_info const & conf_info)
|
||||
{
|
||||
debug_assert (conf_info.frontier != info.head);
|
||||
debug_assert (conf_info.frontier != account_info.head);
|
||||
|
||||
auto hash = conf_info.height == 0 ? info.open_block : node.ledger.any.block_successor (transaction, conf_info.frontier).value_or (0);
|
||||
auto hash = conf_info.height == 0 ? account_info.open_block : node.ledger.any.block_successor (transaction, conf_info.frontier).value ();
|
||||
auto block = node.ledger.any.block_get (transaction, hash);
|
||||
release_assert (block != nullptr);
|
||||
|
||||
if (node.ledger.dependents_confirmed (transaction, *block))
|
||||
{
|
||||
auto const balance = node.ledger.any.block_balance (transaction, hash).value ();
|
||||
auto const balance = block->balance ();
|
||||
auto const previous_balance = node.ledger.any.block_balance (transaction, conf_info.frontier).value_or (0);
|
||||
auto const balance_priority = std::max (balance, previous_balance);
|
||||
|
||||
|
@ -83,12 +83,12 @@ bool nano::scheduler::priority::activate (secure::transaction const & transactio
|
|||
node.logger.trace (nano::log::type::election_scheduler, nano::log::detail::block_activated,
|
||||
nano::log::arg{ "account", account.to_account () }, // TODO: Convert to lazy eval
|
||||
nano::log::arg{ "block", block },
|
||||
nano::log::arg{ "time", info.modified },
|
||||
nano::log::arg{ "time", account_info.modified },
|
||||
nano::log::arg{ "priority", balance_priority });
|
||||
|
||||
{
|
||||
nano::lock_guard<nano::mutex> lock{ mutex };
|
||||
buckets->push (info.modified, block, balance_priority);
|
||||
buckets->push (account_info.modified, block, balance_priority);
|
||||
}
|
||||
notify ();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue