Modified: phpdoc/ja/trunk/reference/mongo/connecting.xml =================================================================== --- phpdoc/ja/trunk/reference/mongo/connecting.xml 2010-08-10 20:42:56 UTC (rev 302081) +++ phpdoc/ja/trunk/reference/mongo/connecting.xml 2010-08-10 21:14:16 UTC (rev 302082) @@ -1,6 +1,6 @@ - +
接続 @@ -170,8 +170,7 @@ MongoDB をローカルで動かしていてバージョン 1.0.9 以降のドライバを使っている場合は、ファイル経由でデータベースに接続することができます。 MongoDB は、起動時に自動的にソケットファイル - /tmp/mongodb-<port>.sock - (Windows の場合は C:\tmp\mongodb-<27017>.sock) をオープンします。 + /tmp/mongodb-<port>.sock をオープンします。 Modified: phpdoc/ja/trunk/reference/mongo/mongo/construct.xml =================================================================== --- phpdoc/ja/trunk/reference/mongo/mongo/construct.xml 2010-08-10 20:42:56 UTC (rev 302081) +++ phpdoc/ja/trunk/reference/mongo/mongo/construct.xml 2010-08-10 21:14:16 UTC (rev 302082) @@ -1,6 +1,6 @@ - + @@ -305,6 +305,40 @@ + ドメインソケットへの接続 + + バージョン 1.0.9 以降では、ローカルで実行している MongoDB への接続に + UNIX ドメインソケットを使えるようになりました。これは、 + ネットワーク経由で接続するよりもわずかに高速です。 + + + バージョン 1.5.0 では、MongoDB サーバは自動的に + /tmp/mongodb-<port>.sock でソケットをオープンします。 + ここに接続するには、接続文字列でこのパスを指定します。 + + + + + + これは、その他の接続とも組み合わせることができます。 + + + + + + <function>Mongo::__construct</function> での持続的接続の例 持続的な接続は、ひとつのリクエストだけでなく別のリクエストまでも持続します Modified: phpdoc/ja/trunk/reference/mongo/mongocursorexception.xml =================================================================== --- phpdoc/ja/trunk/reference/mongo/mongocursorexception.xml 2010-08-10 20:42:56 UTC (rev 302081) +++ phpdoc/ja/trunk/reference/mongo/mongocursorexception.xml 2010-08-10 21:14:16 UTC (rev 302082) @@ -1,6 +1,6 @@ - + @@ -26,51 +26,78 @@ - threw away response, please try again + cannot modify cursor after beginning iteration - Code: 1 + Code: 0 - シングルスレッドアプリケーションではまず発生しません。 - データベースがあるスレッドに応答を送信しているときに、 - 別のスレッドがそれを捨ててしまった場合に発生します。 - クエリを再発行する必要があります。 - おそらくスレッドを減らすことになるでしょう。 + クエリを実行した後で、クエリの設定を変えるメソッドをコールしました。 + いったんカーソルをリセットしてからやりなおしてください。 - various + さまざまな送信エラー Code: 1 - データベースとの接続が確立されていなかったために - データベースからの応答を受け取れませんでした。 + クエリをデータベースに送信できませんでした。 + データベースが立ち上がっていることとネットワークが正常であることを確認してください。 - various + cursor not found Code: 2 - リクエストのタイムアウトで発生します。 - この場合に返すエラーメッセージは、C のソケットライブラリが返すものとなります。 + ドライバがデータベースから結果を取得しようとしましたが、 + データベース側にクエリが残っていませんでした。 + たいていは、カーソルがサーバ側でタイムアウトしたことを意味します。 + やりとりがない状況が数秒続くと、データベースはカーソルを消します + (これを防ぐための方法は MongoCursor::immortal + を参照ください)。 - no db response + さまざまなデータベースエラー Code: 4 + データベースへのクエリで問題が発生しました。 + エラーメッセージを見れば何が悪かったかがわかりますが、 + データベースのログで詳細を調べることもできます。 + + + + + couldn't get response header + + + Code: 3 + + + ドライバがデータベースからのリプライヘッダを取得できず、取得をあきらめました。 + データベースが立ち上がっていることとネットワークがつながっていることを確認し、 + もう一度クエリを実行してみましょう。 + + + + + no db response + + + Code: 5 + + これはエラーではないかもしれません。たとえば、データベースの "shutdown" コマンドは何も応答を返しません。 しかし、もし何らかの応答を得ることを期待していたのにこのエラーになったのなら、 @@ -79,9 +106,22 @@ + no db response + + + Code: 5 + + + + + + bad response length: %d, max: %d, did the db assert? + Code: 6 + + これは、データベースの応答が 4MB を超えるかあるいは 0 未満であることを意味します。 5MB を超えるような値が返ってくるようなら、データベースのバグである可能性があります (応答の最大長は 4MB です)。開発者に報告しましょう。 @@ -90,11 +130,15 @@ - incomplete response + incomplete header/response + Code: 7 + + めったにありませんが、 データベースの応答が正常にはじまったけれど途中で終わってしまった場合に発生します。 + おそらくネットワークの問題でしょう。 @@ -109,6 +153,29 @@ Windows では、エラーメッセージの先頭に "WSA" がつきます。 + + + error getting database response: <various> + + + Code: 8 + + + ソケット層で何か問題が発生しました。 + C のソケットライブラリからのエラーを返します。 + + + + + couldn't find a response + + + Code: 9 + + + レスポンスがキャッシュされましたが、その場所を特定できませんでした。 + +
Modified: phpdoc/ja/trunk/reference/mongo/mongocursortimeoutexception.xml =================================================================== --- phpdoc/ja/trunk/reference/mongo/mongocursortimeoutexception.xml 2010-08-10 20:42:56 UTC (rev 302081) +++ phpdoc/ja/trunk/reference/mongo/mongocursortimeoutexception.xml 2010-08-10 21:14:16 UTC (rev 302082) @@ -1,7 +1,7 @@ - + MongoCursorTimeoutException クラス @@ -14,8 +14,12 @@ &reftitle.intro; クエリのタイムアウトで発生します。 - 今のところ、データベースからのクエリの応答を無制限に待ち続けないようになるのは - MongoCursor::timeout をカーソル上でコールしたときだけです。 + この例外がスローされるようになるまでの時間の長さを設定することができます。 + そのためには、MongoCursor::timeout をカーソルで実行するか、 + あるいは MongoCursor::$timeout を設定します。 + 静的変数を設定する方法は、データベースコマンドや + MongoCollection::findOne のようなクエリで便利です。 + これらはどちらもカーソルの内部で暗黙的に使うからです。