Alexey Serbin has uploaded this change for review. (
http://gerrit.cloudera.org:8080/9387
Change subject: [consensus_peers] micro-optimization on controller status
......................................................................
[consensus_peers] micro-optimization on controller status
While running raft_consensus_stress-itest I found the following stats
for operator new[](unsigned long) in tserver with regard of
Status::CopyState():
- 1.13% kudu-tserver libtcmalloc.so.4.5.1 [.] operator
new[](unsigned long)
- operator new[](unsigned long)
...
+ 3.21% kudu::Status::CopyState(char const*)
kudu::Status::Status(kudu::Status const&)
kudu::rpc::OutboundCall::status() const
kudu::rpc::RpcController::status() const
kudu::consensus::Peer::ProcessResponse()
...
This tiny patch adds micro-optimization to avoid calling copying
Status multiple times in consensus::Peer::ProcessResponse().
Change-Id: I25ac21db191a21f3bdfb3378e32fbe366d98297c
---
M src/kudu/consensus/consensus_peers.cc
1 file changed, 9 insertions(+), 7 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/87/9387/1
--
To view, visit http://gerrit.cloudera.org:8080/9387
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I25ac21db191a21f3bdfb3378e32fbe366d98297c
Gerrit-Change-Number: 9387
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <[email protected]>