@@ -837,12 +837,15 @@ static void StartupNotify(const ArgsManager& args)
837
837
}
838
838
#endif
839
839
840
- static void PeriodicStats (ArgsManager& args, ChainstateManager& chainman, const CTxMemPool& mempool )
840
+ static void PeriodicStats (NodeContext& node )
841
841
{
842
842
assert (::g_stats_client->active ());
843
+ const ArgsManager& args = *Assert (node.args );
844
+ ChainstateManager& chainman = *Assert (node.chainman );
845
+ const CTxMemPool& mempool = *Assert (node.mempool );
843
846
CCoinsStats stats{CoinStatsHashType::NONE};
844
847
chainman.ActiveChainstate ().ForceFlushStateToDisk ();
845
- if (WITH_LOCK (cs_main, return GetUTXOStats (&chainman.ActiveChainstate ().CoinsDB (), std::ref ( chainman.m_blockman ) , stats, RpcInterruptionPoint , chainman.ActiveChain ().Tip ()))) {
848
+ if (WITH_LOCK (cs_main, return GetUTXOStats (&chainman.ActiveChainstate ().CoinsDB (), chainman.m_blockman , stats, node. rpc_interruption_point , chainman.ActiveChain ().Tip ()))) {
846
849
::g_stats_client->gauge (" utxoset.tx" , stats.nTransactions , 1 .0f );
847
850
::g_stats_client->gauge (" utxoset.txOutputs" , stats.nTransactionOutputs , 1 .0f );
848
851
::g_stats_client->gauge (" utxoset.dbSizeBytes" , stats.nDiskSize , 1 .0f );
@@ -2275,7 +2278,7 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
2275
2278
2276
2279
if (::g_stats_client->active ()) {
2277
2280
int nStatsPeriod = std::min (std::max ((int )args.GetArg (" -statsperiod" , DEFAULT_STATSD_PERIOD), MIN_STATSD_PERIOD), MAX_STATSD_PERIOD);
2278
- node.scheduler ->scheduleEvery (std::bind (&PeriodicStats, std::ref (* node. args ), std::ref (chainman), std::cref (*node. mempool )), std::chrono::seconds{nStatsPeriod});
2281
+ node.scheduler ->scheduleEvery (std::bind (&PeriodicStats, std::ref (node)), std::chrono::seconds{nStatsPeriod});
2279
2282
}
2280
2283
2281
2284
// ********************************************************* Step 11: import blocks
0 commit comments