> On Feb. 11, 2017, 8:57 a.m., Benjamin Mahler wrote: > > src/common/protobuf_utils.hpp, lines 164-165 > > <https://reviews.apache.org/r/55710/diff/4/?file=1628277#file1628277line164> > > > > This is unfortunate since the bool and the repeated field need to be > > kept consistent but there's nothing enforcing this. > > > > How about a function that generates the repeated field? > > > > ``` > > google::protobuf::RepeatedPtrField<SlaveInfo::Capability> > > toRepeatedField() const > > { > > ...; > > } > > ``` > > > > Alternatively, store the capabilities as you did here, but make the > > booleans functions that loop over the capabilities: > > > > ``` > > bool multiRole() const > > { > > ...; > > } > > ```
I went for the first solution so that we don't need to affect some existing code. However, would this somehow affect performance? - Jay ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/55710/#review165217 ----------------------------------------------------------- On Feb. 13, 2017, 5:35 p.m., Jay Guo wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/55710/ > ----------------------------------------------------------- > > (Updated Feb. 13, 2017, 5:35 p.m.) > > > Review request for mesos, Benjamin Bannier, Benjamin Mahler, Guangya Liu, and > Michael Park. > > > Bugs: MESOS-6902 > https://issues.apache.org/jira/browse/MESOS-6902 > > > Repository: mesos > > > Description > ------- > > Master should be able to reflect agent capabilities via `/state`(v0) > and `getState`(v1) endpoints. > > > Diffs > ----- > > include/mesos/master/master.proto a2228db8902c297f137b8106a7b3d2babbc35017 > include/mesos/v1/master/master.proto > cfdca7400d98233c6320eebd8784e4f51c43ebbd > src/common/protobuf_utils.hpp 3ba689f30ae080ea9b2a0af4d819dd3e377c7bf5 > src/common/protobuf_utils.cpp ed84e9ae083c2dc6cd8b49d9ce8dc624a8607b8a > src/master/http.cpp c5324abc0db82275fd65d3f7d361ad8ee9e017d1 > src/tests/master_tests.cpp 9a7a953adbbbed0b37082bb0166d03b1388c80ae > > Diff: https://reviews.apache.org/r/55710/diff/ > > > Testing > ------- > > make check GTEST_FILTER="MasterTest.StateEndpointAgentCapabilities" > [ OK ] MasterTest.StateEndpointAgentCapabilities (85 ms) > [----------] 1 test from MasterTest (94 ms total) > > [----------] Global test environment tear-down > [==========] 1 test from 1 test case ran. (122 ms total) > > make check on Ubuntu 14.04 > > > Thanks, > > Jay Guo > >
