-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Ignoring of memory-pool limits & OOM on large cartesian-product join #5162
Comments
It seems I was wrong about #5339 closing this issue, my bad 😞 . This query shouldn't produce |
Yes, I think so, because this query produces But anyway it's great that one of the joins is covered 🙂 |
I guess I'll fix Hash Join using the same approach in a couple of days then 🙃 |
Thank you @korowa |
Closed by #5564 |
Describe the bug
There is an issue with possible OOM instead of
ResourcesExhausted
Probably related to usage of unbounded channels (I believe it should be avoided actually)
To Reproduce
MRE to achieve ignoring of memory-pool with large Cartesian product:
CSV File example (250mb): GDrive link - it's random file and column to join by has the same value for all records (so it's cartesian product)
Memory pool limit:
FairSpillPool::new(4 * 1024 * 1024 * 1024)
SQL:
SELECT * FROM rnd rnd1 JOIN rnd rnd2 ON rnd1."s3_drive" = rnd2."s3_drive"
Expected behavior
It should return
ResourcesExhausted
error with configuredMemoryPool
Additional context
Add any other context about the problem here.
A part of this was described in the discussion here: #5108 (comment), but there was mentioned the regression.
This example isn't regression and it's reproducible for old versions
The text was updated successfully, but these errors were encountered: