[MDEV-3427] LP:718593 - Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains Created: 2011-02-14 Updated: 2015-02-02 Resolved: 2012-10-04 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major |
| Reporter: | Philip Stoev (Inactive) | Assignee: | Timour Katchaounov (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | Launchpad | ||
| Attachments: |
|
| Description |
|
Not repeatable in Maria-5.3, though maria-5.3 suffers from a similar crash - bug 601124 . EXPLAIN also crashes. backtrace: #5 0x0820d246 in Item_equal::contains (this=0xae6675d8, field=0xae644090) at item_cmpfunc.cc:5618 test case: SET SESSION optimizer_switch = 'semijoin=off'; CREATE TABLE t1 ( f3 int(11), f10 varchar(1), f11 varchar(1)) ; CREATE TABLE t2 ( f12 int(11), f13 int(11)) ; SELECT * FROM t2 |
| Comments |
| Comment by Timour Katchaounov (Inactive) [ 2011-02-14 ] |
|
Re: Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains The bug is not repeatable with materialization. |
| Comment by Timour Katchaounov (Inactive) [ 2011-02-17 ] |
|
Re: Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains |
| Comment by Timour Katchaounov (Inactive) [ 2011-02-17 ] |
|
Re: Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains The relevant call stack is: The call to Item_cond_and::fix_fields flattens the AND-OR structure |
| Comment by Timour Katchaounov (Inactive) [ 2011-02-17 ] |
|
Re: Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains SELECT * FROM t2 |
| Comment by Timour Katchaounov (Inactive) [ 2011-02-18 ] |
|
Re: Crash in substitute_for_best_equal_field -> eliminate_item_equal -> Item_field::find_item_equal -> Item_equal::contains The core of the problem is that build_equal_items_for_cond() rewrites the WHERE The specific place where it done is: ... As a result, later transformations on the WHERE clause may change the Solution: |
| Comment by Rasmus Johansson (Inactive) [ 2011-12-13 ] |
|
Launchpad bug id: 718593 |