cryptonote_core: warn when the block rate deviates from expectations

The warning threshold is set to allow a false positive every
ten days on average.
This commit is contained in:
moneromooo-monero 2018-09-20 13:31:45 +00:00
parent 842a5d8bbe
commit 1168e8d5d5
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3
4 changed files with 64 additions and 7 deletions

View file

@ -900,6 +900,15 @@ difficulty_type Blockchain::get_difficulty_for_next_block()
return diff;
}
//------------------------------------------------------------------
std::vector<time_t> Blockchain::get_last_block_timestamps(unsigned int blocks) const
{
std::vector<time_t> timestamps(blocks);
uint64_t height = m_db->height();
while (blocks--)
timestamps[blocks] = m_db->get_block_timestamp(height - blocks - 1);
return timestamps;
}
//------------------------------------------------------------------
// This function removes blocks from the blockchain until it gets to the
// position where the blockchain switch started and then re-adds the blocks
// that had been removed.