Return-Path: Delivered-To: apmail-maven-continuum-dev-archive@www.apache.org Received: (qmail 33436 invoked from network); 14 Sep 2006 13:01:50 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 14 Sep 2006 13:01:50 -0000 Received: (qmail 74838 invoked by uid 500); 14 Sep 2006 13:01:49 -0000 Delivered-To: apmail-maven-continuum-dev-archive@maven.apache.org Received: (qmail 74820 invoked by uid 500); 14 Sep 2006 13:01:49 -0000 Mailing-List: contact continuum-dev-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: continuum-dev@maven.apache.org Delivered-To: mailing list continuum-dev@maven.apache.org Received: (qmail 74798 invoked by uid 99); 14 Sep 2006 13:01:49 -0000 Received: from idunn.apache.osuosl.org (HELO idunn.apache.osuosl.org) (140.211.166.84) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Sep 2006 06:01:49 -0700 Authentication-Results: idunn.apache.osuosl.org smtp.mail=emmanuel@venisse.net; spf=permerror X-ASF-Spam-Status: No, hits=0.0 required=5.0 tests= Received-SPF: error (idunn.apache.osuosl.org: domain venisse.net from 62.193.206.9 cause and error) Received: from ([62.193.206.9:55536] helo=webmail9.amenworld.com) by idunn.apache.osuosl.org (ecelerity 2.1 r(10620)) with ESMTP id 59/00-05454-E6259054 for ; Thu, 14 Sep 2006 06:01:45 -0700 Received: (qmail 6957 invoked from network); 14 Sep 2006 13:00:32 -0000 Received: from 84.27.99-84.rev.gaoland.net (HELO ?127.0.0.1?) (84.99.27.84) by 0 with SMTP; 14 Sep 2006 13:00:32 -0000 Message-ID: <45095261.4030800@venisse.net> Date: Thu, 14 Sep 2006 15:00:17 +0200 From: Emmanuel Venisse User-Agent: Thunderbird 1.5.0.5 (Windows/20060719) MIME-Version: 1.0 To: continuum-dev@maven.apache.org Subject: Re: Cancelling builds References: <45090E1E.4040300@apache.org> In-Reply-To: <45090E1E.4040300@apache.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Kenney Westerhof a écrit : > > Hi Team, > > Yesterday I've committed some code to enable cancelling builds: > > * Schedules have a setting that indicates the maximum job execution time, > where job means BuildProjectTask; 0 means indefinitely, the default > being 1 hour. > > * You can cancel a running build. > I'm not sure where to put the cancel build button, so right now I've > added a '(cancel)' link > to the StateCell that's displayed in the projectGroupSummaryAction page > (and probably other places). > > Some questions/remarks: > > - What's the best place to place the cancel build button? > Perhaps just list the job on the summary page as 'current job' > (in the future: current jobs) and add a cancel button there. > > - The build ID of the cancelled task will either be 0 or max(build id), > depending on when it's cancelled. The project _is_ set in error state > so it finishes normally. This gives me the idea that the build number > issue > already was there; this needs to be fixed (I'm looking into it). > > - The results page is broken - some jdo detached error with scmResults. > I can't figure out > why it doesn't work. > > - We might want to set a timeout on individual actions instead of the > entire job (1.2?) > > - An issue Emmanuel has pointed out to me is that cancelling builds on > windows doesn't work > well. I've dug into the sun site and found several others with the same > problem. > > The issue is that on windows, if you execute a batchfile (Runtime.exec) > and you cancel that, > any process started in the batchfile isn't killed. This is due to > windows process management. I don't know if when you use prcview, it kill subprocess. If not, it's possible to do it because prcview know the hierarchy between processes and we can delete them one by one. 'pv -t' print the tree of all processes 'pv -o"%i %r %f" print process id, parent id, full command line > Just a question: why not call m1/m2/java from a new > classloader/thread within continuum itself? Saves some shell magick, > and it's more easily killed (using the concurrent package). Or call > java directly - also no problem with killing that > and any child processes. I don't think it would be a good idea to launch maven/ant/java in a new classloader/thread because the memory used by continuum won't be the same, users will need to increase the memory used by continuum for all projects that required lot of memory for a build. The second point in that some users don't use the standard ant/maven scripts but a specific for some reason, so I don't think they like to skip the batch phase used in ant/maven. Emmanuel