[ 
https://issues.apache.org/jira/browse/IMPALA-2839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tim Armstrong resolved IMPALA-2839.
-----------------------------------
    Resolution: Fixed

We've added a lot of debug or stress options over time, this probably isn't 
useful to keep open.

> add stress options to exercise infrequently executed paths
> ----------------------------------------------------------
>
>                 Key: IMPALA-2839
>                 URL: https://issues.apache.org/jira/browse/IMPALA-2839
>             Project: IMPALA
>          Issue Type: Task
>          Components: Backend
>    Affects Versions: Impala 2.3.0
>            Reporter: Daniel Hecht
>            Priority: Minor
>              Labels: ramp-up
>
> We should add debug-only stress options that help exercise more paths in our 
> testing.  We have one example already: 
> {code:title=global-flags.cc}
> DEFINE_int32(stress_free_pool_alloc, 0, "A stress option which causes memory 
> allocations "
>     "to fail once every n allocations where n is the value of this flag. 
> Effective in "
>     "debug builds only.");
> {code}
> Some examples that we should add:
> * We could exercise this path by overriding the 
> curr_tuple_pool_->total_allocated_bytes() > MAX_TUPLE_POOL_SIZE condition, 
> which would might help test for IMPALA-2829:
> {code:title=AnalyticEvalNode::ProcessChildBatch()}
>   // Transfer resources to prev_tuple_pool_ when enough resources have 
> accumulated
>   // and the prev_tuple_pool_ has already been transfered to an output batch.
>   if (curr_tuple_pool_->total_allocated_bytes() > MAX_TUPLE_POOL_SIZE &&
>       (prev_pool_last_result_idx_ == -1 || prev_pool_last_window_idx_ == -1)) 
> {
>     prev_tuple_pool_->AcquireData(curr_tuple_pool_.get(), false);
>     prev_pool_last_result_idx_ = last_result_idx_;
>     if (window_tuples_.size() > 0) {
>       prev_pool_last_window_idx_ = window_tuples_.back().first;
>     } else {
>       prev_pool_last_window_idx_ = -1;
>     }
>     VLOG_FILE << id() << " Transfer resources from curr to prev pool at idx: "
>               << stream_idx << ", stores tuples with last result idx: "
>               << prev_pool_last_result_idx_ << " last window idx: "
>               << prev_pool_last_window_idx_;
>   }
> {code}
> * We could cause RowBatch::AtCapacity() to become true more often than normal 
> (will be easier to do after http://gerrit.cloudera.org:8080/#/c/1399/ is 
> committed).
> Then we should enable these flags for some of our testing.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to