Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 2.6.0
Description
The interpreted path is always taken:
if (process_probe_batch_fn_ == NULL || ht_ctx_->level() != 0) {
rows_added = ProcessProbeBatch(join_op_, out_batch, ht_ctx_.get(), &status);
The change was made in this commit without explanation, perhaps by accident:
commit 3938d81d5748595c86bb1b32b6590b476b73a8c3 Author: Nong Li <nong@cloudera.com> Date: Thu Sep 18 10:19:56 2014 -0700 PHJ: Fix block management when spilling. The previous code did not handle well the case where the spilling happens when building the hash table (i.e. partitioning the build rows fit). This caused the probe partition to be starved causing queries that should be able to run to fail with a not enough buffers error. Change-Id: I3a9a84e8800a72ed3ce6f5ab7ff03bc2d6eb7ad8 Reviewed-on: http://gerrit.sjc.cloudera.com:8080/4403 Reviewed-by: Nong Li <nong@cloudera.com> Tested-by: Nong Li <nong@cloudera.com>