calls to grid.catalogManager() does not have any synchronization protection. This is fine in mongos as it is initialized at startup and is never modified. However, this is not true for mongod as the initialization happens when the server is processing requests. This is fine in most of mongod usages in d_migrate, d_split and d_merge since they ensure that it has been properly initialized (with the mutex) with the exception of the exit handler:
https://github.com/mongodb/mongo/blob/r3.1.4/src/mongo/db/instance.cpp#L1292
- is duplicated by
-
SERVER-20382 Null pointer dereference on shutdown
-
- Closed
-