ObjectID不存储hex值

最初,我的Sails / Mongo将ObjectID存储在数据库中,如下所示:

"_id" : ObjectId("557077fb836bdee256004232") 

不知道发生了什么变化或发生,但现在新的logging被存储如下:

 "_id" : { "_bsontype" : "ObjectID", "id" : "UtÓ-Åß\u0010C&5", "generationTime" : 1434552692 } 

这仅在6个开发人员环境中才会发生。

我检查过的东西:

  • 从上周恢复到稳定的提交,清除了node_modules,npmcaching等重新安装,没有运气。
  • 完全重新安装Node / npm / MongoDB以确保我处于最新的稳定版本…我的版本都匹配现有的开发人员环境,没有问题。

如果有什么具体的东西可以帮助,我会非常乐意分享configuration/日志。 环境:节点0.12.4,npm v2.11.2,MongoDB shell v3.0.4。 我已经debugging了代码和所有的东西,我相当确定这是我的环境独特的东西,以及它如何与Mongo / Sails / Waterline / BSON交互。

我希望这是更多的“嘿,我以前见过这个,这是我如何解决它”的问题,而不是一个实际的代码/debugging问题! 谢谢!

回答我自己的问题!

似乎是在MongoDB的brew安装中发生的一些愚蠢的事情。 从http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/手动重新安装它,然后恢复我备份的数据库似乎有伎俩。

我仍然喜欢从代码/技术的angular度来看,为什么我的环境突然决定开始返回12字节的BSON ObjectID而不是hexObjectID …但是在那之前希望简单的手动重新安装可以帮助其他人谁遇到这个奇怪的问题!