You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Benjamin Mahler (JIRA)" <ji...@apache.org> on 2019/05/28 19:40:00 UTC
[jira] [Created] (MESOS-9801) Use protobuf arenas for v1 API
responses.
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)