Use steady clock in FlushStateToDisk

This commit is contained in:
MarcoFalke 2023-03-02 15:05:54 +01:00
parent 1111e2f8b4
commit fa1b4e5c32
No known key found for this signature in database
GPG key ID: CE2B75697E69A548
2 changed files with 6 additions and 6 deletions

View file

@ -2478,12 +2478,12 @@ bool Chainstate::FlushStateToDisk(
}
}
}
const auto nNow = GetTime<std::chrono::microseconds>();
const auto nNow{SteadyClock::now()};
// Avoid writing/flushing immediately after startup.
if (m_last_write.count() == 0) {
if (m_last_write == decltype(m_last_write){}) {
m_last_write = nNow;
}
if (m_last_flush.count() == 0) {
if (m_last_flush == decltype(m_last_flush){}) {
m_last_flush = nNow;
}
// The cache is large and we're within 10% and 10 MiB of the limit, but we have time now (not in the middle of a block processing).
@ -2544,7 +2544,7 @@ bool Chainstate::FlushStateToDisk(
m_last_flush = nNow;
full_flush_completed = true;
TRACE5(utxocache, flush,
(int64_t)(GetTimeMicros() - nNow.count()), // in microseconds (µs)
int64_t{Ticks<std::chrono::microseconds>(SteadyClock::now() - nNow)},
(uint32_t)mode,
(uint64_t)coins_count,
(uint64_t)coins_mem_usage,

View file

@ -785,8 +785,8 @@ private:
void UpdateTip(const CBlockIndex* pindexNew)
EXCLUSIVE_LOCKS_REQUIRED(::cs_main);
std::chrono::microseconds m_last_write{0};
std::chrono::microseconds m_last_flush{0};
SteadyClock::time_point m_last_write{};
SteadyClock::time_point m_last_flush{};
friend ChainstateManager;
};