IMPALA-14544: Fix use-after-poison for Kudu arrays

This patch fixes the use-after-poison error caused by using the memory
in the MemPool after calling `MemPool::Clear()` when reading Kudu
arrays.

Testing:
- The ASAN build passed the core tests.

Change-Id: I9b729fc6003e64856ea0e197b1e3c74dad7247a1
Reviewed-on: http://gerrit.cloudera.org:8080/23668
Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
This commit is contained in:
Xuebin Su
2025-11-11 12:22:55 +08:00
committed by Impala Public Jenkins
parent 5f91838ada
commit e4a508529c

View File

@@ -564,7 +564,6 @@ Status KuduScanner::DecodeRowsIntoRowBatch(RowBatch* row_batch, Tuple** tuple_me
}
}
item_tuple_mem_pool.Clear();
for (int i = 0; i < scan_node_->tuple_desc()->collection_slots().size(); ++i) {
auto slot = scan_node_->tuple_desc()->collection_slots()[i];
Status status = ConvertArrayFromKudu(kudu_tuple, slot, item_tuple_buffers[i],