Skip to content

Commit

Permalink
Merge pull request #1168
Browse files Browse the repository at this point in the history
10be903 Brackets to prevent premature return (NanoAkron)
fb1785a Brackets to ensure doesn't function prematurely return (NanoAkron)
8ed0d72 Moved logging to target functions rather than caller (NanoAkron)
442bfd1 Added messages at log level 2 to reflect deactivation procedure (NanoAkron)
  • Loading branch information
fluffypony committed Oct 4, 2016
2 parents 1be1e4a + 10be903 commit fa1d5ef
Show file tree
Hide file tree
Showing 6 changed files with 35 additions and 17 deletions.
14 changes: 8 additions & 6 deletions src/cryptonote_core/blockchain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ bool Blockchain::init(BlockchainDB* db, HardFork*& hf, const bool testnet)
//------------------------------------------------------------------
bool Blockchain::store_blockchain()
{
LOG_PRINT_YELLOW("Blockchain::" << __func__, LOG_LEVEL_3);
LOG_PRINT_L3("Blockchain::" << __func__);
// lock because the rpc_thread command handler also calls this
CRITICAL_REGION_LOCAL(m_db->m_synchronization_lock);

Expand Down Expand Up @@ -419,9 +419,10 @@ bool Blockchain::deinit()
{
LOG_PRINT_L3("Blockchain::" << __func__);

LOG_PRINT_L0("Closing IO Service.");
// stop async service
m_async_work_idle.reset();
LOG_PRINT_L1("Stopping blockchain read/write activity");

// stop async service
m_async_work_idle.reset();
m_async_pool.join_all();
m_async_service.stop();

Expand All @@ -436,14 +437,15 @@ bool Blockchain::deinit()
try
{
m_db->close();
LOG_PRINT_L1("Local blockchain read/write activity stopped successfully");
}
catch (const std::exception& e)
{
LOG_PRINT_L0(std::string("Error closing blockchain db: ") + e.what());
LOG_ERROR(std::string("Error closing blockchain db: ") + e.what());
}
catch (...)
{
LOG_PRINT_L0("There was an issue closing/storing the blockchain, shutting down now to prevent issues!");
LOG_ERROR("There was an issue closing/storing the blockchain, shutting down now to prevent issues!");
}

delete m_hardfork;
Expand Down
7 changes: 4 additions & 3 deletions src/cryptonote_core/cryptonote_core.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -228,14 +228,14 @@ namespace cryptonote
LOG_PRINT_L1("Locking " << lock_path.string());
if (!db_lock.try_lock())
{
LOG_PRINT_L0("Failed to lock " << lock_path.string());
LOG_ERROR("Failed to lock " << lock_path.string());
return false;
}
return true;
}
catch (const std::exception &e)
{
LOG_PRINT_L0("Error trying to lock " << lock_path.string() << ": " << e.what());
LOG_ERROR("Error trying to lock " << lock_path.string() << ": " << e.what());
return false;
}
}
Expand All @@ -244,6 +244,7 @@ namespace cryptonote
{
db_lock.unlock();
db_lock = boost::interprocess::file_lock();
LOG_PRINT_L1("Blockchain directory successfully unlocked");
return true;
}
//-----------------------------------------------------------------------------------------------
Expand Down Expand Up @@ -387,7 +388,7 @@ namespace cryptonote
}
catch (const DB_ERROR& e)
{
LOG_PRINT_L0("Error opening database: " << e.what());
LOG_ERROR("Error opening database: " << e.what());
return false;
}

Expand Down
5 changes: 5 additions & 0 deletions src/cryptonote_core/miner.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -278,8 +278,13 @@ namespace cryptonote
//-----------------------------------------------------------------------------------------------------
bool miner::stop()
{
LOG_PRINT_L1("Miner has received stop signal");

if (!is_mining())
{
LOG_PRINT_L1("Not mining - nothing to stop" );
return true;
}

send_stop_signal();
CRITICAL_REGION_LOCAL(m_threads_lock);
Expand Down
19 changes: 15 additions & 4 deletions src/cryptonote_core/tx_pool.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -689,7 +689,7 @@ namespace cryptonote
bool res = tools::unserialize_obj_from_file(*this, state_file_path);
if(!res)
{
LOG_PRINT_L1("Failed to load memory pool from file " << state_file_path);
LOG_ERROR("Failed to load memory pool from file " << state_file_path);

m_transactions.clear();
m_txs_by_fee.clear();
Expand All @@ -710,21 +710,32 @@ namespace cryptonote
//TODO: investigate whether only ever returning true is correct
bool tx_memory_pool::deinit()
{
LOG_PRINT_L1("Received signal to deactivate memory pool store");

if (m_config_folder.empty())
{
LOG_PRINT_L1("Memory pool store already empty");
return true;
}

if (!tools::create_directories_if_necessary(m_config_folder))
{
LOG_PRINT_L1("Failed to create data directory: " << m_config_folder);
LOG_ERROR("Failed to create memory pool data directory: " << m_config_folder);
return false;
}

std::string state_file_path = m_config_folder + "/" + CRYPTONOTE_POOLDATA_FILENAME;
bool res = tools::serialize_obj_to_file(*this, state_file_path);
if(!res)
{
LOG_PRINT_L1("Failed to serialize memory pool to file " << state_file_path);
LOG_ERROR("Failed to serialize memory pool to file " << state_file_path);
return false;
}
return true;
else
{
LOG_PRINT_L1("Memory pool store deactivated successfully");
return true;
}

}
}
2 changes: 0 additions & 2 deletions src/cryptonote_protocol/cryptonote_protocol_handler.inl
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,6 @@ namespace cryptonote
template<class t_core>
bool t_cryptonote_protocol_handler<t_core>::deinit()
{


return true;
}
//------------------------------------------------------------------------------------------------------------------------
Expand Down
5 changes: 3 additions & 2 deletions src/daemon/protocol.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,13 @@ class t_protocol final

~t_protocol()
{
LOG_PRINT_L0("Deinitializing cryptonote_protocol...");
LOG_PRINT_L0("Stopping cryptonote protocol...");
try {
m_protocol.deinit();
m_protocol.set_p2p_endpoint(nullptr);
LOG_PRINT_L0("Cryptonote protocol stopped successfully");
} catch (...) {
LOG_PRINT_L0("Failed to deinitialize protocol...");
LOG_ERROR("Failed to stop cryptonote protocol!");
}
}
};
Expand Down

0 comments on commit fa1d5ef

Please sign in to comment.