Details
-
Bug
-
Status: Closed (View Workflow)
-
Minor
-
Resolution: Fixed
-
10.0.4, 5.5.32
-
None
Description
Taken from: http://bugs.mysql.com/bug.php?id=70038
test case:
--source include/have_innodb.inc
|
|
CREATE TABLE tmp (
|
id int NOT NULL AUTO_INCREMENT,
|
a int NOT NULL,
|
b int NOT NULL,
|
PRIMARY KEY (id),
|
UNIQUE KEY ba (b, a)
|
) ENGINE=InnoDB;
|
|
INSERT INTO tmp (a, b) VALUES(1,101),(1,102),(1,103),(1,104),(1,105),(1,106),(1,107),(1,108),(1,109),(1,110);
|
|
SELECT COUNT(DISTINCT b) FROM tmp WHERE a = 1;
|
|
DROP TABLE tmp;
|
Select returns 5, should be 10. Myisam works correctly.
I think the problem is because in function QUICK_GROUP_MIN_MAX_SELECT::get_next() call to file->ha_index_read_map() fetches next row when it shouldn't. Happens when index_next_different() is called with is_index_scan = true.