现象:使用mapreduce时,本地正常,外网异常。经排查后外网用主库查询时一切正常,用从库查询会出现下面这个天煞的exception...
Array
(
[errmsg] => exception: assertion src/mongo/db/commands/mr.cpp:760
[code] => 0
[ok] => 0
)
过程:
排除数据库类连接的问题...
排除Mongo版本、PHP-Mongo驱动不同导致的数据类型不同问题...
......
不知从何入手....从表面理解,大概是执行command时有问题,而且跟主从有关....
结论:
查从库要在使用inline,如php中执行command时加上'out' => array("inline"=>1),详见MongoDB官网db.collection.mapReduce()的out-部分。
本地没有搭建从库所以一直都是查主库- -!