[ 
https://issues.apache.org/jira/browse/BEAM-11104?focusedWorklogId=757056&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-757056
 ]

ASF GitHub Bot logged work on BEAM-11104:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 14/Apr/22 16:11
            Start Date: 14/Apr/22 16:11
    Worklog Time Spent: 10m 
      Work Description: lostluck commented on code in PR #17334:
URL: https://github.com/apache/beam/pull/17334#discussion_r850595991


##########
sdks/go/pkg/beam/core/graph/edge.go:
##########
@@ -426,8 +426,14 @@ func newDoFnNode(op Opcode, g *Graph, s *Scope, u *DoFn, 
in []*Node, rc *coder.C
        for i := 0; i < len(in); i++ {
                edge.Input = append(edge.Input, &Inbound{Kind: kinds[i], From: 
in[i], Type: inbound[i]})
        }
+       continuation := false
+       // u.Fn is not guaranteed to be non-nil
+       if u.Fn != nil {

Review Comment:
   When Fn is nil, then it's u.Recv is not nil, because [the Fn field is for 
functional DoFns and Recv is for structural 
DoFns.](https://github.com/apache/beam/blob/bc54bf1cecda957fb63217ce846163fbca4de2bb/sdks/go/pkg/beam/core/graph/fn.go#L30)
   
   
   So as written, this is only doing the check for functional DoFns, and not 
structural ones. 
   You should be able to handle both if you call `u.ProcessElementFn()`  then 
call `ProcessContinuation()` on that.
   
   (See handling difference between the two 
[here](https://github.com/apache/beam/blob/bc54bf1cecda957fb63217ce846163fbca4de2bb/sdks/go/pkg/beam/core/graph/fn.go#L380))





Issue Time Tracking
-------------------

    Worklog Id:     (was: 757056)
    Time Spent: 11h 10m  (was: 11h)

> [Go SDK] DoFn Self Checkpointing
> --------------------------------
>
>                 Key: BEAM-11104
>                 URL: https://issues.apache.org/jira/browse/BEAM-11104
>             Project: Beam
>          Issue Type: Sub-task
>          Components: sdk-go
>            Reporter: Robert Burke
>            Assignee: Jack McCluskey
>            Priority: P3
>          Time Spent: 11h 10m
>  Remaining Estimate: 0h
>
> Allow SplittableDoFns to self checkpoint.
> Design doc: 
> https://docs.google.com/document/d/1_JbzjY9JR07ZK5v7PcZevUfzHPsqwzfV7W6AouNpMPk/edit?usp=sharing



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to