diff options
author | unknown <rburnett@bk-internal.mysql.com> | 2006-08-14 17:13:31 +0200 |
---|---|---|
committer | unknown <rburnett@bk-internal.mysql.com> | 2006-08-14 17:13:31 +0200 |
commit | c8a773e920847196e3c7214ec463d48e5ce3ac98 (patch) | |
tree | 304b26f76c16bebba2d1e3de0f98e489af8bb441 | |
parent | f78ffbf96cf4983acb83cd2ecc73b2db976488ce (diff) | |
parent | 867f736815e1359b22a909bd185e7010da27e5fc (diff) | |
download | mariadb-git-c8a773e920847196e3c7214ec463d48e5ce3ac98.tar.gz |
Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into bk-internal.mysql.com:/data0/bk/mysql-5.0-kt
-rw-r--r-- | myisam/sort.c | 12 | ||||
-rw-r--r-- | mysql-test/r/grant.result | 1 | ||||
-rw-r--r-- | mysql-test/r/repair.result | 11 | ||||
-rw-r--r-- | mysql-test/t/grant.test | 2 | ||||
-rw-r--r-- | mysql-test/t/repair.test | 11 |
5 files changed, 30 insertions, 7 deletions
diff --git a/myisam/sort.c b/myisam/sort.c index c9562461f56..00fbfe768dc 100644 --- a/myisam/sort.c +++ b/myisam/sort.c @@ -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) @@ -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), diff --git a/mysql-test/r/grant.result b/mysql-test/r/grant.result index 3f3325354ee..7ad2a5033e9 100644 --- a/mysql-test/r/grant.result +++ b/mysql-test/r/grant.result @@ -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; diff --git a/mysql-test/r/repair.result b/mysql-test/r/repair.result index d8fa4dbbb72..9b07281aa7b 100644 --- a/mysql-test/r/repair.result +++ b/mysql-test/r/repair.result @@ -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; diff --git a/mysql-test/t/grant.test b/mysql-test/t/grant.test index a9d52f559ca..73857d8ab69 100644 --- a/mysql-test/t/grant.test +++ b/mysql-test/t/grant.test @@ -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,,); diff --git a/mysql-test/t/repair.test b/mysql-test/t/repair.test index 16e1d76d460..91a7442226a 100644 --- a/mysql-test/t/repair.test +++ b/mysql-test/t/repair.test @@ -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 |