Comment 4 for bug 1380895

Revision history for this message
Nilnandan Joshi (nilnandan-joshi) wrote :

Able to confirm with PS 5.6.21. With 12K tables, RSS grows from around 800MB to 5.2 GB and then mysql crashed by OOMKiller before query finish.

mysql> SELECT concat('Select ''', a.TABLE_SCHEMA,',',a.TABLE_NAME,',', DATA_LENGTH, ',', INDEX_LENGTH, ',', DATA_FREE, ','', count(*),', ''','', ifnull(max(ifnull(length(',b.COLUMN_NAME,'),0)),0),', ''','',' ' ifnull(avg(ifnull(length(', b.COLUMN_NAME,'),0)),0) From ', a.TABLE_SCHEMA,'.',a.TABLE_NAME,';') FROM information_schema.tables a,information_schema.columns b WHERE (a.TABLE_NAME=b.TABLE_NAME AND a.TABLE_SCHEMA=b.TABLE_SCHEMA) AND a.TABLE_SCHEMA NOT IN ('mysql','wdmon','information_schema','performance_schema') AND b.DATA_TYPE IN ('blob','longblob','longtext','mediumblob','mediumtext','text') UNION SELECT concat('Select ''', TABLE_SCHEMA,',',TABLE_NAME,',', DATA_LENGTH, ',', INDEX_LENGTH, ',', DATA_FREE, ','', count(*),', ''','', 0,', ''','',' ' 0 From ', TABLE_SCHEMA,'.',TABLE_NAME,';') FROM information_schema.tables a WHERE concat(TABLE_SCHEMA,TABLE_NAME) NOT IN (SELECT concat(TABLE_SCHEMA,TABLE_NAME) FROM information_schema.columns WHERE DATA_TYPE IN ('blob','longblob','longtext','mediumblob','mediumtext','text')) AND TABLE_SCHEMA NOT IN ('mysql','wdmon','information_schema','performance_schema') ORDER BY 1;
ERROR 2013 (HY000): Lost connection to MySQL server during query
mysql>

mysql> SELECT engine, count(*) tables, concat(round(sum(table_rows)/1000000,2),'M') rows, concat(round(sum(data_length)/(1024*1024*1024),2),'G') data, concat(round(sum(index_length)/(1024*1024*1024),2),'G') idx, concat(round(sum(data_length+index_length)/(1024*1024*1024),2),'G') total_size, round(sum(index_length)/sum(data_length),2) idxfrac FROM information_schema.TABLES GROUP BY engine ORDER BY sum(data_length+index_length);
+--------------------+--------+-------+-------+-------+------------+---------+
| engine | tables | rows | data | idx | total_size | idxfrac |
+--------------------+--------+-------+-------+-------+------------+---------+
| MEMORY | 60 | NULL | 0.00G | 0.00G | 0.00G | NULL |
| PERFORMANCE_SCHEMA | 52 | 0.07M | 0.00G | 0.00G | 0.00G | NULL |
| CSV | 2 | 0.00M | 0.00G | 0.00G | 0.00G | NULL |
| MyISAM | 31 | 0.00M | 0.00G | 0.00G | 0.00G | 0.18 |
| InnoDB | 12345 | 9.33M | 0.65G | 0.71G | 1.36G | 1.09 |
+--------------------+--------+-------+-------+-------+------------+---------+
5 rows in set (10.38 sec)

mysql>

nilnandan@Dell-XPS:~$ ps -aux | grep mysql
root 16431 0.0 0.0 4444 756 pts/15 S 14:40 0:00 /bin/sh /usr/bin/mysqld_safe
mysql 16815 28.0 10.3 1559480 835540 pts/15 Sl 14:40 0:15 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --open-files-limit=50000 --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306

nilnandan@Dell-XPS:~$ ps -aux | grep mysql
root 16431 0.0 0.0 4444 156 pts/15 S 14:40 0:00 /bin/sh /usr/bin/mysqld_safe
mysql 16815 70.6 65.2 6147000 5268200 pts/15 Sl 14:40 3:26 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --open-files-limit=50000 --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306