[MDEV-2934] LP:707827 - Wrong result with join_cache_level=4 , join_buffer_size = 164 Created: 2011-01-26 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: | Igor Babaev |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | Launchpad | ||
| Attachments: |
|
| Description |
|
When executing simple queries with join_cache_level=4 , join_buffer_size = 164 the following simple query SELECT alias2.f3 FROM t1 AS alias1 STRAIGHT_JOIN t2 AS alias2 FORCE KEY (f10) ON alias2.f10 = alias1.f10 ; returned "8", even though the ON condition is FALSE for all rows. This seems to happen only for very low values of join_buffer_size. In real life, the issue was also observed without STRAIGHT_JOIN or FORCE KEY . InnoDB appears to be required for at least one of the tables. EXPLAIN: id select_type table type possible_keys key key_len ref rows Extra Test case: --source include/have_innodb.inc CREATE TABLE t1 ( f10 varchar(1) ) ENGINE=InnoDB; CREATE TABLE t2 ( f3 int(11), f10 varchar(1), KEY (f10)) ; SET SESSION join_cache_level = 4; SELECT f3 FROM t1 STRAIGHT_JOIN t2 FORCE KEY (f10) ON t2.f10 = t1.f10 ; |
| Comments |
| Comment by Rasmus Johansson (Inactive) [ 2011-12-13 ] |
|
Launchpad bug id: 707827 |