mariadb/mysql-test/t/count_distinct3.test
unknown 3ca0fa1525 Update VC++ files
Portability fixes
After merge fixes


VC++Files/mysql.dsw:
  Added dependencys
VC++Files/mysys/mysys.dsp:
  Add missing files
client/mysqlcheck.c:
  Added comment
client/mysqltest.c:
  Remove not used variables
include/keycache.h:
  Removed not used element
include/m_ctype.h:
  Portability fix
include/my_base.h:
  Removed not used define
myisam/mi_keycache.c:
  Added mutex for extra safety
mysql-test/r/count_distinct3.result:
  Faster test
mysql-test/r/rpl_change_master.result:
  updated results
mysql-test/t/count_distinct3.test:
  Faster test
mysql-test/t/rpl_change_master.test:
  Make test repeatable
mysys/default.c:
  Remove compiler warning
mysys/mf_keycache.c:
  Removed not used 'action' element
mysys/my_getopt.c:
  Remove not used variable
sql/ha_myisam.cc:
  Remove compiler warning
sql/item.cc:
  Fixed wrong patch from last changeset
sql/item_timefunc.cc:
  Remove compiler warnings
sql/set_var.cc:
  Remove compiler warnings
sql/sql_prepare.cc:
  Remove not used variables
sql/sql_repl.cc:
  After merge fix
sql/sql_select.h:
  Added comments
sql/sql_table.cc:
  Remove not used define
strings/ctype-tis620.c:
  Remove not used variables
2003-11-21 01:53:01 +02:00

58 lines
2.1 KiB
Text

#
# this is a test for error 1032 in count(distinct) + group by, introduced in
# mysql-4.1
#
--disable_warnings
DROP TABLE IF EXISTS t1, t2;
--enable_warnings
CREATE TABLE t1 (id INTEGER, grp TINYINT, id_rev INTEGER);
--disable_query_log
SET @rnd_max= 2147483647;
let $1 = 1000;
while ($1)
{
SET @rnd= RAND();
SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
SET @id_rev= @rnd_max - @id;
SET @grp= CAST(128.0 * @rnd AS UNSIGNED);
INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
dec $1;
}
set @@read_buffer_size=2*1024*1024;
CREATE TABLE t2 SELECT * FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
DROP TABLE t2;
--enable_query_log
SELECT COUNT(*) FROM t1;
# As t1 contains random numbers, results are different from test to test.
# That's okay, because we test only that select doesn't yield an
# error. Note, that --disable_result_log doesn't suppress error output.
--disable_result_log
SELECT COUNT(DISTINCT id) FROM t1 GROUP BY grp;
--enable_result_log
DROP TABLE t1;
set @@read_buffer_size=default;