Fix broken test; some ldb commands can run without a db_
Summary: It would appear our unit tests make use of code from ldb_cmd, and don't always require a valid database handle. D6855 was not aware db_ could sometimes be NULL for such commands, and so it broke reduce_levels_test. This moves the check elsewhere to (at least) fix the 'ldb dump' case of segfaulting when it couldn't open a database. Test Plan: make check Reviewers: dhruba Reviewed By: dhruba CC: leveldb Differential Revision: https://reviews.facebook.net/D6903
This commit is contained in:
parent
879e45eb99
commit
6caf3b8e4b
@ -126,6 +126,9 @@ void DBDumper::Help(std::string& ret) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void DBDumper::DoCommand() {
|
void DBDumper::DoCommand() {
|
||||||
|
if (!db_) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
// Parse command line args
|
// Parse command line args
|
||||||
uint64_t count = 0;
|
uint64_t count = 0;
|
||||||
if (print_stats_) {
|
if (print_stats_) {
|
||||||
|
@ -134,10 +134,6 @@ public:
|
|||||||
OpenDB();
|
OpenDB();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!db_) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
DoCommand();
|
DoCommand();
|
||||||
if (exec_state_.IsNotStarted()) {
|
if (exec_state_.IsNotStarted()) {
|
||||||
exec_state_ = LDBCommandExecuteResult::SUCCEED("");
|
exec_state_ = LDBCommandExecuteResult::SUCCEED("");
|
||||||
|
Loading…
Reference in New Issue
Block a user