Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-6660

Status updates and disconnected frameworks

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • master

    Description

      When the master receives a status update, it invokes Master::forward to send the status update to the framework. Master::forward also updates the task's status_update_state and status_update_uuid fields. However, Master::forward is not invoked for disconnected frameworks.

      This scheme has the following drawbacks:

      1. Logically, Master::forward probably shouldn't be updating the state of a task; forward should just forward messages.
      2. The reasoning for not updating status_update_state and status_update_uuid for disconnected frameworks is to try to avoid inconsistencies upon framework reconciliation – we don't want reconciliation to show update X, but then the framework to receive a non-reconciliation update Y, such that Y comes before X in the agent's order. I'm not sure that this is actually a problem (since we wait for framework acks before forwarding subsequent status updates), but in any case, depending on framework connectivity cannot be a correct fix: whether the master thinks the framework is connected at a given time is unreliable and racy (i.e., the master might think the framework is disconnected but it still might receive messages; similarly, "connected" frameworks might not receive messages).

      Attachments

        Activity

          People

            Unassigned Unassigned
            neilc Neil Conway
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: