|
The following code:
c = db.getSiblingDB("jstests_tool_dumprestore_24").getCollection("collection");
|
c.ensureIndex({ "a" : 1, "b" : 1, "c" : 1, "indexpropertycounter0" : 1, "indexpropertycounter1" : 1, "indexpropertycounter2" : 1});
|
c.drop();
|
Will produce this stack trace from mongod:
0 mongod 0x0000000100d5ed85 mongo::printStackTrace(std::ostream&) + 37
|
1 mongod 0x0000000100cbc094 mongo::logContext(char const*) + 228
|
2 mongod 0x0000000100c97656 mongo::msgasserted(int, char const*) + 390
|
3 mongod 0x0000000100c978aa mongo::ExceptionInfo::append(mongo::BSONObjBuilder&, char const*, char const*) const + 0
|
4 mongod 0x00000001002436f5 mongo::Namespace::extraName(int) const + 369
|
5 mongod 0x0000000100242553 mongo::NamespaceIndex::kill_ns(mongo::StringData const&) + 149
|
6 mongod 0x0000000100375f77 mongo::Database::_dropNS(mongo::StringData const&) + 1205
|
7 mongod 0x000000010022e259 mongo::IndexCatalog::_dropIndex(int) + 641
|
8 mongod 0x000000010022f584 mongo::IndexCatalog::dropIndex(int) + 316
|
9 mongod 0x000000010022fa3f mongo::IndexCatalog::dropAllIndexes(bool) + 805
|
10 mongod 0x000000010037a351 mongo::Database::dropCollection(mongo::StringData const&) + 1205
|
11 mongod 0x0000000100392b33 mongo::CmdDrop::run(std::string const&, mongo::BSONObj&, int, std::string&, mongo::BSONObjBuilder&, bool) + 1267
|
12 mongod 0x0000000100389f46 mongo::_execCommand(mongo::Command*, std::string const&, mongo::BSONObj&, int, std::string&, mongo::BSONObjBuilder&, bool) + 118
|
13 mongod 0x000000010038c681 mongo::Command::execCommand(mongo::Command*, mongo::Client&, int, char const*, mongo::BSONObj&, mongo::BSONObjBuilder&, bool) + 7059
|
14 mongod 0x000000010038da2f mongo::_runCommands(char const*, mongo::BSONObj&, mongo::_BufBuilder<mongo::TrivialAllocator>&, mongo::BSONObjBuilder&, bool, int) + 2303
|
15 mongod 0x00000001007fbb15 mongo::runCommands(char const*, mongo::BSONObj&, mongo::CurOp&, mongo::_BufBuilder<mongo::TrivialAllocator>&, mongo::BSONObjBuilder&, bool, int) + 117
|
16 mongod 0x00000001007fce1a mongo::newRunQuery(mongo::Message&, mongo::QueryMessage&, mongo::CurOp&, mongo::Message&) + 1674
|
17 mongod 0x00000001005a85fb mongo::receivedQuery(mongo::Client&, mongo::DbResponse&, mongo::Message&) + 859
|
18 mongod 0x00000001005ac6c9 mongo::assembleResponse(mongo::Message&, mongo::DbResponse&, mongo::HostAndPort const&) + 1225
|
19 mongod 0x000000010000c689 mongo::MyMessageHandler::process(mongo::Message&, mongo::AbstractMessagingPort*, mongo::LastError*) + 335
|
It comes from the fact that we are checking for "<indexname>" + "$extra" rather than just the index in the "Namespace::extraName" function on deletion, but not during creation. I suspect we aren't actually creating the "extraName" index, but I don't know what the purpose of this extra index actually is.
|