From 09533557b59a19fc450f7a38997928cd6895b305 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Mon, 28 Dec 2015 21:11:55 +0000 Subject: [PATCH] blockchain_db: inform user about new format if blockchain.bin is found --- src/cryptonote_core/cryptonote_core.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/cryptonote_core/cryptonote_core.cpp b/src/cryptonote_core/cryptonote_core.cpp index 8a3b81205..2f6980aec 100644 --- a/src/cryptonote_core/cryptonote_core.cpp +++ b/src/cryptonote_core/cryptonote_core.cpp @@ -266,6 +266,28 @@ namespace cryptonote LOG_PRINT_L0("Loading blockchain from folder " << folder.string() << " ..."); + // check for blockchain.bin + bool old_blockchain_found = false; + try + { + const boost::filesystem::path old_files = folder.parent_path(); + if (boost::filesystem::exists(folder.parent_path() / "blockchain.bin")) + { + LOG_PRINT_L0("Found old-style blockchain.bin in " << old_files.string()); + LOG_PRINT_L0("Monero now uses a new format. You can either remove blockchain.bin to start syncing"); + LOG_PRINT_L0("the blockchain anew, or use blockchain_export and blockchain_import to convert your"); + LOG_PRINT_L0("existing blockchain.bin to the new format. See README.md for instructions."); + old_blockchain_found = true; + } + } + // folder might not be a directory, etc, etc + catch (...) {} + + if (old_blockchain_found) + { + throw DB_ERROR("Database could not be opened"); + } + const std::string filename = folder.string(); // temporarily default to fastest:async:1000 blockchain_db_sync_mode sync_mode = db_async;