-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Internal Code
-
None
-
Fully Compatible
-
ALL
-
Platforms 2017-10-02
Running PyMongo's test suite, on the branch where I'm implementing sessions, I crashed a standalone mongod running with auth.
2017-09-17T10:44:54.724-0400 F - [conn384] Invariant failure ccPin == ErrorCodes::QueryPlanKilled src/mongo/db/query/find.cpp 330 mongod(_ZN5mongo15invariantFailedEPKcS1_j+0x2E6) [0x10f4c1666] mongod(_ZN5mongo7getMoreEPNS_16OperationContextEPKcixPbS4_+0x18E2) [0x10e49fd52] mongod(_ZN5mongo23ServiceEntryPointMongod13handleRequestEPNS_16OperationContextERKNS_7MessageE+0x1528) [0x10e179378] mongod(_ZN5mongo19ServiceStateMachine15_processMessageERNS0_11ThreadGuardE+0x18A) [0x10e186a8a] mongod(_ZN5mongo19ServiceStateMachine15_runNextInGuardERNS0_11ThreadGuardE+0x175) [0x10e185f45] mongod(_ZN5mongo19ServiceStateMachine7runNextEv+0x38) [0x10e1868b8] mongod(_ZNSt3__110__function6__funcIZN5mongo21ServiceEntryPointImpl12startSessionENS_10shared_ptrINS2_9transport7SessionEEEE3$_1NS_9allocatorIS8
Log attached.
I think that PyMongo was executing some part of this test:
def test_aggregate_raw(self): c = self.db.test c.drop() docs = [{'_id': i, 'x': 3.0 * i} for i in range(10)] c.insert_many(docs) batches = list(c.aggregate_raw_batches([{'$sort': {'_id': 1}}])) self.assertEqual(1, len(batches)) self.assertEqual(docs, decode_all(batches[0]))
PyMongo's aggregate_raw_batches method sets the initial batch size to 0 with the "aggregate" command, then issues a "getMore".