Marklogic 8.0.6とxqueryリクエストを使用しています。xqueryリクエストのMarklogicタイムアウトを増やす
私はアプリケーションサーバを介してこれらのXQueryの要求を実行するが、巨大な要求がタイムアウトに達すると、次のエラーを返しているようだ:
あなたは、このタイムアウトを増加させるために変更する設定を与えてもらえ?
おかげで、 ロマンは:)
Marklogic 8.0.6とxqueryリクエストを使用しています。xqueryリクエストのMarklogicタイムアウトを増やす
私はアプリケーションサーバを介してこれらのXQueryの要求を実行するが、巨大な要求がタイムアウトに達すると、次のエラーを返しているようだ:
あなたは、このタイムアウトを増加させるために変更する設定を与えてもらえ?
おかげで、 ロマンは:)
タイムアウトは、多くの場合、クエリが非効率的なことをやって(など、インデックス、フィルタリングを利用していない)されている兆候です。
あなたが書類の非常に大きな数を返却する場合、に目を向けるなど、xdmp:plan()を使用して、(クエリコンソールの[プロファイル]タブをクリックして実行)クエリをプロファイリングを見てくださいとQuery Performance and Tuning Guide
を確認ページネーションを使用し、複数の要求を含む小さなドキュメントセットを取得するか、またはJava Data Movement SDK,CORB、またはMarkLogic Spring Batchなどのバッチ処理ツールまたはフレームワークを使用することができます。要求のタイムアウトを設定するには言われていること
、xdmp:set-request-time-limit()
xdmp:set-request-time-limit(600)
を使用し、私はマッズは[xdmp:設定 - 要求期限()]を指すことを意味だと思います(http://ドキュメント.marklogic.com/xdmp:set-request-time-limit)。これにより、現在の要求の制限時間が長くなります。トランザクションの時間制限は、長期実行トランザクションの制限時間であり、現在の要求がそのようなトランザクションに参加している場合にのみ適用されます。 – grtjn
はい、ありがとう@grtin。 –