fix: checkpoint store correctly initialize in multi-layered sub-workf… (#755)

This commit is contained in:
shentongmartin
2025-08-14 16:34:39 +08:00
committed by GitHub
parent c79ee64fe8
commit 3030d4d627
4 changed files with 16 additions and 9 deletions

View File

@@ -42,6 +42,7 @@ func New(ctx context.Context, s *schema.NodeSchema,
inner compose.Runnable[map[string]any, map[string]any], // inner workflow for composite node
sc *schema.WorkflowSchema, // the workflow this NodeSchema is in
deps *dependencyInfo, // the dependency for this node pre-calculated by workflow engine
requireCheckpoint bool,
) (_ *Node, err error) {
defer func() {
if panicErr := recover(); panicErr != nil {
@@ -87,7 +88,7 @@ func New(ctx context.Context, s *schema.NodeSchema,
return &Node{Lambda: s.Lambda}, nil
case entity.NodeTypeSubWorkflow:
subWorkflow, err := buildSubWorkflow(ctx, s, sc.RequireCheckpoint())
subWorkflow, err := buildSubWorkflow(ctx, s, requireCheckpoint)
if err != nil {
return nil, err
}

View File

@@ -238,7 +238,7 @@ func (w *Workflow) addNodeInternal(ctx context.Context, ns *schema.NodeSchema, i
innerWorkflow = inner.inner
}
ins, err := New(ctx, ns, innerWorkflow, w.schema, deps)
ins, err := New(ctx, ns, innerWorkflow, w.schema, deps, w.requireCheckpoint)
if err != nil {
return nil, err
}