|
|
|
@ -129,7 +129,7 @@ static const uint64_t testnet_hard_fork_version_1_till = 624633;
|
|
|
|
|
//------------------------------------------------------------------
|
|
|
|
|
Blockchain::Blockchain(tx_memory_pool& tx_pool) :
|
|
|
|
|
m_db(), m_tx_pool(tx_pool), m_hardfork(NULL), m_timestamps_and_difficulties_height(0), m_current_block_cumul_sz_limit(0),
|
|
|
|
|
m_enforce_dns_checkpoints(false), m_max_prepare_blocks_threads(4), m_db_blocks_per_sync(1), m_db_sync_mode(db_async), m_fast_sync(true), m_show_time_stats(false), m_sync_counter(0), m_cancel(false)
|
|
|
|
|
m_enforce_dns_checkpoints(false), m_max_prepare_blocks_threads(4), m_db_blocks_per_sync(1), m_db_sync_mode(db_async), m_db_default_sync(false), m_fast_sync(true), m_show_time_stats(false), m_sync_counter(0), m_cancel(false)
|
|
|
|
|
{
|
|
|
|
|
LOG_PRINT_L3("Blockchain::" << __func__);
|
|
|
|
|
}
|
|
|
|
@ -4037,12 +4037,29 @@ bool Blockchain::for_all_txpool_txes(std::function<bool(const crypto::hash&, con
|
|
|
|
|
|
|
|
|
|
void Blockchain::set_user_options(uint64_t maxthreads, uint64_t blocks_per_sync, blockchain_db_sync_mode sync_mode, bool fast_sync)
|
|
|
|
|
{
|
|
|
|
|
if (sync_mode == db_defaultsync)
|
|
|
|
|
{
|
|
|
|
|
m_db_default_sync = true;
|
|
|
|
|
sync_mode = db_async;
|
|
|
|
|
}
|
|
|
|
|
m_db_sync_mode = sync_mode;
|
|
|
|
|
m_fast_sync = fast_sync;
|
|
|
|
|
m_db_blocks_per_sync = blocks_per_sync;
|
|
|
|
|
m_max_prepare_blocks_threads = maxthreads;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Blockchain::safesyncmode(const bool onoff)
|
|
|
|
|
{
|
|
|
|
|
/* all of this is no-op'd if the user set a specific
|
|
|
|
|
* --db-sync-mode at startup.
|
|
|
|
|
*/
|
|
|
|
|
if (m_db_default_sync)
|
|
|
|
|
{
|
|
|
|
|
m_db->safesyncmode(onoff);
|
|
|
|
|
m_db_sync_mode = onoff ? db_nosync : db_async;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
HardFork::State Blockchain::get_hard_fork_state() const
|
|
|
|
|
{
|
|
|
|
|
return m_hardfork->get_state();
|
|
|
|
|