提交 8c9430f1 编写于 作者: J Jesse Glick

Cannot call setResult during finalization phase.

From a random failure of BuildTriggerTest.testMavenBuildTrigger:
java.lang.AssertionError
	at hudson.model.Run.setResult(Run.java:425)
	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:722)
	at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.cleanUp(MavenModuleSetBuild.java:1054)
	at hudson.model.Run.execute(Run.java:1733)
	at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:519)
	at hudson.model.ResourceController.execute(ResourceController.java:88)
	at hudson.model.Executor.run(Executor.java:231)
上级 f82f0bb9
......@@ -719,7 +719,9 @@ public abstract class AbstractBuild<P extends AbstractProject<P,R>,R extends Abs
String msg = "Publisher " + bs.getClass().getName() + " aborted due to exception";
e.printStackTrace(listener.error(msg));
LOGGER.log(WARNING, msg, e);
setResult(Result.FAILURE);
if (phase) {
setResult(Result.FAILURE);
}
}
}
return r;
......
......@@ -422,7 +422,7 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run
public void setResult(Result r) {
// state can change only when we are building
assert state==State.BUILDING;
assert state==State.BUILDING : state;
// result can only get worse
if(result==null) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册