El código 11001
no existe en la rama 2.5/2.6 en GitHub, por lo que si está probando una versión 2.5, no puede crearla. Eché un vistazo al código, pero no puedo encontrar ninguna ruta que muestre el 11001
código ya sea directamente.
Las siguientes líneas mostrarán el código 11001
:
db.so.drop();
db.so.insert( { foo: 5 } );
db.so.ensureIndex( { foo: 1 }, { unique: true } );
db.so.insert( { foo: 6 } );
El esperado 11000
:
db.so.insert( { foo: 5 } );
E11000 duplicate key error index: test.so.$foo_1 dup key: { : 5.0 }
Y ahora para llegar al 11001
:
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 }
Sigue siendo el 11000
original , pero:
db.getPrevError();
{
"err" : "E11000 duplicate key error index: test.so.$foo_1 dup key: { : 5.0 }",
"code" : 11001,
"n" : 0,
"nPrev" : 1,
"ok" : 1
}
Que el mensaje de error textual original muestra E11000
es un error:https://jira.mongodb.org/browse/SERVER-5978