私はSolr in Manutingをmanningで読んでいましたが、コミットとさまざまなサーチャーウォーミングのオプションに関する質問はほとんどありませんでした。Apache SOLR - Searcherのオプションとコミット
属性は、指定された時間間隔(maxTime)、doc Count(maxDocs)に基づいてディスクに書き込まれるドキュメントをコミットするよう指示します。
質問1: - MAXTIMEとmaxDocsの両方を一緒に与えることができたりしているこれらの相互exclusice
自動コミットはopenNewSearcherを呼び出すattibute子供を持っています。
本書では、openNewSearcherは、新しいサーチャーが初期化されてウォーミングされるたびに(時間またはカウントに基づいて)コミットされるたびにtrueに設定されると述べています。
質問2:このような場合、コミット後に発行されたすべてのクエリは、サーチャーが温かくなるまでブロックされます。
質問3:何が進行中であり、現時点で実行を完了していないクエリに起こるコミットが
ありがとうございます。質問#2に関して、openNewSearcherが自動コミットのためにtrueに設定されている場合、新しいサーチャーは、それがウォーミングされていないにもかかわらず、新しいクエリーのサービスにすぐに利用可能ですか?明示的にコミットするためにwaitSearcherがtrueに設定されている場合、クライアント検索は新しい検索者が完全に暖まるまでブロックされます。間違っていたら間違いなく修正してください。 – redeemed
いいえ、waitSearcherはリクエスト元のクライアントをブロックして、新しいサーチャーがいつ利用可能かを知ることができます。私の知る限り、コミット・クライアントが待機している間も照会は引き続き提供されます。私が正しく覚えていれば、温暖化に関しては、捜索者は温暖化が起こる前に利用できないだろうが、古い人はまだ内容を提供するだろう。 – MatsLindh
これは、waitSearcherがtrueに設定されているということは、コミット・クライアントが新しいサーチャーが使用可能で暖められたことを戻すという事実(wait = trueの場合)をコミット・クライアントに認識させることに過ぎません。クエリー・クライアントは、コミット・コールが戻るまで失効したデータを表示します。親切に確認してください。 waitSearcher = falseの場合は、ウォーミングがバックグラウンドで発生している間に、コミットコールがすぐに返されます(コンテンツをディスクに書き込んだと仮定)。この場合、クエリクライアントは部分的に暖かいサーチャーによってサービスされるでしょうか? – redeemed