[SERVER-18513] Mongodb crashes with devnull storage engine Created: 18/May/15  Updated: 06/Dec/22  Resolved: 14/Nov/16

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: 3.0.3
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Martin Bligh Assignee: Backlog - Storage Execution Team
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Storage Execution
Participants:

 Description   

The devnull storage engine is unsupported and for testing purposes only.

Run this twice.

mongoimport -d new -c test --drop messages.json

Second time it crashes mongod. Doesn't seem to happen on mmap storage engine.
This is 3.0.2 released version

mongo::printStackTrace(std::ostream&)
mongo::logContext(char const*)
mongo::verifyFailed(char const*, char const*, unsigned int)
mongo::SimpleMutex::lock()
mongo::CursorManager::invalidateAll(bool)
mongo::Database::_clearCollectionCache(mongo::OperationContext*, mongo::StringData const&)
mongo::Database::dropCollection(mongo::OperationContext*, mongo::StringData const&)
mongo::CmdDrop::run(mongo::OperationContext*, std::string const&, mongo::BSONObj&, int, std::string&, mongo::BSONObjBuilder&, bool)
mongo::_execCommand(mongo::OperationContext*, mongo::Command*, std::string const&, mongo::BSONObj&, int, std::string&, mongo::BSONObjBuilder&, bool)
mongo::Command::execCommand(mongo::OperationContext*, mongo::Command*, int, char const*, mongo::BSONObj&, mongo::BSONObjBuilder&, bool)
mongo::_runCommands(mongo::OperationContext*, char const*, mongo::BSONObj&, mongo::_BufBuilder<mongo::TrivialAllocator>&, mongo::BSONObjBuilder&, bool, int)
mongo::runQuery(mongo::OperationContext*, mongo::Message&, mongo::QueryMessage&, mongo::NamespaceString const&, mongo::CurOp&, mongo::Message&)
mongo::assembleResponse(mongo::OperationContext*, mongo::Message&, mongo::DbResponse&, mongo::HostAndPort const&)
mongo::MyMessageHandler::process(mongo::Message&, mongo::AbstractMessagingPort*, mongo::LastError*)
mongo::PortMessageServer::handleIncomingMsg(void*)



 Comments   
Comment by Eric Milkie [ 14/Nov/16 ]

In 3.4.0, no longer crashes.

Comment by Ramon Fernandez Marina [ 18/May/15 ]

It seems the problem is the drop; I tried the following on 3.0.3:

db.foo.insert({x:1})
db.foo.drop()

and I got the stack trace below:

/srv/10gen/mci-exec/mci/src/src/mongo/util/stacktrace_posix.cpp:105
/srv/10gen/mci-exec/mci/src/src/mongo/util/log.cpp:135
/srv/10gen/mci-exec/mci/src/src/mongo/util/assert_util.cpp:132
??:?
/opt/mongodbtoolchain/include/c++/4.8.2/bits/hashtable.h:369
/opt/mongodbtoolchain/include/c++/4.8.2/bits/hashtable.h:455
/opt/mongodbtoolchain/include/c++/4.8.2/bits/unordered_set.h:244
/srv/10gen/mci-exec/mci/src/src/mongo/db/catalog/cursor_manager.cpp:333
/srv/10gen/mci-exec/mci/src/src/third_party/boost/boost/smart_ptr/scoped_array.hpp:79
/srv/10gen/mci-exec/mci/src/src/mongo/util/unordered_fast_key_table_internal.h:192
/srv/10gen/mci-exec/mci/src/src/mongo/db/catalog/database.cpp:435
/srv/10gen/mci-exec/mci/src/src/mongo/base/status-inl.h:71
/srv/10gen/mci-exec/mci/src/src/mongo/base/status-inl.h:67
/srv/10gen/mci-exec/mci/src/src/mongo/db/catalog/database.cpp:404
??:?
/srv/10gen/mci-exec/mci/src/src/mongo/db/dbcommands.cpp:1336
/srv/10gen/mci-exec/mci/src/src/mongo/db/dbcommands.cpp:1538
/srv/10gen/mci-exec/mci/src/src/mongo/bson/bsonobjbuilder.h:620
/srv/10gen/mci-exec/mci/src/src/mongo/db/dbcommands.cpp:1623
/srv/10gen/mci-exec/mci/src/src/mongo/db/query/find.cpp:604
/srv/10gen/mci-exec/mci/src/src/mongo/db/instance.cpp:218
/srv/10gen/mci-exec/mci/src/src/mongo/db/instance.cpp:400
/opt/mongodbtoolchain/include/c++/4.8.2/bits/basic_string.h:539
/srv/10gen/mci-exec/mci/src/src/mongo/util/net/hostandport.h:48
/srv/10gen/mci-exec/mci/src/src/mongo/db/db.cpp:207

Generated at Thu Feb 08 03:47:55 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.