Tim Armstrong has uploaded a new patch set (#2). Change subject: IMPALA-4752: make ObjectPool more efficient ......................................................................
IMPALA-4752: make ObjectPool more efficient Previously it was implemented as a vector of pointers to dynamically allocated wrapper objects, where each wrapper object stored a pointer to the object and a pointer to a vtable, which had a pointer to a destructor, which then calls the actual object's destructor. Instead of doing this, this patch changes ObjectPool to stores the object pointer and function pointer inline in the vector. This avoids an unnecessary malloc() and free() pair per object. Testing: Ran core tests, which should exercise this heavily during query execution. Change-Id: I1e6a40ac798fa64da4767f530c48710cba623ea5 --- M be/src/common/object-pool.h 1 file changed, 15 insertions(+), 25 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/66/5666/2 -- To view, visit http://gerrit.cloudera.org:8080/5666 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I1e6a40ac798fa64da4767f530c48710cba623ea5 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com> Gerrit-Reviewer: Thomas Tauber-Marshall <tmarsh...@cloudera.com>