Combine BerkeleyEnvironment::Verify into BerkeleyDatabase::Verify

pull/764/head
Andrew Chow 4 years ago
parent 9d4b3d86b6
commit 65fb8807ac

@ -232,16 +232,6 @@ BerkeleyEnvironment::BerkeleyEnvironment()
fMockDb = true; fMockDb = true;
} }
bool BerkeleyEnvironment::Verify(const std::string& strFile)
{
LOCK(cs_db);
assert(mapFileUseCount.count(strFile) == 0);
Db db(dbenv.get(), 0);
int result = db.verify(strFile.c_str(), nullptr, nullptr, 0);
return result == 0;
}
BerkeleyBatch::SafeDbt::SafeDbt() BerkeleyBatch::SafeDbt::SafeDbt()
{ {
m_dbt.set_flags(DB_DBT_MALLOC); m_dbt.set_flags(DB_DBT_MALLOC);
@ -295,7 +285,12 @@ bool BerkeleyDatabase::Verify(bilingual_str& errorStr)
if (fs::exists(file_path)) if (fs::exists(file_path))
{ {
if (!env->Verify(strFile)) { LOCK(cs_db);
assert(env->mapFileUseCount.count(strFile) == 0);
Db db(env->dbenv.get(), 0);
int result = db.verify(strFile.c_str(), nullptr, nullptr, 0);
if (result != 0) {
errorStr = strprintf(_("%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup."), file_path); errorStr = strprintf(_("%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup."), file_path);
return false; return false;
} }

@ -67,8 +67,6 @@ public:
bool IsDatabaseLoaded(const std::string& db_filename) const { return m_databases.find(db_filename) != m_databases.end(); } bool IsDatabaseLoaded(const std::string& db_filename) const { return m_databases.find(db_filename) != m_databases.end(); }
fs::path Directory() const { return strPath; } fs::path Directory() const { return strPath; }
bool Verify(const std::string& strFile);
bool Open(bilingual_str& error); bool Open(bilingual_str& error);
void Close(); void Close();
void Flush(bool fShutdown); void Flush(bool fShutdown);

Loading…
Cancel
Save