From e1bd108aa46212f8e26841b38f1db98d0e256c67 Mon Sep 17 00:00:00 2001 From: Daniel Nichter Date: Thu, 30 Aug 2012 15:40:09 -0600 Subject: [PATCH] Collect INNODB_TRX, INNODB_LOCKS, and INNODB_LOCK_WAITS. Fix update-module so it works again with Bash tools. --- bin/pt-stalk | 9 ++++++++- lib/bash/collect.sh | 9 ++++++++- util/update-modules | 11 +++++++---- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/bin/pt-stalk b/bin/pt-stalk index 52f9686e..55295d11 100755 --- a/bin/pt-stalk +++ b/bin/pt-stalk @@ -810,7 +810,8 @@ collect() { >> "$d/$p-processlist" & if [ "$have_lock_waits_table" ]; then - (echo $ts; lock_waits) >>"$d/$p-lock-waits" & + (echo $ts; lock_waits) >>"$d/$p-lock-waits" & + (echo $ts; transactions) >>"$d/$p-transactions" & fi done log "Loop end: $(date +'TS %s.%N %F %T')" @@ -911,6 +912,12 @@ lock_waits() { $CMD_MYSQL $EXT_ARGV -e "$sql2" } +transactions() { + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX\G" + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS\G" + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS\G" +} + # ########################################################################### # End collect package # ########################################################################### diff --git a/lib/bash/collect.sh b/lib/bash/collect.sh index 23640fec..0b7013c8 100644 --- a/lib/bash/collect.sh +++ b/lib/bash/collect.sh @@ -227,7 +227,8 @@ collect() { >> "$d/$p-processlist" & if [ "$have_lock_waits_table" ]; then - (echo $ts; lock_waits) >>"$d/$p-lock-waits" & + (echo $ts; lock_waits) >>"$d/$p-lock-waits" & + (echo $ts; transactions) >>"$d/$p-transactions" & fi done log "Loop end: $(date +'TS %s.%N %F %T')" @@ -338,6 +339,12 @@ lock_waits() { $CMD_MYSQL $EXT_ARGV -e "$sql2" } +transactions() { + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX\G" + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS\G" + $CMD_MYSQL $EXT_ARGV -e "SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS\G" +} + # ########################################################################### # End collect package # ########################################################################### diff --git a/util/update-modules b/util/update-modules index e57f62da..f17fa695 100755 --- a/util/update-modules +++ b/util/update-modules @@ -182,10 +182,13 @@ for pkg in $pkgs; do done if [ $pkgs_updated -gt 0 ]; then - update_tool_header $tmp_tool_file - if [ $? -ne 0 ]; then - warn "Failed to update tool header" - else + if [ "$tool_lang" = "perl" ]; then + update_tool_header $tmp_tool_file + if [ $? -ne 0 ]; then + warn "Failed to update tool header" + fi + fi + if [ $EXIT_STATUS -eq 0 ]; then cp $tmp_tool_file $tool_file if [ $? -ne 0 ]; then warn "Failed to copy $tmp_tool_file to $tool_file"