Skip to content

Fix hanging join test#15975

Merged
rschlussel merged 4 commits intoprestodb:masterfrom
rschlussel:fix-hanging-join-test
Apr 21, 2021
Merged

Fix hanging join test#15975
rschlussel merged 4 commits intoprestodb:masterfrom
rschlussel:fix-hanging-join-test

Conversation

@rschlussel
Copy link
Contributor

Test plan - unit test, ci

Cherry-pick of trinodb/trino@42b8e33 plus some required refactoring.

SpilledLookupSourceHandle needs to be disposed immediately when join operators finished processing probe data. Otherwise SpilledLookupSourceHandle is never disposed as it's not registered in PartitionedConsumption. This prevents HashBuilderOperator from finishing.

This was causing some tests to hang in TestDistributedSpilledQueries.

Fixes #15542 and #15921

== RELEASE NOTES ==

General Changes
* Fix hanging join operator when spill is enabled and the probe side finishes before the hash builder starts

rschlussel and others added 4 commits April 20, 2021 17:48
Previously this value was set anytime it was present, even if spill was
disabled, or for outer joins or probe only grouped execution.
SpilledLookupSourceHandle needs to be disposed
immediately when join operators finished
processing probe data. Otherwise SpilledLookupSourceHandle
is never disposed as it's not registered in PartitionedConsumption.
This prevents HashBuilderOperator from finishing.

Fixes: prestodb#15542

co-authored-by: Karol Sobczak <napewnotrafi@gmail.com>
Reenable test that was hanging due to join spill issue.
test methods should all start with the word "test".
@rschlussel rschlussel force-pushed the fix-hanging-join-test branch from 991d302 to c97304f Compare April 20, 2021 22:39
@rschlussel rschlussel requested review from a team and sachdevs April 20, 2021 23:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TestDistributedSpilledQueries hanging sometimes causing travis build timeout

5 participants