2011-07-14 24 views
1

SolrJを使用して、Solrサーバーに文書を索引付けするJavaアプリケーションを使用しています。Solr Read Timeout(実稼働環境のみ)

私のローカルのテスト環境では、Windows XPのボックスのTomcatサーバー上でローカルのSolrインスタンスを実行します。別のWindowsボックスからJavaアプリケーションを実行すると、インデックス作成は正常に完了し、Solrログファイルは正常に見えます。

しかし、Solrのを実行している別のLinuxのWebサーバと通信するLinuxのWebサーバ上に配備同じJavaアプリケーションを実行している、私はすべてのSolrの更新コマンドの後にメッセージ「タイムアウトしを読んで」受信:

2011年7月14日3時12分:31 AM org.apache.solr.core.SolrCore INFOを実行する:[]

Webアプリケーション=/Solrのパス= /更新のparams = {質量= javabin &バージョン= 1}ステータス= 400 QTIME = 20020 07月14日2011 3:12:51 AM org.apache.solr.update.processor.LogUpdateProcessor終了情報:{} 0 20021 7月org.apache.solr.common.SolrExceptionログ 重大度:org.apache.solr.common.SolrException: java.net.SocketTimeoutException:読み取りがタイムアウトになった org.apache.solrです。 org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54) でhandler.XMLLoader.load(XMLLoader.java:72)によって引き起こさ

...で: javax.xml.stream .XMLStreamException:java.net.SocketTimeoutException: タイムアウトの読み取り

これはどうして起こっているのでしょうか?私の疑念は、これらの接続が開始された後(例えば、ウェブフィルタリングソフトウェア、ファイアウォール...)、これらの接続が切断されていると思われるが、私の職場のネットワーク管理者はトラフィックがブロックされていないと言う。

答えて

0

タイムアウトは更新されているだけで、クエリでさえ得られていますか?

Linuxサーバマシンのサーバ設定が、タイムアウト値が非常に短いかどうかを確認してください。

+0

solrconfig.xmlのコミットタイムアウト値は50秒に設定されています。私は間違っているかもしれませんが、他のタイムアウト値を設定する必要はないと思います。 – Kyle

+0

基礎となるhttpclientライブラリに割り当てられたsolrjタイムアウトもあります – fyr

関連する問題