Subversionでエラー「E120106: ra_serf: The server sent a truncated HTTP response body.」が発生してチェックアウトできない場合の対処法を解説します。
SVN でチェックアウトができずに詰む
svn checkout
をしている途中で、「E120106: ra_serf: The server sent a truncated HTTP response body.」が発生して止まってしまいました。しかも、作業コピーの状態が中途半端なため、再度の svn checkout
や svn update
もできない状態で詰んでしまいました。
原因
巨大なリポジトリでチェックアウトに時間がかかる場合、サーバーの設定が不適切で、タイムアウトが短かかったり回線が不安定な場合にサーバーとの接続が切断されてしまうことで発生します。
対処方法
原因療法 1
リポジトリのファイル容量やファイル数を減らすことで、タイムアウトを防ぐことができます。
原因療法 2
サーバーの設定の見直し(Apacheの場合httpd.confの Timeout
を大きく)することでタイムアウトを防ぐことができます。
httpd.confの設定例です。
Timeout 60000
対症療法
エラーで中断した後に、クリーンアップを行うことで、アップデートを行うことが可能になり、再度レポジトリからのコピーが再開できます。
svn: error: E120106: ra_serf: The server sent a truncated HTTP response body.
svn cleanup
svn update