De code 11001 bestaat niet in de 2.5/2.6-branch op GitHub, dus als je een 2.5-versie probeert, kun je deze niet maken. Ik heb de code bekeken, maar ik kan geen pad vinden dat de 11001 laat zien code ofwel rechtstreeks.
De volgende paar regels tonen code 11001 :
db.so.drop();
db.so.insert( { foo: 5 } );
db.so.ensureIndex( { foo: 1 }, { unique: true } );
db.so.insert( { foo: 6 } );
De verwachte 11000 :
db.so.insert( { foo: 5 } );
E11000 duplicate key error index: test.so.$foo_1 dup key: { : 5.0 }
En nu om de 11001 te bereiken :
db.so.insert( { foo: 6 } );
db.so.update( { foo: 6 }, { $set: { foo: 5 } } );
E11000 duplicate key error index: test.so.$foo_1 dup key: { : 5.0 }
Nog steeds de originele 11000 , maar:
db.getPrevError();
{
"err" : "E11000 duplicate key error index: test.so.$foo_1 dup key: { : 5.0 }",
"code" : 11001,
"n" : 0,
"nPrev" : 1,
"ok" : 1
}
Dat de originele tekstuele foutmelding E11000 . toont is een bug:https://jira.mongodb.org/browse/SERVER-5978