Skip to content

[C++] Acero hash join ManyJoins test failing on several nightly builds #43040

@jorisvandenbossche

Description

@jorisvandenbossche

The ManyJoins tests (part of arrow-acero-hash-join-node-test) added in #41335 seems to be causing nightly failures (cc @zanmato1984).

test-alpine-linux-cpp

Here there is no useful output except for "Segmentation fault", but I assume it is coming from HashJoin.ManyJoins because that is the one that has no "OK" (and the last passing build was from the day the PR was merged)

test-ubuntu-22.04-cpp-emscripten

Here there is some output logs from the failure:

Details
[ RUN      ] HashJoin.ManyJoins
/build/cpp/debug/arrow-acero-hash-join-node-test.js:138
      throw ex;
      ^

RuntimeError: memory access out of bounds
    at arrow-acero-hash-join-node-test.wasm.dlmalloc (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[31169]:0x2023c95)
    at arrow-acero-hash-join-node-test.wasm.operator new(unsigned long) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[33617]:0x206b5c0)
    at arrow-acero-hash-join-node-test.wasm.std::__2::vector<arrow::compute::ResizableArrayData, std::__2::allocator<arrow::compute::ResizableArrayData>>::__append(unsigned long) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[12664]:0x9e131f)
    at arrow-acero-hash-join-node-test.wasm.std::__2::vector<arrow::compute::ResizableArrayData, std::__2::allocator<arrow::compute::ResizableArrayData>>::resize(unsigned long) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[12663]:0x9e1173)
    at arrow-acero-hash-join-node-test.wasm.arrow::compute::ExecBatchBuilder::AppendSelected(arrow::MemoryPool*, arrow::compute::ExecBatch const&, int, unsigned short const*, int, int const*) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[12662]:0x9e0dda)
    at arrow-acero-hash-join-node-test.wasm.arrow::acero::JoinResultMaterialize::Append(arrow::compute::ExecBatch const&, int, unsigned short const*, unsigned int const*, unsigned int const*, int*) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[3665]:0x2952d8)
    at invoke_viiiiiiii (/build/cpp/debug/arrow-acero-hash-join-node-test.js:6049:29)
    at arrow-acero-hash-join-node-test.wasm.arrow::acero::JoinProbeProcessor::OnNextBatch(long long, arrow::compute::ExecBatch const&, arrow::util::TempVectorStack*, std::__2::vector<arrow::compute::KeyColumnArray, std::__2::allocator<arrow::compute::KeyColumnArray>>*) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[3686]:0x29f96b)
    at invoke_viijiii (/build/cpp/debug/arrow-acero-hash-join-node-test.js:6680:29)
    at arrow-acero-hash-join-node-test.wasm.arrow::acero::SwissJoin::ProbeSingleBatch(unsigned long, arrow::compute::ExecBatch) (wasm://wasm/arrow-acero-hash-join-node-test.wasm-0c5ecc4a:wasm-function[3716]:0x2a7bcc)

(cc @joemarshall in case this output gives you any pointers)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions