[MDEV-27869] Conversion of Big IN Predicates Into Subqueries returns wrong result Created: 2022-02-17 Updated: 2022-04-08 Resolved: 2022-04-08 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Optimizer, Prepared Statements |
| Affects Version/s: | 10.3, 10.4, 10.5, 10.6, 10.7 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Mario Fritschen | Assignee: | Unassigned |
| Resolution: | Duplicate | Votes: | 1 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||||||
| Description |
|
As we updated to MariaDB Version 10.6.7 we encounter a problems with `WHERE IN (?)` statements starting at 1000 parameters return zero rows (default value for in_predicate_conversion_threshold). After some research it seems to be caused by https://github.com/MariaDB/server/commit/a65d01a4cf04c744f9355bec186430540ce6ba08 My suspect here that As the function description of `create_value_list_for_tvc` implies it tries to convert but return true if not successful. |
| Comments |
| Comment by Elena Stepanova [ 2022-03-07 ] |
|
Thanks for the report. The issue has been confirmed in the scope of MarioF, I can either close this report now, or we can keep it open until Meanwhile, as you probably figured from your research already, you can use higher versions of in_predicate_conversion_threshold as a workaround. |
| Comment by Mario Fritschen [ 2022-03-08 ] |
|
You can close this ticket i will watch |