Anand Mazumdar created MESOS-3067:
-------------------------------------
Summary: Implement a streaming response decoder for events stream
Key: MESOS-3067
URL: https://issues.apache.org/jira/browse/MESOS-3067
Project: Mesos
Issue Type: Task
Reporter: Anand Mazumdar
Assignee: Benjamin Mahler
We need a streaming response decoder to de-serialize chunks sent from the
master on the events stream.
>From the HTTP API design doc:
Master encodes each Event in RecordIO format, i.e. a string representation of
length of the event in bytes followed by JSON or binary Protobuf (possibly
compressed) encoded event.
As of now for getting the basic features right , this is being done in the
test-cases:
{code}
auto reader = response.get().reader;
ASSERT_SOME(reader);
Future<std::string> eventFuture = reader.get().read();
AWAIT_READY(eventFuture);
Event event;
event.ParseFromString(eventFuture.get());
{code}
Two things need to happen:
- We need master to emit events in RecordIO format i.e. event size followed by
the serialized event instead of just the serialized events as is the case now.
- The decoder class should then abstract away the logic of reading the response
and de-serializing events from the stream.
Ideally, the decoder should work with both "json" and "protobuf" responses.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)