diff --git a/bin/pt-archiver b/bin/pt-archiver index 11722da6..e3fb0b23 100755 --- a/bin/pt-archiver +++ b/bin/pt-archiver @@ -4921,7 +4921,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -5387,7 +5392,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-config-diff b/bin/pt-config-diff index 5c7664bf..246a8f41 100755 --- a/bin/pt-config-diff +++ b/bin/pt-config-diff @@ -4693,7 +4693,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -5159,7 +5164,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-deadlock-logger b/bin/pt-deadlock-logger index 7102baee..e82cd036 100755 --- a/bin/pt-deadlock-logger +++ b/bin/pt-deadlock-logger @@ -3758,7 +3758,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4224,7 +4229,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-diskstats b/bin/pt-diskstats index 7551e2a9..0ebb0a8c 100755 --- a/bin/pt-diskstats +++ b/bin/pt-diskstats @@ -4328,7 +4328,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4794,7 +4799,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-duplicate-key-checker b/bin/pt-duplicate-key-checker index 2960182e..71e9fa70 100755 --- a/bin/pt-duplicate-key-checker +++ b/bin/pt-duplicate-key-checker @@ -4347,7 +4347,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4813,7 +4818,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-find b/bin/pt-find index e3bd0cd0..b4acdee6 100755 --- a/bin/pt-find +++ b/bin/pt-find @@ -3072,7 +3072,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -3538,7 +3543,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-fk-error-logger b/bin/pt-fk-error-logger index bdffee54..0d3a0f6d 100755 --- a/bin/pt-fk-error-logger +++ b/bin/pt-fk-error-logger @@ -3263,7 +3263,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -3729,7 +3734,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-heartbeat b/bin/pt-heartbeat index d8d63a21..3fb9ae05 100755 --- a/bin/pt-heartbeat +++ b/bin/pt-heartbeat @@ -4244,7 +4244,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4710,7 +4715,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-index-usage b/bin/pt-index-usage index cb20bcd4..de6ea472 100755 --- a/bin/pt-index-usage +++ b/bin/pt-index-usage @@ -5749,7 +5749,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -6215,7 +6220,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-kill b/bin/pt-kill index 02dec217..06be788c 100755 --- a/bin/pt-kill +++ b/bin/pt-kill @@ -6075,7 +6075,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -6541,7 +6546,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-online-schema-change b/bin/pt-online-schema-change index ead42cfd..b1acdb68 100755 --- a/bin/pt-online-schema-change +++ b/bin/pt-online-schema-change @@ -7077,7 +7077,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -7543,7 +7548,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-query-digest b/bin/pt-query-digest index 3a1bcac5..2f0a784c 100755 --- a/bin/pt-query-digest +++ b/bin/pt-query-digest @@ -5278,6 +5278,8 @@ $Data::Dumper::Indent = 1; $Data::Dumper::Sortkeys = 1; $Data::Dumper::Quotekeys = 0; +use Digest::MD5 qw(md5); + use constant BUCK_SIZE => 1.05; use constant BASE_LOG => log(BUCK_SIZE); use constant BASE_OFFSET => abs(1 - log(0.000001) / BASE_LOG); # 284.1617969 @@ -5805,6 +5807,7 @@ sub top_events { my @sorted = reverse sort { # Sorted list of $groupby values $classes->{$a}->{$args{attrib}}->{$args{orderby}} <=> $classes->{$b}->{$args{attrib}}->{$args{orderby}} + || tiebreaker($classes->{$a}, $classes->{$b}); } grep { defined $classes->{$_}->{$args{attrib}}->{$args{orderby}} } keys %$classes; # this should first be sorted for test consistency, but many tests already in place would fail @@ -5841,6 +5844,15 @@ sub top_events { return \@chosen, \@other; } +sub tiebreaker { + my ($a, $b) = @_; + if (defined $a->{pos_in_log}) { + return $a->{pos_in_log}->{max} cmp $b->{pos_in_log}->{max}; + } + return 0; + +} + sub add_new_attributes { my ( $self, $event ) = @_; return unless $event; @@ -12333,7 +12345,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -12799,7 +12816,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-slave-delay b/bin/pt-slave-delay index c92f86b8..48fc9d2d 100755 --- a/bin/pt-slave-delay +++ b/bin/pt-slave-delay @@ -3597,7 +3597,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4063,7 +4068,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-slave-restart b/bin/pt-slave-restart index 3bdc4d69..ffc5da69 100755 --- a/bin/pt-slave-restart +++ b/bin/pt-slave-restart @@ -4246,7 +4246,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4712,7 +4717,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-table-checksum b/bin/pt-table-checksum index 6d3e8267..3d94acd4 100755 --- a/bin/pt-table-checksum +++ b/bin/pt-table-checksum @@ -832,7 +832,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -1298,7 +1303,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-table-sync b/bin/pt-table-sync index 2bf517fd..d5122de2 100755 --- a/bin/pt-table-sync +++ b/bin/pt-table-sync @@ -9105,7 +9105,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -9571,7 +9576,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-upgrade b/bin/pt-upgrade index f45dc9ab..9d6a92dc 100755 --- a/bin/pt-upgrade +++ b/bin/pt-upgrade @@ -4069,7 +4069,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4535,7 +4540,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/bin/pt-variable-advisor b/bin/pt-variable-advisor index 0fb1e2f2..a5de7da8 100755 --- a/bin/pt-variable-advisor +++ b/bin/pt-variable-advisor @@ -4504,7 +4504,12 @@ sub version_check { PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } @@ -4970,7 +4975,7 @@ sub get_from_mysql { } if ($item->{item} eq 'MySQL' && $item->{type} eq 'mysql_variable') { - $item->{vars} = ['version_comment', 'version']; + @{$item->{vars}} = grep { $_ eq 'version' || $_ eq 'version_comment' } @{$item->{vars}}; } diff --git a/lib/Sandbox.pm b/lib/Sandbox.pm index 6a21e7fa..8178a585 100644 --- a/lib/Sandbox.pm +++ b/lib/Sandbox.pm @@ -72,7 +72,7 @@ my %server_type = ( node => 1, ); -my $test_dbs = qr/^(?:mysql|information_schema|sakila|performance_schema|percona_test)$/; +my $test_dbs = qr/^(?:mysql|information_schema|sakila|performance_schema|percona_test|sys)$/; sub new { my ( $class, %args ) = @_; diff --git a/lib/VersionCheck.pm b/lib/VersionCheck.pm index 616df25a..0c126d11 100644 --- a/lib/VersionCheck.pm +++ b/lib/VersionCheck.pm @@ -105,13 +105,18 @@ sub version_check { # and it is by default because the option is on by default in PT 2.2. # However, we do not want dev and testing to v-c, so even though this # sub is called, force should be false because $o->got('version-check') - # is false, then check for a .bzr dir which indicates dev or testing. + # is false, then check for a .bzr or .git dir which indicates dev or testing. # ../.bzr is when a tool is ran from /bin/; ../../.bzr is when a tool # is ran as a module from /t//. PTDEBUG && _d('FindBin::Bin:', $FindBin::Bin); if ( !$args{force} ) { if ( $FindBin::Bin - && (-d "$FindBin::Bin/../.bzr" || -d "$FindBin::Bin/../../.bzr") ) { + && (-d "$FindBin::Bin/../.bzr" || + -d "$FindBin::Bin/../../.bzr" || + -d "$FindBin::Bin/../.git" || + -d "$FindBin::Bin/../../.git" + ) + ) { PTDEBUG && _d("$FindBin::Bin/../.bzr disables --version-check"); return; } diff --git a/sandbox/servers/5.7/data.tar.gz b/sandbox/servers/5.7/data.tar.gz index fb36f610..cd43b3d7 100644 Binary files a/sandbox/servers/5.7/data.tar.gz and b/sandbox/servers/5.7/data.tar.gz differ diff --git a/sandbox/servers/5.7/system_idb_tables.sql b/sandbox/servers/5.7/system_idb_tables.sql index c97f5e6f..1ec48fff 100644 --- a/sandbox/servers/5.7/system_idb_tables.sql +++ b/sandbox/servers/5.7/system_idb_tables.sql @@ -26,7 +26,7 @@ CREATE TABLE IF NOT EXISTS `slave_master_info` ( `Number_of_lines` int(10) unsigned NOT NULL COMMENT 'Number of lines in the file.', `Master_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT 'The name of the master binary log currently being read from the master.', `Master_log_pos` bigint(20) unsigned NOT NULL COMMENT 'The master log position of the last read event.', - `Host` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT 'The host name of the master.', + `Host` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT 'The host name of the master.', `User_name` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The user name used to connect to the master.', `User_password` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The password used to connect to the master.', `Port` int(10) unsigned NOT NULL COMMENT 'The network port used to connect to the master.', @@ -61,7 +61,6 @@ CREATE TABLE IF NOT EXISTS `slave_relay_log_info` ( PRIMARY KEY (`Id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Relay Log Information'; - CREATE TABLE IF NOT EXISTS `slave_worker_info` ( `Id` int(10) unsigned NOT NULL, `Relay_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, @@ -77,73 +76,3 @@ CREATE TABLE IF NOT EXISTS `slave_worker_info` ( `Checkpoint_group_bitmap` blob NOT NULL, PRIMARY KEY (`Id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Worker Information'; - - -CREATE TABLE IF NOT EXISTS `help_category` ( - `help_category_id` smallint(5) unsigned NOT NULL, - `name` char(64) NOT NULL, - `parent_category_id` smallint(5) unsigned DEFAULT NULL, - `url` text NOT NULL, - PRIMARY KEY (`help_category_id`), - UNIQUE KEY `name` (`name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='help categories'; - -CREATE TABLE IF NOT EXISTS `help_keyword` ( - `help_keyword_id` int(10) unsigned NOT NULL, - `name` char(64) NOT NULL, - PRIMARY KEY (`help_keyword_id`), - UNIQUE KEY `name` (`name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='help keywords'; - -CREATE TABLE IF NOT EXISTS `help_relation` ( - `help_topic_id` int(10) unsigned NOT NULL, - `help_keyword_id` int(10) unsigned NOT NULL, - PRIMARY KEY (`help_keyword_id`,`help_topic_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='keyword-topic relation'; - -CREATE TABLE IF NOT EXISTS `help_topic` ( - `help_topic_id` int(10) unsigned NOT NULL, - `name` char(64) NOT NULL, - `help_category_id` smallint(5) unsigned NOT NULL, - `description` text NOT NULL, - `example` text NOT NULL, - `url` text NOT NULL, - PRIMARY KEY (`help_topic_id`), - UNIQUE KEY `name` (`name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='help topics'; - -CREATE TABLE IF NOT EXISTS `time_zone` ( - `Time_zone_id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `Use_leap_seconds` enum('Y','N') NOT NULL DEFAULT 'N', - PRIMARY KEY (`Time_zone_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Time zones'; - -CREATE TABLE IF NOT EXISTS `time_zone_leap_second` ( - `Transition_time` bigint(20) NOT NULL, - `Correction` int(11) NOT NULL, - PRIMARY KEY (`Transition_time`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Leap seconds information for time zones'; - -CREATE TABLE IF NOT EXISTS `time_zone_name` ( - `Name` char(64) NOT NULL, - `Time_zone_id` int(10) unsigned NOT NULL, - PRIMARY KEY (`Name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Time zone names'; - -CREATE TABLE IF NOT EXISTS `time_zone_transition` ( - `Time_zone_id` int(10) unsigned NOT NULL, - `Transition_time` bigint(20) NOT NULL, - `Transition_type_id` int(10) unsigned NOT NULL, - PRIMARY KEY (`Time_zone_id`,`Transition_time`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Time zone transitions'; - -CREATE TABLE IF NOT EXISTS `time_zone_transition_type` ( - `Time_zone_id` int(10) unsigned NOT NULL, - `Transition_type_id` int(10) unsigned NOT NULL, - `Offset` int(11) NOT NULL DEFAULT '0', - `Is_DST` tinyint(3) unsigned NOT NULL DEFAULT '0', - `Abbreviation` char(8) NOT NULL DEFAULT '', - PRIMARY KEY (`Time_zone_id`,`Transition_type_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Time zone transition types'; - - diff --git a/t/lib/.VersionCheck.t.swp b/t/lib/.VersionCheck.t.swp new file mode 100644 index 00000000..e2422d98 Binary files /dev/null and b/t/lib/.VersionCheck.t.swp differ diff --git a/t/lib/OptionParser.t b/t/lib/OptionParser.t index a7718f4d..a8ea624d 100644 --- a/t/lib/OptionParser.t +++ b/t/lib/OptionParser.t @@ -2123,6 +2123,10 @@ is( # direct STDOUT to a file and still see the prompt # ############################################################################# +SKIP: { + eval {require Term::ReadKey}; + skip ('\'prompt_no_echo outputs to STDERR\' because Term::ReadKey not available', 1) if $EVAL_ERROR; + $o = new OptionParser(); $output = output( @@ -2141,6 +2145,8 @@ is ( 'prompt_no_echo outputs prompt to STDERR' ); +} # end skip + # ############################################################################# # Issue 1361293: Global config file with no-version-check option makes tools # that don't recognize the option fail. diff --git a/t/lib/TableParser.t b/t/lib/TableParser.t index 0420c9ac..ee545bd5 100644 --- a/t/lib/TableParser.t +++ b/t/lib/TableParser.t @@ -634,8 +634,8 @@ SKIP: { my $root_dbh = DBI->connect( "DBI:mysql:host=127.0.0.1;port=12345", 'root', 'msandbox', { PrintError => 0, RaiseError => 1 }); - $root_dbh->do("GRANT SELECT ON test.* TO 'user'\@'\%'"); - $root_dbh->do('FLUSH PRIVILEGES'); + + $root_dbh->do(q[GRANT SELECT ON test.* TO 'user'@'%'] ) || die($root_dbh->errstr); my $user_dbh = DBI->connect( "DBI:mysql:host=127.0.0.1;port=12345", 'user', undef, @@ -970,4 +970,4 @@ diag(`$trunk/sandbox/stop-sandbox $master3_port >/dev/null`); $sb->wipe_clean($dbh) if $dbh; ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox"); done_testing; -exit; \ No newline at end of file +exit; diff --git a/t/pt-heartbeat/basics.t b/t/pt-heartbeat/basics.t index a542e8ca..e93bd94f 100644 --- a/t/pt-heartbeat/basics.t +++ b/t/pt-heartbeat/basics.t @@ -28,6 +28,7 @@ elsif ( !$slave1_dbh ) { plan skip_all => 'Cannot connect to sandbox slave1'; } + $sb->create_dbs($master_dbh, ['test']); my $output; @@ -222,6 +223,7 @@ $output = output( } ); + $row = $master_dbh->selectrow_arrayref('SELECT server_id FROM test.heartbeat'); is( $row->[0], @@ -247,7 +249,7 @@ diag(`/tmp/12345/use -u root -e "REVOKE SUPER ON *.* FROM 'bob'\@'%'"`); $output = output( sub { pt_heartbeat::main("u=bob,F=/tmp/12346/my.sandbox.cnf", - qw(-D test --update --replace --run-time 1)) + qw(-D test --interval 0.8 --update --replace --run-time 1)) }, stderr => 1 ); @@ -279,5 +281,6 @@ diag(`/tmp/12345/use -u root -e "DROP USER 'bob'\@'%'"`); diag(`rm $pid_file $sent_file 2>/dev/null`); $sb->wipe_clean($master_dbh); ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox"); + done_testing; exit; diff --git a/t/pt-query-digest/binlog_analyses.t b/t/pt-query-digest/binlog_analyses.t index f8f76016..e6fe7779 100644 --- a/t/pt-query-digest/binlog_analyses.t +++ b/t/pt-query-digest/binlog_analyses.t @@ -29,7 +29,6 @@ ok( ), 'Analysis for binlog001', ) or diag($test_diff); - ok( no_diff( sub { pt_query_digest::main(@args, $sample.'binlog002.txt') }, @@ -37,7 +36,6 @@ ok( ), 'Analysis for binlog002', ) or diag($test_diff); - ok( no_diff( sub { pt_query_digest::main(@args, $sample.'binlog011.txt') }, diff --git a/t/pt-query-digest/samples/binlog001.txt b/t/pt-query-digest/samples/binlog001.txt index 63afcd2b..d4ac8514 100644 --- a/t/pt-query-digest/samples/binlog001.txt +++ b/t/pt-query-digest/samples/binlog001.txt @@ -151,37 +151,7 @@ select o.tbl2 = e.tbl2, # 10s+ ################################################################ BEGIN\G -# Query 5: 0 QPS, 0x concurrency, ID 0x79BFEA84D0CED05F at byte 1889 _____ -# Scores: V/M = 0.00 -# Time range: all events occurred at 2007-12-07 12:02:53 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 16 1 -# Exec time 16 20661s 20661s 20661s 20661s 20661s 0 20661s -# Query size 24 341 341 341 341 341 0 341 -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases test1 -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ ################################################################ -# Tables -# SHOW TABLE STATUS FROM `test1` LIKE 'tbl6'\G -# SHOW CREATE TABLE `test1`.`tbl6`\G -insert into test1.tbl6 - (day, tbl5, misccol9type, misccol9, metric11, metric12, secs) - values - (convert_tz(current_timestamp,'EST5EDT','PST8PDT'), '239', 'foo', 'bar', 1, '1', '16.3574378490448') - on duplicate key update metric11 = metric11 + 1, - metric12 = metric12 + values(metric12), secs = secs + values(secs)\G - -# Query 6: 0 QPS, 0x concurrency, ID 0xED69B13F3D0161D0 at byte 2479 _____ +# Query 5: 0 QPS, 0x concurrency, ID 0xED69B13F3D0161D0 at byte 2479 _____ # Scores: V/M = 0.00 # Time range: all events occurred at 2007-12-07 12:02:53 # Attribute pct total min max avg 95% stddev median @@ -215,6 +185,36 @@ select last2metric1 = last1metric1, last2time = last1time, last1metric1 = last0metric1, last1time = last0time, last0metric1 = ondeckmetric1, last0time = now() from test2.tbl8 where tbl8 in (10800712)\G +# Query 6: 0 QPS, 0x concurrency, ID 0x79BFEA84D0CED05F at byte 1889 _____ +# Scores: V/M = 0.00 +# Time range: all events occurred at 2007-12-07 12:02:53 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 16 1 +# Exec time 16 20661s 20661s 20661s 20661s 20661s 0 20661s +# Query size 24 341 341 341 341 341 0 341 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases test1 +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ ################################################################ +# Tables +# SHOW TABLE STATUS FROM `test1` LIKE 'tbl6'\G +# SHOW CREATE TABLE `test1`.`tbl6`\G +insert into test1.tbl6 + (day, tbl5, misccol9type, misccol9, metric11, metric12, secs) + values + (convert_tz(current_timestamp,'EST5EDT','PST8PDT'), '239', 'foo', 'bar', 1, '1', '16.3574378490448') + on duplicate key update metric11 = metric11 + 1, + metric12 = metric12 + values(metric12), secs = secs + values(secs)\G + # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ================ ===== ========== ===== ======== @@ -222,5 +222,5 @@ select last2metric1 = last1metric1, last2time = last1time, # 2 0xC356FD9EFD7D799E 20675.0000 16.7% 1 20675.0000 0.00 UPDATE test?.tblo test?.tbl? # 3 0xB5E55291C7DE1096 20664.0000 16.7% 1 20664.0000 0.00 UPDATE test?.tblo test?.tbl? # 4 0x85FFF5AA78E5FF6A 20664.0000 16.7% 1 20664.0000 0.00 BEGIN -# 5 0x79BFEA84D0CED05F 20661.0000 16.7% 1 20661.0000 0.00 INSERT UPDATE test?.tbl? -# 6 0xED69B13F3D0161D0 20661.0000 16.7% 1 20661.0000 0.00 UPDATE test?.tbl? +# 5 0xED69B13F3D0161D0 20661.0000 16.7% 1 20661.0000 0.00 UPDATE test?.tbl? +# 6 0x79BFEA84D0CED05F 20661.0000 16.7% 1 20661.0000 0.00 INSERT UPDATE test?.tbl? diff --git a/t/pt-query-digest/samples/binlog002.txt b/t/pt-query-digest/samples/binlog002.txt index c32dafbf..8f49616c 100644 --- a/t/pt-query-digest/samples/binlog002.txt +++ b/t/pt-query-digest/samples/binlog002.txt @@ -14,23 +14,18 @@ # @@session.un 1 1 1 1 1 0 1 # error code 0 0 0 0 0 0 0 -# Query 1: 0 QPS, 0x concurrency, ID 0xF25D6D5AC7C18FF3 at byte 381 ______ +# Query 1: 0 QPS, 0x concurrency, ID 0xF579EC4A9633EEA0 at byte 973 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2009-07-22 07:21:59 +# Time range: all events occurred at 2009-07-22 07:22:24 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 33 1 # Exec time 0 0 0 0 0 0 0 0 -# Query size 10 17 17 17 17 17 0 17 -# @@session.ch 100 8 8 8 8 8 0 8 -# @@session.co 100 8 8 8 8 8 0 8 -# @@session.co 100 8 8 8 8 8 0 8 -# @@session.fo 100 1 1 1 1 1 0 1 -# @@session.sq 100 1 1 1 1 1 0 1 -# @@session.sq 0 0 0 0 0 0 0 0 -# @@session.un 100 1 1 1 1 1 0 1 +# Query size 15 25 25 25 25 25 0 25 # error code 0 0 0 0 0 0 0 0 +# String: +# Databases d # Query_time distribution # 1us # 10us @@ -40,7 +35,10 @@ # 100ms # 1s # 10s+ -create database d\G +# Tables +# SHOW TABLE STATUS FROM `d` LIKE 'foo'\G +# SHOW CREATE TABLE `d`.`foo`\G +insert foo values (1) /*... omitted ...*/\G # Query 2: 0 QPS, 0x concurrency, ID 0x03409022EB8A4AE7 at byte 795 ______ # This item is included in the report because it matches --limit. @@ -68,18 +66,23 @@ create database d\G # SHOW CREATE TABLE `d`.`foo`\G create table foo (i int)\G -# Query 3: 0 QPS, 0x concurrency, ID 0xF579EC4A9633EEA0 at byte 973 ______ +# Query 3: 0 QPS, 0x concurrency, ID 0xF25D6D5AC7C18FF3 at byte 381 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2009-07-22 07:22:24 +# Time range: all events occurred at 2009-07-22 07:21:59 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 33 1 # Exec time 0 0 0 0 0 0 0 0 -# Query size 15 25 25 25 25 25 0 25 +# Query size 10 17 17 17 17 17 0 17 +# @@session.ch 100 8 8 8 8 8 0 8 +# @@session.co 100 8 8 8 8 8 0 8 +# @@session.co 100 8 8 8 8 8 0 8 +# @@session.fo 100 1 1 1 1 1 0 1 +# @@session.sq 100 1 1 1 1 1 0 1 +# @@session.sq 0 0 0 0 0 0 0 0 +# @@session.un 100 1 1 1 1 1 0 1 # error code 0 0 0 0 0 0 0 0 -# String: -# Databases d # Query_time distribution # 1us # 10us @@ -89,14 +92,11 @@ create table foo (i int)\G # 100ms # 1s # 10s+ -# Tables -# SHOW TABLE STATUS FROM `d` LIKE 'foo'\G -# SHOW CREATE TABLE `d`.`foo`\G -insert foo values (1) /*... omitted ...*/\G +create database d\G # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== =============== -# 1 0xF25D6D5AC7C18FF3 0.0000 0.0% 1 0.0000 0.00 CREATE DATABASE d +# 1 0xF579EC4A9633EEA0 0.0000 0.0% 1 0.0000 0.00 INSERT foo # 2 0x03409022EB8A4AE7 0.0000 0.0% 1 0.0000 0.00 CREATE TABLE foo -# 3 0xF579EC4A9633EEA0 0.0000 0.0% 1 0.0000 0.00 INSERT foo +# 3 0xF25D6D5AC7C18FF3 0.0000 0.0% 1 0.0000 0.00 CREATE DATABASE d diff --git a/t/pt-query-digest/samples/binlog011.txt b/t/pt-query-digest/samples/binlog011.txt index d367c6f6..93f08f1c 100644 --- a/t/pt-query-digest/samples/binlog011.txt +++ b/t/pt-query-digest/samples/binlog011.txt @@ -160,157 +160,7 @@ CREATE TABLE `store` ( CONSTRAINT `fk_store_address` FOREIGN KEY (`address_id`) REFERENCES `address` (`address_id`) ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8\G -# Query 6: 0 QPS, 0x concurrency, ID 0xE5109B9F2BF996BE at byte 111637 ___ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:48 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 1 64.61k 64.61k 64.61k 64.61k 64.61k 0 64.61k -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'customer'\G -# SHOW CREATE TABLE `sakila`.`customer`\G -INSERT INTO `customer` VALUES (1,1,'MARY','SMITH','MARY.SMITH@sakilacustomer.org',5,1,'2006-02-14 22:04:36','2006-02-15 11:57:20') /*... omitted ...*/\G - -# Query 7: 0 QPS, 0x concurrency, ID 0xC1D332032F48BCE1 at byte 110219 ___ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:47 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 883 883 883 883 883 0 883 -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'customer'\G -# SHOW CREATE TABLE `sakila`.`customer`\G -CREATE TABLE `customer` ( - `customer_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `store_id` tinyint(3) unsigned NOT NULL, - `first_name` varchar(45) NOT NULL, - `last_name` varchar(45) NOT NULL, - `email` varchar(50) DEFAULT NULL, - `address_id` smallint(5) unsigned NOT NULL, - `active` tinyint(1) NOT NULL DEFAULT '1', - `create_date` datetime NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`customer_id`), - KEY `idx_fk_store_id` (`store_id`), - KEY `idx_fk_address_id` (`address_id`), - KEY `idx_last_name` (`last_name`), - CONSTRAINT `fk_customer_address` FOREIGN KEY (`address_id`) REFERENCES `address` (`address_id`) ON UPDATE CASCADE, - CONSTRAINT `fk_customer_store` FOREIGN KEY (`store_id`) REFERENCES `store` (`store_id`) ON UPDATE CASCADE -) ENGINE=InnoDB AUTO_INCREMENT=600 DEFAULT CHARSET=utf8\G - -# Query 8: 0 QPS, 0x concurrency, ID 0xC5F99E5B57D2D6DB at byte 3391234 __ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:10:18 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 159 159 159 159 159 0 159 -# @@session.fo 50 1 1 1 1 1 0 1 -# @@session.un 50 1 1 1 1 1 0 1 -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -ANALYZE TABLE actor, address, category, city, country, customer, film, film_actor, film_category, film_text, inventory, language, payment, rental, staff, store\G - -# Query 9: 0 QPS, 0x concurrency, ID 0x3E8F75B2422F47B7 at byte 104650 ___ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:46 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 294 294 294 294 294 0 294 -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'country'\G -# SHOW CREATE TABLE `sakila`.`country`\G -CREATE TABLE `country` ( - `country_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `country` varchar(50) NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`country_id`) -) ENGINE=InnoDB AUTO_INCREMENT=110 DEFAULT CHARSET=utf8\G - -# Query 10: 0 QPS, 0x concurrency, ID 0xD62F1A6D5A67AFA8 at byte 20196 ___ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:43 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 1 53.96k 53.96k 53.96k 53.96k 53.96k 0 53.96k -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'address'\G -# SHOW CREATE TABLE `sakila`.`address`\G -INSERT INTO `address` VALUES (1,'47 MySakila Drive',NULL,'Alberta',300,'','','2006-02-15 11:45:30') /*... omitted ...*/\G - -# Query 11: 0 QPS, 0x concurrency, ID 0xD8657A03D0724524 at byte 880760 __ +# Query 6: 0 QPS, 0x concurrency, ID 0xD8657A03D0724524 at byte 880760 ___ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2014-07-02 13:10:00 @@ -362,7 +212,73 @@ select NULL ON UPDATE CASCADE, KEY `fk_payment_rental` (`rental_id`), CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) REFERENCES `rental` (`rental_id`) ON DELETE \G -# Query 12: 0 QPS, 0x concurrency, ID 0x09482CA2620152A7 at byte 77796 ___ +# Query 7: 0 QPS, 0x concurrency, ID 0x1405E69931A1FC8D at byte 879222 ___ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:09:59 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 0 288 288 288 288 288 0 288 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `sakila` LIKE 'language'\G +# SHOW CREATE TABLE `sakila`.`language`\G +CREATE TABLE `language` ( + `language_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, + `name` char(20) NOT NULL, + `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`language_id`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8\G + +# Query 8: 0 QPS, 0x concurrency, ID 0x3B0263BE3363F7DF at byte 8543 _____ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:09:42 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 0 370 370 370 370 370 0 370 +# @@session.fo 0 0 0 0 0 0 0 0 +# @@session.un 0 0 0 0 0 0 0 0 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `sakila` LIKE 'actor'\G +# SHOW CREATE TABLE `sakila`.`actor`\G +CREATE TABLE `actor` ( + `actor_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, + `first_name` varchar(45) NOT NULL, + `last_name` varchar(45) NOT NULL, + `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`actor_id`), + KEY `idx_actor_last_name` (`last_name`) +) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8\G + +# Query 9: 0 QPS, 0x concurrency, ID 0x09482CA2620152A7 at byte 77796 ____ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2014-07-02 13:09:45 @@ -396,7 +312,64 @@ CREATE TABLE `city` ( CONSTRAINT `fk_city_country` FOREIGN KEY (`country_id`) REFERENCES `country` (`country_id`) ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=601 DEFAULT CHARSET=utf8\G -# Query 13: 0 QPS, 0x concurrency, ID 0xE771A1D1EAD499BA at byte 718785 __ +# Query 10: 0 QPS, 0x concurrency, ID 0x80F6ECA81D5F0D25 at byte 75909 ___ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:09:44 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 0 292 292 292 292 292 0 292 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `sakila` LIKE 'category'\G +# SHOW CREATE TABLE `sakila`.`category`\G +CREATE TABLE `category` ( + `category_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(25) NOT NULL, + `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`category_id`) +) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8\G + +# Query 11: 0 QPS, 0x concurrency, ID 0xAE6D99E149CE09C6 at byte 719980 __ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:09:58 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 4 155.05k 155.05k 155.05k 155.05k 155.05k 0 155.05k +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `sakila` LIKE 'inventory'\G +# SHOW CREATE TABLE `sakila`.`inventory`\G +INSERT INTO `inventory` VALUES (1,1,1,'2006-02-15 12:09:17') /*... omitted ...*/\G + +# Query 12: 0 QPS, 0x concurrency, ID 0xE771A1D1EAD499BA at byte 718785 __ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2014-07-02 13:09:57 @@ -432,15 +405,15 @@ CREATE TABLE `inventory` ( CONSTRAINT `fk_inventory_film` FOREIGN KEY (`film_id`) REFERENCES `film` (`film_id`) ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=4582 DEFAULT CHARSET=utf8\G -# Query 14: 0 QPS, 0x concurrency, ID 0x80F6ECA81D5F0D25 at byte 75909 ___ +# Query 13: 0 QPS, 0x concurrency, ID 0x8A38006583244505 at byte 597471 __ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:44 +# Time range: all events occurred at 2014-07-02 13:09:56 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 0 1 # Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 292 292 292 292 292 0 292 +# Query size 0 242 242 242 242 242 0 242 # error code 0 0 0 0 0 0 0 0 # String: # Databases sakila @@ -454,24 +427,59 @@ CREATE TABLE `inventory` ( # 1s ################################################################ # 10s+ # Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'category'\G -# SHOW CREATE TABLE `sakila`.`category`\G -CREATE TABLE `category` ( - `category_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, - `name` varchar(25) NOT NULL, +# SHOW TABLE STATUS FROM `sakila` LIKE 'film_text'\G +# SHOW CREATE TABLE `sakila`.`film_text`\G +CREATE TABLE `film_text` ( + `film_id` smallint(6) NOT NULL, + `title` varchar(255) NOT NULL, + `description` text, + PRIMARY KEY (`film_id`), + FULLTEXT KEY `idx_title_description` (`title`,`description`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8\G + +# Query 14: 0 QPS, 0x concurrency, ID 0x0FD12A9C9BF3E41F at byte 565533 __ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:09:55 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 0 573 573 573 573 573 0 573 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `sakila` LIKE 'film_category'\G +# SHOW CREATE TABLE `sakila`.`film_category`\G +CREATE TABLE `film_category` ( + `film_id` smallint(5) unsigned NOT NULL, + `category_id` tinyint(3) unsigned NOT NULL, `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`category_id`) -) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8\G + PRIMARY KEY (`film_id`,`category_id`), + KEY `fk_film_category_category` (`category_id`), + CONSTRAINT `fk_film_category_film` FOREIGN KEY (`film_id`) REFERENCES `film` (`film_id`) ON UPDATE CASCADE, + CONSTRAINT `fk_film_category_category` FOREIGN KEY (`category_id`) REFERENCES `category` (`category_id`) ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8\G -# Query 15: 0 QPS, 0x concurrency, ID 0xEE462EEBC76A46F2 at byte 3392804 _ +# Query 15: 0 QPS, 0x concurrency, ID 0x93E5C17055D970BE at byte 393718 __ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:10:19 +# Time range: all events occurred at 2014-07-02 13:09:54 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 0 1 # Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 130 130 130 130 130 0 130 +# Query size 5 167.33k 167.33k 167.33k 167.33k 167.33k 0 167.33k # error code 0 0 0 0 0 0 0 0 # String: # Databases sakila @@ -485,44 +493,11 @@ CREATE TABLE `category` ( # 1s ################################################################ # 10s+ # Tables -# SHOW TABLE STATUS FROM `percona_test` LIKE 'checksums'\G -# SHOW CREATE TABLE `percona_test`.`checksums`\G -CREATE TABLE percona_test.checksums( - db_tbl varchar(128) not null primary key, - checksum int unsigned not null)\G +# SHOW TABLE STATUS FROM `sakila` LIKE 'film_actor'\G +# SHOW CREATE TABLE `sakila`.`film_actor`\G +INSERT INTO `film_actor` VALUES (1,1,'2006-02-15 12:05:03') /*... omitted ...*/\G -# Query 16: 0 QPS, 0x concurrency, ID 0x1405E69931A1FC8D at byte 879222 __ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:59 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 0 1 -# Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 288 288 288 288 288 0 288 -# error code 0 0 0 0 0 0 0 0 -# String: -# Databases sakila -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'language'\G -# SHOW CREATE TABLE `sakila`.`language`\G -CREATE TABLE `language` ( - `language_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, - `name` char(20) NOT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`language_id`) -) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8\G - -# Query 17: 0 QPS, 0x concurrency, ID 0x7677746C22CD9F16 at byte 392649 __ +# Query 16: 0 QPS, 0x concurrency, ID 0x7677746C22CD9F16 at byte 392649 __ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2014-07-02 13:09:53 @@ -556,15 +531,15 @@ CREATE TABLE `film_actor` ( CONSTRAINT `fk_film_actor_film` FOREIGN KEY (`film_id`) REFERENCES `film` (`film_id`) ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8\G -# Query 18: 0 QPS, 0x concurrency, ID 0x93E5C17055D970BE at byte 393718 __ +# Query 17: 0 QPS, 0x concurrency, ID 0xEE462EEBC76A46F2 at byte 3392804 _ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:54 +# Time range: all events occurred at 2014-07-02 13:10:19 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 0 1 # Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 5 167.33k 167.33k 167.33k 167.33k 167.33k 0 167.33k +# Query size 0 130 130 130 130 130 0 130 # error code 0 0 0 0 0 0 0 0 # String: # Databases sakila @@ -578,9 +553,36 @@ CREATE TABLE `film_actor` ( # 1s ################################################################ # 10s+ # Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'film_actor'\G -# SHOW CREATE TABLE `sakila`.`film_actor`\G -INSERT INTO `film_actor` VALUES (1,1,'2006-02-15 12:05:03') /*... omitted ...*/\G +# SHOW TABLE STATUS FROM `percona_test` LIKE 'checksums'\G +# SHOW CREATE TABLE `percona_test`.`checksums`\G +CREATE TABLE percona_test.checksums( + db_tbl varchar(128) not null primary key, + checksum int unsigned not null)\G + +# Query 18: 0 QPS, 0x concurrency, ID 0xC5F99E5B57D2D6DB at byte 3391234 _ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2014-07-02 13:10:18 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 0 1 +# Exec time 1 1s 1s 1s 1s 1s 0 1s +# Query size 0 159 159 159 159 159 0 159 +# @@session.fo 50 1 1 1 1 1 0 1 +# @@session.un 50 1 1 1 1 1 0 1 +# error code 0 0 0 0 0 0 0 0 +# String: +# Databases sakila +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +ANALYZE TABLE actor, address, category, city, country, customer, film, film_actor, film_category, film_text, inventory, language, payment, rental, staff, store\G # Query 19: 0 QPS, 0x concurrency, ID 0x5C6D8C73D42AE624 at byte 3388620 _ # This item is included in the report because it matches --limit. @@ -651,19 +653,15 @@ INNER JOIN staff AS m ON s.manager_staff_id = m.staff_id GROUP BY s.store_id ORDER BY cy.country, c.city\G -# Query 20: 0 QPS, 0x concurrency, ID 0x4E763A2FA103490D at byte 178711 __ +# Query 20: 0 QPS, 0x concurrency, ID 0xD62F1A6D5A67AFA8 at byte 20196 ___ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 -# Time range: all events occurred at 2014-07-02 13:09:49 +# Time range: all events occurred at 2014-07-02 13:09:43 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 0 1 # Exec time 1 1s 1s 1s 1s 1s 0 1s -# Query size 0 1.19k 1.19k 1.19k 1.19k 1.19k 0 1.19k -# @@session.ch 16 33 33 33 33 33 0 33 -# @@session.co 16 33 33 33 33 33 0 33 -# @@session.co 11 8 8 8 8 8 0 8 -# @@session.sq 25 1.00G 1.00G 1.00G 1.00G 1.00G 0 1.00G +# Query size 1 53.96k 53.96k 53.96k 53.96k 53.96k 0 53.96k # error code 0 0 0 0 0 0 0 0 # String: # Databases sakila @@ -677,29 +675,9 @@ ORDER BY cy.country, c.city\G # 1s ################################################################ # 10s+ # Tables -# SHOW TABLE STATUS FROM `sakila` LIKE 'film'\G -# SHOW CREATE TABLE `sakila`.`film`\G -CREATE TABLE `film` ( - `film_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, - `title` varchar(255) NOT NULL, - `description` text, - `release_year` year(4) DEFAULT NULL, - `language_id` tinyint(3) unsigned NOT NULL, - `original_language_id` tinyint(3) unsigned DEFAULT NULL, - `rental_duration` tinyint(3) unsigned NOT NULL DEFAULT '3', - `rental_rate` decimal(4,2) NOT NULL DEFAULT '4.99', - `length` smallint(5) unsigned DEFAULT NULL, - `replacement_cost` decimal(5,2) NOT NULL DEFAULT '19.99', - `rating` enum('G','PG','PG-13','R','NC-17') DEFAULT 'G', - `special_features` set('Trailers','Commentaries','Deleted Scenes','Behind the Scenes') DEFAULT NULL, - `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - PRIMARY KEY (`film_id`), - KEY `idx_title` (`title`), - KEY `idx_fk_language_id` (`language_id`), - KEY `idx_fk_original_language_id` (`original_language_id`), - CONSTRAINT `fk_film_language` FOREIGN KEY (`language_id`) REFERENCES `language` (`language_id`) ON UPDATE CASCADE, - CONSTRAINT `fk_film_language_original` FOREIGN KEY (`original_language_id`) REFERENCES `language` (`language_id`) ON UPDATE CASCADE -) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8\G +# SHOW TABLE STATUS FROM `sakila` LIKE 'address'\G +# SHOW CREATE TABLE `sakila`.`address`\G +INSERT INTO `address` VALUES (1,'47 MySakila Drive',NULL,'Alberta',300,'','','2006-02-15 11:45:30') /*... omitted ...*/\G # Profile # Rank Query ID Response time Calls R/Call V/M Item @@ -709,19 +687,19 @@ CREATE TABLE `film` ( # 3 0x4677E4CEDF8EA4E2 5.0000 8.8% 2 2.5000 5.00 INSERT payment # 4 0xAAECC8184D17D799 3.0000 5.3% 1 3.0000 0.00 INSERT film # 5 0x1A3BF395BD4C2AC5 2.0000 3.5% 1 2.0000 0.00 CREATE TABLE store `store` -# 6 0xE5109B9F2BF996BE 1.0000 1.8% 1 1.0000 0.00 INSERT customer -# 7 0xC1D332032F48BCE1 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE customer `customer` -# 8 0xC5F99E5B57D2D6DB 1.0000 1.8% 1 1.0000 0.00 -# 9 0x3E8F75B2422F47B7 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE country `country` -# 10 0xD62F1A6D5A67AFA8 1.0000 1.8% 1 1.0000 0.00 INSERT address -# 11 0xD8657A03D0724524 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE payment `payment` -# 12 0x09482CA2620152A7 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE city `city` -# 13 0xE771A1D1EAD499BA 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE inventory `inventory` -# 14 0x80F6ECA81D5F0D25 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE category `category` -# 15 0xEE462EEBC76A46F2 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE percona_test.checksums -# 16 0x1405E69931A1FC8D 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE language `language` -# 17 0x7677746C22CD9F16 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE film_actor `film_actor` -# 18 0x93E5C17055D970BE 1.0000 1.8% 1 1.0000 0.00 INSERT film_actor +# 6 0xD8657A03D0724524 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE payment `payment` +# 7 0x1405E69931A1FC8D 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE language `language` +# 8 0x3B0263BE3363F7DF 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE actor `actor` +# 9 0x09482CA2620152A7 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE city `city` +# 10 0x80F6ECA81D5F0D25 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE category `category` +# 11 0xAE6D99E149CE09C6 1.0000 1.8% 1 1.0000 0.00 INSERT inventory +# 12 0xE771A1D1EAD499BA 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE inventory `inventory` +# 13 0x8A38006583244505 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE film_text `film_text` +# 14 0x0FD12A9C9BF3E41F 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE film_category `film_category` +# 15 0x93E5C17055D970BE 1.0000 1.8% 1 1.0000 0.00 INSERT film_actor +# 16 0x7677746C22CD9F16 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE film_actor `film_actor` +# 17 0xEE462EEBC76A46F2 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE percona_test.checksums +# 18 0xC5F99E5B57D2D6DB 1.0000 1.8% 1 1.0000 0.00 # 19 0x5C6D8C73D42AE624 1.0000 1.8% 1 1.0000 0.00 CREATE payment rental inventory store address city country staff -# 20 0x4E763A2FA103490D 1.0000 1.8% 1 1.0000 0.00 CREATE TABLE film `film` +# 20 0xD62F1A6D5A67AFA8 1.0000 1.8% 1 1.0000 0.00 INSERT address # MISC 0xMISC 6.0000 10.5% 95 0.0632 0.0 <72 ITEMS> diff --git a/t/pt-query-digest/samples/genlog001.txt b/t/pt-query-digest/samples/genlog001.txt index 63b9ce91..c4c14466 100644 --- a/t/pt-query-digest/samples/genlog001.txt +++ b/t/pt-query-digest/samples/genlog001.txt @@ -6,7 +6,28 @@ # Exec time 0 0 0 0 0 0 0 # Query size 315 27 124 45 118.34 31.33 28.75 -# Query 1: 0.00 QPS, 0x concurrency, ID 0x5D51E5F01B88B79E at byte 244 ___ +# Query 1: 0.00 QPS, 0x concurrency, ID 0xAA353644DE4C4CB4 at byte 464 ___ +# Scores: V/M = 0.00 +# Time range: 2005-10-07 21:55:24 to 2006-12-26 16:44:48 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 28 2 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 17 54 27 27 27 27 0 27 +# String: +# Databases db1 (1/50%), my_webstat... (1/50%) +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +administrator command: Quit\G + +# Query 2: 0.00 QPS, 0x concurrency, ID 0x5D51E5F01B88B79E at byte 244 ___ # Scores: V/M = 0.00 # Time range: 2005-10-07 21:55:24 to 2006-12-26 15:42:36 # Attribute pct total min max avg 95% stddev median @@ -29,53 +50,7 @@ # 10s+ administrator command: Connect\G -# Query 2: 0.00 QPS, 0x concurrency, ID 0xAA353644DE4C4CB4 at byte 464 ___ -# Scores: V/M = 0.00 -# Time range: 2005-10-07 21:55:24 to 2006-12-26 16:44:48 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 28 2 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 17 54 27 27 27 27 0 27 -# String: -# Databases db1 (1/50%), my_webstat... (1/50%) -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -administrator command: Quit\G - -# Query 3: 0 QPS, 0x concurrency, ID 0x4D096479916B0F45 at byte 346 ______ -# Scores: V/M = 0.00 -# Time range: all events occurred at 2006-12-26 15:42:36 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 14 1 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 14 47 47 47 47 47 0 47 -# String: -# Databases my_webstats -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `my_webstats` LIKE 'tbl'\G -# SHOW CREATE TABLE `my_webstats`.`tbl`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT DISTINCT col FROM tbl WHERE foo=20061219\G - -# Query 4: 0 QPS, 0x concurrency, ID 0x44AAC79F41BCF692 at byte 58 _______ +# Query 3: 0 QPS, 0x concurrency, ID 0x44AAC79F41BCF692 at byte 58 _______ # Scores: V/M = 0.00 # Time range: all events occurred at 2005-10-07 21:55:24 # Attribute pct total min max avg 95% stddev median @@ -103,6 +78,31 @@ SELECT foo WHERE col=12345 ORDER BY col\G +# Query 4: 0 QPS, 0x concurrency, ID 0x4D096479916B0F45 at byte 346 ______ +# Scores: V/M = 0.00 +# Time range: all events occurred at 2006-12-26 15:42:36 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 14 1 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 14 47 47 47 47 47 0 47 +# String: +# Databases my_webstats +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `my_webstats` LIKE 'tbl'\G +# SHOW CREATE TABLE `my_webstats`.`tbl`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT DISTINCT col FROM tbl WHERE foo=20061219\G + # Query 5: 0 QPS, 0x concurrency, ID 0x44AE35A182869033 at byte 300 ______ # Scores: V/M = 0.00 # Time range: all events occurred at 2006-12-26 15:42:36 @@ -127,8 +127,8 @@ administrator command: Init DB\G # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== ============= -# 1 0x5D51E5F01B88B79E 0.0000 0.0% 2 0.0000 0.00 ADMIN CONNECT -# 2 0xAA353644DE4C4CB4 0.0000 0.0% 2 0.0000 0.00 ADMIN QUIT -# 3 0x4D096479916B0F45 0.0000 0.0% 1 0.0000 0.00 SELECT tbl -# 4 0x44AAC79F41BCF692 0.0000 0.0% 1 0.0000 0.00 SELECT tbl +# 1 0xAA353644DE4C4CB4 0.0000 0.0% 2 0.0000 0.00 ADMIN QUIT +# 2 0x5D51E5F01B88B79E 0.0000 0.0% 2 0.0000 0.00 ADMIN CONNECT +# 3 0x44AAC79F41BCF692 0.0000 0.0% 1 0.0000 0.00 SELECT tbl +# 4 0x4D096479916B0F45 0.0000 0.0% 1 0.0000 0.00 SELECT tbl # 5 0x44AE35A182869033 0.0000 0.0% 1 0.0000 0.00 ADMIN INIT DB diff --git a/t/pt-query-digest/samples/genlog002.txt b/t/pt-query-digest/samples/genlog002.txt index fb0937bc..cf81ae0b 100644 --- a/t/pt-query-digest/samples/genlog002.txt +++ b/t/pt-query-digest/samples/genlog002.txt @@ -6,33 +6,7 @@ # Exec time 0 0 0 0 0 0 0 # Query size 964 106 858 482 858 531.74 482 -# Query 1: 0 QPS, 0x concurrency, ID 0x2361B36A4AEB397B at byte 0 ________ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2010-02-11 00:55:24 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 1 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 10 106 106 106 106 106 0 106 -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS LIKE 'auction_category_map'\G -# SHOW CREATE TABLE `auction_category_map`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT category_id - FROM auction_category_map - WHERE auction_id = '3015563'\G - -# Query 2: 0 QPS, 0x concurrency, ID 0x0A3E6DCD23F3445A at byte 237 ______ +# Query 1: 0 QPS, 0x concurrency, ID 0x0A3E6DCD23F3445A at byte 237 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2010-02-11 00:55:24 @@ -68,8 +42,34 @@ SELECT auction_id, auction_title_en AS title, close_time, ORDER BY close_time ASC LIMIT 500\G +# Query 2: 0 QPS, 0x concurrency, ID 0x2361B36A4AEB397B at byte 0 ________ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2010-02-11 00:55:24 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 1 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 10 106 106 106 106 106 0 106 +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS LIKE 'auction_category_map'\G +# SHOW CREATE TABLE `auction_category_map`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT category_id + FROM auction_category_map + WHERE auction_id = '3015563'\G + # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== =============== -# 1 0x2361B36A4AEB397B 0.0000 0.0% 1 0.0000 0.00 SELECT auction_category_map -# 2 0x0A3E6DCD23F3445A 0.0000 0.0% 1 0.0000 0.00 SELECT auction_search +# 1 0x0A3E6DCD23F3445A 0.0000 0.0% 1 0.0000 0.00 SELECT auction_search +# 2 0x2361B36A4AEB397B 0.0000 0.0% 1 0.0000 0.00 SELECT auction_category_map diff --git a/t/pt-query-digest/samples/genlog003.txt b/t/pt-query-digest/samples/genlog003.txt index 98de2ae3..b8fab668 100644 --- a/t/pt-query-digest/samples/genlog003.txt +++ b/t/pt-query-digest/samples/genlog003.txt @@ -6,7 +6,28 @@ # Exec time 0 0 0 0 0 0 0 # Query size 315 27 124 45 118.34 31.33 28.75 -# Query 1: 0 QPS, 0x concurrency, ID 0x5D51E5F01B88B79E at byte 246 ______ +# Query 1: 0 QPS, 0x concurrency, ID 0xAA353644DE4C4CB4 at byte 466 ______ +# Scores: V/M = 0.00 +# Time range: all events occurred at 2005-10-07 21:55:24 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 28 2 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 17 54 27 27 27 27 0 27 +# String: +# Databases db1 (1/50%), my_webstat... (1/50%) +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +administrator command: Quit\G + +# Query 2: 0 QPS, 0x concurrency, ID 0x5D51E5F01B88B79E at byte 246 ______ # Scores: V/M = 0.00 # Time range: all events occurred at 2005-10-07 21:55:24 # Attribute pct total min max avg 95% stddev median @@ -29,53 +50,7 @@ # 10s+ administrator command: Connect\G -# Query 2: 0 QPS, 0x concurrency, ID 0xAA353644DE4C4CB4 at byte 466 ______ -# Scores: V/M = 0.00 -# Time range: all events occurred at 2005-10-07 21:55:24 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 28 2 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 17 54 27 27 27 27 0 27 -# String: -# Databases db1 (1/50%), my_webstat... (1/50%) -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -administrator command: Quit\G - -# Query 3: 0 QPS, 0x concurrency, ID 0x4D096479916B0F45 at byte 348 ______ -# Scores: V/M = 0.00 -# Time range: all events occurred at 2005-10-07 21:55:24 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 14 1 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 14 47 47 47 47 47 0 47 -# String: -# Databases my_webstats -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `my_webstats` LIKE 'tbl'\G -# SHOW CREATE TABLE `my_webstats`.`tbl`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT DISTINCT col FROM tbl WHERE foo=20061219\G - -# Query 4: 0 QPS, 0x concurrency, ID 0x44AAC79F41BCF692 at byte 60 _______ +# Query 3: 0 QPS, 0x concurrency, ID 0x44AAC79F41BCF692 at byte 60 _______ # Scores: V/M = 0.00 # Time range: all events occurred at 2005-10-07 21:55:24 # Attribute pct total min max avg 95% stddev median @@ -103,6 +78,31 @@ SELECT foo WHERE col=12345 ORDER BY col\G +# Query 4: 0 QPS, 0x concurrency, ID 0x4D096479916B0F45 at byte 348 ______ +# Scores: V/M = 0.00 +# Time range: all events occurred at 2005-10-07 21:55:24 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 14 1 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 14 47 47 47 47 47 0 47 +# String: +# Databases my_webstats +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `my_webstats` LIKE 'tbl'\G +# SHOW CREATE TABLE `my_webstats`.`tbl`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT DISTINCT col FROM tbl WHERE foo=20061219\G + # Query 5: 0 QPS, 0x concurrency, ID 0x44AE35A182869033 at byte 302 ______ # Scores: V/M = 0.00 # Time range: all events occurred at 2005-10-07 21:55:24 @@ -127,8 +127,8 @@ administrator command: Init DB\G # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== ============= -# 1 0x5D51E5F01B88B79E 0.0000 0.0% 2 0.0000 0.00 ADMIN CONNECT -# 2 0xAA353644DE4C4CB4 0.0000 0.0% 2 0.0000 0.00 ADMIN QUIT -# 3 0x4D096479916B0F45 0.0000 0.0% 1 0.0000 0.00 SELECT tbl -# 4 0x44AAC79F41BCF692 0.0000 0.0% 1 0.0000 0.00 SELECT tbl +# 1 0xAA353644DE4C4CB4 0.0000 0.0% 2 0.0000 0.00 ADMIN QUIT +# 2 0x5D51E5F01B88B79E 0.0000 0.0% 2 0.0000 0.00 ADMIN CONNECT +# 3 0x44AAC79F41BCF692 0.0000 0.0% 1 0.0000 0.00 SELECT tbl +# 4 0x4D096479916B0F45 0.0000 0.0% 1 0.0000 0.00 SELECT tbl # 5 0x44AE35A182869033 0.0000 0.0% 1 0.0000 0.00 ADMIN INIT DB diff --git a/t/pt-query-digest/samples/rawlog001.txt b/t/pt-query-digest/samples/rawlog001.txt index 8227959f..f934d6b0 100644 --- a/t/pt-query-digest/samples/rawlog001.txt +++ b/t/pt-query-digest/samples/rawlog001.txt @@ -5,30 +5,7 @@ # Exec time 0 0 0 0 0 0 0 # Query size 70 26 44 35 44 12.73 35 -# Query 1: 0 QPS, 0x concurrency, ID 0xCB5621E548E5497F at byte 0 ________ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 1 -# Exec time 0 0 0 0 0 0 0 0 -# Query size 37 26 26 26 26 26 0 26 -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS LIKE 't'\G -# SHOW CREATE TABLE `t`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT c FROM t WHERE id=1\G - -# Query 2: 0 QPS, 0x concurrency, ID 0x774B2B0B59EBAC2C at byte 27 _______ +# Query 1: 0 QPS, 0x concurrency, ID 0x774B2B0B59EBAC2C at byte 27 _______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Attribute pct total min max avg 95% stddev median @@ -51,8 +28,31 @@ SELECT c FROM t WHERE id=1\G # EXPLAIN /*!50100 PARTITIONS*/ /* Hello, world! */ SELECT * FROM t2 LIMIT 1\G +# Query 2: 0 QPS, 0x concurrency, ID 0xCB5621E548E5497F at byte 0 ________ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 1 +# Exec time 0 0 0 0 0 0 0 0 +# Query size 37 26 26 26 26 26 0 26 +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS LIKE 't'\G +# SHOW CREATE TABLE `t`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT c FROM t WHERE id=1\G + # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== ========= -# 1 0xCB5621E548E5497F 0.0000 0.0% 1 0.0000 0.00 SELECT t -# 2 0x774B2B0B59EBAC2C 0.0000 0.0% 1 0.0000 0.00 SELECT t? +# 1 0x774B2B0B59EBAC2C 0.0000 0.0% 1 0.0000 0.00 SELECT t? +# 2 0xCB5621E548E5497F 0.0000 0.0% 1 0.0000 0.00 SELECT t diff --git a/t/pt-query-digest/samples/slow001_distillreport.txt b/t/pt-query-digest/samples/slow001_distillreport.txt index 757c6152..b32b12bd 100644 --- a/t/pt-query-digest/samples/slow001_distillreport.txt +++ b/t/pt-query-digest/samples/slow001_distillreport.txt @@ -3,34 +3,7 @@ # Report grouped by distill # ######################################################################## -# Item 1: 0 QPS, 0x concurrency, ID 0x82E67ABEEDCA3249 at byte 0 _________ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2007-10-15 21:43:52 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 1 -# Exec time 50 2s 2s 2s 2s 2s 0 2s -# Lock time 0 0 0 0 0 0 0 0 -# Rows sent 50 1 1 1 1 1 0 1 -# Rows examine 0 0 0 0 0 0 0 0 -# Query size 44 22 22 22 22 22 0 22 -# String: -# Databases test -# Hosts localhost -# Users root -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -SELECT n - -# Item 2: 0 QPS, 0x concurrency, ID 0x7AD070CD3F4121D5 at byte 359 _______ +# Item 1: 0 QPS, 0x concurrency, ID 0x7AD070CD3F4121D5 at byte 359 _______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2007-10-15 21:45:10 @@ -56,3 +29,30 @@ SELECT n # 1s ################################################################ # 10s+ SELECT test.n + +# Item 2: 0 QPS, 0x concurrency, ID 0x82E67ABEEDCA3249 at byte 0 _________ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2007-10-15 21:43:52 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 1 +# Exec time 50 2s 2s 2s 2s 2s 0 2s +# Lock time 0 0 0 0 0 0 0 0 +# Rows sent 50 1 1 1 1 1 0 1 +# Rows examine 0 0 0 0 0 0 0 0 +# Query size 44 22 22 22 22 22 0 22 +# String: +# Databases test +# Hosts localhost +# Users root +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +SELECT n diff --git a/t/pt-query-digest/samples/slow001_report.txt b/t/pt-query-digest/samples/slow001_report.txt index d85429cb..59647b04 100644 --- a/t/pt-query-digest/samples/slow001_report.txt +++ b/t/pt-query-digest/samples/slow001_report.txt @@ -1,35 +1,5 @@ -# Query 1: 0 QPS, 0x concurrency, ID 0x7F7D57ACDD8A346E at byte 0 ________ -# Scores: V/M = 0.00 -# Time range: all events occurred at 2007-10-15 21:43:52 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 1 -# Exec time 50 2s 2s 2s 2s 2s 0 2s -# Lock time 0 0 0 0 0 0 0 0 -# Rows sent 50 1 1 1 1 1 0 1 -# Rows examine 0 0 0 0 0 0 0 0 -# Query size 44 22 22 22 22 22 0 22 -# String: -# Databases test -# Hosts localhost -# Users root -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s ################################################################ -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `test` LIKE 'n'\G -# SHOW CREATE TABLE `test`.`n`\G -# EXPLAIN /*!50100 PARTITIONS*/ -select sleep(2) from n\G - -# Query 2: 0 QPS, 0x concurrency, ID 0x3A99CC42AEDCCFCD at byte 359 ______ +# Query 1: 0 QPS, 0x concurrency, ID 0x3A99CC42AEDCCFCD at byte 359 ______ # Scores: V/M = 0.00 # Time range: all events occurred at 2007-10-15 21:45:10 # Attribute pct total min max avg 95% stddev median @@ -58,3 +28,33 @@ select sleep(2) from n\G # SHOW CREATE TABLE `test`.`n`\G # EXPLAIN /*!50100 PARTITIONS*/ select sleep(2) from test.n\G + +# Query 2: 0 QPS, 0x concurrency, ID 0x7F7D57ACDD8A346E at byte 0 ________ +# Scores: V/M = 0.00 +# Time range: all events occurred at 2007-10-15 21:43:52 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 1 +# Exec time 50 2s 2s 2s 2s 2s 0 2s +# Lock time 0 0 0 0 0 0 0 0 +# Rows sent 50 1 1 1 1 1 0 1 +# Rows examine 0 0 0 0 0 0 0 0 +# Query size 44 22 22 22 22 22 0 22 +# String: +# Databases test +# Hosts localhost +# Users root +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s ################################################################ +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `test` LIKE 'n'\G +# SHOW CREATE TABLE `test`.`n`\G +# EXPLAIN /*!50100 PARTITIONS*/ +select sleep(2) from n\G diff --git a/t/pt-query-digest/samples/slow002_orderbyreport.txt b/t/pt-query-digest/samples/slow002_orderbyreport.txt index 23cd33f2..f32be5b8 100644 --- a/t/pt-query-digest/samples/slow002_orderbyreport.txt +++ b/t/pt-query-digest/samples/slow002_orderbyreport.txt @@ -41,21 +41,26 @@ SET biz = '91848182522'\G # EXPLAIN /*!50100 PARTITIONS*/ select biz = '91848182522' from foo.bar \G -# Query 2: 0 QPS, 0x concurrency, ID 0x66825DDC008FFA89 at byte 338 ______ +# Query 2: 0 QPS, 0x concurrency, ID 0x7546F89214254F2F at byte 815 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2007-12-18 11:48:27 # Attribute pct total min max avg 95% stddev median # ============ === ======= ======= ======= ======= ======= ======= ======= # Count 12 1 -# Exec time 95 726ms 726ms 726ms 726ms 726ms 0 726ms -# Lock time 29 91us 91us 91us 91us 91us 0 91us +# Exec time 0 512us 512us 512us 512us 512us 0 512us +# Lock time 25 77us 77us 77us 77us 77us 0 77us # Rows sent 0 0 0 0 0 0 0 0 -# Rows examine 100 61.48k 61.48k 61.48k 61.48k 61.48k 0 61.48k +# Rows examine 0 0 0 0 0 0 0 0 # Merge passes 0 0 0 0 0 0 0 0 -# Query size 25 129 129 129 129 129 0 129 -# Boolean: -# Full scan 100% yes, 0% no +# Query size 13 66 66 66 66 66 0 66 +# InnoDB: +# IO r bytes 0 0 0 0 0 0 0 0 +# IO r ops 0 0 0 0 0 0 0 0 +# IO r wait 0 0 0 0 0 0 0 0 +# pages distin 22 24 24 24 24 24 0 24 +# queue wait 0 0 0 0 0 0 0 0 +# rec lock wai 0 0 0 0 0 0 0 0 # String: # Databases db1 # Hosts @@ -63,21 +68,14 @@ select biz = '91848182522' from foo.bar \G # Query_time distribution # 1us # 10us -# 100us +# 100us ################################################################ # 1ms # 10ms -# 100ms ################################################################ +# 100ms # 1s # 10s+ # Tables -# SHOW TABLE STATUS FROM `db2` LIKE 'tuningdetail_21_265507'\G -# SHOW CREATE TABLE `db2`.`tuningdetail_21_265507`\G -# SHOW TABLE STATUS FROM `db1` LIKE 'gonzo'\G -# SHOW CREATE TABLE `db1`.`gonzo`\G -update db2.tuningdetail_21_265507 n - inner join db1.gonzo a using(gonzo) - set n.column1 = a.column1, n.word3 = a.word3\G -# Converted for EXPLAIN -# EXPLAIN /*!50100 PARTITIONS*/ -select n.column1 = a.column1, n.word3 = a.word3 from db2.tuningdetail_21_265507 n - inner join db1.gonzo a using(gonzo) \G +# SHOW TABLE STATUS FROM `db3` LIKE 'vendor11gonzo'\G +# SHOW CREATE TABLE `db3`.`vendor11gonzo`\G +INSERT INTO db3.vendor11gonzo (makef, bizzle) +VALUES ('', 'Exact')\G diff --git a/t/pt-query-digest/samples/slow033-since-yymmdd.txt b/t/pt-query-digest/samples/slow033-since-yymmdd.txt index 21f1cc67..07b6997f 100644 --- a/t/pt-query-digest/samples/slow033-since-yymmdd.txt +++ b/t/pt-query-digest/samples/slow033-since-yymmdd.txt @@ -1,36 +1,5 @@ -# Query 1: 2 QPS, 0.00x concurrency, ID 0x07AEF8EFAB3FA3CE at byte 509 ___ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: 2009-07-27 11:19:30 to 11:19:31 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 2 -# Exec time 50 24us 12us 12us 12us 12us 0 12us -# Lock time 0 0 0 0 0 0 0 0 -# Rows sent 0 0 0 0 0 0 0 0 -# Rows examine 0 0 0 0 0 0 0 0 -# Query size 50 34 17 17 17 17 0 17 -# String: -# Databases db2 -# Hosts -# Users [SQL_SLAVE] -# Query_time distribution -# 1us -# 10us ################################################################ -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `db2` LIKE 'bar'\G -# SHOW CREATE TABLE `db2`.`bar`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT * FROM bar\G - -# Query 2: 0.00 QPS, 0.00x concurrency, ID 0xAC1BF726F2AB10C5 at byte 861 +# Query 1: 0.00 QPS, 0.00x concurrency, ID 0xAC1BF726F2AB10C5 at byte 861 # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: 2009-07-27 11:30:00 to 2009-07-28 18:00:00 @@ -60,3 +29,34 @@ SELECT * FROM bar\G # SHOW CREATE TABLE `db1`.`foo`\G # EXPLAIN /*!50100 PARTITIONS*/ SELECT * FROM foo\G + +# Query 2: 2 QPS, 0.00x concurrency, ID 0x07AEF8EFAB3FA3CE at byte 509 ___ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: 2009-07-27 11:19:30 to 11:19:31 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 2 +# Exec time 50 24us 12us 12us 12us 12us 0 12us +# Lock time 0 0 0 0 0 0 0 0 +# Rows sent 0 0 0 0 0 0 0 0 +# Rows examine 0 0 0 0 0 0 0 0 +# Query size 50 34 17 17 17 17 0 17 +# String: +# Databases db2 +# Hosts +# Users [SQL_SLAVE] +# Query_time distribution +# 1us +# 10us ################################################################ +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `db2` LIKE 'bar'\G +# SHOW CREATE TABLE `db2`.`bar`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT * FROM bar\G diff --git a/t/pt-query-digest/samples/slow035.txt b/t/pt-query-digest/samples/slow035.txt index c337879d..3d607b57 100644 --- a/t/pt-query-digest/samples/slow035.txt +++ b/t/pt-query-digest/samples/slow035.txt @@ -17,7 +17,37 @@ # queue wait 0 0 0 0 0 0 0 # rec lock wai 0 0 0 0 0 0 0 -# Query 1: 0 QPS, 0x concurrency, ID 0x727841EC88423713 at byte 0 ________ +# Query 1: 0 QPS, 0x concurrency, ID 0x9E892D4B16D7BFC2 at byte 525 ______ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Time range: all events occurred at 2007-12-18 11:48:27 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 50 1 +# Exec time 0 0 0 0 0 0 0 0 +# Lock time 0 0 0 0 0 0 0 0 +# Rows sent 0 0 0 0 0 0 0 0 +# Rows examine 0 0 0 0 0 0 0 0 +# Query size 52 48 48 48 48 48 0 48 +# String: +# Hosts +# Users [SQL_SLAVE] +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS LIKE 'blah'\G +# SHOW CREATE TABLE `blah`\G +# EXPLAIN /*!50100 PARTITIONS*/ +SELECT * FROM blah WHERE something = 'important'\G + +# Query 2: 0 QPS, 0x concurrency, ID 0x727841EC88423713 at byte 0 ________ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Time range: all events occurred at 2007-12-18 11:48:27 @@ -54,38 +84,8 @@ # SHOW CREATE TABLE `db`.`v`\G INSERT INTO db.v (m, b) VALUES ('', 'Exact')\G -# Query 2: 0 QPS, 0x concurrency, ID 0x9E892D4B16D7BFC2 at byte 525 ______ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Time range: all events occurred at 2007-12-18 11:48:27 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 50 1 -# Exec time 0 0 0 0 0 0 0 0 -# Lock time 0 0 0 0 0 0 0 0 -# Rows sent 0 0 0 0 0 0 0 0 -# Rows examine 0 0 0 0 0 0 0 0 -# Query size 52 48 48 48 48 48 0 48 -# String: -# Hosts -# Users [SQL_SLAVE] -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS LIKE 'blah'\G -# SHOW CREATE TABLE `blah`\G -# EXPLAIN /*!50100 PARTITIONS*/ -SELECT * FROM blah WHERE something = 'important'\G - # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== =========== -# 1 0x727841EC88423713 0.0000 0.0% 1 0.0000 0.00 INSERT db.v -# 2 0x9E892D4B16D7BFC2 0.0000 0.0% 1 0.0000 0.00 SELECT blah +# 1 0x9E892D4B16D7BFC2 0.0000 0.0% 1 0.0000 0.00 SELECT blah +# 2 0x727841EC88423713 0.0000 0.0% 1 0.0000 0.00 INSERT db.v diff --git a/t/pt-query-digest/samples/slow058.txt b/t/pt-query-digest/samples/slow058.txt index 2b167b55..ea080ac2 100644 --- a/t/pt-query-digest/samples/slow058.txt +++ b/t/pt-query-digest/samples/slow058.txt @@ -1,34 +1,5 @@ -# Query 1: 0 QPS, 0x concurrency, ID 0x471A0C4BD7A4EE34 at byte 730 ______ -# This item is included in the report because it matches --limit. -# Scores: V/M = 0.00 -# Attribute pct total min max avg 95% stddev median -# ============ === ======= ======= ======= ======= ======= ======= ======= -# Count 33 2 -# Exec time 49 38ms 19ms 19ms 19ms 19ms 0 19ms -# Lock time 50 19ms 9ms 9ms 9ms 9ms 0 9ms -# Rows sent 0 0 0 0 0 0 0 0 -# Rows examine 0 0 0 0 0 0 0 0 -# Query size 24 52 26 26 26 26 0 26 -# String: -# Databases db -# Hosts 1.2.3.8 -# Users meow -# Query_time distribution -# 1us -# 10us -# 100us -# 1ms -# 10ms ################################################################ -# 100ms -# 1s -# 10s+ -# Tables -# SHOW TABLE STATUS FROM `db` LIKE 'foo'\G -# SHOW CREATE TABLE `db`.`foo`\G -insert `foo` values("bar")\G - -# Query 2: 0 QPS, 0x concurrency, ID 0xF33473286088142B at byte 898 ______ +# Query 1: 0 QPS, 0x concurrency, ID 0xF33473286088142B at byte 898 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 # Attribute pct total min max avg 95% stddev median @@ -57,6 +28,35 @@ insert `foo` values("bar")\G # SHOW CREATE TABLE `db`.`foo`\G replace `foo` values("bar")\G +# Query 2: 0 QPS, 0x concurrency, ID 0x471A0C4BD7A4EE34 at byte 730 ______ +# This item is included in the report because it matches --limit. +# Scores: V/M = 0.00 +# Attribute pct total min max avg 95% stddev median +# ============ === ======= ======= ======= ======= ======= ======= ======= +# Count 33 2 +# Exec time 49 38ms 19ms 19ms 19ms 19ms 0 19ms +# Lock time 50 19ms 9ms 9ms 9ms 9ms 0 9ms +# Rows sent 0 0 0 0 0 0 0 0 +# Rows examine 0 0 0 0 0 0 0 0 +# Query size 24 52 26 26 26 26 0 26 +# String: +# Databases db +# Hosts 1.2.3.8 +# Users meow +# Query_time distribution +# 1us +# 10us +# 100us +# 1ms +# 10ms ################################################################ +# 100ms +# 1s +# 10s+ +# Tables +# SHOW TABLE STATUS FROM `db` LIKE 'foo'\G +# SHOW CREATE TABLE `db`.`foo`\G +insert `foo` values("bar")\G + # Query 3: 0 QPS, 0x concurrency, ID 0xEBAC9C76529E62CE at byte 534 ______ # This item is included in the report because it matches --limit. # Scores: V/M = 0.00 @@ -89,6 +89,6 @@ load data local infile '/tmp/foo.txt' into table `foo`\G # Profile # Rank Query ID Response time Calls R/Call V/M Item # ==== ================== ============= ===== ====== ===== ============= -# 1 0x471A0C4BD7A4EE34 0.0376 50.0% 2 0.0188 0.00 INSERT foo -# 2 0xF33473286088142B 0.0376 50.0% 2 0.0188 0.00 REPLACE foo +# 1 0xF33473286088142B 0.0376 50.0% 2 0.0188 0.00 REPLACE foo +# 2 0x471A0C4BD7A4EE34 0.0376 50.0% 2 0.0188 0.00 INSERT foo # 3 0xEBAC9C76529E62CE 0.0000 0.0% 2 0.0000 0.00 LOAD DATA foo diff --git a/t/pt-query-digest/since_until.t b/t/pt-query-digest/since_until.t index ea60e5a3..050d98a9 100644 --- a/t/pt-query-digest/since_until.t +++ b/t/pt-query-digest/since_until.t @@ -52,6 +52,7 @@ ok( '--since 090727' ); + # This test will fail come July 2015. ok( no_diff( diff --git a/t/pt-query-digest/slowlog_analyses.t b/t/pt-query-digest/slowlog_analyses.t index 5cf5aac8..48b8aea9 100644 --- a/t/pt-query-digest/slowlog_analyses.t +++ b/t/pt-query-digest/slowlog_analyses.t @@ -37,7 +37,6 @@ ok( ), 'Analysis for slow001 with --expected-range' ); - ok( no_diff( sub { pt_query_digest::main(@args, $sample.'slow001.txt', qw(--group-by tables)) }, diff --git a/t/pt-table-checksum/run_time.t b/t/pt-table-checksum/run_time.t index fdd18267..73e0f9fa 100644 --- a/t/pt-table-checksum/run_time.t +++ b/t/pt-table-checksum/run_time.t @@ -44,7 +44,7 @@ $exit_status = pt_table_checksum::main(@args, my $t = time - $t0; ok( - $t >= 1.0 && $t <= 2.5, + $t >= 1.0 && $t <= 2.5 + $ENV{'PERCONA_SLOW_BOX'} , "Ran in roughly --run-time 1 second" ) or diag("Actual run time: $t");