summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2014-05-12 12:56:13 +0200
committerSergei Golubchik <sergii@pisem.net>2014-05-12 12:56:13 +0200
commitf6524e496312a6d3b870c74118f921c33201f3d7 (patch)
tree99aa71269adcfad1c5fc4c4399633e0af62162b8
parent124428a9e28e59f98b25d8ee07b57d264f63cbe4 (diff)
downloadmariadb-git-f6524e496312a6d3b870c74118f921c33201f3d7.tar.gz
MDEV-4925 Wrong result - count(distinct), Using index for group-by (scanning)
added the test case
-rw-r--r--mysql-test/suite/innodb/r/count_distinct.result12
-rw-r--r--mysql-test/suite/innodb/t/count_distinct.test15
2 files changed, 27 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/count_distinct.result b/mysql-test/suite/innodb/r/count_distinct.result
new file mode 100644
index 00000000000..201767b8f42
--- /dev/null
+++ b/mysql-test/suite/innodb/r/count_distinct.result
@@ -0,0 +1,12 @@
+CREATE TABLE t1 (
+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 t1 (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 t1 WHERE a = 1;
+COUNT(DISTINCT b)
+10
+DROP TABLE t1;
diff --git a/mysql-test/suite/innodb/t/count_distinct.test b/mysql-test/suite/innodb/t/count_distinct.test
new file mode 100644
index 00000000000..94a70260e23
--- /dev/null
+++ b/mysql-test/suite/innodb/t/count_distinct.test
@@ -0,0 +1,15 @@
+--source include/have_innodb.inc
+
+#
+# MDEV-4925 Wrong result - count(distinct), Using index for group-by (scanning)
+#
+CREATE TABLE t1 (
+ 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 t1 (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 t1 WHERE a = 1;
+DROP TABLE t1;