当前位置: 首页 > 知识库问答 >
问题:

修复错误后,如何将失败/卡住的工作流程移动到新版本?

左丘宜然
2023-03-14

我的理解是,如果 Bug 在活动中,则将使用新代码,因为 Activity 没有版本的概念。但是,如果工作流代码中存在错误并导致某些工作流失败(或者更糟糕的是,不是失败而是卡住),我们会修复该错误并部署新版本,但是那些失败的工作流会卡在旧版本上,该怎么办?有没有办法自动将这些失败/卡住的工作流程移动到新版本并重新运行它们?

这在我们身上发生了很多,因为我们刚刚开始学习使用节奏/时态

提前谢谢你!

共有1个答案

戚星腾
2023-03-14

这取决于错误。

对于导致工作流卡住的错误(在Go中,nil指针取消引用会导致恐慌,默认情况下会阻止工作流进度),部署新版本的代码通常足以解除屏蔽。

如果错误修复需要向后不兼容的更改,那么最好的选择是将工作流重置到错误之前的点。这样工作流将回滚并通过新代码继续。

对于工作流代码的破坏是由新的错误构建引起的情况,您可以将工作线程回滚到以前的构建,并将该构建标记为已破坏,所有工作流都将自动回滚到该构建之前的状态。请参阅临时文档的“从错误部署中恢复”部分。

如果您使用的是 ElasticSearch 集成,则还可以使用谓词对多个工作流执行批量重置,以选择符合某些条件的工作流。请参阅“作为批处理作业发出信号、取消、终止工作流”部分。除了该部分的名称外,批处理作业也适用于重置操作。

 类似资料:
  • 问题内容: 当我在Jenkins工作流程(Jenkins 1.609.1,工作流程1.8)上运行以下代码时,出现“ NotSerializableException”错误(同样在下面)。但是,如果我将“构建作业”移到“ for”范围之外,则可以正常工作(该作业已激活)。任何想法为什么这种行为? 得到错误: 问题答案: 我thnk这是因为它试图序列化不可序列化的迭代器只要它击中了一步。有关使用不可序

  • 我在文件pom.xml中添加了一些依赖项。 com.fasterxml.jackson.core 杰克逊-core 2.7.3 com.fasterxml.jackson.core 杰克逊-databind 2.7.3 com.fasterxml.jackson.core 杰克逊-annotations 2.7.3 但是当我执行命令mvn eclipse:eclipse来更新maven依赖项时,它

  • 我试图写一个宏,复制表格(颜色,格式等)从工作表的每一天(星期一,星期二,星期三,星期四和星期五)和粘贴到工作表(262个工作表)为同一天。(星期一-星期一等)表名我在表“数据”。

  • 我在Android Studio上出错了。错误:任务“:app:ProcessDebugManifest”执行失败。 清单合并失败:来自AndroidManifest.xml:28:9-52的属性Application@Theme Value=(@style/AppTheme.NOActionBar)也存在于[:AdGateMediaSDK:]AndroidManifest.xml:19:9-40

  • null 理想情况下,我想恢复执行失败的任务,有库存和所有事实收集以前的任务。有可能吗?如何让playbook编写/调试更快?

  • Cassandra修复无法在节点1上运行,出现以下错误。我之前错误地并行启动了多个修复会话。我发现有一个错误https://issues.apache.org/jira/browse/CASSANDRA-11824已经解决了同样的情况。但我已经在使用cassandra 3.9,请确认运行nodetool scrub是否是唯一的解决方法?在运行scrub之前,我们需要记住什么注意事项,因为我需要直接