繁体   English   中英

Jenkins在构建和后期构建之间挂起

[英]Jenkins hangs between build and post-build

将Jenkins更新到版本2.156(从版本1.6)后,我们的一些构建作业在完成之后和转移到构建后操作之前就会卡住。 作业本身在5分钟内完成(与之前相同),然后挂起5-10分钟再继续。

我设法将其缩小到这个范围:

"Executor #10 for master : executing 03_masa #4390" Id=34464 Group=main TIMED_WAITING
    at java.lang.Thread.sleep(Native Method)
    at hudson.util.ProcessTree$WindowsOSProcess.killSoftly(ProcessTree.java:560)
    at hudson.util.ProcessTree$WindowsOSProcess.killRecursively(ProcessTree.java:520)
    at hudson.util.ProcessTree$Windows.killAll(ProcessTree.java:666)
    at hudson.Launcher$LocalLauncher.kill(Launcher.java:955)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:510)
    at hudson.model.Run.execute(Run.java:1810)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:429)

可在此处找到引用的代码(自2.141版本开始)。

threadDump#1threadDump#2

我们可以做些什么吗?

2.141在进程终止时引入了2分钟的等待(它似乎与在构建期间创建的进程数相乘)

https://github.com/jenkinsci/jenkins/commit/d8eac92ee9a1c19bf145763589f1c152607bf3ed

不确定为什么killSoftly不起作用但你可以配置超时

在你的jenkins.xml中,你可以将它添加到/service/arguments元素(在-jar之前),如下所示:

-DSoftKillWaitSeconds=0

执行此操作并重新启动jenkins后,您应该能够在/systemInfo下找到SoftKillWaitSeconds设置

你的构建时间应该恢复正常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM