New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CI][C++] Nightly test-conda-cpp-valgrind is flaky due to arrow-compute-vector-test taking closer to 500 seconds #35636
Comments
I think we could probably be more selective about which types we test (e.g. testing one or two of the 8 integer types is often sufficient) if we really wanted to trim down the runtimes. |
@westonpace @pitrou should we do something about this flaky one? |
@raulcd Someone should ideally take a look into it and try to reduce the runtime under Valgrind. For example, it's not obvious that testing all datatypes exhaustively with random input is useful (why all integers, both signed and unsigned, for example?). Test sizes could also be reduced a bit. @felipecrv Since you've been working quite a bit on kernels, would you like to take a look at this? |
An orthogonal solution is to split |
I will try to reduce number of allocations in tests (I hope it's possible to do so), but will split these tests as I don't feel safe selecting which tests to disable. When developing kernels, exhaustive tests were very helpful in catching unexpected UB and mistakes in the type dispatching logic. |
I generate a bunch of test cases for run-end encoding (and decoding), but it's really fast compared to other kernels. Number of variations is a bad predictor of test cost.
|
I tried looking for inefficiencies in test code, but none of the changes I tried made a difference. So I opened a PR containing just tests extracted. |
…-test (#36401) ### Rationale for this change `arrow-compute-vector-test` is too big and takes a long time to run because of that. ### What changes are included in this PR? Extracting two tests. Timings on my machine (Debug builds with ASAN). ``` debug/arrow-compute-vector-test > /dev/null 11.54s user 0.47s system 99% cpu 12.023 total debug/arrow-compute-vector-sort-test > /dev/null 13.30s user 0.26s system 99% cpu 13.579 total debug/arrow-compute-vector-selection-test > /dev/null 6.97s user 0.22s system 99% cpu 7.207 total ``` ### Are these changes tested? Yes. ### Are there any user-facing changes? No. * Closes: #35636 Authored-by: Felipe Oliveira Carvalho <felipekde@gmail.com> Signed-off-by: Antoine Pitrou <antoine@python.org>
…vector-test (apache#36401) ### Rationale for this change `arrow-compute-vector-test` is too big and takes a long time to run because of that. ### What changes are included in this PR? Extracting two tests. Timings on my machine (Debug builds with ASAN). ``` debug/arrow-compute-vector-test > /dev/null 11.54s user 0.47s system 99% cpu 12.023 total debug/arrow-compute-vector-sort-test > /dev/null 13.30s user 0.26s system 99% cpu 13.579 total debug/arrow-compute-vector-selection-test > /dev/null 6.97s user 0.22s system 99% cpu 7.207 total ``` ### Are these changes tested? Yes. ### Are there any user-facing changes? No. * Closes: apache#35636 Authored-by: Felipe Oliveira Carvalho <felipekde@gmail.com> Signed-off-by: Antoine Pitrou <antoine@python.org>
Describe the bug, including details regarding any error messages, version, and platform.
Sometimes the test-conda-cpp-valgrind nightly test fails due to a timeout on arrow-compute-vector-test. Examples:
with the failure:
When it succeeds it is close to the 500 seconds, example:
I am not sure whether we should reduce the tests time or split the test so we stop getting those timeouts.
Component(s)
C++, Continuous Integration
The text was updated successfully, but these errors were encountered: