Browse Source

don't allow tasks to finish in <parallel> when the manual says 'execution is terminated'. PR 49527

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1027125 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 14 years ago
parent
commit
84b4cc0caf
4 changed files with 46 additions and 2 deletions
  1. +4
    -0
      WHATSNEW
  2. +1
    -1
      docs/manual/Tasks/parallel.html
  3. +4
    -1
      src/main/org/apache/tools/ant/taskdefs/Parallel.java
  4. +37
    -0
      src/tests/antunit/taskdefs/parallel-test.xml

+ 4
- 0
WHATSNEW View File

@@ -173,6 +173,10 @@ Fixed bugs:
links from a properties file.
Bugzilla Report 50136.

* <parallel> could allow tasks to start executing even if a task
scheduled to run before them timed out.
Bugzilla Report 49527

Other changes:
--------------



+ 1
- 1
docs/manual/Tasks/parallel.html View File

@@ -79,7 +79,7 @@
<td valign="top">failonany</td>
<td valign="top">If any of the nested tasks fails, execution of the task completes
at that point without waiting for any other tasks to complete.</td>
<td align="center" valign="top">No</td>
<td align="center" valign="top">No, default is false.</td>
</tr>
<tr>
<td valign="top">pollInterval</td>


+ 4
- 1
src/main/org/apache/tools/ant/taskdefs/Parallel.java View File

@@ -350,7 +350,10 @@ public class Parallel extends Task
interrupted = true;
}

killAll(running);
if (!timedOut && !failOnAny) {
// https://issues.apache.org/bugzilla/show_bug.cgi?id=49527
killAll(running);
}
}

if (interrupted) {


+ 37
- 0
src/tests/antunit/taskdefs/parallel-test.xml View File

@@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<project default="antunit"
xmlns:au="antlib:org.apache.ant.antunit">

<import file="../antunit-base.xml" />

<target name="testTimeout"
description="https://issues.apache.org/bugzilla/show_bug.cgi?id=49527">
<au:expectfailure message="Parallel execution timed out">
<parallel timeout="2000">
<sequential>
<echo message="Before sleep" />
<sleep seconds="10" />
<echo message="After sleep" />
</sequential>
</parallel>
</au:expectfailure>
<au:assertLogDoesntContain text="After sleep"/>
</target>
</project>

Loading…
Cancel
Save