【问题详细描述】
用户创建如下索引的时候,报-39错误:
> db.credit.t_qy_qysjnr.createIndex("t_qy_qysjnr_bm_index",{bm:1});
(nofile):0 uncaught exception: -39
Index key is too large
Takes 489.900045s.
其中"bm"字段只有固定的64字节。
【问题原因】
报-39表明“bm”字段的长度很大(超过1000字节,我们要求建索引的字段内容不能超过1000字节)。但这与用户反映的情况不一致,所以通过要求用户检查其字段内容,发现原来用户导入数据有误,造成“bm”字段内容不是期望的内容,而是一个很长的字符串。
【解决办法】
要去用户重新导数据,然后再建索引。
【参考链接】
错误码
常见错误处理指南