cadence-client
cadence-client copied to clipboard
Error "unable to decode argument" if return nil from child workflow
Describe the bug I am writing a cadence workflow that starts some child workflows like this:
var result interface{}
workflow.ExecuteChildWorkflow(childCtx, MyWorkflowName, arg1, arg2).Get(childCtx, &result)
But this fails if the workflows return nil as result.
I get "unable to decode argument: %d, %v, with json error: %v"
from cadence/internal/encoding.go:67
.
Specifically unable to decode argument: 0, *interface {}, with json error: EOF
To Reproduce Can be easily reproduced as described above.
Additional context The problem is similar to the one solved in this issue: https://github.com/uber-go/cadence-client/issues/943
Reproduced. However this only occurs with return type of interface{}
. Any other type works fine.
Hello @vytautas-karpavicius, facing this issue while trying to implement a generic child workflow invocation (similar to dsl
from samples) and interface type is required to support most of the cases. Taking into account it was fixed for activities, I'm not sure why a fix for this was not taken into account, not clear from your response above. Any chance this can be fixed?