Tim Armstrong has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/8025 )

Change subject: IMPALA-5844: use a MemPool for expr result allocations
......................................................................


Patch Set 12:

(6 comments)

Rebase, then addressed comments.

http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/exec-node.h
File be/src/exec/exec-node.h:

http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/exec-node.h@379
PS11, Line 379:   Status QueryMaintenance(RuntimeState* state) 
WARN_UNUSED_RESULT;
> Yup. Mind dropping a TODO: IMPALA-2399 remove this.
Done


http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/partitioned-aggregation-node.cc
File be/src/exec/partitioned-aggregation-node.cc:

http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/partitioned-aggregation-node.cc@600
PS11, Line 600:
> Cool. Alternatively, if it were worth it, then maybe it'd be better for Cle
Clear() looks fairly cheap (it just iterates over the vector<ChunkInfo>) and I 
don't think this class is super perf critical - it's only called to clean up 
partitions that weren't fully processed.


http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/scanner-context.h
File be/src/exec/scanner-context.h:

http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/exec/scanner-context.h@337
PS11, Line 337:   /// single-threaded scan node implementation.
> Once we can get rid of the multi-threaded scanner case, this seems worth re
IMPALA-6015


http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/runtime/sorter.h
File be/src/runtime/sorter.h:

http://gerrit.cloudera.org:8080/#/c/8025/11/be/src/runtime/sorter.h@199
PS11, Line 199:   /// MemPool for allocating data structures used by expression 
evaluators in the sorter.
              :   MemPool expr_perm_pool_;
              :
              :   /// MemPool for allocations that hold results of expression 
evaluation in the sorter.
              :   /// Cleared periodically during sorting to prevent memory 
accumulating.
              :   MemPool expr_results_pool_;
              :
              :   /// In memory sorter and less-than comparator.
              :   TupleRowComparator compare_less_than_;
> Was also asking about the MemPool (e.g. in ExecNode we have indirection - i
I think the reasoning there is similar - the MemTracker* is a constructor 
parameter and the MemTrackers are not set up until Prepare(). Another advantage 
is that we can forward-declare MemPool instead of pulling in the full header.


http://gerrit.cloudera.org:8080/#/c/8025/12/be/src/udf/udf.h
File be/src/udf/udf.h:

http://gerrit.cloudera.org:8080/#/c/8025/12/be/src/udf/udf.h@352
PS12, Line 352: Serialize()
> and Finalize()? or is it suppose to just say Serialize() is?
Done


http://gerrit.cloudera.org:8080/#/c/8025/12/be/src/udf/udf.h@356
PS12, Line 356: tringVal(FunctionContext*, int) ctor or 
StringVal::CopyFrom(FunctionContext*,
              : /// const uint8_t*, size_t).
StringVal::Resize() also should be listed here.



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ba5a7542ed90a49a4b5586c040b5985a7d45b61
Gerrit-Change-Number: 8025
Gerrit-PatchSet: 12
Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com>
Gerrit-Reviewer: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-Comment-Date: Wed, 04 Oct 2017 19:24:50 +0000
Gerrit-HasComments: Yes

Reply via email to