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

Make InternalTimerService's timer processing interruptible/abortable

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.5.1, 1.6.0
    • Fix Version/s: None
    • Labels:
      None

      Description

      When cancelling a Task, the task thread might currently process the timers registered at the InternalTimerService. Depending on the timer action, this might take a while and, thus, blocks the cancellation of the Task. In the most extreme case, the TaskCancelerWatchDog kicks in and kills the whole TaskManager process.

      In order to alleviate the problem (speed up the cancellation reaction), we should make the processing of the timers interruptible/abortable. This means that instead of processing all timers we should check in between timers whether the Task is currently being cancelled or not. If this is the case, then we should directly stop processing the remaining timers and return.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                SleePy Biao Liu
                Reporter:
                trohrmann Till Rohrmann
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated: