Tim Armstrong has posted comments on this change.

Change subject: IMPALA-4192: Disentangle Expr and ExprContext
......................................................................


Patch Set 7:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/5483/7/be/src/exprs/scalar-expr-evaluator.h
File be/src/exprs/scalar-expr-evaluator.h:

Line 62:   static Status Create(ObjectPool* pool, RuntimeState* state, MemPool* 
mem_pool,
> There are places in which the evaluator will have shorter life span than th
+1 putting things in the RuntimeState object pool with the wrong lifetime has 
been a source of some nasty bugs. We should be really careful not to just 
blindly move things to ObjectPools. Especially if things are re-created inside 
subplans, per-partition, etc.

I can think of at least 3-4 different cases where we leaked a lot of memory as 
a result of this kind of mistake. It's hard to test for since you generally 
need a very long-running query.


-- 
To view, visit http://gerrit.cloudera.org:8080/5483
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Iefdc9aeeba033355cb9497e3a5d2363627dcf2f3
Gerrit-PatchSet: 7
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com>
Gerrit-Reviewer: Marcel Kornacker <mar...@cloudera.com>
Gerrit-Reviewer: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-HasComments: Yes

Reply via email to