2016-04-22 5 views
0

FIPを使用して実稼働サーバーにToolTwistアプリケーションをデプロイしていて、Transferフェーズでこのエラーが発生しました。Tooltwistコントローラを使用してデプロイメントを行うときにEofExceptionが発生する

java.net.SocketTimeoutException: Read timed out 
    at java.net.SocketInputStream.socketRead0(Native Method) 
    at java.net.SocketInputStream.read(SocketInputStream.java:152) 

とfipserverコンソールで

org.eclipse.jetty.io.EofException 
    at  org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:892) 
    at org.eclipse.jetty.http.AbstractGenerator.blockForOutput(AbstractGenerator.java:486) 
    at org.eclipse.jetty.http.AbstractGenerator.flush(AbstractGenerator.java:424) 
    at org.eclipse.jetty.server.HttpOutput.flush(HttpOutput.java:78) 
    at org.eclipse.jetty.server.HttpConnection$Output.flush(HttpConnection.java:1094) 
    at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:159) 
    at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:98) 
    at tooltwist.fip.jetty.GetFileListServlet.doGet(GetFileListServlet.java:82) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 

Caused by: java.io.IOException: Broken pipe 
    at sun.nio.ch.FileDispatcherImpl.write0(Native Method) 
    at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) 
    at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:94) 

このためのソリューションがどうあるべきか?

答えて

1

このエラーは、FIPファイル転送の最初の段階で発生します.fipserverは、宛先サーバー上の既存ファイルのインデックスを作成します。これはGetFileListServlet.doGet()で行われます。これはスタックトレースで見ることができます。また、

Indexing source... 
    Indexing destination... 
    ERROR: java.net.SocketTimeoutException Read timed out 
    Exception: tooltwist.fip.FipException: java.net.SocketTimeoutException: Read timed out 

このインデックス処理は、FIP、クライアントは、ソース上のファイルのハッシュと比較先サーバー上の各ファイルのハッシュを作成する必要が...メッセージによって、クライアント側に表示されます機械。どのファイルが異なっているかを判断するためにこれを行います。したがって、インストールする必要があります。

読み取りタイムアウトは、FIPサーバーが宛先マシン上のファイルのインデックスを作成するのにクライアントが長時間待機している場合に発生します。インデックス作成は通常はかなり簡単ですが、宛先ディレクトリの下にあるすべてのファイル(〜/ serverなど)を読み込むことが必要です。その大文字小文字の巨大なファイルがその宛先ディレクトリ内に存在する場合、スキャンは完了するのに比例して長い時間がかかります。その時間が長すぎると、クライアントはタイムアウトして接続を切断し、サーバーは接続が切断されたことを認識して索引付けを停止します。

このエラーの最も一般的な原因は、〜/ server/tomcat/logsに大きすぎるログファイルです。あなたがそれらをきれいにするなら、問題はなくなるはずです。

関連する問題