29 #include "mongo/base/status.h" 30 #include "mongo/bson/bsonelement.h" 31 #include "mongo/bson/bsonobj.h" 33 #include "mongo/util/uuid.h" 36 class NamespaceString;
37 class OperationContext;
49 bool dropTarget =
false;
51 bool stayTemp =
false;
54 const NamespaceString& source,
55 const NamespaceString& target,
66 const std::string& dbName,
67 const BSONElement& ui,
69 const repl::OpTime& renameOpTime);
78 const NamespaceString& target,
Status renameCollection(OperationContext *opCtx, const NamespaceString &source, const NamespaceString &target, const RenameCollectionOptions &options)
Definition: rename_collection.cpp:473
Status renameCollectionForApplyOps(OperationContext *opCtx, const std::string &dbName, const BSONElement &ui, const BSONObj &cmd, const repl::OpTime &renameOpTime)
As above, but may only be called from applyCommand_inlock.
Definition: rename_collection.cpp:493
Copyright (C) 2014 MongoDB Inc.
Definition: bson_collection_catalog_entry.cpp:38
OperationContext Database StringData BSONObj CollectionOptions::ParseKind bool const BSONObj &idIndex Status
Definition: database_impl.cpp:956
Status renameCollectionForRollback(OperationContext *opCtx, const NamespaceString &target, const UUID &uuid)
Same as renameCollection(), but used for rolling back renameCollection operations only...
Definition: rename_collection.cpp:569
Renames the collection from "source" to "target" and drops the existing collection with UUID dropTarg...
Definition: rename_collection.h:48
boost::optional< CollectionUUID > OptionalCollectionUUID
Definition: collection_options.h:55
Collection *const OperationContext *const const StringData OptionalCollectionUUID uuid
Definition: collection_impl.cpp:80
OperationContext Database StringData BSONObj options
Definition: database_impl.cpp:949
Collection *const OperationContext *const opCtx
Definition: collection_impl.cpp:80
OptionalCollectionUUID dropTargetUUID
Definition: rename_collection.h:50