summaryrefslogtreecommitdiff
path: root/src/mongo/db/service_context.cpp
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-45524 remove support for logging void * typesGabriel Russell2020-01-161-1/+1
|
* SERVER-44167 Added ability to kill operations by keyBen Caimano2019-12-311-0/+24
| | | | | | There are two patches here really. One of which makes killOp fast to use and visible. The other adds OperationKey to various places and maps it to an internal OpId.
* SERVER-45029 Add getCurrentServiceContext()Ben Caimano2019-12-131-0/+9
|
* SERVER-42165 Replace uses of stdx::mutex with mongo::MutexBen Caimano2019-09-171-7/+8
|
* SERVER-39340 Remove `stdx/list.h`ADAM David Alan Martin2019-06-101-2/+2
|
* SERVER-39339 Remove `stdx/memory.h`ADAM David Alan Martin2019-06-101-4/+5
|
* SERVER-40811 reduce GlobalInitializerRegisterer constructorsBilly Donahue2019-05-161-2/+2
|
* SERVER-40476 remove mongoutils::strBilly Donahue2019-04-091-1/+1
| | | | | | Rename utils/mongoutils/str.h => utils/str.h Rename namespace mongoutils::str => str Rename mongo::strcasecmp => str::caseInsensitiveCompare.
* SERVER-39279 Remove ServiceContext::waitForClientsToFinishLouis Williams2019-03-131-11/+0
|
* SERVER-39960 Simplify opCtx::markKilledJason Carey2019-03-111-12/+10
| | | | | | | | | | | Operation context currently relies on an elaborate dance between the client lock, _waitMutex, _waitCV and _numKillers to allow markKilled to tap the condvar an opctx is waiting on. After the introduction of batons on all opctx's, this is no longer necessary (as batons have their own support for being woken, while waiting on a condvar). Removing the special killing code will simplify opctx, and remove a lot of extra book keeping.
* SERVER-39303 Fix several useless Client* checksJason Carey2019-02-261-2/+2
| | | | | | The checks performed in functions that are never passed a nullptr and would crash later if null was ever passed. Removing the checks makes coverity happy.
* SERVER-39560 - remove leading blank line on all C++ filesBilly Donahue2019-02-131-1/+0
| | | | | | Remove leading comments that are just stating the filename. Move any file-level comments below the copyright banner. Remove leading blank lines.
* SERVER-39147 Always batonJason Carey2019-02-061-0/+7
|
* SERVER-39146 Refactor BatonJason Carey2019-02-051-1/+13
| | | | | Refactor the baton into regular and networking batons while also cleaning up the basic baton implementation.
* SERVER-34422-ThreadMetrics: ServerStatus now returns the number of active ↵Tyler Kaye2019-01-281-0/+13
| | | | client operations
* SERVER-36663 Prevent killOperation from running without lockJonathan Ma2019-01-241-2/+2
|
* SERVER-38511 Avoid killing read operations on stepdown, gated by new server ↵Suganthi Mani2019-01-231-18/+0
| | | | parameter “closeConnectionsOnStepdown”.
* SERVER-37270 Remove foreground index builds by defaultLouis Williams2019-01-171-0/+11
|
* SERVER-37651 Update header files with new licenseRamon Fernandez2018-10-221-8/+10
|
* SERVER-33366 OperationContext setRecoveryUnit() & releaseRecoveryUnit() ↵Sean Tao2018-08-101-1/+1
| | | | should transfer using unique_ptr.
* SERVER-36258 Construct ServiceContext after mongo initializers complete.Andy Schwerin2018-07-271-17/+0
|
* SERVER-36013 Remove isMMAPv1 predicates and resulting dead codeGeert Bosch2018-07-111-7/+0
|
* SERVER-34798 Remove ServiceContext subclasses and use new ServiceContext in ↵Andy Schwerin2018-06-221-62/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | | every unit test. This patch does several loosely related and surprisingly hard to separate things. 1.) Make the ServiceContext class final 2.) Create a mechanism, called ConstructorActions, for running methods on ServiceContexts immediately after they're built and immediately before they're destroyed. 3.) Introduce / improve test fixture base classes for tests, giving them fresh ServiceContext instances for each test case. There is one fixture for tests that need a storage engine and another for those that do not. 4.) Make several remaining global variables SC decorations in support of (3) 5.) Replace many MONGO_INITIALIZERS that access getGlobalServiceContext with the new constructor-actions system, which is needed for (3.) 6.) Fix up tests to use the fixtures from (3) and fix tests that silently used different service contexts in together in a technically illegal fashion that now breaks. 7.) Utilize (2) as necessary to simplify initialization of new ServiceContexts, simplifying the fixtures in (3).
* SERVER-34798 Move storage initialization behaviors out of ServiceContext ↵Andy Schwerin2018-05-051-60/+0
| | | | subclasses to new library.
* SERVER-34751 Replace getGlobalStorageEngine cals with getStorageEngine.Andy Schwerin2018-05-031-1/+1
|
* SERVER-34751 Move StorageEngine ownership to ServiceContext from subclassesAndy Schwerin2018-05-021-0/+6
|
* SERVER-30170 Embedded can now shutdown and re-initialize.Henrik Edin2018-03-261-3/+7
| | | | | | | | | - ServiceContext* is now closer to be an instance context for the database. We still don't support multiple instances but I wrote the new code with this in mind. Teardown and reinitialize then becomes a matter of being able to delete and re-create the ServiceContext*. - Use the new MONGO_INITIALIZER that supports deinit/reinit to be able to re-initialize global systems that are decorations on ServiceContext. - Move creation/destruction of ServiceContext* out of MONGO_INITIALIZER. This so we can hold an exclusive lock during as much as possible of the shutdown (like how mongod does) - New ServiceContext registrer where we can link in different implementations of ServiceContext (replaces the SetGlobalEnvironment MONGO_INITIALIZER) - As a result the SetGlobalEnvironment prerequisite for MONGO_INITIALIZERs is gone. - The ServiceContext is passed to runGlobalInitializers, put in InitializationContext/DeinitializationContext so the initializers know which context they operate on.
* SERVER-31170 Cleanup bench_run.cppKaloian Manassiev2017-09-221-11/+3
|
* SERVER-29402 Implement ServiceExecutor and fixed-size test executorJonathan Reams2017-07-141-0/+9
|
* SERVER-29720 Provide a libmongodbcapi database wrapper for service contextBen Shteinfeld2017-07-141-0/+15
|
* SERVER-29610 Allow LogicalSessionIds to contain signed user informationsamantharitter2017-07-131-9/+0
|
* Revert "SERVER-29720 Provide libmongodbcapi database wrapper for service ↵Ben Shteinfeld2017-07-131-15/+0
| | | | | | context" This reverts commit f7f3946600e6a5c6612ba6763ca91d93b5a023f7.
* SERVER-29720 Provide libmongodbcapi database wrapper for service contextBen Shteinfeld2017-07-111-0/+15
|
* Revert "SERVER-29720 Provide libmongodbcapi database wrapper for service ↵Ben Shteinfeld2017-07-111-15/+0
| | | | | | context" This reverts commit ee08e773208ca4421c72913048915c20b75fac80.
* SERVER-29720 Provide libmongodbcapi database wrapper for service contextBen Shteinfeld2017-07-111-0/+15
|
* SERVER-29852 Store session id and transaction number on all commands' ↵Kaloian Manassiev2017-06-271-5/+3
| | | | OperationContext
* SERVER-29403 Implement TransportLayerASIOJonathan Reams2017-06-171-8/+18
|
* SERVER-29475 Install the logical session cachesamantharitter2017-06-161-0/+9
|
* SERVER-29472 Install PeriodicRunnerASIO on mongod and mongossamantharitter2017-06-131-0/+9
|
* SERVER-28298 Allow OperationContext objects to be created with an optional ↵samantharitter2017-04-121-2/+3
| | | | LogicalSessionId
* SERVER-27691 Make OperationContext::setKillAllOperations interrupt all ↵Kaloian Manassiev2017-04-051-0/+13
| | | | operations
* SERVER-27938 Rename all OperationContext variables to opCtxMaria van Keulen2017-03-071-2/+2
| | | | | | This commit is an automated rename of all whole word instances of txn, _txn, and txnPtr to opCtx, _opCtx, and opCtxPtr, respectively in all .cpp and .h files in src/mongo.
* SERVER-26674 transport::Session objects should be shared_ptr managedsamantharitter2016-11-051-2/+2
|
* SERVER-25572 Fix ASAN clean shutdown logicJason Carey2016-08-231-0/+9
| | | | | | | | | | | | | | | | | | During shutdown a number of things are currently happening that shouldn't be: 1. The legacy transport layer is failing to actually close sockets in closeAll. It's doing this because the default argument to closeAll is to leave all sockets open on the legacy transport layer (versus to close them on the actual interface header). 2. The thing we're checking for in shutdown is wrong. It's just that we've left recv in all db workers, rather than that we've left all client workers (so ASAN is occasionally unhappy about "leaks") 3. Tests rely on external callers to close sockets. when this contract changes, we take an extra 10 seconds to shut down every mongod, making some tests time out. Fix this by adding a counter for actual live workers, so we can track when it's safe to shutdown correctly. Also fix the typo
* SERVER-17856: Allow mongod users to currentOp and killOp own operationsSpencer Jackson2016-07-291-16/+2
|
* SERVER-24162 Integrate TransportLayerSamantha Ritter2016-07-121-3/+15
| | | | | Expand the transport layer as needed to replace uses of abstract message port for ingress networking.
* SERVER-23905 Unify lifetime management for LockState on OperationContexts ↵Andy Schwerin2016-06-031-15/+8
| | | | | | | into OperationContext. This change also moves responsibility for registering OperationContexts to Clients into ServiceContext::makeOperationContext.
* SERVER-23905 Unify implementations of operation id assignment into ↵Andy Schwerin2016-05-271-1/+1
| | | | ServiceContext.
* SERVER-23905 Move global operation killing implementations from ↵Andy Schwerin2016-05-271-0/+66
| | | | ServiceContextMongoD to ServiceContext.
* SERVER-18277 Fill in clock and tick sources in ServiceContext constructorMathias Stearn2016-05-091-0/+7
| | | | | | | Now they only need to be set in cases where the defaults need to be changed. Tests that just want the defaults can link against $BUILD_DIR/mongo/db/service_context_noop_init to get a working global ServiceContext.