仮想テスト マシンで長いビルドを実行している CruiseControl で問題が発生しています。ログは、ビルド中にクルーズコントロールが再起動していることを示しています。これは、cruisecontrol.log が示すものです。
...
2012-05-17 08:09:30,719 [Thread-30] INFO ScriptRunner - ccAnt..
2012-05-17 08:09:31,202 [Thread-30] INFO ScriptRunner - ccAnt..
2012-05-17 08:09:32,042 [Thread-30] INFO ScriptRunner - ccAnt..
2012-05-17 08:03:49,674 [WrapperSimpleAppMain] INFO Main - CruiseControl Version 2.8.4 Compiled on January 5 2012 0831
2012-05-17 08:03:49,674 [WrapperSimpleAppMain] INFO XMLConfigManager - reading settings from config file [C:\systest\cruisecontrol\systest-cc-config.xml]
2012-05-17 08:03:50,328 [WrapperSimpleAppMain] FATAL PluginXMLHelper - Error configuring plugin.
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
...
Cruisecontrol は ant タスクを実行していますが、ログの 4 行目に突然再起動したように見えます。ビルドが完全に終了することもあれば、再起動が発生することもあります。
この問題は、7 64 から xp32 までのさまざまなフレーバーの Windows で発生します。仮想マシンには、5 GB の RAM とデュアル コア プロセッサが搭載されています。ビルドには 500 ~ 600 分かかる場合があり、個々の Ant タスクの一部には 150 分かかる場合があります。
クルーズ コントロールの下で同じ一連のタスクを実行するスタンドアロンの Windows 7 64 マシンがあることに注意してください。この問題は発生しません。仮想マシンの約 1/7 の時間でビルドを実行します。
誰でもこれについて何か考えがありますか?私の最善の推測は、タイムアウトがラッパープロセスまたは親 Java プロセスでトリガーされていることです。ただし、wrapper.conf にはタイムアウトを制御するための変数はありません。
CruiseControl 2.8.4 を使用しています。
新着:
イベント ビューアーで次の 2 つのイベントを見つけました。これらは、ビルドの途中で CruiseControl が再起動したときの CruiseControl ログの時刻に対応しています。
JVM がハングしているように見える: JVM からのシグナルの待機中にタイムアウトになりました。
JVM は要求に応じて終了せず、終了しました
JVM のタイムアウトを増やすにはどうすればよいですか?