"QueryFailedError{Message: workflow must handle at least one decision task before it can be queried}" 尝试 运行 工作流程时
"QueryFailedError{Message: workflow must handle at least one decision task before it can be queried}" when trying to run a workflow
我在尝试启动工作流(并查询它的初始化)时遇到上述错误。我花了一些时间来了解事物的名称 - 在阅读 this 之后,我更清楚什么是真正的决策任务,但我认为我仍然有点迷失在术语中。所以我相信我的案例决策任务需要超过 1 秒的时间(queryFirstDecisionTaskWaitTime)。这个等待时间是否可以以任何方式配置?有没有人遇到过类似的问题?
是的,您应该能够通过设置请求超时来“配置”queryFirstDecisionTaskWaitTime
。
例如,在 golang 中,这只是将查询请求发送到 Cadence 服务器时的上下文超时。
在 CLI 中测试:
% date ; ~/cadence/cadence --ct 10 --do qlong wf query -w helloworld_b721724d-11f9-4b5b-a158-2bda4a230297 --query_type "__stack_trace" ; date
Thu Oct 8 14:46:47 PDT 2020
Error: Query workflow failed.
Error Details: QueryFailedError{Message: workflow must handle at least one decision task before it can be queried}
('export CADENCE_CLI_SHOW_STACKS=1' to see stack traces)
Thu Oct 8 14:46:56 PDT 2020
注意:--ct 10 表示我们使用 10 秒作为此命令的上下文超时。
defaultQueryFirstDecisionTaskWaitTime 至少为一秒。目前没有办法改变这个最小边界。而且我认为我们不需要它,因为您可以根据每个请求进行配置 :D
顺便说一句,感谢您在 StackOverfolw 中提问,这有助于我们更好地为社区保存知识。
哦,我想通了 - 我的 tasklist
配置不正确。所以这就是工作流程卡在 DecisionTaskScheduled
状态
的原因
我在尝试启动工作流(并查询它的初始化)时遇到上述错误。我花了一些时间来了解事物的名称 - 在阅读 this 之后,我更清楚什么是真正的决策任务,但我认为我仍然有点迷失在术语中。所以我相信我的案例决策任务需要超过 1 秒的时间(queryFirstDecisionTaskWaitTime)。这个等待时间是否可以以任何方式配置?有没有人遇到过类似的问题?
是的,您应该能够通过设置请求超时来“配置”queryFirstDecisionTaskWaitTime
。
例如,在 golang 中,这只是将查询请求发送到 Cadence 服务器时的上下文超时。
在 CLI 中测试:
% date ; ~/cadence/cadence --ct 10 --do qlong wf query -w helloworld_b721724d-11f9-4b5b-a158-2bda4a230297 --query_type "__stack_trace" ; date
Thu Oct 8 14:46:47 PDT 2020
Error: Query workflow failed.
Error Details: QueryFailedError{Message: workflow must handle at least one decision task before it can be queried}
('export CADENCE_CLI_SHOW_STACKS=1' to see stack traces)
Thu Oct 8 14:46:56 PDT 2020
注意:--ct 10 表示我们使用 10 秒作为此命令的上下文超时。
defaultQueryFirstDecisionTaskWaitTime 至少为一秒。目前没有办法改变这个最小边界。而且我认为我们不需要它,因为您可以根据每个请求进行配置 :D
顺便说一句,感谢您在 StackOverfolw 中提问,这有助于我们更好地为社区保存知识。
哦,我想通了 - 我的 tasklist
配置不正确。所以这就是工作流程卡在 DecisionTaskScheduled
状态