我设置了一个Jenkins主/从服务器,该服务器工作得很愉快,在某些Linux机器上运行Oracle导入。
我刚刚添加了一个新的从属节点,并尝试在此新节点上运行我们现有的数据库导入作业。这项工作包括三个子项目;第一个运行一些执行Shell,复制文件并更改权限,目前已成功完成,第二个运行一个以Oracle impdp结尾的执行Shell。impdp完成(数据库存在并且ps -ef
不再显示impdp运行),但是Jenkins子项目从未完成。UI只是坐在那里,时钟在旋转。
我尝试在impdp之后添加回显,并且也可以正确执行,但是子项目仍然无法完成。
如果添加构建后电子邮件通知,则不会发送。
从未达到第三个子项目。
这可能是什么原因,以及如何调试正在发生的情况?
在我们的情况下,作业将声明为“完成:成功”,但随后继续进行一些未知的詹金斯业务10到20分钟。在进行了更详细的日志记录之后,我们发现它与名称不正确的LogRotator有关。
我们有成千上万的旧版本,并且正在删除超过一定天数的那些工件。由于处理旧版本的方式不同,Jenkins会搜索旧版本的整个列表,即使它们已删除了工件。
现在有一个与此相关的固定问题:https : //issues.jenkins-ci.org/browse/JENKINS-22607
到目前为止,我尚未在发行版中看到它,但是如果您遇到此问题,则临时解决方法是关闭删除。