MongoCursorException'无法获取响应头'

Eva*_*ran 6 php mongodb mongodb-php

我正在使用PHP和mongodb开发一个网站.我用PECL-mongo访问mongodb ,并且遇到了烦恼.我时不时地得到这样的错误(我已经对这些路径进行了匿名)

Fatal error: Uncaught exception 'MongoCursorException' with message 'couldn't get response header' in
    /PATH/index.php:38 Stack trace: #0 
    /PATH/index.php(38): MongoCursor->rewind() #1 
    /PATH/template.inc(29): get_sidebar() #2 
    /PATH/index.php(13): 
    require_once('PATH/...') #3 {main} thrown in PATH/index.php on line 38
Run Code Online (Sandbox Code Playgroud)

根据文档,这意味着:

驱动程序无法从数据库中获取回复标头,因此它放弃了.检查数据库是否仍在运行并且网络已连接,然后再次尝试查询.

但我知道数据库已启动,因为我在我自己的机器上本地执行环回.没有与外界联系.

再试一次经常有效.这可能是PHP的mongo驱动程序中的一个错误吗?这可能是一个"错误编译"的问题(我从源代码编译,但有非常良性的标志,-march=native -O2)?

谁看过这个吗?

搜索周围,我只看到一些愚蠢的Facebook游戏的引用有相同的错误.

编辑:我刚刚将我的PECL驱动程序降级到1.1.4版本,到目前为止,问题似乎已经消失.所以这可能只是1.2.x系列中的一个错误.如果有人能够对它有所了解,那就太好了.

编辑:我在这里没有做任何复杂的事情,有问题的代码看起来像这样:

$m = new Mongo();
$collection = $m->my_db->collection;
$results = $collection->find(array("favorite"=>true))->limit(5);
Run Code Online (Sandbox Code Playgroud)

use*_*186 1

我通过获取新版本 mogodb.dll 解决了这个问题,您可以看到http://www.mongodb.org/display/DOCS/PHP+Language+Center

  • 你想说“问题”吗?什么是“pelbome”,你已经说过两次了。 (2认同)