Since migrating a Cruisecontrol build server to a new machine, it sometimes hangs during the "modificationset" stage of the build cycle (it is configured to check for modifications every 15 minutes). Cruisecontrol itself stays responsive, only the build does not progress.
There is no significant load on the CPU when this happens, and I've seen it stay in this state for an hour or more, though it seems to break out of this state eventually. There doesn't seem to be a pattern to which projects it happens to. The hardware is brand new, and I have run a memtest with no problems.
This is the system configuration:
This is how my modificationsets look like
<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>
So what could be done here?
Edit: Here's a excerpt from the cruisecontrol log file, showing projectA hanging at 16:07 (it is still hanging now at 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
Another idea. You could always start the CruiseControl JVM in debug mode. And whenever it hangs, connect to it using some IDE, e.g. Eclipse. And then you could all the threads of the CC application, and pause some of them and see what are they busy with.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With