From 0133cc6fd8c549151498291e7796b9719502c8c5 Mon Sep 17 00:00:00 2001
From: ncteisen <ncteisen@gmail.com>
Date: Thu, 27 Jul 2017 16:24:15 -0700
Subject: [PATCH] Avoid benchmarking allocs

---
 test/cpp/qps/server.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/test/cpp/qps/server.h b/test/cpp/qps/server.h
index c0dac96d8b8..df27a4368ea 100644
--- a/test/cpp/qps/server.h
+++ b/test/cpp/qps/server.h
@@ -80,8 +80,11 @@ class Server {
       return false;
     }
     payload->set_type(type);
-    std::unique_ptr<char[]> body(new char[size]());
-    payload->set_body(body.get(), size);
+    // Don't waste time creating a new payload of identical size.
+    if (payload->body().length() != (size_t)size) {
+      std::unique_ptr<char[]> body(new char[size]());
+      payload->set_body(body.get(), size);
+    }
     return true;
   }