Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
10.3(EOL), 10.4(EOL), 10.5, 10.6, 10.7(EOL)
-
None
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 MDEV-23182 triggers another bug in `Item_func_in::in_predicate_to_in_subs_transformer`:
https://github.com/MariaDB/server/blob/a65d01a4cf04c744f9355bec186430540ce6ba08/sql/sql_tvc.cc#L962
As the function description of `create_value_list_for_tvc` implies it tries to convert but return true if not successful.
So `in_predicate_to_in_subs_transformer` should not treat that as an error, instead return `this` because conversion failed and let the underlaying function execute the non converted query.
Attachments
Issue Links
- is caused by
-
MDEV-23182 Server crashes in Item::fix_fields_if_needed / table_value_constr::prepare upon 2nd execution of PS
- Closed
- is duplicated by
-
MDEV-27937 Assertion failure when executing prepared statement with ? in IN list
- Closed