From fd71b9473fcb4c4e9f839bd9e579e899d424b71f Mon Sep 17 00:00:00 2001 From: mh Date: Mon, 12 Jan 2015 23:29:41 +0100 Subject: split on new line, which fixes an issue if no table is found --- files/scripts/optimize_tables.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files/scripts/optimize_tables.rb b/files/scripts/optimize_tables.rb index e1a71ef..1b76704 100644 --- a/files/scripts/optimize_tables.rb +++ b/files/scripts/optimize_tables.rb @@ -3,7 +3,7 @@ # set home as we runit as weekly cron, where HOME is / ENV['HOME'] = '/root' tables = %x{mysql -Bse "SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql') AND Data_free > 0 AND ENGINE IN ('MyISAM','InnoDB','ARCHIVE')"} -tables.each do |table| +tables.split("\n").each do |table| tableitems = table.chomp.split(/\t/) output = %x{mysql #{tableitems[0]} -Bse "OPTIMIZE TABLE \\`#{tableitems[0]}\\`.\\`#{tableitems[1]}\\`" 2>&1} unless output =~ /status\t+OK/ -- cgit v1.2.3