From ee9d71e9f94ba8571c44c889a70bda77c8961959 Mon Sep 17 00:00:00 2001 From: warptangent Date: Sat, 26 Dec 2015 14:27:35 -0800 Subject: BlockchainDB: skip fixup check if read-only database --- src/blockchain_db/lmdb/db_lmdb.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/blockchain_db/lmdb/db_lmdb.cpp') diff --git a/src/blockchain_db/lmdb/db_lmdb.cpp b/src/blockchain_db/lmdb/db_lmdb.cpp index 325ed8b8c..d625e5a07 100644 --- a/src/blockchain_db/lmdb/db_lmdb.cpp +++ b/src/blockchain_db/lmdb/db_lmdb.cpp @@ -2496,8 +2496,22 @@ uint8_t BlockchainLMDB::get_hard_fork_version(uint64_t height) const return ret; } +bool BlockchainLMDB::is_read_only() const +{ + unsigned int flags; + auto result = mdb_env_get_flags(m_env, &flags); + if (result) + throw0(DB_ERROR(std::string("Error getting database environment info: ").append(mdb_strerror(result)).c_str())); + + if (flags & MDB_RDONLY) + return true; + + return false; +} + void BlockchainLMDB::fixup() { + LOG_PRINT_L3("BlockchainLMDB::" << __func__); // Always call parent as well BlockchainDB::fixup(); } -- cgit v1.2.3