diff --git a/db/db_impl.cc b/db/db_impl.cc index 3e4984d97d..57d5916b77 100644 --- a/db/db_impl.cc +++ b/db/db_impl.cc @@ -3308,8 +3308,8 @@ Status DestroyDB(const std::string& dbname, const Options& options) { env->GetChildren(archivedir, &archiveFiles); // Delete archival files. for (size_t i = 0; i < archiveFiles.size(); ++i) { - ParseFileName(archiveFiles[i], &number, &type); - if (type == kLogFile) { + if (ParseFileName(archiveFiles[i], &number, &type) && + type == kLogFile) { Status del = env->DeleteFile(archivedir + "/" + archiveFiles[i]); if (result.ok() && !del.ok()) { result = del; diff --git a/db/db_test.cc b/db/db_test.cc index d69280e8a6..d0dc261469 100644 --- a/db/db_test.cc +++ b/db/db_test.cc @@ -257,7 +257,7 @@ class DBTest { ~DBTest() { delete db_; - DestroyDB(dbname_, Options()); + ASSERT_OK(DestroyDB(dbname_, Options())); delete env_; delete filter_policy_; } @@ -378,7 +378,7 @@ class DBTest { void Destroy(Options* options) { delete db_; db_ = nullptr; - DestroyDB(dbname_, *options); + ASSERT_OK(DestroyDB(dbname_, *options)); } Status PureReopen(Options* options, DB** db) {