bug #IB7EQJ SWITCH后的target如果加了maxWaitMilliseconds导致选不到节点的问题

This commit is contained in:
everywhere.z
2024-11-27 17:11:05 +08:00
parent 3201472d99
commit 6cf11c5b24
3 changed files with 12 additions and 0 deletions

View File

@@ -65,6 +65,8 @@ public abstract class MaxWaitTimeOperator extends BaseOperator<Condition> {
timeoutCondition.addExecutable(executable); timeoutCondition.addExecutable(executable);
timeoutCondition.setMaxWaitTime(maxWaitTime); timeoutCondition.setMaxWaitTime(maxWaitTime);
timeoutCondition.setMaxWaitTimeUnit(getMaxWaitTimeUnit()); timeoutCondition.setMaxWaitTimeUnit(getMaxWaitTimeUnit());
timeoutCondition.setId(executable.getId());
timeoutCondition.setTag(executable.getTag());
return timeoutCondition; return timeoutCondition;
} }

View File

@@ -111,6 +111,11 @@ public class MaxWaitSecondsELSpringbootTest extends BaseTest {
assertNotTimeout("switch2"); assertNotTimeout("switch2");
} }
@Test
public void testSwitch3() {
assertNotTimeout("switch3");
}
// 测试 IF 的超时情况 // 测试 IF 的超时情况
@Test @Test
public void testIf1() { public void testIf1() {

View File

@@ -62,6 +62,11 @@
SWITCH(s).TO(a, b).maxWaitSeconds(3); SWITCH(s).TO(a, b).maxWaitSeconds(3);
</chain> </chain>
<chain name="switch3">
<!-- 不超时 -->
SWITCH(s).TO(a.maxWaitSeconds(3), b.maxWaitSeconds(2));
</chain>
<!-- 条件编排测试 --> <!-- 条件编排测试 -->
<!-- f 返回 true --> <!-- f 返回 true -->
<chain name="if1"> <chain name="if1">