arrow
arrow copied to clipboard
ARROW-17837: [C++][Acero] Create ExecPlan-owned QueryContext that will store a plan's shared data structures
https://issues.apache.org/jira/browse/ARROW-17837
:warning: Ticket has no components in JIRA, make sure you assign one.
:warning: Ticket has not been started in JIRA, please click 'Start Progress'.
Seems like the only failure is in the scanner (again probably caused by scanner refactor):
[ RUN ] BasicNewScannerTests/TestScannerBase.ScanOrdered/3slow16f128b
[262](https://github.com/apache/arrow/actions/runs/3176942289/jobs/5176817702#step:11:263)
terminate called after throwing an instance of 'std::system_error'
[263](https://github.com/apache/arrow/actions/runs/3176942289/jobs/5176817702#step:11:264)
what(): Resource temporarily unavailable
[264](https://github.com/apache/arrow/actions/runs/3176942289/jobs/5176817702#step:11:265)
terminate called recursively
[265](https://github.com/apache/arrow/actions/runs/3176942289/jobs/5176817702#step:11:266)
@save-buffer I had to make a few minor changes (hiding QueryContext from the public API). Feel free to suggest alternative approaches in a future PR if you disagree.
Benchmark runs are scheduled for baseline = ff1002056ec394811734fe00565b29e4ba15ec22 and contender = 54c487bf279a6129547e893d8b90a6813f1f12ab. 54c487bf279a6129547e893d8b90a6813f1f12ab is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished :arrow_down:0.0% :arrow_up:0.0%] ec2-t3-xlarge-us-east-2
[Failed] test-mac-arm
[Finished :arrow_down:0.26% :arrow_up:1.53%] ursa-i9-9960x
[Finished :arrow_down:0.86% :arrow_up:0.1%] ursa-thinkcentre-m75q
Buildkite builds:
[Finished] 54c487bf
ec2-t3-xlarge-us-east-2
[Failed] 54c487bf
test-mac-arm
[Finished] 54c487bf
ursa-i9-9960x
[Finished] 54c487bf
ursa-thinkcentre-m75q
[Finished] ff100205
ec2-t3-xlarge-us-east-2
[Failed] ff100205
test-mac-arm
[Finished] ff100205
ursa-i9-9960x
[Finished] ff100205
ursa-thinkcentre-m75q
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python, R. Runs only benchmarks with cloud = True
test-mac-arm: Supported benchmark langs: C++, Python, R
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java
@github-actions crossbow submit test-ubuntu-20.04-cpp-20
Revision: 84cc75fab76e20e1eb9108f3d1b1591279322cd1
Submitted crossbow builds: ursacomputing/crossbow @ actions-5a033ea620
Task | Status |
---|---|
test-ubuntu-20.04-cpp-20 |
@save-buffer @westonpace It seems that this broke test-ubuntu-20.04-cpp-20
. Could you confirm this?
https://github.com/ursacomputing/crossbow/actions/runs/3785729320/jobs/6436002570#step:5:2976
FAILED: src/arrow/CMakeFiles/arrow_objlib.dir/compute/exec/source_node.cc.o
/usr/local/bin/sccache /usr/bin/c++ -DARROW_EXPORTING -DARROW_HAVE_RUNTIME_AVX2 -DARROW_HAVE_RUNTIME_AVX512 -DARROW_HAVE_RUNTIME_BMI2 -DARROW_HAVE_RUNTIME_SSE4_2 -DARROW_HAVE_SSE4_2 -DARROW_HDFS -DARROW_MIMALLOC -DARROW_NO_DEPRECATED_API -DARROW_WITH_BACKTRACE -DARROW_WITH_BROTLI -DARROW_WITH_BZ2 -DARROW_WITH_LZ4 -DARROW_WITH_RE2 -DARROW_WITH_SNAPPY -DARROW_WITH_TIMING_TESTS -DARROW_WITH_UTF8PROC -DARROW_WITH_ZLIB -DARROW_WITH_ZSTD -DBOOST_ALL_NO_LIB -DURI_STATIC_BUILD -Isrc -I/arrow/cpp/src -I/arrow/cpp/src/generated -isystem /arrow/cpp/thirdparty/flatbuffers/include -isystem /arrow/cpp/thirdparty/hadoop/include -isystem orc_ep-install/include -isystem protobuf_ep-install/include -isystem google_cloud_cpp_ep-install/include -isystem absl_ep-install/include -isystem crc32c_ep-install/include -isystem awssdk_ep-install/include -isystem opentelemetry_ep-install/include -isystem xsimd_ep/src/xsimd_ep-install/include -isystem jemalloc_ep-prefix/src -isystem mimalloc_ep/src/mimalloc_ep/include/mimalloc-2.0 -Wno-noexcept-type -fdiagnostics-color=always -ggdb -O0 -Wall -Wno-conversion -Wno-sign-conversion -Wunused-result -Werror -fno-semantic-interposition -msse4.2 -g -fPIC -pthread -std=c++2a -MD -MT src/arrow/CMakeFiles/arrow_objlib.dir/compute/exec/source_node.cc.o -MF src/arrow/CMakeFiles/arrow_objlib.dir/compute/exec/source_node.cc.o.d -o src/arrow/CMakeFiles/arrow_objlib.dir/compute/exec/source_node.cc.o -c /arrow/cpp/src/arrow/compute/exec/source_node.cc
In file included from /arrow/cpp/src/arrow/buffer.h:29,
from /arrow/cpp/src/arrow/array/data.h:26,
from /arrow/cpp/src/arrow/compute/exec.h:31,
from /arrow/cpp/src/arrow/compute/exec/source_node.cc:22:
/arrow/cpp/src/arrow/compute/exec/source_node.cc: In lambda function:
/arrow/cpp/src/arrow/compute/exec/source_node.cc:139:75: error: implicit capture of 'this' via '[=]' is deprecated in C++20 [-Werror=deprecated]
139 | RETURN_NOT_OK(plan_->query_context()->ScheduleTask([=]() {
| ^
/arrow/cpp/src/arrow/status.h:57:62: note: in definition of macro 'ARROW_RETURN_NOT_OK'
57 | ::arrow::Status __s = ::arrow::internal::GenericToStatus(status); \
| ^~~~~~
/arrow/cpp/src/arrow/compute/exec/source_node.cc:139:24: note: in expansion of macro 'RETURN_NOT_OK'
139 | RETURN_NOT_OK(plan_->query_context()->ScheduleTask([=]() {
| ^~~~~~~~~~~~~
/arrow/cpp/src/arrow/compute/exec/source_node.cc:139:75: note: add explicit 'this' or '*this' capture
139 | RETURN_NOT_OK(plan_->query_context()->ScheduleTask([=]() {
| ^
/arrow/cpp/src/arrow/status.h:57:62: note: in definition of macro 'ARROW_RETURN_NOT_OK'
57 | ::arrow::Status __s = ::arrow::internal::GenericToStatus(status); \
| ^~~~~~
/arrow/cpp/src/arrow/compute/exec/source_node.cc:139:24: note: in expansion of macro 'RETURN_NOT_OK'
139 | RETURN_NOT_OK(plan_->query_context()->ScheduleTask([=]() {
| ^~~~~~~~~~~~~
cc1plus: all warnings being treated as errors