diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-04-04 09:05:45 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-04-04 09:05:45 +0300 |
commit | b30fb701cc040cd9243a3634240672b27f78d142 (patch) | |
tree | 2c181ef5c48a4622b0f8930418e905271777dff4 | |
parent | f6023857765701da780969b2628963738599865c (diff) | |
parent | 71a2e6a3c66bc1e84809e0e91ffaef1cadc87642 (diff) | |
download | mariadb-git-b30fb701cc040cd9243a3634240672b27f78d142.tar.gz |
Merge 10.1 into 10.2
-rw-r--r-- | mysql-test/include/index_merge1.inc | 4 | ||||
-rw-r--r-- | mysql-test/include/index_merge2.inc | 8 | ||||
-rw-r--r-- | mysql-test/include/index_merge_2sweeps.inc | 2 | ||||
-rw-r--r-- | mysql-test/include/index_merge_ror.inc | 8 | ||||
-rw-r--r-- | mysql-test/include/index_merge_ror_cpk.inc | 4 | ||||
-rw-r--r-- | mysql-test/r/index_merge_innodb.result | 5 | ||||
-rw-r--r-- | mysql-test/r/index_merge_myisam.result | 3 | ||||
-rw-r--r-- | mysql-test/t/index_merge_innodb.test | 2 | ||||
-rw-r--r-- | sql/item_func.h | 1 | ||||
-rw-r--r-- | sql/sql_class.h | 1 | ||||
-rw-r--r-- | sql/sql_load.cc | 1 |
11 files changed, 34 insertions, 5 deletions
diff --git a/mysql-test/include/index_merge1.inc b/mysql-test/include/index_merge1.inc index b63b2db78da..0fb94b96ab4 100644 --- a/mysql-test/include/index_merge1.inc +++ b/mysql-test/include/index_merge1.inc @@ -37,12 +37,14 @@ insert into t0 values (1),(2),(3),(4),(5),(6),(7),(8); let $1=7; set @d=8; +begin; while ($1) { eval insert into t0 select key1+@d from t0; eval set @d=@d*2; dec $1; } +commit; --enable_query_log alter table t0 add key2 int not null, add index i2(key2); @@ -362,6 +364,7 @@ INSERT INTO t1 VALUES ('foo','bar', 'ZZ'),('fuz','baz', 'ZZ'); --disable_query_log let $1=9; +begin; while ($1) { eval INSERT INTO t1 SELECT * from t1 WHERE cola = 'foo'; @@ -374,6 +377,7 @@ while ($1) eval INSERT INTO t1 SELECT * from t1 WHERE cola <> 'foo'; dec $1; } +commit; --enable_query_log diff --git a/mysql-test/include/index_merge2.inc b/mysql-test/include/index_merge2.inc index 03afa49d323..ae9adac882f 100644 --- a/mysql-test/include/index_merge2.inc +++ b/mysql-test/include/index_merge2.inc @@ -34,11 +34,13 @@ create table t1 --disable_query_log let $1=200; +begin; while ($1) { eval insert into t1 values (200-$1, $1); dec $1; } +commit; --enable_query_log # No primary key @@ -80,11 +82,13 @@ create table t1 ( show warnings; --disable_query_log let $1=30; +begin; while ($1) { eval insert into t1 (key1, key2, filler) values ($1/4, $1/8, 'filler-data'); dec $1; } +commit; --enable_query_log explain select pk from t1 where key1 = 1 and key2 = 1; select pk from t1 where key2 = 1 and key1 = 1; @@ -331,16 +335,20 @@ insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); let $1=7; set @d=8; +begin; while ($1) { eval insert into t1 (key1) select key1+@d from t1; eval set @d=@d*2; dec $1; } +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; + +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; # to test the bug, the following must use "sort_union": diff --git a/mysql-test/include/index_merge_2sweeps.inc b/mysql-test/include/index_merge_2sweeps.inc index 3ae7e5b3c09..ef356e12969 100644 --- a/mysql-test/include/index_merge_2sweeps.inc +++ b/mysql-test/include/index_merge_2sweeps.inc @@ -32,12 +32,14 @@ create table t1 ( --disable_query_log +begin; let $1=1000; while ($1) { eval insert into t1 values($1, $1, $1, 'filler-data','filler-data-2'); dec $1; } +commit; --enable_query_log select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 ); diff --git a/mysql-test/include/index_merge_ror.inc b/mysql-test/include/index_merge_ror.inc index fdb966e6885..3ec6e342994 100644 --- a/mysql-test/include/index_merge_ror.inc +++ b/mysql-test/include/index_merge_ror.inc @@ -67,18 +67,21 @@ create table t1 create table t0 as select * from t1; --disable_query_log --echo # Printing of many insert into t0 values (....) disabled. +begin; let $cnt=1000; while ($cnt) { eval insert into t0 values (1, 2, 3, 1, 2, 3, 0, 0, 0, 0, 'data1', 'data2', 'data3', 'data4', 'data5', 'data6'); dec $cnt; } +commit; --enable_query_log alter table t1 disable keys; --disable_query_log --echo # Printing of many insert into t1 select .... from t0 disabled. let $1=4; +begin; while ($1) { let $2=4; @@ -94,6 +97,7 @@ while ($1) } dec $1; } +commit; --echo # Printing of many insert into t1 (...) values (....) disabled. # Row retrieval tests @@ -101,6 +105,7 @@ while ($1) # insert enough rows for index intersection to be used for (key1,key2) insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 100, 100,'key1-key2-key3-key4'); let $cnt=400; +begin; while ($cnt) { eval insert into t1 (key1, key2, key3, key4, filler1) values (100, -1, 100, -1,'key1-key3'); @@ -112,6 +117,7 @@ while ($cnt) eval insert into t1 (key1, key2, key3, key4, filler1) values (-1, 100, -1, 100,'key2-key4'); dec $cnt; } +commit; --enable_query_log alter table t1 enable keys; select count(*) from t1; @@ -249,6 +255,7 @@ create table t2 ( --disable_query_log let $1=8; +begin; while ($1) { eval insert into t2 values (repeat(char($1+64), 8),repeat(char($1+64), 8),'filler1', 'filler2'); @@ -256,6 +263,7 @@ while ($1) } insert into t2 select * from t2; insert into t2 select * from t2; +commit; --enable_query_log # The table row buffer is reused. Fill it with rows that don't match. diff --git a/mysql-test/include/index_merge_ror_cpk.inc b/mysql-test/include/index_merge_ror_cpk.inc index df42745b4fc..0a307aa4fdb 100644 --- a/mysql-test/include/index_merge_ror_cpk.inc +++ b/mysql-test/include/index_merge_ror_cpk.inc @@ -56,14 +56,14 @@ create table t1 ); --disable_query_log -set autocommit=0; +begin; let $1=10000; while ($1) { eval insert into t1 values ($1 div 10,$1 mod 100, $1/100,$1/100, $1/100,$1/100,$1/100,$1/100,$1/100, $1 mod 100, $1/1000,'filler-data-$1','filler2'); dec $1; } -set autocommit=1; +commit; --enable_query_log # Verify that range scan on CPK is ROR diff --git a/mysql-test/r/index_merge_innodb.result b/mysql-test/r/index_merge_innodb.result index 6a3ea839535..f27bb263c6f 100644 --- a/mysql-test/r/index_merge_innodb.result +++ b/mysql-test/r/index_merge_innodb.result @@ -294,6 +294,7 @@ key3 int not null default 0 ); insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); set @d=8; +begin; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; @@ -308,9 +309,11 @@ insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK @@ -672,6 +675,7 @@ a int, b int, INDEX idx(a)) ENGINE=INNODB; +begin; INSERT INTO t1(a,b) VALUES (11, 1100), (2, 200), (1, 100), (14, 1400), (5, 500), (3, 300), (17, 1700), (4, 400), (12, 1200), (8, 800), @@ -691,6 +695,7 @@ INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1 VALUES (1000000, 0, 0); +commit; SET SESSION sort_buffer_size = 1024*36; set @tmp_optimizer_switch=@@optimizer_switch; set optimizer_switch='derived_merge=off,derived_with_keys=off'; diff --git a/mysql-test/r/index_merge_myisam.result b/mysql-test/r/index_merge_myisam.result index 725a888c914..37f5e15a5f7 100644 --- a/mysql-test/r/index_merge_myisam.result +++ b/mysql-test/r/index_merge_myisam.result @@ -1132,6 +1132,7 @@ key3 int not null default 0 ); insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); set @d=8; +begin; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; @@ -1146,9 +1147,11 @@ insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK diff --git a/mysql-test/t/index_merge_innodb.test b/mysql-test/t/index_merge_innodb.test index 53ce3114b49..f959db3039a 100644 --- a/mysql-test/t/index_merge_innodb.test +++ b/mysql-test/t/index_merge_innodb.test @@ -46,6 +46,7 @@ CREATE TABLE t1 ( INDEX idx(a)) ENGINE=INNODB; +begin; INSERT INTO t1(a,b) VALUES (11, 1100), (2, 200), (1, 100), (14, 1400), (5, 500), (3, 300), (17, 1700), (4, 400), (12, 1200), (8, 800), @@ -65,6 +66,7 @@ INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1 VALUES (1000000, 0, 0); +commit; SET SESSION sort_buffer_size = 1024*36; set @tmp_optimizer_switch=@@optimizer_switch; diff --git a/sql/item_func.h b/sql/item_func.h index 487993b581f..41eb019bd6b 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -1921,7 +1921,6 @@ class Item_func_set_user_var :public Item_func_user_var user variable it the first connection context). */ my_thread_id entry_thread_id; - char buffer[MAX_FIELD_WIDTH]; String value; my_decimal decimal_buff; bool null_item; diff --git a/sql/sql_class.h b/sql/sql_class.h index cb182f55bf1..2c5c01161b6 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -4905,7 +4905,6 @@ class select_insert :public select_result_interceptor { class select_create: public select_insert { - ORDER *group; TABLE_LIST *create_table; Table_specification_st *create_info; TABLE_LIST *select_tables; diff --git a/sql/sql_load.cc b/sql/sql_load.cc index 9006bf2b1d4..49558f8b694 100644 --- a/sql/sql_load.cc +++ b/sql/sql_load.cc @@ -167,7 +167,6 @@ class READ_INFO: public Load_data_param int enclosed_char,escape_char; int *stack,*stack_pos; bool found_end_of_line,start_of_line,eof; - NET *io_net; int level; /* for load xml */ bool getbyte(char *to) |