2011-07-29 31 views
6

Tôi đang phát triển một trang web bằng cách sử dụng PHP và mongodb. Tôi truy cập vào mongodb với PECL-mongo, và đã chạy vào một khó chịu. Tất cả bây giờ và sau đó, tôi nhận được một lỗi như thế này (tôi đã ẩn danh các đường dẫn)MongoCursorException 'không thể nhận được tiêu đề phản hồi'

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 

Theo tài liệu, điều này có nghĩa là:

Người tài xế không thể lấy một tiêu đề trả lời của cơ sở dữ liệu, do đó, nó đã từ bỏ. Kiểm tra xem cơ sở dữ liệu vẫn đang hoạt động và mạng đã được kết nối và thử truy vấn lại.

Nhưng tôi biết rằng cơ sở dữ liệu là do tôi đang thực hiện cục bộ trên máy của riêng tôi qua vòng lặp. Không có kết nối được thực hiện với thế giới bên ngoài.

Chỉ cần thử lại thường hoạt động. Đây có phải là một lỗi trong trình điều khiển của PHP cho mongo không? Đây có phải là một vấn đề "miscompile" (tôi đã biên dịch từ nguồn, nhưng với cờ rất lành tính, -march=native -O2)?

Có ai nhìn thấy điều này trước đây không?

Tìm kiếm xung quanh, tôi chỉ thấy các tham chiếu đến một số trò chơi facebook ngu ngốc có cùng lỗi.

EDIT: Tôi chỉ hạ cấp tài xế PECL tôi lên phiên bản 1.1.4 và cho đến nay, vấn đề dường như đã biến mất. Vì vậy, điều này có thể chỉ đơn giản là một lỗi trong loạt 1.2.x. Nếu ai cũng có thể làm sáng tỏ nó, điều đó thật tuyệt.

EDIT: Tôi không làm bất cứ điều gì phức tạp ở đây, mã mà đang gặp sự cố litterally trông như thế này:

$m = new Mongo(); 
$collection = $m->my_db->collection; 
$results = $collection->find(array("favorite"=>true))->limit(5); 
+0

Vì vậy, lưu ý đầu tiên, bạn chắc chắn muốn nắm bắt Ngoại lệ. Có thể có một lỗi ở đây, nhưng không bắt được dữ liệu ngoại lệ và ghi nhật ký, thật khó để biết chuyện gì đã xảy ra. Đã có truy vấn không thành công? Cập nhật/Chèn/Xóa không thành công? Bạn đang nguyền rủa thông qua dữ liệu khi điều này xảy ra? –

+0

Tôi đang gặp sự cố tương tự như bạn. Bạn đã thực hiện giải pháp nào? Tôi đang mắc kẹt với một vòng lặp xấu xí kiểm tra ngoại lệ =/ –

+0

Tôi vừa hạ cấp trình điều khiển PECL của tôi xuống phiên bản 1.1.4. Và nó có vẻ vững chắc bây giờ. –

Trả lời

Các vấn đề liên quan