SVNでエラー「E120106」が発生する場合の対処法
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