summaryrefslogtreecommitdiff
path: root/src/mongo/db/service_context_d.cpp
diff options
context:
space:
mode:
authorAndy Schwerin <schwerin@mongodb.com>2015-06-01 17:27:57 -0400
committerAndy Schwerin <schwerin@mongodb.com>2015-06-02 12:02:30 -0400
commit908d0cedf82b50c93932916685c4f8fa4748cc6f (patch)
tree446f8c88bf9231e31187d593b17f41b8af3e55cc /src/mongo/db/service_context_d.cpp
parent5f225a7464862686a8422bb02d1f638d5568d529 (diff)
downloadmongo-908d0cedf82b50c93932916685c4f8fa4748cc6f.tar.gz
Reapply "SERVER-14995 Move operation id, lockState and client fields to OperationContext."
This reverts commit e181ea38af737ef7aaf5f8228f870d8c7149b2bb.
Diffstat (limited to 'src/mongo/db/service_context_d.cpp')
-rw-r--r--src/mongo/db/service_context_d.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/mongo/db/service_context_d.cpp b/src/mongo/db/service_context_d.cpp
index eb00449c625..a9b22a986fb 100644
--- a/src/mongo/db/service_context_d.cpp
+++ b/src/mongo/db/service_context_d.cpp
@@ -227,14 +227,11 @@ namespace mongo {
if (!opCtx) {
return false;
}
- for( CurOp *k = CurOp::get(opCtx); k; k = k->parent() ) {
- if ( k->opNum() != opId )
- continue;
-
- _killOperation_inlock(opCtx);
- return true;
+ if (opCtx->getOpID() != opId) {
+ return false;
}
- return false;
+ _killOperation_inlock(opCtx);
+ return true;
}
void ServiceContextMongoD::_killOperation_inlock(OperationContext* opCtx) {
@@ -295,8 +292,8 @@ namespace mongo {
_killOpListeners.push_back(listener);
}
- OperationContext* ServiceContextMongoD::newOpCtx() {
- return new OperationContextImpl();
+ std::unique_ptr<OperationContext> ServiceContextMongoD::newOpCtx() {
+ return stdx::make_unique<OperationContextImpl>();
}
void ServiceContextMongoD::setOpObserver(std::unique_ptr<OpObserver> opObserver) {