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

State inconsistency between RM and TM on the slot status

    XMLWordPrintableJSON

    Details

      Description

      There may be state inconsistency between TM and RM due to race condition and message loss:

      1. When TM sends heartbeat, it retrieve SlotReport in the main thread, but sends the heartbeat in another thread. There may be cases that the slot on TM is FREE initially and SlotReport read the FREE state, then RM requests slot and mark the slot as allocated, and the SlotReport finally override the allocated status at the RM side wrongly.
      2. When RM requests slot, TM received the requests but the acknowledge message get lot. Then RM will think this slot is free. 

       Both the problems may cause RM marks an ALLOCATED slot as FREE. This may currently cause additional retries till the state is synchronized after the next heartbeat, and for the inaccurate resource statistics for the fine-grained resource management in the future.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                till.rohrmann Till Rohrmann
                Reporter:
                gaoyunhaii Yun Gao
              • Votes:
                0 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: