2012-08-04 73 views
1

当我运行此查询MongoDB的错误:查询必须为空或对象

$count = smongo::$db->sessions->find(array(),array('cd'=>1))->count(); 

我得到以下错误:

Array ([assertion] => query has to be blank or an Object [assertionCode] => 13608 [errmsg] => db assertion failure [ok] => 0) 

MongoDB的版本2.0.6 在PHP。

我该如何解决它。

+0

这是什么驱动程序版本和PHP版本? – Sammaye 2012-08-04 19:33:03

+0

Apache/2.2.18(Unix)PHP/5.3.6 – alpaycom 2012-08-05 08:44:39

+0

和Mongo PHP Extension版本? – Sammaye 2012-08-05 09:48:59

回答

0

您收到的错误消息只能由MongoDB中的mapReduce()代码生成。导致此问题的最可能原因是,您从另一个命令获取异常,而不是上面列出的find()命令。

我无法使用您的代码重现此问题。我怀疑如果你自己尝试创建一个测试用例,你会发现YOU无法使用你的示例代码重现这一点。仔细查看mapReduce()命令,该命令与您发布的代码示例在相同的异常捕获上下文中运行。

+0

我在此命令之前和之后进行了清理。该页面只给出该命令,尽管它仍然是一个错误。正如你所说的,与MapReduce相关的错误。但我找不到解决方案。 – alpaycom 2012-08-14 13:27:39

+0

没有MapReduce功能。这并不复杂。即使在运行相同功能的另一台计算机上。 – alpaycom 2012-08-14 13:30:09

+0

没有找到解决问题的办法,问题在另一个地方。 – alpaycom 2012-08-14 13:33:08

相关问题