2013-04-23 27 views
1

MongoDB的集合所以我有以下結構得到錯誤而更新集合在MongoDB的

{ "_id" : ObjectId("516c48631f6c263a24fbbe7a"), "oldname" : 1, "name" : "somename" } 

屬性的名字,我想舊名稱重命名爲新名稱,所以它看起來像,

{ "_id" : ObjectId("516c48631f6c263a24fbbe7a"), "newname" : 1, "name" : "somename" } 

所以我寫這個命令,

db.element_type.update({}, {$rename: {'oldname': 'newname'}}, false, true); 

但它給我這個錯誤

failing update: objects in a capped ns cannot grow 

回答

2

的問題,每個錯誤消息是,你試圖更新加蓋收集,大概有newname是比oldname更長。

您可以在文檔中的read about capped collections。他們的目的是維持他們的秩序,這就是爲什麼你遇到這個問題。

如果您必須使用加蓋集合,也許您應該刪除並重新插入而不是更新。

+1

就像您提供的鏈接所說:您無法從封頂的集合中刪除。 – 2013-04-24 03:51:18