Benjamin Mahler created MESOS-9801:
--------------------------------------

             Summary: Use protobuf arenas for v1 API responses.
                 Key: MESOS-9801
                 URL: https://issues.apache.org/jira/browse/MESOS-9801
             Project: Mesos
          Issue Type: Improvement
          Components: agent, master
            Reporter: Benjamin Mahler


The v1 API response construction is currently slower than the v0 API response 
construction. A primary reason for this is that the v1 API constructs 
intermediate C++ protobuf response objects, which are very expensive in terms 
of memory allocation/deallocation cost. Also involved is the use of 
{{evolve()}} which evolves messages from unversioned protobuf into v1 protobuf. 
This also has very high memory allocation / deallocation cost.

Using arenas for all v1 API response construction will provide a significant 
improvement.

This ticket currently captures all the aspects of this:

* Updating {{evolve()}} to use arenas across all v1 API responses.
* Updating all response construction functions (e.g. {{getState())}}) to use 
arenas.
* Making this change for both the master and agent.

This is blocked by MESOS-9755 since we need to upgrade our bundled protobuf to 
have string fields allocated in the arenas.

We may split out tickets for CHANGELOG purposes if only a portion of this lands 
in 1.9.0.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to