summaryrefslogtreecommitdiff
path: root/src/mongo/s/commands/cluster_drop_database_cmd.cpp
diff options
context:
space:
mode:
authorMark Benvenuto <mark.benvenuto@mongodb.com>2015-06-20 00:22:50 -0400
committerMark Benvenuto <mark.benvenuto@mongodb.com>2015-06-20 10:56:02 -0400
commit9c2ed42daa8fbbef4a919c21ec564e2db55e8d60 (patch)
tree3814f79c10d7b490948d8cb7b112ac1dd41ceff1 /src/mongo/s/commands/cluster_drop_database_cmd.cpp
parent01965cf52bce6976637ecb8f4a622aeb05ab256a (diff)
downloadmongo-9c2ed42daa8fbbef4a919c21ec564e2db55e8d60.tar.gz
SERVER-18579: Clang-Format - reformat code, no comment reflow
Diffstat (limited to 'src/mongo/s/commands/cluster_drop_database_cmd.cpp')
-rw-r--r--src/mongo/s/commands/cluster_drop_database_cmd.cpp126
1 files changed, 62 insertions, 64 deletions
diff --git a/src/mongo/s/commands/cluster_drop_database_cmd.cpp b/src/mongo/s/commands/cluster_drop_database_cmd.cpp
index 0cf6eec2f20..8ac6a6351d2 100644
--- a/src/mongo/s/commands/cluster_drop_database_cmd.cpp
+++ b/src/mongo/s/commands/cluster_drop_database_cmd.cpp
@@ -40,85 +40,83 @@
namespace mongo {
- using std::shared_ptr;
+using std::shared_ptr;
namespace {
- class DropDatabaseCmd : public Command {
- public:
- DropDatabaseCmd() : Command("dropDatabase") { }
-
- virtual bool slaveOk() const {
- return true;
+class DropDatabaseCmd : public Command {
+public:
+ DropDatabaseCmd() : Command("dropDatabase") {}
+
+ virtual bool slaveOk() const {
+ return true;
+ }
+
+ virtual bool adminOnly() const {
+ return false;
+ }
+
+ virtual bool isWriteCommandForConfigServer() const {
+ return false;
+ }
+
+ virtual void addRequiredPrivileges(const std::string& dbname,
+ const BSONObj& cmdObj,
+ std::vector<Privilege>* out) {
+ ActionSet actions;
+ actions.addAction(ActionType::dropDatabase);
+ out->push_back(Privilege(ResourcePattern::forDatabaseName(dbname), actions));
+ }
+
+ virtual bool run(OperationContext* txn,
+ const std::string& dbname,
+ BSONObj& cmdObj,
+ int options,
+ std::string& errmsg,
+ BSONObjBuilder& result) {
+ // Disallow dropping the config database from mongos
+ if (dbname == "config") {
+ return appendCommandStatus(
+ result, Status(ErrorCodes::IllegalOperation, "Cannot drop the config database"));
}
- virtual bool adminOnly() const {
- return false;
- }
+ BSONElement e = cmdObj.firstElement();
- virtual bool isWriteCommandForConfigServer() const {
- return false;
+ if (!e.isNumber() || e.number() != 1) {
+ errmsg = "invalid params";
+ return 0;
}
- virtual void addRequiredPrivileges(const std::string& dbname,
- const BSONObj& cmdObj,
- std::vector<Privilege>* out) {
-
- ActionSet actions;
- actions.addAction(ActionType::dropDatabase);
- out->push_back(Privilege(ResourcePattern::forDatabaseName(dbname), actions));
- }
-
- virtual bool run(OperationContext* txn,
- const std::string& dbname,
- BSONObj& cmdObj,
- int options,
- std::string& errmsg,
- BSONObjBuilder& result) {
-
- // Disallow dropping the config database from mongos
- if (dbname == "config") {
- return appendCommandStatus(result, Status(ErrorCodes::IllegalOperation,
- "Cannot drop the config database"));
- }
-
- BSONElement e = cmdObj.firstElement();
+ // Refresh the database metadata
+ grid.catalogCache()->invalidate(dbname);
- if (!e.isNumber() || e.number() != 1) {
- errmsg = "invalid params";
- return 0;
+ auto status = grid.catalogCache()->getDatabase(dbname);
+ if (!status.isOK()) {
+ if (status == ErrorCodes::DatabaseNotFound) {
+ result.append("info", "database does not exist");
+ return true;
}
- // Refresh the database metadata
- grid.catalogCache()->invalidate(dbname);
-
- auto status = grid.catalogCache()->getDatabase(dbname);
- if (!status.isOK()) {
- if (status == ErrorCodes::DatabaseNotFound) {
- result.append("info", "database does not exist");
- return true;
- }
-
- return appendCommandStatus(result, status.getStatus());
- }
-
- log() << "DROP DATABASE: " << dbname;
+ return appendCommandStatus(result, status.getStatus());
+ }
- shared_ptr<DBConfig> conf = status.getValue();
+ log() << "DROP DATABASE: " << dbname;
- // TODO: Make dropping logic saner and more tolerant of partial drops. This is
- // particularly important since a database drop can be aborted by *any* collection
- // with a distributed namespace lock taken (migrates/splits)
+ shared_ptr<DBConfig> conf = status.getValue();
- if (!conf->dropDatabase(errmsg)) {
- return false;
- }
+ // TODO: Make dropping logic saner and more tolerant of partial drops. This is
+ // particularly important since a database drop can be aborted by *any* collection
+ // with a distributed namespace lock taken (migrates/splits)
- result.append("dropped", dbname);
- return true;
+ if (!conf->dropDatabase(errmsg)) {
+ return false;
}
- } clusterDropDatabaseCmd;
+ result.append("dropped", dbname);
+ return true;
+ }
+
+} clusterDropDatabaseCmd;
-} // namespace
-} // namespace mongo
+} // namespace
+} // namespace mongo