Till Toenshoff created MESOS-2464:
-------------------------------------
Summary: Authentication failure may lead to slave crash
Key: MESOS-2464
URL: https://issues.apache.org/jira/browse/MESOS-2464
Project: Mesos
Issue Type: Bug
Reporter: Till Toenshoff
Assignee: Till Toenshoff
When slave authentication fails, the following attempt to transmit a
{{UnregisterSlaveMessage}} may cause a crash within the slave.
{noformat}
E0309 01:08:34.819758 336699392 slave.cpp:740] Master
[email protected]: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
{noformat}
The problem here is the following code:
{noformat}
UnregisterSlaveMessage message_;
message_.mutable_slave_id()->MergeFrom(info.id());
{noformat}
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.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)