Skip to content

Commit dc8753c

Browse files
committed
suite/gcol: apply changes based on ReviewBoard #11355 comments for wl#9048
Conflicts: mysql-test/suite/gcol_ndb/r/gcol_column_def_options_ndb.result mysql-test/suite/gcol_ndb/r/gcol_ins_upd_ndb.result mysql-test/suite/gcol_ndb/r/gcol_supported_sql_funcs_ndb.result mysql-test/suite/gcol_ndb/r/gcol_view_ndb.result
1 parent 26f96d8 commit dc8753c

15 files changed

+85
-63
lines changed

mysql-test/suite/gcol/inc/gcol_column_def_options.inc

+10-6
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ create table t1 (a int, b int generated always as (a+1) virtual not null);
2424
--error 1048
2525
insert into t1(a) values(null);
2626
insert into t1(a) values(1);
27-
select * from t1 order by a;
27+
select * from t1;
2828
drop table t1;
2929
create table t1 (a int, b int generated always as (a+1) stored not null);
3030
--error 1048
3131
insert into t1(a) values(null);
3232
insert into t1(a) values(1);
33-
select * from t1 order by a;
33+
select * from t1;
3434
drop table t1;
3535
create table t1 (a int);
3636
alter table t1 add column b int generated always as (a+1) virtual not null;
@@ -78,7 +78,8 @@ create table t1 (a int, b int generated always as (a+1) virtual key);
7878
}
7979
create table t1 (a int, b int generated always as (a+1) stored key);
8080
insert into t1 (a) values (3),(1),(2);
81-
select * from t1 order by b;
81+
--sorted_result
82+
select * from t1;
8283
drop table t1;
8384
if ($support_virtual_index)
8485
{
@@ -192,11 +193,14 @@ drop table t1;
192193
--echo Test generated columns referencing other generated columns
193194
create table t1 (a int unique, b int generated always as(-a) virtual, c int generated always as (b + 1) virtual);
194195
insert into t1 (a) values (1), (2);
195-
select * from t1 order by c;
196+
--sorted_result
197+
select * from t1;
196198
insert into t1(a) values (1) on duplicate key update a=3;
197-
select * from t1 order by a;
199+
--sorted_result
200+
select * from t1;
198201
update t1 set a=4 where a=2;
199-
select * from t1 order by a;
202+
--sorted_result
203+
select * from t1;
200204
drop table t1;
201205

202206
--error ER_GENERATED_COLUMN_NON_PRIOR

mysql-test/suite/gcol/inc/gcol_ins_upd.inc

+7-7
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,15 @@ select * from t1;
7070
--echo # INSERT INTO tbl_name (<normal+gcols>) VALUES... NULL is specified against gcols
7171
--error ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN
7272
insert into t1 (a,b) values (1,null), (2,null);
73-
select * from t1 order by a;
73+
select * from t1;
7474
delete from t1;
7575
select * from t1;
7676

7777
--echo # INSERT INTO tbl_name (<normal+gcols>) VALUES... a non-NULL value is specified
7878
--echo # against gcols
7979
--error ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN
8080
insert into t1 (a,b) values (1,3), (2,4);
81-
select * from t1 order by a;
81+
select * from t1;
8282
delete from t1;
8383
select * from t1;
8484
drop table t1;
@@ -89,7 +89,7 @@ eval $create2;
8989
insert into t1 values (1,default,default);
9090
insert into t1 values (1,default,default)
9191
on duplicate key update a=2, b=default;
92-
select a,b,c from t1 order by a;
92+
select a,b,c from t1;
9393
delete from t1 where b in (1,2);
9494
select * from t1;
9595
drop table t1;
@@ -100,15 +100,15 @@ eval $create3;
100100
insert into t1 values (1,default,default);
101101
insert into t1 values (1,default,default)
102102
on duplicate key update a=2, b=default;
103-
select a,b,c from t1 order by a;
103+
select a,b,c from t1;
104104

105105
--echo # CREATE new_table ... LIKE old_table
106106
--echo # INSERT INTO new_table SELECT * from old_table
107107
create table t2 like t1;
108108
--error ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN
109109
insert into t2 select * from t1;
110110
insert into t2(a) select a from t1;
111-
select * from t2 order by a;
111+
select * from t2;
112112
drop table t2;
113113

114114
--echo # CREATE new_table ... LIKE old_table INSERT INTO new_table (<non-gcols>, <gcols>)
@@ -160,7 +160,7 @@ select * from t1 order by a;
160160
update t1 set c=3 where b=-2;
161161
select * from t1 order by a;
162162
delete from t1;
163-
select * from t1 order by a;
163+
select * from t1;
164164
drop table t1;
165165

166166
--echo # INDEX created on gcol
@@ -201,7 +201,7 @@ update t1 set a=6 where c between -1 and 0
201201
order by c;
202202
select * from t1 order by a;
203203
delete from t1 where c between -6 and 0;
204-
select * from t1 order by a;
204+
select * from t1;
205205

206206
--echo # INDEX created on gcol
207207
--echo # UPDATE tbl_name SET non-gcol=expr

mysql-test/suite/gcol/inc/gcol_select.inc

+12-4
Original file line numberDiff line numberDiff line change
@@ -777,7 +777,12 @@ INSERT INTO cc (
777777
(1, '2008-01-23', '11:14:24.032949', '2004-10-02 20:31:15.022553', 't');
778778
SET @save_old_sql_mode= @@sql_mode;
779779
SET sql_mode="";
780+
781+
# Warnings arrive in unpredictable order with NDB and cannot be sorted
782+
if ($testing_ndb)
783+
{
780784
--disable_warnings
785+
}
781786
SELECT DISTINCT alias1.col_varchar_key AS field1
782787
FROM ( cc AS alias1 STRAIGHT_JOIN
783788
(( cc AS alias2 STRAIGHT_JOIN cc AS alias3 ON
@@ -790,7 +795,10 @@ ORDER BY field1, alias1.col_date_key, field1 ASC, field1 DESC,
790795
alias1.col_time_key ASC, field1;
791796
DROP TABLE cc;
792797
SET sql_mode=@save_old_sql_mode;
798+
if ($testing_ndb)
799+
{
793800
--enable_warnings
801+
}
794802

795803
--echo #
796804
--echo # Bug#20797941: WL8149:ASSERTION !TABLE ||
@@ -904,7 +912,7 @@ ALTER TABLE t1 CHANGE h i INT AS (a) VIRTUAL, WITHOUT VALIDATION,
904912
}
905913
if ($myisam_engine)
906914
{
907-
--error 1845, 1846
915+
--error 1845
908916
ALTER TABLE t1 CHANGE h i INT AS (a) VIRTUAL, WITHOUT VALIDATION,
909917
ALGORITHM=INPLACE;
910918
}
@@ -920,15 +928,15 @@ ALTER TABLE t1 ADD COLUMN d SMALLINT AS (a) VIRTUAL, WITH VALIDATION,
920928
--echo Shouldn't fail on Innodb
921929
if ($myisam_engine)
922930
{
923-
--error 1845, 1846
931+
--error 1845
924932
ALTER TABLE t1 ADD COLUMN e SMALLINT AS (a) VIRTUAL, WITHOUT VALIDATION,
925933
ALGORITHM=INPLACE, LOCK=NONE;
926934
--echo Shouldn't fail on Innodb
927-
--error 1845, 1846
935+
--error 1845
928936
ALTER TABLE t1 ADD COLUMN f SMALLINT AS (a) VIRTUAL, WITHOUT VALIDATION,
929937
ALGORITHM=INPLACE, LOCK=SHARED;
930938
--echo Shouldn't fail on Innodb
931-
--error 1845, 1846
939+
--error 1845
932940
ALTER TABLE t1 ADD COLUMN g SMALLINT AS (a) VIRTUAL, WITHOUT VALIDATION,
933941
ALGORITHM=INPLACE, LOCK=EXCLUSIVE;
934942
}

mysql-test/suite/gcol/inc/gcol_supported_sql_funcs_main.inc

+1-5
Original file line numberDiff line numberDiff line change
@@ -1043,7 +1043,7 @@ let $rows = 1;
10431043
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
10441044

10451045
--echo # TIMEDIFF()
1046-
let $cols = a datetime, b datetime, c bigint generated always as (timediff(a,b)) virtual;
1046+
let $cols = a datetime, b datetime, c time generated always as (timediff(a,b)) virtual;
10471047
let $values1 = '2008-12-31 23:59:59.000001','2008-12-30 01:01:01.000002',default;
10481048
let $rows = 1;
10491049
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
@@ -1178,14 +1178,12 @@ let $rows = 1;
11781178
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
11791179

11801180
--echo # ENCODE(), DECODE()
1181-
--disable_warnings
11821181
let $cols = a varchar(1024), b varchar(1024) generated always as (decode(encode(a,'abc'),'abc')) virtual;
11831182
let $values1 = 'MySQL',default;
11841183
let $rows = 1;
11851184
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
11861185

11871186
--echo # DEFAULT()
1188-
--enable_warnings
11891187
let $cols = a varchar(1024) default 'aaa', b varchar(1024) generated always as (ifnull(a,default(a))) virtual;
11901188
let $values1 = 'any value',default;
11911189
let $rows = 1;
@@ -1216,14 +1214,12 @@ let $rows = 1;
12161214
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
12171215

12181216
--echo # PASSWORD()
1219-
--disable_warnings
12201217
let $cols = a varchar(1024), b varchar(1024) generated always as (password(a)) virtual;
12211218
let $values1 = 'badpwd',default;
12221219
let $rows = 1;
12231220
--source suite/gcol/inc/gcol_supported_sql_funcs.inc
12241221

12251222
--echo # SHA1()
1226-
--enable_warnings
12271223
let $cols = a varchar(1024), b varchar(1024) generated always as (sha1(a)) virtual;
12281224
let $values1 = 'abc',default;
12291225
let $rows = 1;

mysql-test/suite/gcol/inc/gcol_view.inc

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ create table t1 (a int not null,
8181
c int generated always as (-a) stored);
8282
insert into t1 (a) values (1), (2), (3), (4);
8383
create view v1 as select b+1 from t1 order by 1 desc limit 2;
84-
select * from v1 order by 1 desc;
84+
select * from v1;
8585
--replace_column 10 X
8686
explain select * from v1;
8787
drop view v1;

mysql-test/suite/gcol/r/gcol_column_def_options_innodb.result

+7-7
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ create table t1 (a int, b int generated always as (a+1) virtual not null);
88
insert into t1(a) values(null);
99
ERROR 23000: Column 'b' cannot be null
1010
insert into t1(a) values(1);
11-
select * from t1 order by a;
11+
select * from t1;
1212
a b
1313
1 2
1414
drop table t1;
1515
create table t1 (a int, b int generated always as (a+1) stored not null);
1616
insert into t1(a) values(null);
1717
ERROR 23000: Column 'b' cannot be null
1818
insert into t1(a) values(1);
19-
select * from t1 order by a;
19+
select * from t1;
2020
a b
2121
1 2
2222
drop table t1;
@@ -64,7 +64,7 @@ create table t1 (a int, b int generated always as (a+1) virtual key);
6464
ERROR HY000: 'Defining a virtual generated column as primary key' is not supported for generated columns.
6565
create table t1 (a int, b int generated always as (a+1) stored key);
6666
insert into t1 (a) values (3),(1),(2);
67-
select * from t1 order by b;
67+
select * from t1;
6868
a b
6969
1 2
7070
2 3
@@ -265,17 +265,17 @@ drop table t1;
265265
Test generated columns referencing other generated columns
266266
create table t1 (a int unique, b int generated always as(-a) virtual, c int generated always as (b + 1) virtual);
267267
insert into t1 (a) values (1), (2);
268-
select * from t1 order by c;
268+
select * from t1;
269269
a b c
270-
2 -2 -1
271270
1 -1 0
271+
2 -2 -1
272272
insert into t1(a) values (1) on duplicate key update a=3;
273-
select * from t1 order by a;
273+
select * from t1;
274274
a b c
275275
2 -2 -1
276276
3 -3 -2
277277
update t1 set a=4 where a=2;
278-
select * from t1 order by a;
278+
select * from t1;
279279
a b c
280280
3 -3 -2
281281
4 -4 -3

mysql-test/suite/gcol/r/gcol_column_def_options_myisam.result

+7-7
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ create table t1 (a int, b int generated always as (a+1) virtual not null);
88
insert into t1(a) values(null);
99
ERROR 23000: Column 'b' cannot be null
1010
insert into t1(a) values(1);
11-
select * from t1 order by a;
11+
select * from t1;
1212
a b
1313
1 2
1414
drop table t1;
1515
create table t1 (a int, b int generated always as (a+1) stored not null);
1616
insert into t1(a) values(null);
1717
ERROR 23000: Column 'b' cannot be null
1818
insert into t1(a) values(1);
19-
select * from t1 order by a;
19+
select * from t1;
2020
a b
2121
1 2
2222
drop table t1;
@@ -62,7 +62,7 @@ drop table t1;
6262
# [PRIMARY] KEY
6363
create table t1 (a int, b int generated always as (a+1) stored key);
6464
insert into t1 (a) values (3),(1),(2);
65-
select * from t1 order by b;
65+
select * from t1;
6666
a b
6767
1 2
6868
2 3
@@ -255,17 +255,17 @@ drop table t1;
255255
Test generated columns referencing other generated columns
256256
create table t1 (a int unique, b int generated always as(-a) virtual, c int generated always as (b + 1) virtual);
257257
insert into t1 (a) values (1), (2);
258-
select * from t1 order by c;
258+
select * from t1;
259259
a b c
260-
2 -2 -1
261260
1 -1 0
261+
2 -2 -1
262262
insert into t1(a) values (1) on duplicate key update a=3;
263-
select * from t1 order by a;
263+
select * from t1;
264264
a b c
265265
2 -2 -1
266266
3 -3 -2
267267
update t1 set a=4 where a=2;
268-
select * from t1 order by a;
268+
select * from t1;
269269
a b c
270270
3 -3 -2
271271
4 -4 -3

mysql-test/suite/gcol/r/gcol_ins_upd_innodb.result

+7-7
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ a b c
5252
# INSERT INTO tbl_name (<normal+gcols>) VALUES... NULL is specified against gcols
5353
insert into t1 (a,b) values (1,null), (2,null);
5454
ERROR HY000: The value specified for generated column 'b' in table 't1' is not allowed.
55-
select * from t1 order by a;
55+
select * from t1;
5656
a b c
5757
delete from t1;
5858
select * from t1;
@@ -61,7 +61,7 @@ a b c
6161
# against gcols
6262
insert into t1 (a,b) values (1,3), (2,4);
6363
ERROR HY000: The value specified for generated column 'b' in table 't1' is not allowed.
64-
select * from t1 order by a;
64+
select * from t1;
6565
a b c
6666
delete from t1;
6767
select * from t1;
@@ -75,7 +75,7 @@ c int generated always as (-a) stored);
7575
insert into t1 values (1,default,default);
7676
insert into t1 values (1,default,default)
7777
on duplicate key update a=2, b=default;
78-
select a,b,c from t1 order by a;
78+
select a,b,c from t1;
7979
a b c
8080
2 -2 -2
8181
delete from t1 where b in (1,2);
@@ -91,7 +91,7 @@ c int generated always as (-a) stored unique);
9191
insert into t1 values (1,default,default);
9292
insert into t1 values (1,default,default)
9393
on duplicate key update a=2, b=default;
94-
select a,b,c from t1 order by a;
94+
select a,b,c from t1;
9595
a b c
9696
2 -2 -2
9797
# CREATE new_table ... LIKE old_table
@@ -100,7 +100,7 @@ create table t2 like t1;
100100
insert into t2 select * from t1;
101101
ERROR HY000: The value specified for generated column 'b' in table 't2' is not allowed.
102102
insert into t2(a) select a from t1;
103-
select * from t2 order by a;
103+
select * from t2;
104104
a b c
105105
2 -2 -2
106106
drop table t2;
@@ -183,7 +183,7 @@ a b c
183183
1 -1 -1
184184
2 -2 -2
185185
delete from t1;
186-
select * from t1 order by a;
186+
select * from t1;
187187
a b c
188188
drop table t1;
189189
# INDEX created on gcol
@@ -255,7 +255,7 @@ a b c
255255
5 -5 -5
256256
6 -6 -6
257257
delete from t1 where c between -6 and 0;
258-
select * from t1 order by a;
258+
select * from t1;
259259
a b c
260260
# INDEX created on gcol
261261
# UPDATE tbl_name SET non-gcol=expr

0 commit comments

Comments
 (0)