diff --git a/db/db_impl.cc b/db/db_impl.cc index 3e4984d97d28f33626c4509578b22fc4e02f0ea5..57d5916b77d86f65bb9e1b9ba3048095fbcc07ba 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 d69280e8a667fcb1e9b685c45d796ba568d97b94..d0dc2614693a00ea0987b23d6a7e8aec4c060df0 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) {