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

Docker executor doesn't wait for status updates to be ack'd before shutting down.

    XMLWordPrintableJSON

    Details

    • Sprint:
      Containerization: RI-16 Sp 50, Studio 1: RI-23 64, Studio 1: RI-24 65
    • Story Points:
      5

      Description

      The docker executor doesn't wait for pending status updates to be acknowledged before shutting down, instead it sleeps for one second and then terminates:

        void _stop()
        {
          // A hack for now ... but we need to wait until the status update
          // is sent to the slave before we shut ourselves down.
          // TODO(tnachen): Remove this hack and also the same hack in the
          // command executor when we have the new HTTP APIs to wait until
          // an ack.
          os::sleep(Seconds(1));
          driver.get()->stop();
        }
      

      This would result in racing between task status update (e.g. TASK_FINISHED) and executor exit. The latter would lead agent generating a `TASK_FAILED` status update by itself, leading to the confusing case where the agent handles two different terminal status updates.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                abudnik Andrei Budnik
                Reporter:
                mzhu Meng Zhu
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: