Loading myisam/sort.c +5 −7 Original line number Diff line number Diff line Loading @@ -483,13 +483,6 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) if (!got_error) { mi_set_key_active(share->state.key_map, sinfo->key); if (param->testflag & T_STATISTICS) update_key_parts(sinfo->keyinfo, rec_per_key_part, sinfo->unique, param->stats_method == MI_STATS_METHOD_IGNORE_NULLS? sinfo->notnull: NULL, (ulonglong) info->state->records); if (!sinfo->buffpek.elements) { if (param->testflag & T_VERBOSE) Loading @@ -501,6 +494,11 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) flush_ft_buf(sinfo) || flush_pending_blocks(sinfo)) got_error=1; } if (!got_error && param->testflag & T_STATISTICS) update_key_parts(sinfo->keyinfo, rec_per_key_part, sinfo->unique, param->stats_method == MI_STATS_METHOD_IGNORE_NULLS? sinfo->notnull: NULL, (ulonglong) info->state->records); } my_free((gptr) sinfo->sort_keys,MYF(0)); my_free(mi_get_rec_buff_ptr(info, sinfo->rec_buff), Loading mysql-test/r/grant.result +1 −0 Original line number Diff line number Diff line Loading @@ -426,6 +426,7 @@ revoke all on mysqltest_2.t1 from mysqltest_3@localhost; revoke all on mysqltest_2.t2 from mysqltest_3@localhost; grant all on mysqltest_2.* to mysqltest_3@localhost; grant select on *.* to mysqltest_3@localhost; grant select on mysqltest_2.t1 to mysqltest_3@localhost; flush privileges; use mysqltest_1; update mysqltest_2.t1, mysqltest_2.t2 set c=500,d=600; Loading mysql-test/r/repair.result +11 −0 Original line number Diff line number Diff line Loading @@ -41,3 +41,14 @@ Table Op Msg_type Msg_text test.t1 repair warning Number of rows changed from 0 to 1 test.t1 repair status OK drop table t1; CREATE TABLE t1(a INT, KEY(a)); INSERT INTO t1 VALUES(1),(2),(3),(4),(5); SET myisam_repair_threads=2; REPAIR TABLE t1; Table Op Msg_type Msg_text test.t1 repair status OK SHOW INDEX FROM t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 a 1 a A 5 NULL NULL YES BTREE SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1; mysql-test/t/grant.test +2 −0 Original line number Diff line number Diff line Loading @@ -362,6 +362,8 @@ revoke all on mysqltest_2.t2 from mysqltest_3@localhost; #test the db/table level privileges grant all on mysqltest_2.* to mysqltest_3@localhost; grant select on *.* to mysqltest_3@localhost; # Next grant is needed to trigger bug#7391. Do not optimize! grant select on mysqltest_2.t1 to mysqltest_3@localhost; flush privileges; disconnect conn1; connect (conn2,localhost,mysqltest_3,,); Loading mysql-test/t/repair.test +11 −0 Original line number Diff line number Diff line Loading @@ -34,4 +34,15 @@ repair table t1; repair table t1 use_frm; drop table t1; # # BUG#18874 - Setting myisam_repair_threads > 1, index cardinality always 1 # CREATE TABLE t1(a INT, KEY(a)); INSERT INTO t1 VALUES(1),(2),(3),(4),(5); SET myisam_repair_threads=2; REPAIR TABLE t1; SHOW INDEX FROM t1; SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1; # End of 4.1 tests Loading
myisam/sort.c +5 −7 Original line number Diff line number Diff line Loading @@ -483,13 +483,6 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) if (!got_error) { mi_set_key_active(share->state.key_map, sinfo->key); if (param->testflag & T_STATISTICS) update_key_parts(sinfo->keyinfo, rec_per_key_part, sinfo->unique, param->stats_method == MI_STATS_METHOD_IGNORE_NULLS? sinfo->notnull: NULL, (ulonglong) info->state->records); if (!sinfo->buffpek.elements) { if (param->testflag & T_VERBOSE) Loading @@ -501,6 +494,11 @@ int thr_write_keys(MI_SORT_PARAM *sort_param) flush_ft_buf(sinfo) || flush_pending_blocks(sinfo)) got_error=1; } if (!got_error && param->testflag & T_STATISTICS) update_key_parts(sinfo->keyinfo, rec_per_key_part, sinfo->unique, param->stats_method == MI_STATS_METHOD_IGNORE_NULLS? sinfo->notnull: NULL, (ulonglong) info->state->records); } my_free((gptr) sinfo->sort_keys,MYF(0)); my_free(mi_get_rec_buff_ptr(info, sinfo->rec_buff), Loading
mysql-test/r/grant.result +1 −0 Original line number Diff line number Diff line Loading @@ -426,6 +426,7 @@ revoke all on mysqltest_2.t1 from mysqltest_3@localhost; revoke all on mysqltest_2.t2 from mysqltest_3@localhost; grant all on mysqltest_2.* to mysqltest_3@localhost; grant select on *.* to mysqltest_3@localhost; grant select on mysqltest_2.t1 to mysqltest_3@localhost; flush privileges; use mysqltest_1; update mysqltest_2.t1, mysqltest_2.t2 set c=500,d=600; Loading
mysql-test/r/repair.result +11 −0 Original line number Diff line number Diff line Loading @@ -41,3 +41,14 @@ Table Op Msg_type Msg_text test.t1 repair warning Number of rows changed from 0 to 1 test.t1 repair status OK drop table t1; CREATE TABLE t1(a INT, KEY(a)); INSERT INTO t1 VALUES(1),(2),(3),(4),(5); SET myisam_repair_threads=2; REPAIR TABLE t1; Table Op Msg_type Msg_text test.t1 repair status OK SHOW INDEX FROM t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 a 1 a A 5 NULL NULL YES BTREE SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1;
mysql-test/t/grant.test +2 −0 Original line number Diff line number Diff line Loading @@ -362,6 +362,8 @@ revoke all on mysqltest_2.t2 from mysqltest_3@localhost; #test the db/table level privileges grant all on mysqltest_2.* to mysqltest_3@localhost; grant select on *.* to mysqltest_3@localhost; # Next grant is needed to trigger bug#7391. Do not optimize! grant select on mysqltest_2.t1 to mysqltest_3@localhost; flush privileges; disconnect conn1; connect (conn2,localhost,mysqltest_3,,); Loading
mysql-test/t/repair.test +11 −0 Original line number Diff line number Diff line Loading @@ -34,4 +34,15 @@ repair table t1; repair table t1 use_frm; drop table t1; # # BUG#18874 - Setting myisam_repair_threads > 1, index cardinality always 1 # CREATE TABLE t1(a INT, KEY(a)); INSERT INTO t1 VALUES(1),(2),(3),(4),(5); SET myisam_repair_threads=2; REPAIR TABLE t1; SHOW INDEX FROM t1; SET myisam_repair_threads=@@global.myisam_repair_threads; DROP TABLE t1; # End of 4.1 tests