mercurial にコミット出来ないサイズ
久々にハマったのでメモを残す。
413: Request Entity Too Large
のエラーで突然pushできんようなった。
サーバ構成は Apache2.2 + Mercurial(hgwebdir.cgi) 過去設定偏で、1M 以上のファイルをコミットしようとしたら発生した。
で、原因さがすの手間取った。
まずはリクエストサイズが大きいというので、コミットしようとしている個々のファイルサイズを眺めて、Max 1.1Mなのを確認。
httpd.conf に
LimitXMLRequestBody 6000000
書くも失敗。
クライアントのキャッシュ?とも思ったけど、Totoise hg ではそれも関係ないはず。
easy_install -U mercurial
かけて、1.9 にバージョン上げても改善せず。
で、エラーログ眺めたら(本来最初にやるべきタスク)、
[Wed Jul 06 00:11:29 2011] [error] [client xxx.xxx.xxx.xxx] Requested content-length of 6243131 is larger than the configured limit of 4194304
orz |
単に値が足りなかっただけかYO。
LimitXMLRequestBody 10000000
設定したら動いたワーイ。
つまり mercurial は個々に送信するんじゃなくて、一括一発pushなのねん。