Skip to content

Commit

Permalink
Increase size of Acero TempStack
Browse files Browse the repository at this point in the history
Certain Acero execution plans can cause an overflow of the TempVectorStack initialized by the QueryContext, and increasing the size of the stack fixes the problem. I don't know exactly what causes the overflow, so I haven't written a test for it.

Fixes apache#39582.
  • Loading branch information
stenlarsson committed Feb 8, 2024
1 parent de3cdc0 commit 0e57ace
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion cpp/src/arrow/acero/query_context.cc
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ size_t QueryContext::max_concurrency() const { return thread_indexer_.Capacity()
Result<util::TempVectorStack*> QueryContext::GetTempStack(size_t thread_index) {
if (!tld_[thread_index].is_init) {
RETURN_NOT_OK(tld_[thread_index].stack.Init(
memory_pool(), 8 * util::MiniBatch::kMiniBatchLength * sizeof(uint64_t)));
memory_pool(), 32 * util::MiniBatch::kMiniBatchLength * sizeof(uint64_t)));
tld_[thread_index].is_init = true;
}
return &tld_[thread_index].stack;
Expand Down

0 comments on commit 0e57ace

Please sign in to comment.