Skip to content
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

GH-35838: [C++] Fix asof join backpresure #35878

Merged

Conversation

icexelloss
Copy link
Contributor

@icexelloss icexelloss commented Jun 1, 2023

Rationale for this change

To fix a bug in asof join backpresure handling.

What changes are included in this PR?

This is reverting a bug introduced in GH-34391 on this line that breaks asof join backpresure
https://github.com/apache/arrow/pull/34392/files#diff-5493b6ae7ea2a4d5cfb581034c076e9c4be7608382168de6d1301ef67b6c01eeR1410

Are these changes tested?

No. However code change simply reverts to the state before the bug was introduced in GH-34391 and therefore should be pretty safe (we have tested that the code before GH-34391 is working). In the meantime @rtpsw is working on adding tests around this but I would like to merge this to unblock internal issues around this.

Are there any user-facing changes?

@@ -1407,7 +1407,7 @@ class AsofJoinNode : public ExecNode {
ARROW_ASSIGN_OR_RAISE(
auto input_state,
InputState::Make(i, tolerance_, must_hash_, may_rehash_, key_hashers_[i].get(),
this, inputs[i], backpressure_counter_,
inputs[i], this, backpressure_counter_,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Simply reverting this line where the bug is introduced:
https://github.com/apache/arrow/pull/34392/files#diff-5493b6ae7ea2a4d5cfb581034c076e9c4be7608382168de6d1301ef67b6c01eeR1410

@rtpsw is working on adding tests but it could take some time.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that I have just added tests in #35874, though this PR can proceed, if so desired.

@icexelloss
Copy link
Contributor Author

cc @westonpace I prefer to merge this to unblock internal issues while @rtpsw works on adding the test if that is OK

@github-actions github-actions bot added awaiting changes Awaiting changes and removed awaiting committer review Awaiting committer review labels Jun 1, 2023
@github-actions github-actions bot added awaiting change review Awaiting change review and removed awaiting changes Awaiting changes labels Jun 1, 2023
@icexelloss icexelloss changed the title GH-35838: Fix asof join backpresure GH-35838: [C++] Fix asof join backpresure Jun 1, 2023
@icexelloss
Copy link
Contributor Author

icexelloss commented Jun 1, 2023

@westonpace @pitrou In order to get the main branch into a non buggy state first, I will going to merge this so that @rtpsw can pull this and continue to work on testing + reducing confusion of the variable naming per discussions #35874 (comment)

Apologies for the rushing this but this is impacting our internal code so there is some time sensitiveness.

@icexelloss icexelloss merged commit 3fe4a31 into apache:main Jun 1, 2023
@westonpace
Copy link
Member

@icexelloss makes sense

@ursabot
Copy link

ursabot commented Jun 3, 2023

Benchmark runs are scheduled for baseline = 61692b6 and contender = 3fe4a31. 3fe4a31 is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished ⬇️0.0% ⬆️0.0%] ec2-t3-xlarge-us-east-2
[Finished ⬇️0.56% ⬆️0.0%] test-mac-arm
[Finished ⬇️0.98% ⬆️0.0%] ursa-i9-9960x
[Finished ⬇️0.33% ⬆️0.03%] ursa-thinkcentre-m75q
Buildkite builds:
[Finished] 3fe4a315 ec2-t3-xlarge-us-east-2
[Finished] 3fe4a315 test-mac-arm
[Finished] 3fe4a315 ursa-i9-9960x
[Finished] 3fe4a315 ursa-thinkcentre-m75q
[Finished] 61692b69 ec2-t3-xlarge-us-east-2
[Finished] 61692b69 test-mac-arm
[Finished] 61692b69 ursa-i9-9960x
[Finished] 61692b69 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

@ursabot
Copy link

ursabot commented Jun 3, 2023

['Python', 'R'] benchmarks have high level of regressions.
ursa-i9-9960x

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[C++] Backpressure broken in asof join node
4 participants