Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-14551 Unaligned checkpoints
  3. FLINK-17413

Refactor the usages of ThreadSafeUnaligner#storeNewBuffers

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • 1.12.0
    • None

    Description

      In current ThreadSafeUnaligner, the variable `storeNewBuffers` has actually two usages. One is for avoiding duplicated counter for processing barrier or notifying received barrier for a respective channel. Another usage is for judging whether the notified buffer should be spilled by writer or not.

      In RemoteInputChannel, we already have the states  of `lastRequestedCheckpointId` and `receivedCheckpointId` to control whether the received buffer should be notified to unaligner component. In other words, as long as the `RemoteInputChannel` decides to notify this received buffer, it should be always needed to spill in ThreadSafeUnaligner. So we can remove the related condition inside ThreadSafeUnaligner#notifyBufferReceived and make the semantic of `storeNewBuffers` more clearly.

      Attachments

        Issue Links

          Activity

            People

              zjwang Zhijiang
              zjwang Zhijiang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: