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

    • Containerization: RI-16 Sp 50, Studio 1: RI-23 64, Studio 1: RI-24 65
    • 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

              abudnik Andrei Budnik
              mzhu Meng Zhu
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: