1--source include/have_innodb.inc 2--source include/have_debug.inc 3--source include/big_test.inc 4 5--echo # 6--echo # Bug#32831765 SERVER HITS OOM CONDITION WHEN LOADING TWO 7--echo # INNODB TABLES WITH FTS INDEXES 8--echo # 9 10create table t1 ( `id` int unsigned NOT NULL AUTO_INCREMENT, `col01` text, 11`col02` text, `col03` text, `col04` text, `col05` text, `col06` text, `col07` 12text, `col08` text, `col09` text, `col10` text, `col11` text, `col12` text, 13`col13` text, `col14` text, `col15` text, `col16` text, `col17` text, `col18` 14text, `col19` text, `col20` text, `col21` text, `col22` text, `col23` text, 15`col24` text, `col25` text, `col26` text, `col27` text, `col28` text, `col29` 16text, `col30` text, PRIMARY KEY (`id`), FULLTEXT KEY (`col01`), FULLTEXT KEY 17(`col02`), FULLTEXT KEY (`col03`), FULLTEXT KEY (`col04`), FULLTEXT KEY 18(`col05`), FULLTEXT KEY (`col06`), FULLTEXT KEY (`col07`), FULLTEXT KEY 19(`col08`), FULLTEXT KEY (`col09`), FULLTEXT KEY (`col10`), FULLTEXT KEY 20(`col11`), FULLTEXT KEY (`col12`), FULLTEXT KEY (`col13`), FULLTEXT KEY 21(`col14`), FULLTEXT KEY (`col15`), FULLTEXT KEY (`col16`), FULLTEXT KEY 22(`col17`), FULLTEXT KEY (`col18`), FULLTEXT KEY (`col19`), FULLTEXT KEY 23(`col20`), FULLTEXT KEY (`col21`), FULLTEXT KEY (`col22`), FULLTEXT KEY 24(`col23`), FULLTEXT KEY (`col24`), FULLTEXT KEY (`col25`), FULLTEXT KEY 25(`col26`), FULLTEXT KEY (`col27`), FULLTEXT KEY (`col28`), FULLTEXT KEY 26(`col29`), FULLTEXT KEY (`col30`)) engine=innodb; 27 28create table t2 ( `id` int unsigned NOT NULL AUTO_INCREMENT, `col01` text, 29`col02` text, `col03` text, `col04` text, `col05` text, `col06` text, `col07` 30text, `col08` text, `col09` text, `col10` text, `col11` text, `col12` text, 31`col13` text, `col14` text, `col15` text, `col16` text, `col17` text, `col18` 32text, `col19` text, `col20` text, `col21` text, `col22` text, `col23` text, 33`col24` text, `col25` text, `col26` text, `col27` text, `col28` text, `col29` 34text, `col30` text, PRIMARY KEY (`id`), FULLTEXT KEY (`col01`), FULLTEXT KEY 35(`col02`), FULLTEXT KEY (`col03`), FULLTEXT KEY (`col04`), FULLTEXT KEY 36(`col05`), FULLTEXT KEY (`col06`), FULLTEXT KEY (`col07`), FULLTEXT KEY 37(`col08`), FULLTEXT KEY (`col09`), FULLTEXT KEY (`col10`), FULLTEXT KEY 38(`col11`), FULLTEXT KEY (`col12`), FULLTEXT KEY (`col13`), FULLTEXT KEY 39(`col14`), FULLTEXT KEY (`col15`), FULLTEXT KEY (`col16`), FULLTEXT KEY 40(`col17`), FULLTEXT KEY (`col18`), FULLTEXT KEY (`col19`), FULLTEXT KEY 41(`col20`), FULLTEXT KEY (`col21`), FULLTEXT KEY (`col22`), FULLTEXT KEY 42(`col23`), FULLTEXT KEY (`col24`), FULLTEXT KEY (`col25`), FULLTEXT KEY 43(`col26`), FULLTEXT KEY (`col27`), FULLTEXT KEY (`col28`), FULLTEXT KEY 44(`col29`), FULLTEXT KEY (`col30`)) engine=innodb; 45 46 47create table t3 ( `id` int unsigned NOT NULL AUTO_INCREMENT, `col01` text, 48`col02` text, `col03` text, `col04` text, `col05` text, `col06` text, `col07` 49text, `col08` text, `col09` text, `col10` text, `col11` text, `col12` text, 50`col13` text, `col14` text, `col15` text, `col16` text, `col17` text, `col18` 51text, `col19` text, `col20` text, `col21` text, `col22` text, `col23` text, 52`col24` text, `col25` text, `col26` text, `col27` text, `col28` text, `col29` 53text, `col30` text, PRIMARY KEY (`id`), FULLTEXT KEY (`col01`), FULLTEXT KEY 54(`col02`), FULLTEXT KEY (`col03`), FULLTEXT KEY (`col04`), FULLTEXT KEY 55(`col05`), FULLTEXT KEY (`col06`), FULLTEXT KEY (`col07`), FULLTEXT KEY 56(`col08`), FULLTEXT KEY (`col09`), FULLTEXT KEY (`col10`), FULLTEXT KEY 57(`col11`), FULLTEXT KEY (`col12`), FULLTEXT KEY (`col13`), FULLTEXT KEY 58(`col14`), FULLTEXT KEY (`col15`), FULLTEXT KEY (`col16`), FULLTEXT KEY 59(`col17`), FULLTEXT KEY (`col18`), FULLTEXT KEY (`col19`), FULLTEXT KEY 60(`col20`), FULLTEXT KEY (`col21`), FULLTEXT KEY (`col22`), FULLTEXT KEY 61(`col23`), FULLTEXT KEY (`col24`), FULLTEXT KEY (`col25`), FULLTEXT KEY 62(`col26`), FULLTEXT KEY (`col27`), FULLTEXT KEY (`col28`), FULLTEXT KEY 63(`col29`), FULLTEXT KEY (`col30`)) engine=innodb; 64 65create table t4 ( `id` int unsigned NOT NULL AUTO_INCREMENT, `col01` text, 66`col02` text, `col03` text, `col04` text, `col05` text, `col06` text, `col07` 67text, `col08` text, `col09` text, `col10` text, `col11` text, `col12` text, 68`col13` text, `col14` text, `col15` text, `col16` text, `col17` text, `col18` 69text, `col19` text, `col20` text, `col21` text, `col22` text, `col23` text, 70`col24` text, `col25` text, `col26` text, `col27` text, `col28` text, `col29` 71text, `col30` text, PRIMARY KEY (`id`), FULLTEXT KEY (`col01`), FULLTEXT KEY 72(`col02`), FULLTEXT KEY (`col03`), FULLTEXT KEY (`col04`), FULLTEXT KEY 73(`col05`), FULLTEXT KEY (`col06`), FULLTEXT KEY (`col07`), FULLTEXT KEY 74(`col08`), FULLTEXT KEY (`col09`), FULLTEXT KEY (`col10`), FULLTEXT KEY 75(`col11`), FULLTEXT KEY (`col12`), FULLTEXT KEY (`col13`), FULLTEXT KEY 76(`col14`), FULLTEXT KEY (`col15`), FULLTEXT KEY (`col16`), FULLTEXT KEY 77(`col17`), FULLTEXT KEY (`col18`), FULLTEXT KEY (`col19`), FULLTEXT KEY 78(`col20`), FULLTEXT KEY (`col21`), FULLTEXT KEY (`col22`), FULLTEXT KEY 79(`col23`), FULLTEXT KEY (`col24`), FULLTEXT KEY (`col25`), FULLTEXT KEY 80(`col26`), FULLTEXT KEY (`col27`), FULLTEXT KEY (`col28`), FULLTEXT KEY 81(`col29`), FULLTEXT KEY (`col30`)) engine=innodb; 82 83delimiter |; 84 85--echo #create procedure to inset into the table. 86CREATE PROCEDURE `proc_insert`(IN tab_name VARCHAR(40)) 87BEGIN 88 DECLARE i INT DEFAULT 1; 89 SET @insert_tbl =CONCAT('INSERT INTO ', tab_name, '( `col01`, `col02`, 90 `col03`, `col04`, `col05`, `col06`, `col07`, `col08`, `col09`, `col10`, 91 `col11`, `col12`, `col13`, `col14`, `col15`, `col16`, `col17`, `col18`, 92 `col19`, `col20`, `col21`, `col22`, `col23`, `col24`, `col25`, `col26`, 93 `col27`, `col28`, `col29`, `col30`) 94 VALUES ( MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 95 MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 96 MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 97 MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 98 MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 99 MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), MD5(RAND()), 100 MD5(RAND()))'); 101 PREPARE ins_stmt FROM @insert_tbl; 102 while (i <= 2000) DO 103 EXECUTE ins_stmt; 104 SET i = i + 1; 105 END WHILE; 106 DEALLOCATE PREPARE ins_stmt; 107END | 108 109delimiter ;| 110 111# Ensure that the number of SYNC requests will not exceed 1000. 112SET @save_dbug= @@GLOBAL.debug_dbug; 113SET GLOBAL debug_dbug="+d,fts_optimize_wq_count_check"; 114 115connect (con1,localhost,root,,); 116send call proc_insert('t1'); 117connect (con2,localhost,root,,); 118send call proc_insert('t1'); 119connect (con3,localhost,root,,); 120send call proc_insert('t2'); 121connect (con4,localhost,root,,); 122send call proc_insert('t2'); 123connect (con5,localhost,root,,); 124send call proc_insert('t3'); 125connect (con6,localhost,root,,); 126send call proc_insert('t3'); 127connect (con7,localhost,root,,); 128send call proc_insert('t4'); 129 130connection default; 131call proc_insert('t4'); 132SET GLOBAL debug_dbug= @save_dbug; 133 134connection con1; 135reap; 136disconnect con1; 137 138connection con2; 139reap; 140disconnect con2; 141 142connection con3; 143reap; 144disconnect con3; 145 146connection con4; 147reap; 148disconnect con4; 149 150connection con5; 151reap; 152disconnect con5; 153 154connection con6; 155reap; 156disconnect con6; 157 158connection con7; 159reap; 160disconnect con7; 161 162connection default; 163DROP TABLE t1,t2,t3,t4; 164DROP PROCEDURE proc_insert; 165