Cruisecontrol ビルド サーバーを新しいマシンに移行してから、ビルド サイクルの「modificationset」段階でハングすることがあります (15 分ごとに変更をチェックするように構成されています)。Cruisecontrol 自体は応答性を維持し、ビルドのみが進行しません。
これが発生した場合、CPU に大きな負荷はありません。最終的にはこの状態から抜け出すように見えますが、この状態が 1 時間以上続くのを見てきました。それがどのプロジェクトに起こるかというパターンはないようです。ハードウェアは新品で、問題なく memtest を実行しました。
これはシステム構成です:
- Ubuntu 9.04 サーバー、amd64、完全にアップグレード済み
- svn バージョン 1.5.4 (r33841) - 最新バージョンの apt-get がインストールされます
- Sun JRE 64 ビット ビルド 1.6.0_16-b01 - 再度、最新バージョン
- CruiseControl 2.7.3 (最新ではない)
これは私の変更セットがどのように見えるかです
<modificationset quietperiod="10">
<veto><!-- there are several of these -->
<triggers>
<svn LocalWorkingCopy="${checkout_dir}/base" />
</triggers>
<buildstatus logdir="${log_dir}/base" />
</veto>
<timebuild time="2330" />
<svn LocalWorkingCopy="${checkout_dir}/${project.name}" />
</modificationset>
では、ここで何ができるでしょうか?
編集:これは CruiseControl ログ ファイルからの抜粋で、projectA が 16:07 でハングしていることを示しています (現在も 17:48 でハングしています)。
2009-10-27 16:07:55,096 [Thread-38860] INFO Project - Project projectA: bootstrapping
2009-10-27 16:07:55,096 [Thread-38860] INFO ProjectController - projectA Controller: build progress event: bootstrapping
2009-10-27 16:07:55,262 [Thread-38862] INFO ScriptRunner - Buildfile: work/build-cruisecontrol.xml
2009-10-27 16:07:59,230 [Thread-38860] INFO AntBootstrapper - Bootstrap successful.
2009-10-27 16:07:59,230 [Thread-38860] INFO Project - Project projectA: checking for modifications
2009-10-27 16:07:59,230 [Thread-38860] INFO ProjectController - projectA Controller: build progress event: checking for modifications
2009-10-27 16:11:14,954 [Project projectB thread] INFO Project - Project projectB: in build queue