我正在尝试使用MongoDB shell删除文档,但由于某种原因,它一直在“无效对象id:length”上失败
查询:
db.collections.remove( { _id : ObjectId("FF125DF6-E977-404A-9E8C-600CDAFEFF53" )} );
错误:
Mon Dec 24 03:11:15断言:10448:无效的对象id:长度 0x6073f1 0x5d1aa9 0x5ac3f1 0x5b84f4 0x6aa5ac 0x6aaec8 0x69e4e7 0x6aa13f 0x668e46 0x668ec2 0x66a2ce 0x5cbcc4 0x4a44a6 0x4a67e6 0x7f2554e2fcdd 0x49f669 mongo(_ZN5mongo15printStackTraceERSo + 0x21) [0x6073f1] mongo(_ZN5mongo11msgassertedEiPKc + 0x99)[0x5d1aa9] mongo()[0x5ac3f1] 蒙戈(_ZN5mongo21object_id_constructorEP9JSContextP8JSObjectjPlS4_ + 0x2b4) [0x5b84f4] mongo(js_Invoke + 0x40c)[0x6aa5ac] mongo(js_InvokeConstructor + 0x108)[0x6aaec8] mongo(js_Interpret + 0x37c7)[0x69e4e7] mongo(js_Execute + 0x36f) [0x6aa13f] mongo(JS_EvaluateUCScriptForPrincipals + 0x66)[0x668e46] mongo(JS_EvaluateUCScript + 0x22)[0x668ec2] mongo(JS_EvaluateScript + 0x6e)[0x66a2ce] 蒙戈(_ZN5mongo7SMScope4execERKNS_10StringDataERKSsbbbi +量0x144) [0x5cbcc4] mongo(_Z5_mainiPPc + 0x2156)[0x4a44a6] mongo(main + 0x26) [0x4a67e6] /lib64/libc.so.6(__libc_start_main+0xfd)[0x7f2554e2fcdd] mongo(__ gxx_personality_v0 + 0x2a1)[0x49f669]周一12月24日03:11:15 错误:无效的对象ID:length(shell):1
我试过了
db.repairDatabase();
但没有改变。 从检查周围我发现它是一个已知的问题,是否有解决方法?
修改
这是db中的文档:
{
“_ id”:“FF125DF6-E977-404A-9E8C-600CDAFEFF53”,
“数据”:{
"files": [ ], "categories": [ ], "trash": [ ] }
}
谢谢!
答案 0 :(得分:5)
ObjectId("FF125DF6-E977-404A-9E8C-600CDAFEFF53")
无效。 ObjectId是12字节的BSON类型,内部不能有' - '。检查获得此ID的来源。