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

Authentication failure may lead to slave crash

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.23.0
    • None
    • Mesosphere Sprint 12
    • 1

    Description

      When slave authentication fails, the following attempt to transmit a UnregisterSlaveMessage may cause a crash within the slave.

      E0309 01:08:34.819758 336699392 slave.cpp:740] Master master@192.168.178.20:5050 refused authentication
      I0309 01:08:34.819787 336699392 slave.cpp:538] Master refused authentication; unregistering and shutting down
      
      [libprotobuf FATAL google/protobuf/message_lite.cc:273] CHECK failed: IsInitialized(): Can't serialize message of type "mesos.internal.UnregisterSlaveMessage" because it is missing required fields: slave_id.value
      libprocess: slave(1)@192.168.178.20:5051 terminating due to CHECK failed: IsInitialized(): Can't serialize message of type "mesos.internal.UnregisterSlaveMessage" because it is missing required fields: slave_id.value
      

      The problem here is the following code:

            UnregisterSlaveMessage message_;
            message_.mutable_slave_id()->MergeFrom(info.id());
      

      Authentication happens before registration. info.id is an optional member (of SlaveInfo) and not known yet. It is set later, while registering. So slave_id will remain unset.

      Attachments

        Activity

          People

            tillt Till Toenshoff
            tillt Till Toenshoff
            Adam B Adam B
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: