aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_core
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2015-12-30 09:39:27 +0200
committerRiccardo Spagni <ric@spagni.net>2015-12-30 09:39:27 +0200
commitddc6d45f96c393688182583101993857318062a1 (patch)
tree07d8124a70b7a913bdee03543a539c5ea8f1393f /src/cryptonote_core
parentMerge pull request #572 (diff)
parentblockchain_db: inform user about new format if blockchain.bin is found (diff)
downloadmonero-ddc6d45f96c393688182583101993857318062a1.tar.xz
Merge pull request #573
0953355 blockchain_db: inform user about new format if blockchain.bin is found (moneromooo-monero)
Diffstat (limited to 'src/cryptonote_core')
-rw-r--r--src/cryptonote_core/cryptonote_core.cpp22
1 files changed, 22 insertions, 0 deletions
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;