summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-07-24 19:55:08 +0300
committerunknown <monty@mashka.mysql.fi>2002-07-24 19:55:08 +0300
commit72dec69046e315080d17e4764f911c4c9f29459c (patch)
tree31ee919bea7e4456572b62d5ea7302dc58bc0b6a /mysql-test
parentc911e9d72161045364893a838624c1484590a9cb (diff)
downloadmariadb-git-72dec69046e315080d17e4764f911c4c9f29459c.tar.gz
Removed wrong implementation of CUBE/ROLLUP
Fixed bugfix of INSERT ... SET db_name.table_name.column_name Changed locking to external-locking Fix client hangup for some invalid SQL queries. Docs/manual.texi: Changelog & recent incompatible changes to 4.0.3 include/mysqld_error.h: New error messages myisam/ft_boolean_search.c: Removed compiler warning myisam/mi_check.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/mi_dynrec.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/mi_extra.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/mi_key.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/mi_open.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/mi_packrec.c: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/myisamdef.h: Change mi_fix_rec_buff_for_blob to mi_alloc_rec_buff myisam/sort.c: Fixed uninitialized variable mysql-test/r/insert_set.result: Change test case to use database foo mysql-test/r/union.result: Test wrong usage of union mysql-test/t/insert_set.test: Test bug in insert mysql-test/t/union.test: Test wrong usage of union sql/item.h: Indentation cleanup sql/item_cmpfunc.h: Indentation cleanup sql/item_func.h: Indentation cleanup sql/item_strfunc.h: Indentation cleanup sql/item_sum.h: Indentation cleanup sql/item_timefunc.h: Indentation cleanup sql/item_uniq.h: Indentation cleanup sql/mysql_priv.h: Fix that we always generate an error message when calling YYABORT sql/mysqld.cc: Changed command line arguments regarding locking to always use --external-locking Disable external locking by default sql/procedure.h: Cleanup sql/set_var.cc: change locking -> external_locking sql/share/czech/errmsg.txt: New error messages sql/share/danish/errmsg.txt: New error messages sql/share/dutch/errmsg.txt: New error messages sql/share/english/errmsg.txt: New error messages sql/share/estonian/errmsg.txt: New error messages sql/share/french/errmsg.txt: New error messages sql/share/german/errmsg.txt: New error messages sql/share/greek/errmsg.txt: New error messages sql/share/hungarian/errmsg.txt: New error messages sql/share/italian/errmsg.txt: New error messages sql/share/japanese/errmsg.txt: New error messages sql/share/korean/errmsg.txt: New error messages mysql-test/r/olap.result: Removed CUBE/ROLLUP mysql-test/t/olap.test: Removed CUBE/ROLLUP sql/share/norwegian-ny/errmsg.txt: New error messages sql/share/norwegian/errmsg.txt: New error messages sql/share/polish/errmsg.txt: New error messages sql/share/portuguese/errmsg.txt: New error messages sql/share/romanian/errmsg.txt: New error messages sql/share/russian/errmsg.txt: New error messages sql/share/slovak/errmsg.txt: New error messages sql/share/spanish/errmsg.txt: New error messages sql/share/swedish/errmsg.txt: New error messages sql/share/ukrainian/errmsg.txt: New error messages sql/sql_base.cc: Removed wrong patch for INSERT... sql/sql_insert.cc: Fix bug in INSERT ... SET db_name.table_name.column_name sql/sql_lex.h: Changed NON_EXISTIONG_ONE -> UNSPECIFIED_OLAP_TYPE sql/sql_olap.cc: Removed wrong implementation of CUBE/ROLLUP sql/sql_parse.cc: Removed wrong implementation of CUBE/ROLLUP Added function to give better error messages sql/sql_select.cc: Removed wrong implementation of CUBE/ROLLUP sql/sql_union.cc: Added comment sql/sql_yacc.yy: Fix that we always generate an error message when calling YYABORT
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/insert_set.result10
-rw-r--r--mysql-test/r/olap.result121
-rw-r--r--mysql-test/r/union.result2
-rw-r--r--mysql-test/t/insert_set.test10
-rw-r--r--mysql-test/t/olap.test5
-rw-r--r--mysql-test/t/union.test7
6 files changed, 29 insertions, 126 deletions
diff --git a/mysql-test/r/insert_set.result b/mysql-test/r/insert_set.result
index 438c2c95147..d95765c6472 100644
--- a/mysql-test/r/insert_set.result
+++ b/mysql-test/r/insert_set.result
@@ -1,6 +1,6 @@
-drop database if exists a;
-create database a;
-use a;
+drop database if exists foo;
+create database foo;
+use foo;
create table b (c int);
-insert into a.b set a.b.c = '1';
-drop database a;
+insert into foo.b set foo.b.c = '1';
+drop database foo;
diff --git a/mysql-test/r/olap.result b/mysql-test/r/olap.result
index 0842b038235..fa6008e99f7 100644
--- a/mysql-test/r/olap.result
+++ b/mysql-test/r/olap.result
@@ -15,124 +15,13 @@ insert into sales values ( 'Computer', 'India',2000, 1200),
( 'Computer', 'United States', 2000,1500),
( 'Calculator', 'United States', 2000,75);
select product, country , year, sum(profit) from sales group by product, country, year with cube;
-product country year sum(profit)
-Calculator India 2000 75
-Calculator United States 1999 50
-Calculator United States 2000 150
-Computer India 1999 1200
-Computer India 2000 1200
-Computer United States 1999 1500
-Computer United States 2000 3000
-TV India 1999 100
-TV India 2000 200
-TV United States 1999 150
-TV United States 2000 150
-Calculator India 0 75
-Calculator United States 0 200
-Computer India 0 2400
-Computer United States 0 4500
-TV India 0 300
-TV United States 0 300
-Calculator ALL 1999 50
-Calculator ALL 2000 225
-Computer ALL 1999 2700
-Computer ALL 2000 4200
-TV ALL 1999 250
-TV ALL 2000 350
-ALL India 1999 1300
-ALL India 2000 1475
-ALL United States 1999 1700
-ALL United States 2000 3300
-Calculator ALL 0 275
-Computer ALL 0 6900
-TV ALL 0 600
-ALL India 0 2775
-ALL United States 0 5000
-ALL ALL 1999 3000
-ALL ALL 2000 4775
-ALL ALL 0 7775
+This version of MySQL doesn't yet support 'CUBE',
explain select product, country , year, sum(profit) from sales group by product, country, year with cube;
-table type possible_keys key key_len ref rows Extra
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14
+This version of MySQL doesn't yet support 'CUBE',
select product, country , year, sum(profit) from sales group by product, country, year with rollup;
-product country year sum(profit)
-Calculator India 2000 75
-Calculator United States 1999 50
-Calculator United States 2000 150
-Computer India 1999 1200
-Computer India 2000 1200
-Computer United States 1999 1500
-Computer United States 2000 3000
-TV India 1999 100
-TV India 2000 200
-TV United States 1999 150
-TV United States 2000 150
-ALL India 1999 1300
-ALL India 2000 1475
-ALL United States 1999 1700
-ALL United States 2000 3300
-ALL ALL 1999 3000
-ALL ALL 2000 4775
-ALL ALL 0 7775
+This version of MySQL doesn't yet support 'ROLLUP',
explain select product, country , year, sum(profit) from sales group by product, country, year with rollup;
-table type possible_keys key key_len ref rows Extra
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14 Using temporary; Using filesort
-sales ALL NULL NULL NULL NULL 14
+This version of MySQL doesn't yet support 'ROLLUP',
select product, country , year, sum(profit) from sales group by product, country, year with cube union all select product, country , year, sum(profit) from sales group by product, country, year with rollup;
-product country year sum(profit)
-Calculator India 2000 75
-Calculator United States 1999 50
-Calculator United States 2000 150
-Computer India 1999 1200
-Computer India 2000 1200
-Computer United States 1999 1500
-Computer United States 2000 3000
-TV India 1999 100
-TV India 2000 200
-TV United States 1999 150
-TV United States 2000 150
-Calculator India 0 75
-Calculator United States 0 200
-Computer India 0 2400
-Computer United States 0 4500
-TV India 0 300
-TV United States 0 300
-Calculator ALL 1999 50
-Calculator ALL 2000 225
-Computer ALL 1999 2700
-Computer ALL 2000 4200
-TV ALL 1999 250
-TV ALL 2000 350
-ALL India 1999 1300
-ALL India 2000 1475
-ALL United States 1999 1700
-ALL United States 2000 3300
-Calculator ALL 0 275
-Computer ALL 0 6900
-TV ALL 0 600
-ALL India 0 2775
-ALL United States 0 5000
-ALL ALL 1999 3000
-ALL ALL 2000 4775
-ALL ALL 0 7775
-Calculator India 2000 75
-Calculator United States 1999 50
-Calculator United States 2000 150
-Computer India 1999 1200
-Computer India 2000 1200
-Computer United States 1999 1500
-Computer United States 2000 3000
-TV India 1999 100
-TV India 2000 200
-TV United States 1999 150
-TV United States 2000 150
+This version of MySQL doesn't yet support 'CUBE',
drop table sales;
diff --git a/mysql-test/r/union.result b/mysql-test/r/union.result
index 52f4d4a14f6..896901dd8af 100644
--- a/mysql-test/r/union.result
+++ b/mysql-test/r/union.result
@@ -129,6 +129,8 @@ select * from t1 union select a from t2;
The used SELECT statements have a different number of columns
select a from t1 union select * from t2;
The used SELECT statements have a different number of columns
+select * from t1 union select SQL_BUFFER_RESULT * from t2;
+Wrong usage/placement of 'SQL_BUFFER_RESULT'
create table t3 select a,b from t1 union all select a,b from t2;
insert into t3 select a,b from t1 union all select a,b from t2;
replace into t3 select a,b as c from t1 union all select a,b from t2;
diff --git a/mysql-test/t/insert_set.test b/mysql-test/t/insert_set.test
index 41d20eaefdb..2f7e8408ea3 100644
--- a/mysql-test/t/insert_set.test
+++ b/mysql-test/t/insert_set.test
@@ -2,9 +2,9 @@
# Test of mysqld crash with fully qualified column names
#
-drop database if exists a;
-create database a;
-use a;
+drop database if exists foo;
+create database foo;
+use foo;
create table b (c int);
-insert into a.b set a.b.c = '1';
-drop database a;
+insert into foo.b set foo.b.c = '1';
+drop database foo;
diff --git a/mysql-test/t/olap.test b/mysql-test/t/olap.test
index b91bf2fb193..8fe547db615 100644
--- a/mysql-test/t/olap.test
+++ b/mysql-test/t/olap.test
@@ -14,9 +14,14 @@ insert into sales values ( 'Computer', 'India',2000, 1200),
( 'Computer', 'India', 1999,1200),
( 'Computer', 'United States', 2000,1500),
( 'Calculator', 'United States', 2000,75);
+--error 1235
select product, country , year, sum(profit) from sales group by product, country, year with cube;
+--error 1235
explain select product, country , year, sum(profit) from sales group by product, country, year with cube;
+--error 1235
select product, country , year, sum(profit) from sales group by product, country, year with rollup;
+--error 1235
explain select product, country , year, sum(profit) from sales group by product, country, year with rollup;
+--error 1235
select product, country , year, sum(profit) from sales group by product, country, year with cube union all select product, country , year, sum(profit) from sales group by product, country, year with rollup;
drop table sales;
diff --git a/mysql-test/t/union.test b/mysql-test/t/union.test
index d13b5dec662..6e6b43ebe3b 100644
--- a/mysql-test/t/union.test
+++ b/mysql-test/t/union.test
@@ -23,7 +23,11 @@ select 't1',b,count(*) from t1 group by b UNION select 't2',b,count(*) from t2 g
explain (select a,b from t1 limit 2) union all (select a,b from t2 order by a limit 1) order by b desc;
(select sql_calc_found_rows a,b from t1 limit 2) union all (select a,b from t2 order by a) limit 2;
select found_rows();
+
+#
# Test some error conditions with UNION
+#
+
explain select a,b from t1 union all select a,b from t2;
--error 1054
@@ -53,6 +57,9 @@ select * from t1 union select a from t2;
--error 1222
select a from t1 union select * from t2;
+--error 1234
+select * from t1 union select SQL_BUFFER_RESULT * from t2;
+
# Test CREATE, INSERT and REPLACE
create table t3 select a,b from t1 union all select a,b from t2;
insert into t3 select a,b from t1 union all select a,b from t2;