[ https://issues.apache.org/jira/browse/MESOS-10110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Mahler reassigned MESOS-10110: --------------------------------------- Assignee: Charles Natali > Libprocess ignores most protobuf (de)serialisation failure cases. > ----------------------------------------------------------------- > > Key: MESOS-10110 > URL: https://issues.apache.org/jira/browse/MESOS-10110 > Project: Mesos > Issue Type: Bug > Components: libprocess > Reporter: Charles > Assignee: Charles Natali > Priority: Major > > Before the code didn't check at all the return value of > {{Message::SerializeToString}}, which can fail for various reasons, > e.g. out-of-memory, message too large, or invalid UTF-8 string. > Also, the way deserialisation was checked for error using > {{Message::IsInitialized}} doesn't detect errors such as the above, > we need to check {{Message::ParseFromString}} return value. > {{}} > We noticed this at work because our custom executor had a bug causing it to > send invalid/non-UTF8 {{mesos.TaskID}}, but it was successfully serialised by > the executor (driver), and deserialised by the framework, which was blowing > it to blow up at later point far from the original source of the problem. > More generally we want to catch such invalid messages - which can happen for > a variety of reasons - as early as possible. -- This message was sent by Atlassian Jira (v8.3.4#803005)