impala-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Ho (Code Review)" <>
Subject [Impala-ASF-CR] IMPALA-2550: Switch to per-query exec rpc
Date Wed, 19 Apr 2017 23:48:52 GMT
Michael Ho has posted comments on this change.

Change subject: IMPALA-2550: Switch to per-query exec rpc

Patch Set 8:

File be/src/runtime/

PS8, Line 80: insert(
Please consider using emplace() instead.

PS8, Line 96: ctx
finstance_ctx could be a more meaningful name.

PS8, Line 104: TPlanFragmentCtx& ctx
May be fragment_ctx is a more meaningful name to distinguish from the TFragmentInstanceCtx&
in the outer scope.

Line 125:     // instance separately
Will fixing IMPALA-3548 make this code snippet unnecessary ?

PS8, Line 126: DCHECK

PS8, Line 136: // TODO: comment
Missing comment ?

Line 226: bool Coordinator::BackendState::IsDoneInternal() const {
Consider adding inline.

Line 261:     if (instance_exec_status.done) --num_remaining_instances_;
DCHECK_GT(num_remaining_instances_, 0); before decrementing it.

Line 299:     int64_t completion_time = instance_stats.stopwatch_.ElapsedTime();
Not sure if it's paranoid but should we have DCHECK_GT(completion_time, 0); or skip calcuating
rates_ altogether if completion_time is 0 somehow ?
File be/src/runtime/coordinator-backend-state.h:

PS8, Line 63:  const DebugOptions& debug_options
Please add comment for this parameter.

PS8, Line 81: //

PS8, Line 123: int per_fragment_instance_idx() const { return exec_params_.per_fragment_instance_idx;
nit: long line
File be/src/runtime/

PS8, Line 228: new FragmentStats(avg_profile_name, root_profile_name, num_instances, obj_pool()));
nit: long line

PS8, Line 272: if (!fragment.__isset.plan)
Just curious under what circumstances will this be true ?

PS8, Line 330: // source
Source plan node of the filter.

PS8, Line 354: target
Target plan node of the filter
File be/src/runtime/coordinator.h:

PS8, Line 210:  boost::unordered_map<TPlanNodeId, int> node_id_to_idx_map;
Should this be private ? Same for lock.
File be/src/runtime/

PS8, Line 108: Status status;
not used ?

PS8, Line 297: insert
File be/src/runtime/

PS8, Line 102: VLOG_QUERY << "SendFilter()";
remove ?
File be/src/runtime/

PS8, Line 102:   if (query_ctx().request_pool.empty()) {
             :     const_cast<TQueryCtx&>(query_ctx()).request_pool = "test-pool";
             :   }
This seems odd. Why don't we just modify the test to set up query_ctx correctly.
File be/src/runtime/runtime-state.h:

Line 85:   /// installs desc_tbl, if set. If query_ctx.request_pool isn't set, sets it to
This seems odd. Can we modify the test to set up query_ctx.requet_pool correctly before calling
this function ?

To view, visit
To unsubscribe, visit

Gerrit-MessageType: comment
Gerrit-Change-Id: I20769e420711737b6b385c744cef4851cee3facd
Gerrit-PatchSet: 8
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Marcel Kornacker <>
Gerrit-Reviewer: Dan Hecht <>
Gerrit-Reviewer: Henry Robinson <>
Gerrit-Reviewer: Marcel Kornacker <>
Gerrit-Reviewer: Michael Ho <>
Gerrit-Reviewer: Tim Armstrong <>
Gerrit-HasComments: Yes

View raw message