Hello all, I think this is happening because an external application is being called (e.g. checking for SCM modifications, retrieving source code, running a task, etc.)
>From what I can see in the code, a stop command doesn't kill any existing build - e.g. it doesn't send an AbortBuild command to any running projects. Instead, it sets the status of each project to stopping and then waits for the project thread to terminate. This means, if there is a build in progress (or a modification check), the project will continue building until finished, and only then will it stop and terminate the thread. Now we could send an abort build command to kill any active builds, but this has the side affect of potentially screwing up any data (e.g. SVN cache information, leaving files locked, etc.), so I am not very keen on doing this. An alternate would be to implement a cancellation process, where the project would check to see if it has been cancelled before running each task. This could be used in conjunction with servicebase.requestadditionaltime (since we don't know how long it would take to complete a task). Does anyone have any comments or preferences on this? Craig On Jun 17, 6:17 am, Daniel Nauck <[email protected]> wrote: > I noticed this problem everytime since the hot copy implementation. But > I don't know if hot copy is really the cause. > > David Gardiner schrieb: > > > I've certainly seen this problem when there are no projects running. > > > The odd thing is that the service status goes to "pending stop" and > > then changes back to "started", which is not what should happen. > > > I haven't checked the source, but the convention is that a service > > should shutdown as quickly as possible, but if it might take a little > > longer to finish up, RequestAdditionalTime (http://msdn.microsoft.com/ > > en-us/library/ > > system.serviceprocess.servicebase.requestadditionaltime.aspx) should > > be called to let the SCM know we're not finished yet. > > > -david > > > On Jun 16, 3:59 pm, Ruben Willems <[email protected]> wrote: > > >> Hi > > >> if that's the case, than there is probably only 1 loop through the chanin > >> of > >> projects, > >> and not a test if all projects are stopped. > > >> with kind regards > >> Ruben Willems > > >> On Tue, Jun 16, 2009 at 8:56 AM, CinnamonDonkey < > > >> [email protected]> wrote: > > >>> I've seen this problem when there is no active projects (running on > >>> Windows XP). > > >>> On 16 June, 07:21, Ruben Willems <[email protected]> wrote: > > >>>> Hi > > >>>> I noticed this too, but when I tried to stop the service there was a > > >>> project > > >>>> being integrated. > >>>> So my guess is that ccnet tries to complete the integration iso aborting > > >>> it. > > >>>> Jira entry made :http://jira.public.thoughtworks.org/browse/CCNET-1568 > > >>>> please vote for them, we try to fix the ones with votes first. > > >>>> with kind regards > >>>> Ruben Willems > > >>>> On Tue, Jun 16, 2009 at 3:55 AM, David Gardiner <[email protected] > >>>> wrote: > > >>>>> I've noticed with the latest 1.4.4 releases, that if I try and stop > >>>>> the CCSERVICE, that it will try and stop but then keep running... eg. > > >>>>> c:\Program Files\Microsoft Visual Studio 9.0\VC>sc \\a8002123 stop > >>>>> ccservice > > >>>>> SERVICE_NAME: ccservice > >>>>> TYPE : 10 WIN32_OWN_PROCESS > >>>>> STATE : 3 STOP_PENDING > > >>>>> (STOPPABLE,NOT_PAUSABLE,ACCEPTS_SHUTDOWN) > >>>>> WIN32_EXIT_CODE : 0 (0x0) > >>>>> SERVICE_EXIT_CODE : 0 (0x0) > >>>>> CHECKPOINT : 0x0 > >>>>> WAIT_HINT : 0x0 > > >>>>> So if I then check, the service is back to 'RUNNING'. > > >>>>> Telling it to stop again seems to work, but does confuse Windows as it > >>>>> takes ages to report back to say that the service is now not > >>>>> responding (presumably because it has shutdown). > > >>>>> -dave
