Details
-
New Feature
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
None
Description
This is a followup to MDEV-21958.
For certain WHERE clauses, range optimizer may consume O(N^2) memory.
The cause of this is that tree_or() allocates its result on MEM_ROOT, while the arguments also remain allocated on MEM_ROOT (See MDEV-21958 for details).
MDEV-21958 itself is marked as closed because I've pushed a limited-scope fix that prevented this behavior for a subset of queries.
Attachments
Issue Links
- relates to
-
MDEV-21958 Query having many NOT-IN clauses running forever and causing available free memory to use completely
- Closed