Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-17122

Support InputSelectable and BoundedMultiInput operators with checkpointing

    XMLWordPrintableJSON

Details

    Description

      Currently when user defined some InputSelectable or BoundedMultiInput operators, checkpointing is not supported. Main problem is the that combination of InputSelectable and barrier alignment can lead to deadlocks (checkpoint barrier stuck on not selected channel).

      Problem could be somehow mitigated via unaligned checkpoints (FLINK-14551), but not fully. Even with unaligned checkpoints, checkpoint barriers can be stuck in the job graph if there is a flatMap operator (or non flatMap operator but if records are spanning multiple buffers), blocked in the middle of processing by some down stream input selection. In such case we are not able to perform unaligned checkpoint.

      Potential solution could be using persistent communication channels or detecting before mentioned situations and avoid the dead lock by spilling excess data.

      As most of the problems are with input selections that are randomly flipping, there might be some partial solution for more trivial cases, like reading one side of an input fully before the other.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              pnowojski Piotr Nowojski
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated: