Description
The setup is the traditional rqg ansi join setup, the 5 buckets with a secondary key on each field in a bucket and a secondary key that contains each field in the bucket. Same buckets as were backuped in MB-27201.
This query:
SELECT t_3.* FROM multiple_table_db_2143_simple_table_1 t_3 LEFT JOIN multiple_table_db_2143_simple_table_10 t_4 ON ( ((t_3.decimal_field1 >= t_4.decimal_field1) AND (t_3.decimal_field1 < t_4.decimal_field1) OR t_3.char_field1 IS NOT NULL) ) WHERE ((t_4.bool_field1 AND t_3.primary_key_id IS NOT NULL)) OR ((NOT (t_3.bool_field1) AND t_3.decimal_field1 = 4968))
returns this error:
[
{
"code": 4321,
"msg": "Plan error: buildOrScanNoPushdown: missing OR subterm",
"query_from_user": "SELECT t_3.* FROM multiple_table_db_102_simple_table_1 t_3 LEFT JOIN multiple_table_db_102_simple_table_10 t_4 ON ( ((t_3.decimal_field1 >= t_4.decimal_field1) AND (t_3.decimal_field1 < t_4.decimal_field1) OR t_3.char_field1 IS NOT NULL) ) WHERE ((t_4.bool_field1 AND t_3.primary_key_id IS NOT NULL)) OR ((NOT (t_3.bool_field1) AND t_3.decimal_field1 = 4968))"
}
]
The explain is the same error. Logs will be attached
Attachments
For Gerrit Dashboard: MB-27230 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
86848,2 | MB-27230 incorrect error message returned for ANSI JOIN with OR clauses | master | query | Status: MERGED | +2 | +1 |