Ok, I have test it by myself, it's existed, so I'm here to write the case. first, please create 8 tables, table name are follows: use test; create table sml_tb( id int not null primary key auto_increment, col1 int not null default 0, col2 int not null default 0, col3 int not null default 0, col4 int not null default 0, col5 int not null default 0, col6 timestamp, col7 datetime not null default '0000-00-00 00:00:00', col8 char(255) not null default '123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345', col9 char(255) not null default '123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345', col10 varchar(256) not null default '1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456', col11 varchar(256) not null default '1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456' ) row_format = compact; create table big_tb1 like sml_tb; create table big_tb2 like sml_tb; create table big_tb3 like sml_tb; create table big_tb4 like sml_tb; create table big_tb5 like sml_tb; create table big_tb6 like sml_tb; create table big_tb7 like sml_tb; create table big_tb8 like sml_tb; and now, please init the table, and insert every table with 200000 records: create table t (c1 int); set @i:=0; insert into t select 1 from mysql.user a, mysql.user b, mysql.user c; insert into big_tb1(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb2(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb3(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb4(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb5(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb6(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb7(id) select @i:=@i+1 from t a, t b, t c limit 200000; insert into big_tb8(id) select @i:=@i+1 from t a, t b, t c limit 200000; and my test case is follows: 8 concurrency, every sql is the same:update test.big_tb2 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; in the sql, ? is set in test case, it is random in 0-200000. the test .so is compiled by me, you can tell me a mail after and send it to you. the run parameter is as follows: ./test_server -W 0 -c 8 -h 10.3.16.205 -P 3306 -u wzf -p wzf -T "test.big_tb1;test.big_tb2;test.big_tb3;test.big_tb4;test.big_tb5;test.big_tb6;test.big_tb7;test.big_tb8" -s "update test.big_tb1 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb2 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb3 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb4 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb5 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb6 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb7 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ?; update test.big_tb8 set col1=col1+1, col2=col2+1,col3=col3+1,col4=col4+1,col5=col5+1, col8='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col9='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', col10='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',col11='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' where id = ? " -n "200000;200000;200000;200000;200000;200000;200000;200000" -w 1 -i 3 -t 36000 you can ./test_server --help to show what every param mean. the test result is(show in qps) : /concurrency:8 /data rows:200000 dw;org version; dw;own version; 23176 85703 30074 87479 50151 91902 27467 81735 42897 80110 51948 87897 59053 89924 68358 93022 64298 92487 68343 93969 72427 93153 73235 93226 70338 100785 69000 97104 68008 92015 69406 97264 69461 102249 79699 95701 76426 99536 82165 99613 81098 90375 76737 96814 75471 101141 77531 93930 75521 95784 74476 86737 77782 96465 63219 93993 77130 96745 73869 94843 69171 92478 3071 87945 3 96386 2 96027 4 92605 24 87716 91 86999 121 88956 137 81008 279 91037 447 95036 1786 89414 191 90271 11095 92239 75 91650 245 91850 1302 94626 3404 98133 1870 76620 2120 89161 14850 90976 3208 101024 5050 98045 6363 100219 9830 99375 13373 100546 5568 101439 5987 99361 7930 97016 9441 96812 15198 96369 15541 90446 9694 88372 13584 89001 9622 94000 13134 91260 13125 91738 9213 95052 16238 92321 17459 94097 6659 95975 9636 94400 18964 100540 16641 101676 8286 99940 6854 100996 6363 106005 52368 101999 24164 98224 28297 86192 20124 91584 17875 81083 9551 92711 19230 92862 19638 81872 17170 85273 15087 86195 12034 80049 17765 82247 17030 75213 16065 50395 21312 65193 19828 65291 14947 89184 20827 85433 14907 83983 26035 87017 26622 88010 21357 90055 11658 85934 13594 85920 16330 91858 14625 89799 18105 92424 27819 95344 75548 99139 69794 96712 34083 95805 14032 102000 20466 97551 19196 92161 14139 90663 16071 90228 21897 87076 21916 87541 15418 87571 18727 94977 22075 97395 . 100859 . 98972 . 100624 . 90473 98509 100621 99462 89796 93402 98990 99034 98127 98326 94265 67992 93488 5400 99312 9500 98231 5 95222 115 95712 2184 99961 748 97680 3901 98260 3165 95795 86 100644 755 96804 985 90001 974 99397 1967 100111 2552 94492 1676 92998 19055 90153 16002 89634 21473 89088 22323 88127 20972 89807 20023 92309 14039 85527 17819 91211 21212 90624 40077 93522 37357 90360 46694 91433 so in the result, you can find the different between two version. in origin version, it has bug, in my own version, I have modify it ok. it is very uniform, I have solve the shake of mysql when checkpoint. if you what my process, please give me your mail address and I send it to you.