mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Qian Zhang <>
Subject Re: Review Request 61109: Used the default value when parsing an optional enum field from JSON.
Date Fri, 29 Sep 2017 00:24:58 GMT

This is an automatically generated e-mail. To reply, visit:

(Updated Sept. 29, 2017, 8:24 a.m.)

Review request for mesos, Benjamin Mahler and James Peach.


Leave the enum field unset if it is not a required field, after parsing, its accessor will
return the default enum value.

Bugs: MESOS-7828

Repository: mesos


Previously in MESOS-4997, we have made any inexistent enum value will
be parsed to the default enum value when parsing protobuf message from
a serialized string. Now in this patch, I made parsing protobuf message
from a JSON have the same behavior.

Diffs (updated)

  3rdparty/stout/include/stout/protobuf.hpp 15690b66cc4ae0c1bf2c2176d73c385ca75d3c20 




With this patch, when accessing master endpoint with an inexistent enum `xxx` in a JSON:
curl -X POST -H "Content-Type: application/json" -d '{"type": "xxx"}'
The master log will be:
I0725 23:09:53.097790   665 http.cpp:1133] HTTP POST for /master/api/v1 from
with User-Agent='curl/7.47.0'
I0725 23:09:53.098006   665 http.cpp:669] Processing call UNKNOWN
This proves when parsing an inexistent enum the default enum value (i.e., `UNKNOWN`) will
be used.


Qian Zhang

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message