MongoCursor
PHP Manual

MongoCursor::partial

(PECL mongo >=1.2.0)

MongoCursor::partialシャードがダウンしているときにこのクエリが mongos から部分的な結果を返すようにするかどうか

説明

public MongoCursor MongoCursor::partial ([ bool $okay = true ] )

このオプションは、シャードに到達できない場合に mongos が部分的なクエリ結果を送信するようにします。シャード化した MongoDB クラスタを実行し、かつ mongos に接続している場合にのみ適用できます。

シャードがダウンしているときにそのシャードへの送信を要するクエリを実行すると、 mongos は既に接続済みのシャードからの結果 (もしあれば) を返してから「シャードに到達できない」というエラー (PHP の MongoCursorException) を返します。 mongos が返せるだけの結果を取得した後は例外のスローが不要、 という場合はこのメソッドを使います。ただしこのメソッドを使うと、 クエリに対する応答からはシャードがダウンしているかどうかがわからなくなることに注意しましょう。

すべてのシャードに到達可能である場合は、このメソッドはクエリに何の影響も及ぼしません。 このフラグは MongoDB バージョン 1.7.5 で実装されました。このバージョン以降でしか使えません。

パラメータ

okay

部分的な結果の受信を許可するかどうか。

返り値

このカーソルを返します。

エラー / 例外

このカーソルが反復処理を始めている場合に MongoCursorException をスローします。


MongoCursor
PHP Manual