[MDEV-15475] Assertion `!table || (!table->read_set || bitmap_is_set(table->read_set, field_index))' failed on EXPLAIN EXTENDED with constant table and view Created: 2018-03-06 Updated: 2018-08-21 Resolved: 2018-08-21 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Admin statements, Optimizer, Views |
| Affects Version/s: | 5.5, 10.0, 10.1, 10.2, 10.3 |
| Fix Version/s: | 5.5.62, 10.0.37, 10.1.36, 10.2.18, 10.3.10 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Elena Stepanova | Assignee: | Oleksandr Byelkin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | affects-tests | ||
| Description |
|
No visible problem on non-debug build. |
| Comments |
| Comment by Oleksandr Byelkin [ 2018-06-12 ] |
|
It try to print value of const table which is not marked for read for extended explain representation. |
| Comment by Oleksandr Byelkin [ 2018-08-06 ] |
|
Problem is that ISNULL do not need value of the argument, it is enough that it can not be NULL. So read flag removed and do not set because update_used_tables() do not called for ISNULL argument. the question is why we print table by value... |
| Comment by Oleksandr Byelkin [ 2018-08-06 ] |
|
It works with table (no view) only because the query is simple and used tables of the query is not updated (any query which try to recalculate used tables will fail) |
| Comment by Oleksandr Byelkin [ 2018-08-06 ] |
|
revision-id: d1c90870ed114da62de8b12a71e2fba62724baa9 (mariadb-5.5.61-3-gd1c90870ed1)
Do not try to print value of the field in table if it is optimized out. — |
| Comment by Oleksandr Byelkin [ 2018-08-08 ] |
|
revision-id: 017adbeb3940ac162dcb8dd99478375a37edec02 (mariadb-5.5.61-3-g017adbeb394)
Print constant ISNULL fireld independent. — |
| Comment by Igor Babaev [ 2018-08-11 ] |
|
Ok to push |