Hello community, here is the log from the commit of package percona-toolkit for openSUSE:Factory checked in at 2014-08-11 10:07:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/percona-toolkit (Old) and /work/SRC/openSUSE:Factory/.percona-toolkit.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "percona-toolkit" Changes: -------- --- /work/SRC/openSUSE:Factory/percona-toolkit/percona-toolkit.changes 2014-07-12 17:14:49.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.percona-toolkit.new/percona-toolkit.changes 2014-08-11 10:08:08.000000000 +0200 @@ -1,0 +2,14 @@ +Sun Aug 10 14:19:11 UTC 2014 - [email protected] + +- Percona Toolkit 2.2.10 + * Fixed bug: pt-table-checksum deadlock + * Fixed bug: 5.6 slow query log Thead_id becomes Id + * Fixed bug: pt-table-checksum + PXC inconsistent results upon + --resume + * Fixed bug: pt-online-schema-change doesn't work with HASH + indexes + * Fixed bug: pt-table-checksum max load 20% rounds down + * Fixed bug: some shell tools output error when queried for + --version + +------------------------------------------------------------------- Old: ---- percona-toolkit-2.2.9.tar.gz New: ---- percona-toolkit-2.2.10.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ percona-toolkit.spec ++++++ --- /var/tmp/diff_new_pack.0bWxqc/_old 2014-08-11 10:08:09.000000000 +0200 +++ /var/tmp/diff_new_pack.0bWxqc/_new 2014-08-11 10:08:09.000000000 +0200 @@ -17,13 +17,13 @@ Name: percona-toolkit -Version: 2.2.9 +Version: 2.2.10 Release: 0 Summary: Advanced MySQL and system command-line tools License: GPL-2.0 Group: Productivity/Databases/Tools Url: https://www.percona.com/software/percona-toolkit/ -Source: https://www.percona.com/redir/downloads/%{name}/%{version}/%{name}-%{version}.tar.gz +Source: https://www.percona.com/redir/downloads/%{name}/%{version}/tarball/%{name}-%{version}.tar.gz Source2: %{name}.conf Patch0: percona-toolkit-2.2.x-disable-default-version-check.patch Requires: perl(DBD::mysql) >= 1.0 ++++++ percona-toolkit-2.2.9.tar.gz -> percona-toolkit-2.2.10.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/Changelog new/percona-toolkit-2.2.10/Changelog --- old/percona-toolkit-2.2.9/Changelog 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/Changelog 2014-08-06 21:57:30.000000000 +0200 @@ -1,7 +1,15 @@ Changelog for Percona Toolkit -v2.2.9 released 2014-07-08 +v2.2.10 released 2014-08-06 + + * Fixed bug 1287253: pt-table-checksum deadlock + * Fixed bug 1299387: 5.6 slow query log Thead_id becomes Id + * Fixed bug 1311654: pt-table-checksum + PXC inconsistent results upon --resume + * Fixed bug 1340728: pt-online-schema-change doesn't work with HASH indexes + * Fixed bug 1253872: pt-table-checksum max load 20% rounds down + * Fixed bug 1340364: some shell tools output error when queried for --version +v2.2.9 released 2014-07-08 * Fixed bug 1258135: pt-deadlock-logger introduces a noise to MySQL * Fixed bug 1329422: pt-online-schema-change foreign-keys-method=none breaks constraints diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/Makefile.PL new/percona-toolkit-2.2.10/Makefile.PL --- old/percona-toolkit-2.2.9/Makefile.PL 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/Makefile.PL 2014-08-06 21:57:30.000000000 +0200 @@ -2,7 +2,7 @@ WriteMakefile( NAME => 'percona-toolkit', - VERSION => '2.2.9', + VERSION => '2.2.10', EXE_FILES => [ <bin/*> ], MAN1PODS => { 'docs/percona-toolkit.pod' => 'blib/man1/percona-toolkit.1p', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-align new/percona-toolkit-2.2.10/bin/pt-align --- old/percona-toolkit-2.2.9/bin/pt-align 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-align 2014-08-06 21:57:30.000000000 +0200 @@ -1323,6 +1323,6 @@ =head1 VERSION -pt-align 2.2.9 +pt-align 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-archiver new/percona-toolkit-2.2.10/bin/pt-archiver --- old/percona-toolkit-2.2.9/bin/pt-archiver 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-archiver 2014-08-06 21:57:30.000000000 +0200 @@ -43,7 +43,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -7892,6 +7892,6 @@ =head1 VERSION -pt-archiver 2.2.9 +pt-archiver 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-config-diff new/percona-toolkit-2.2.10/bin/pt-config-diff --- old/percona-toolkit-2.2.9/bin/pt-config-diff 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-config-diff 2014-08-06 21:57:30.000000000 +0200 @@ -43,7 +43,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5733,6 +5733,6 @@ =head1 VERSION -pt-config-diff 2.2.9 +pt-config-diff 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-deadlock-logger new/percona-toolkit-2.2.10/bin/pt-deadlock-logger --- old/percona-toolkit-2.2.9/bin/pt-deadlock-logger 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-deadlock-logger 2014-08-06 21:57:30.000000000 +0200 @@ -42,7 +42,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5523,6 +5523,6 @@ =head1 VERSION -pt-deadlock-logger 2.2.9 +pt-deadlock-logger 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-diskstats new/percona-toolkit-2.2.10/bin/pt-diskstats --- old/percona-toolkit-2.2.9/bin/pt-diskstats 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-diskstats 2014-08-06 21:57:30.000000000 +0200 @@ -38,7 +38,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5579,6 +5579,6 @@ =head1 VERSION -pt-diskstats 2.2.9 +pt-diskstats 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-duplicate-key-checker new/percona-toolkit-2.2.10/bin/pt-duplicate-key-checker --- old/percona-toolkit-2.2.9/bin/pt-duplicate-key-checker 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-duplicate-key-checker 2014-08-06 21:57:30.000000000 +0200 @@ -39,7 +39,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5600,6 +5600,6 @@ =head1 VERSION -pt-duplicate-key-checker 2.2.9 +pt-duplicate-key-checker 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-fifo-split new/percona-toolkit-2.2.10/bin/pt-fifo-split --- old/percona-toolkit-2.2.9/bin/pt-fifo-split 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-fifo-split 2014-08-06 21:57:30.000000000 +0200 @@ -1612,6 +1612,6 @@ =head1 VERSION -pt-fifo-split 2.2.9 +pt-fifo-split 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-find new/percona-toolkit-2.2.10/bin/pt-find --- old/percona-toolkit-2.2.9/bin/pt-find 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-find 2014-08-06 21:57:30.000000000 +0200 @@ -35,7 +35,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -4984,6 +4984,6 @@ =head1 VERSION -pt-find 2.2.9 +pt-find 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-fingerprint new/percona-toolkit-2.2.10/bin/pt-fingerprint --- old/percona-toolkit-2.2.9/bin/pt-fingerprint 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-fingerprint 2014-08-06 21:57:30.000000000 +0200 @@ -2203,6 +2203,6 @@ =head1 VERSION -pt-fingerprint 2.2.9 +pt-fingerprint 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-fk-error-logger new/percona-toolkit-2.2.10/bin/pt-fk-error-logger --- old/percona-toolkit-2.2.9/bin/pt-fk-error-logger 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-fk-error-logger 2014-08-06 21:57:30.000000000 +0200 @@ -37,7 +37,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -4509,6 +4509,6 @@ =head1 VERSION -pt-fk-error-logger 2.2.9 +pt-fk-error-logger 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-heartbeat new/percona-toolkit-2.2.10/bin/pt-heartbeat --- old/percona-toolkit-2.2.9/bin/pt-heartbeat 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-heartbeat 2014-08-06 21:57:30.000000000 +0200 @@ -38,7 +38,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -6192,6 +6192,6 @@ =head1 VERSION -pt-heartbeat 2.2.9 +pt-heartbeat 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-index-usage new/percona-toolkit-2.2.10/bin/pt-index-usage --- old/percona-toolkit-2.2.9/bin/pt-index-usage 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-index-usage 2014-08-06 21:57:30.000000000 +0200 @@ -45,7 +45,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -2772,12 +2772,13 @@ my ( $class ) = @_; my $self = { pending => [], + last_event_offset => undef, }; return bless $self, $class; } my $slow_log_ts_line = qr/^# Time: ([0-9: ]{15})/; -my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]/; +my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]\s*(?:Id:\s*(\d+))?/; my $slow_log_hd_line = qr{ ^(?: T[cC][pP]\s[pP]ort:\s+\d+ # case differs on windows/unix @@ -2808,6 +2809,7 @@ or defined($stmt = $next_event->()) ) { my @properties = ('cmd', 'Query', 'pos_in_log', $pos_in_log); + $self->{last_event_offset} = $pos_in_log; $pos_in_log = $tell->(); if ( $stmt =~ s/$slow_log_hd_line//go ){ # Throw away header lines in log @@ -2840,19 +2842,25 @@ push @properties, 'ts', $time; ++$got_ts; if ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); push @properties, 'user', $user, 'host', $host, 'ip', $ip; - ++$got_uh; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } + ++$got_uh; } } elsif ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { - PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); - push @properties, 'user', $user, 'host', $host, 'ip', $ip; + PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); + push @properties, 'user', $user, 'host', $host, 'ip', $ip; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } ++$got_uh; } @@ -2933,9 +2941,15 @@ PTDEBUG && _d('Properties of event:', Dumper(\@properties)); my $event = { @properties }; - if ( $args{stats} ) { - $args{stats}->{events_read}++; - $args{stats}->{events_parsed}++; + if ( !$event->{arg} ) { + PTDEBUG && _d('Partial event, no arg'); + } + else { + $self->{last_event_offset} = undef; + if ( $args{stats} ) { + $args{stats}->{events_read}++; + $args{stats}->{events_parsed}++; + } } return $event; } # EVENT @@ -7532,6 +7546,6 @@ =head1 VERSION -pt-index-usage 2.2.9 +pt-index-usage 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-ioprofile new/percona-toolkit-2.2.10/bin/pt-ioprofile --- old/percona-toolkit-2.2.9/bin/pt-ioprofile 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-ioprofile 2014-08-06 21:57:30.000000000 +0200 @@ -1119,7 +1119,7 @@ =head1 VERSION -pt-ioprofile 2.2.9 +pt-ioprofile 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-kill new/percona-toolkit-2.2.10/bin/pt-kill --- old/percona-toolkit-2.2.9/bin/pt-kill 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-kill 2014-08-06 21:57:30.000000000 +0200 @@ -47,7 +47,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -8183,6 +8183,6 @@ =head1 VERSION -pt-kill 2.2.9 +pt-kill 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-mext new/percona-toolkit-2.2.10/bin/pt-mext --- old/percona-toolkit-2.2.9/bin/pt-mext 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-mext 2014-08-06 21:57:30.000000000 +0200 @@ -127,9 +127,10 @@ usage_or_errors() { local file="$1" + local version="" if [ "$OPT_VERSION" ]; then - local version=$(grep '^pt-[^ ]\+ [0-9]' "$file") + version=$(grep '^pt-[^ ]\+ [0-9]' "$file") echo "$version" return 1 fi @@ -791,7 +792,7 @@ =head1 VERSION -pt-mext 2.2.9 +pt-mext 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-mysql-summary new/percona-toolkit-2.2.10/bin/pt-mysql-summary --- old/percona-toolkit-2.2.9/bin/pt-mysql-summary 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-mysql-summary 2014-08-06 21:57:30.000000000 +0200 @@ -88,9 +88,10 @@ usage_or_errors() { local file="$1" + local version="" if [ "$OPT_VERSION" ]; then - local version=$(grep '^pt-[^ ]\+ [0-9]' "$file") + version=$(grep '^pt-[^ ]\+ [0-9]' "$file") echo "$version" return 1 fi @@ -3089,7 +3090,7 @@ =head1 VERSION -pt-mysql-summary 2.2.9 +pt-mysql-summary 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-online-schema-change new/percona-toolkit-2.2.10/bin/pt-online-schema-change --- old/percona-toolkit-2.2.9/bin/pt-online-schema-change 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-online-schema-change 2014-08-06 21:57:30.000000000 +0200 @@ -54,7 +54,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -4785,6 +4785,7 @@ use strict; use warnings FATAL => 'all'; +use POSIX qw( ceil ); use English qw(-no_match_vars); use constant PTDEBUG => $ENV{PTDEBUG} || 0; @@ -4950,8 +4951,8 @@ } else { PTDEBUG && _d('Initial', $var, 'value:', $init_val); - $val = int(($init_val * $threshold_factor) + $init_val); - $vars->{$var} = $val; + $val = ($init_val * $threshold_factor) + $init_val; + $vars->{$var} = int(ceil($val)); } PTDEBUG && _d('Wait if', $var, '>=', $val); } @@ -8908,28 +8909,31 @@ # boundary sql. This check applies to the next nibble. So if # the current nibble number is 5, then nibble 5 is already done # and we're checking nibble number 6. - my $expl = explain_statement( - tbl => $tbl, - sth => $sth->{explain_upper_boundary}, - vals => [ @{$boundary->{lower}}, $nibble_iter->limit() ], - ); - if (lc($expl->{key} || '') ne lc($nibble_iter->nibble_index() || '')) { - my $msg - = "Aborting copying table $tbl->{name} at chunk " - . ($nibble_iter->nibble_number() + 1) - . " because it is not safe to ascend. Chunking should " - . "use the " - . ($nibble_iter->nibble_index() || '?') - . " index, but MySQL EXPLAIN reports that " - . ($expl->{key} ? "the $expl->{key}" : "no") - . " index will be used for " - . $sth->{upper_boundary}->{Statement} - . " with values " - . join(", ", map { defined $_ ? $_ : "NULL" } - (@{$boundary->{lower}}, $nibble_iter->limit())) - . "\n"; - die ts($msg); - } + # Skip if --nocheck-plan See: https://bugs.launchpad.net/percona-toolkit/+bug/1340728 + if ( $o->get('check-plan') ) { + my $expl = explain_statement( + tbl => $tbl, + sth => $sth->{explain_upper_boundary}, + vals => [ @{$boundary->{lower}}, $nibble_iter->limit() ], + ); + if ( lc($expl->{key} || '') ne lc($nibble_iter->nibble_index() || '') ) { + my $msg + = "Aborting copying table $tbl->{name} at chunk " + . ($nibble_iter->nibble_number() + 1) + . " because it is not safe to ascend. Chunking should " + . "use the " + . ($nibble_iter->nibble_index() || '?') + . " index, but MySQL EXPLAIN reports that " + . ($expl->{key} ? "the $expl->{key}" : "no") + . " index will be used for " + . $sth->{upper_boundary}->{Statement} + . " with values " + . join(", ", map { defined $_ ? $_ : "NULL" } + (@{$boundary->{lower}}, $nibble_iter->limit())) + . "\n"; + die ts($msg); + } + } # Once nibbling begins for a table, control does not return to this # tool until nibbling is done because, as noted above, all work is @@ -9531,15 +9535,17 @@ vals => [ @{$boundary->{lower}}, @{$boundary->{upper}} ], ); - # Ensure that MySQL is using the chunk index if the table is being chunked. - if ( !$nibble_iter->one_nibble() - && lc($expl->{key} || '') ne lc($nibble_iter->nibble_index() || '') ) - { - die ts("Error copying rows at chunk " . $nibble_iter->nibble_number() - . " of $tbl->{db}.$tbl->{tbl} because MySQL chose " - . ($expl->{key} ? "the $expl->{key}" : "no") . " index " - . " instead of the " . $nibble_iter->nibble_index() . "index.\n"); - } + # Ensure that MySQL is using the chunk index if the table is being chunked. + # Skip if --nocheck-plan See: https://bugs.launchpad.net/percona-toolkit/+bug/1340728 + if ( !$nibble_iter->one_nibble() + && lc($expl->{key} || '') ne lc($nibble_iter->nibble_index() || '') + && $o->get('check-plan') ) + { + die ts("Error copying rows at chunk " . $nibble_iter->nibble_number() + . " of $tbl->{db}.$tbl->{tbl} because MySQL chose " + . ($expl->{key} ? "the $expl->{key}" : "no") . " index " + . " instead of the " . $nibble_iter->nibble_index() . "index.\n"); + } # Ensure that the chunk isn't too large if there's a --chunk-size-limit. # If single-chunking the table, this has already been checked, so it @@ -9564,11 +9570,13 @@ } } - # Ensure that MySQL is still using the entire index. + # Ensure that MySQL is still using the entire index. # https://bugs.launchpad.net/percona-toolkit/+bug/1010232 + # Skip if --nocheck-plan See: https://bugs.launchpad.net/percona-toolkit/+bug/1340728 if ( !$nibble_iter->one_nibble() && $tbl->{key_len} - && ($expl->{key_len} || 0) < $tbl->{key_len} ) + && ($expl->{key_len} || 0) < $tbl->{key_len} + && $o->get('check-plan') ) { die ts("Error copying rows at chunk " . $nibble_iter->nibble_number() . " of $tbl->{db}.$tbl->{tbl} because MySQL used " @@ -11555,6 +11563,6 @@ =head1 VERSION -pt-online-schema-change 2.2.9 +pt-online-schema-change 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-pmp new/percona-toolkit-2.2.10/bin/pt-pmp --- old/percona-toolkit-2.2.9/bin/pt-pmp 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-pmp 2014-08-06 21:57:30.000000000 +0200 @@ -889,7 +889,7 @@ =head1 VERSION -pt-pmp 2.2.9 +pt-pmp 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-query-digest new/percona-toolkit-2.2.10/bin/pt-query-digest --- old/percona-toolkit-2.2.9/bin/pt-query-digest 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-query-digest 2014-08-06 21:57:30.000000000 +0200 @@ -64,7 +64,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -4972,7 +4972,7 @@ } my $slow_log_ts_line = qr/^# Time: ([0-9: ]{15})/; -my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]/; +my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]\s*(?:Id:\s*(\d+))?/; my $slow_log_hd_line = qr{ ^(?: T[cC][pP]\s[pP]ort:\s+\d+ # case differs on windows/unix @@ -5036,19 +5036,25 @@ push @properties, 'ts', $time; ++$got_ts; if ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); push @properties, 'user', $user, 'host', $host, 'ip', $ip; - ++$got_uh; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } + ++$got_uh; } } elsif ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { - PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); - push @properties, 'user', $user, 'host', $host, 'ip', $ip; + PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); + push @properties, 'user', $user, 'host', $host, 'ip', $ip; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } ++$got_uh; } @@ -16587,6 +16593,6 @@ =head1 VERSION -pt-query-digest 2.2.9 +pt-query-digest 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-show-grants new/percona-toolkit-2.2.10/bin/pt-show-grants --- old/percona-toolkit-2.2.9/bin/pt-show-grants 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-show-grants 2014-08-06 21:57:30.000000000 +0200 @@ -2406,6 +2406,6 @@ =head1 VERSION -pt-show-grants 2.2.9 +pt-show-grants 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-sift new/percona-toolkit-2.2.10/bin/pt-sift --- old/percona-toolkit-2.2.9/bin/pt-sift 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-sift 2014-08-06 21:57:30.000000000 +0200 @@ -1237,7 +1237,7 @@ =head1 VERSION -pt-sift 2.2.9 +pt-sift 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-slave-delay new/percona-toolkit-2.2.10/bin/pt-slave-delay --- old/percona-toolkit-2.2.9/bin/pt-slave-delay 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-slave-delay 2014-08-06 21:57:30.000000000 +0200 @@ -40,7 +40,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -4869,6 +4869,6 @@ =head1 VERSION -pt-slave-delay 2.2.9 +pt-slave-delay 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-slave-find new/percona-toolkit-2.2.10/bin/pt-slave-find --- old/percona-toolkit-2.2.9/bin/pt-slave-find 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-slave-find 2014-08-06 21:57:30.000000000 +0200 @@ -4334,6 +4334,6 @@ =head1 VERSION -pt-slave-find 2.2.9 +pt-slave-find 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-slave-restart new/percona-toolkit-2.2.10/bin/pt-slave-restart --- old/percona-toolkit-2.2.9/bin/pt-slave-restart 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-slave-restart 2014-08-06 21:57:30.000000000 +0200 @@ -41,7 +41,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5937,6 +5937,6 @@ =head1 VERSION -pt-slave-restart 2.2.9 +pt-slave-restart 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-stalk new/percona-toolkit-2.2.10/bin/pt-stalk --- old/percona-toolkit-2.2.9/bin/pt-stalk 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-stalk 2014-08-06 21:57:30.000000000 +0200 @@ -2211,7 +2211,7 @@ =head1 VERSION -pt-stalk 2.2.9 +pt-stalk 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-summary new/percona-toolkit-2.2.10/bin/pt-summary --- old/percona-toolkit-2.2.9/bin/pt-summary 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-summary 2014-08-06 21:57:30.000000000 +0200 @@ -95,9 +95,10 @@ usage_or_errors() { local file="$1" + local version="" if [ "$OPT_VERSION" ]; then - local version=$(grep '^pt-[^ ]\+ [0-9]' "$file") + version=$(grep '^pt-[^ ]\+ [0-9]' "$file") echo "$version" return 1 fi @@ -2690,7 +2691,7 @@ =head1 VERSION -pt-summary 2.2.9 +pt-summary 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-table-checksum new/percona-toolkit-2.2.10/bin/pt-table-checksum --- old/percona-toolkit-2.2.9/bin/pt-table-checksum 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-table-checksum 2014-08-06 21:57:30.000000000 +0200 @@ -57,7 +57,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -5977,19 +5977,28 @@ } my ($dbh, $repl_table) = @args{@required_args}; - my $sql - = "SELECT CONCAT(db, '.', tbl) AS `table`, " - . "chunk, chunk_index, lower_boundary, upper_boundary, " - . "COALESCE(this_cnt-master_cnt, 0) AS cnt_diff, " - . "COALESCE(" - . "this_crc <> master_crc OR ISNULL(master_crc) <> ISNULL(this_crc), 0" - . ") AS crc_diff, this_cnt, master_cnt, this_crc, master_crc " - . "FROM $repl_table " - . "WHERE (master_cnt <> this_cnt OR master_crc <> this_crc " - . "OR ISNULL(master_crc) <> ISNULL(this_crc))" - . ($args{where} ? " AND ($args{where})" : ""); - PTDEBUG && _d($sql); - my $diffs = $dbh->selectall_arrayref($sql, { Slice => {} }); + + my $tries = $self->{'OptionParser'}->get('replicate-check-retries') || 1; + my $diffs; + while ($tries--) { + my $sql + = "SELECT CONCAT(db, '.', tbl) AS `table`, " + . "chunk, chunk_index, lower_boundary, upper_boundary, " + . "COALESCE(this_cnt-master_cnt, 0) AS cnt_diff, " + . "COALESCE(" + . "this_crc <> master_crc OR ISNULL(master_crc) <> ISNULL(this_crc), 0" + . ") AS crc_diff, this_cnt, master_cnt, this_crc, master_crc " + . "FROM $repl_table " + . "WHERE (master_cnt <> this_cnt OR master_crc <> this_crc " + . "OR ISNULL(master_crc) <> ISNULL(this_crc)) " + . ($args{where} ? " AND ($args{where})" : ""); + PTDEBUG && _d($sql); + $diffs = $dbh->selectall_arrayref($sql, { Slice => {} }); + if (!@$diffs || !$tries) { # if no differences are found OR we are out of tries left... + last; # get out now + } + sleep 1; + } return $diffs; } @@ -8347,6 +8356,7 @@ use strict; use warnings FATAL => 'all'; +use POSIX qw( ceil ); use English qw(-no_match_vars); use constant PTDEBUG => $ENV{PTDEBUG} || 0; @@ -8512,8 +8522,8 @@ } else { PTDEBUG && _d('Initial', $var, 'value:', $init_val); - $val = int(($init_val * $threshold_factor) + $init_val); - $vars->{$var} = $val; + $val = ($init_val * $threshold_factor) + $init_val; + $vars->{$var} = int(ceil($val)); } PTDEBUG && _d('Wait if', $var, '>=', $val); } @@ -8964,6 +8974,7 @@ $print_header = 1; $exit_status = 0; + # ######################################################################## # Get configuration information. # ######################################################################## @@ -10072,6 +10083,7 @@ # Should be done automatically, but I like to be explicit. $fetch_sth->finish(); $update_sth->finish(); + $delete_sth->finish(); # Update rate, chunk size, and progress if the nibble actually # selected some rows. @@ -10382,6 +10394,7 @@ return $msg ? "$ts $msg" : $ts; } + sub nibble_is_safe { my (%args) = @_; my @required_args = qw(Cxn tbl NibbleIterator OptionParser); @@ -10561,6 +10574,7 @@ if ( $error =~ m/Lock wait timeout exceeded/ || $error =~ m/Query execution was interrupted/ + || $error =~ m/Deadlock found/ ) { # These errors/warnings can be retried, so don't print # a warning yet; do that in final_fail. @@ -10584,8 +10598,9 @@ my (%args) = @_; my $error = $args{error}; - if ( $error =~ /Lock wait timeout exceeded/ - || $error =~ /Query execution was interrupted/ + if ( $error =~ m/Lock wait timeout exceeded/ + || $error =~ m/Query execution was interrupted/ + || $error =~ m/Deadlock found/ ) { # These errors/warnings are not fatal but only cause this # nibble to be skipped. @@ -12287,6 +12302,15 @@ if you run pt-table-checksum quietly in a cron job, for example, and later want a report on the results of the cron job, perhaps to implement a Nagios check. +=item --replicate-check-retries + +type: int; default: 1 + +Retry checksum comparison this many times when a difference is encountered. +Only when a difference persists after this number of checks is it considered valid. +Using this option with a value of 2 or more alleviates spurious differences that +arise when using the --resume option. + =item --replicate-database type: string @@ -12674,6 +12698,6 @@ =head1 VERSION -pt-table-checksum 2.2.9 +pt-table-checksum 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-table-sync new/percona-toolkit-2.2.10/bin/pt-table-sync --- old/percona-toolkit-2.2.9/bin/pt-table-sync 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-table-sync 2014-08-06 21:57:30.000000000 +0200 @@ -55,7 +55,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -12768,6 +12768,6 @@ =head1 VERSION -pt-table-sync 2.2.9 +pt-table-sync 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-table-usage new/percona-toolkit-2.2.10/bin/pt-table-usage --- old/percona-toolkit-2.2.9/bin/pt-table-usage 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-table-usage 2014-08-06 21:57:30.000000000 +0200 @@ -1556,12 +1556,13 @@ my ( $class ) = @_; my $self = { pending => [], + last_event_offset => undef, }; return bless $self, $class; } my $slow_log_ts_line = qr/^# Time: ([0-9: ]{15})/; -my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]/; +my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]\s*(?:Id:\s*(\d+))?/; my $slow_log_hd_line = qr{ ^(?: T[cC][pP]\s[pP]ort:\s+\d+ # case differs on windows/unix @@ -1592,6 +1593,7 @@ or defined($stmt = $next_event->()) ) { my @properties = ('cmd', 'Query', 'pos_in_log', $pos_in_log); + $self->{last_event_offset} = $pos_in_log; $pos_in_log = $tell->(); if ( $stmt =~ s/$slow_log_hd_line//go ){ # Throw away header lines in log @@ -1624,19 +1626,25 @@ push @properties, 'ts', $time; ++$got_ts; if ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); push @properties, 'user', $user, 'host', $host, 'ip', $ip; - ++$got_uh; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } + ++$got_uh; } } elsif ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { - PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); - push @properties, 'user', $user, 'host', $host, 'ip', $ip; + PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); + push @properties, 'user', $user, 'host', $host, 'ip', $ip; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } ++$got_uh; } @@ -1676,14 +1684,25 @@ if ( !$found_arg && $pos == $len ) { PTDEBUG && _d("Did not find arg, looking for special cases"); - local $INPUT_RECORD_SEPARATOR = ";\n"; + local $INPUT_RECORD_SEPARATOR = ";\n"; # get next line if ( defined(my $l = $next_event->()) ) { - chomp $l; - $l =~ s/^\s+//; - PTDEBUG && _d("Found admin statement", $l); - push @properties, 'cmd', 'Admin', 'arg', $l; - push @properties, 'bytes', length($properties[-1]); - $found_arg++; + if ( $l =~ /^\s*[A-Z][a-z_]+: / ) { + PTDEBUG && _d("Found NULL query before", $l); + local $INPUT_RECORD_SEPARATOR = ";\n#"; + my $rest_of_event = $next_event->(); + push @{$self->{pending}}, $l . $rest_of_event; + push @properties, 'cmd', 'Query', 'arg', '/* No query */'; + push @properties, 'bytes', 0; + $found_arg++; + } + else { + chomp $l; + $l =~ s/^\s+//; + PTDEBUG && _d("Found admin statement", $l); + push @properties, 'cmd', 'Admin', 'arg', $l; + push @properties, 'bytes', length($properties[-1]); + $found_arg++; + } } else { PTDEBUG && _d("I can't figure out what to do with this line"); @@ -1706,9 +1725,15 @@ PTDEBUG && _d('Properties of event:', Dumper(\@properties)); my $event = { @properties }; - if ( $args{stats} ) { - $args{stats}->{events_read}++; - $args{stats}->{events_parsed}++; + if ( !$event->{arg} ) { + PTDEBUG && _d('Partial event, no arg'); + } + else { + $self->{last_event_offset} = undef; + if ( $args{stats} ) { + $args{stats}->{events_read}++; + $args{stats}->{events_parsed}++; + } } return $event; } # EVENT @@ -7536,6 +7561,6 @@ =head1 VERSION -pt-table-usage 2.2.9 +pt-table-usage 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-upgrade new/percona-toolkit-2.2.10/bin/pt-upgrade --- old/percona-toolkit-2.2.9/bin/pt-upgrade 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-upgrade 2014-08-06 21:57:30.000000000 +0200 @@ -61,7 +61,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -6537,12 +6537,13 @@ my ( $class ) = @_; my $self = { pending => [], + last_event_offset => undef, }; return bless $self, $class; } my $slow_log_ts_line = qr/^# Time: ([0-9: ]{15})/; -my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]/; +my $slow_log_uh_line = qr/# User\@Host: ([^\[]+|\[[^[]+\]).*?@ (\S*) \[(.*)\]\s*(?:Id:\s*(\d+))?/; my $slow_log_hd_line = qr{ ^(?: T[cC][pP]\s[pP]ort:\s+\d+ # case differs on windows/unix @@ -6573,6 +6574,7 @@ or defined($stmt = $next_event->()) ) { my @properties = ('cmd', 'Query', 'pos_in_log', $pos_in_log); + $self->{last_event_offset} = $pos_in_log; $pos_in_log = $tell->(); if ( $stmt =~ s/$slow_log_hd_line//go ){ # Throw away header lines in log @@ -6605,19 +6607,25 @@ push @properties, 'ts', $time; ++$got_ts; if ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); push @properties, 'user', $user, 'host', $host, 'ip', $ip; - ++$got_uh; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } + ++$got_uh; } } elsif ( !$got_uh - && ( my ( $user, $host, $ip ) = $line =~ m/$slow_log_uh_line/o ) + && ( my ( $user, $host, $ip, $thread_id ) = $line =~ m/$slow_log_uh_line/o ) ) { - PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); - push @properties, 'user', $user, 'host', $host, 'ip', $ip; + PTDEBUG && _d("Got user, host, ip", $user, $host, $ip); + push @properties, 'user', $user, 'host', $host, 'ip', $ip; + if ( $thread_id ) { + push @properties, 'Thread_id', $thread_id; + } ++$got_uh; } @@ -6698,9 +6706,15 @@ PTDEBUG && _d('Properties of event:', Dumper(\@properties)); my $event = { @properties }; - if ( $args{stats} ) { - $args{stats}->{events_read}++; - $args{stats}->{events_parsed}++; + if ( !$event->{arg} ) { + PTDEBUG && _d('Partial event, no arg'); + } + else { + $self->{last_event_offset} = undef; + if ( $args{stats} ) { + $args{stats}->{events_read}++; + $args{stats}->{events_parsed}++; + } } return $event; } # EVENT @@ -11224,6 +11238,6 @@ =head1 VERSION -pt-upgrade 2.2.9 +pt-upgrade 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-variable-advisor new/percona-toolkit-2.2.10/bin/pt-variable-advisor --- old/percona-toolkit-2.2.9/bin/pt-variable-advisor 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-variable-advisor 2014-08-06 21:57:30.000000000 +0200 @@ -44,7 +44,7 @@ { package Percona::Toolkit; -our $VERSION = '2.2.9'; +our $VERSION = '2.2.10'; use strict; use warnings FATAL => 'all'; @@ -6138,6 +6138,6 @@ =head1 VERSION -pt-variable-advisor 2.2.9 +pt-variable-advisor 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/bin/pt-visual-explain new/percona-toolkit-2.2.10/bin/pt-visual-explain --- old/percona-toolkit-2.2.9/bin/pt-visual-explain 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/bin/pt-visual-explain 2014-08-06 21:57:30.000000000 +0200 @@ -3243,6 +3243,6 @@ =head1 VERSION -pt-visual-explain 2.2.9 +pt-visual-explain 2.2.10 =cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/percona-toolkit-2.2.9/docs/percona-toolkit.pod new/percona-toolkit-2.2.10/docs/percona-toolkit.pod --- old/percona-toolkit-2.2.9/docs/percona-toolkit.pod 2014-07-08 16:36:40.000000000 +0200 +++ new/percona-toolkit-2.2.10/docs/percona-toolkit.pod 2014-08-06 21:57:30.000000000 +0200 @@ -557,6 +557,6 @@ =head1 VERSION -Percona Toolkit v2.2.9 released 2014-07-08 +Percona Toolkit v2.2.10 released 2014-08-06 =cut ++++++ percona-toolkit-2.2.x-disable-default-version-check.patch ++++++ --- /var/tmp/diff_new_pack.0bWxqc/_old 2014-08-11 10:08:10.000000000 +0200 +++ /var/tmp/diff_new_pack.0bWxqc/_new 2014-08-11 10:08:10.000000000 +0200 @@ -40,10 +40,10 @@ bin/pt-variable-advisor | 2 -- 18 files changed, 36 deletions(-) -Index: percona-toolkit-2.2.9/bin/pt-archiver +Index: percona-toolkit-2.2.10/bin/pt-archiver =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-archiver 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-archiver 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-archiver 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-archiver 2014-08-10 15:15:27.000000000 +0100 @@ -7465,8 +7465,6 @@ Show version and exit. =item --[no]version-check @@ -53,10 +53,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-config-diff +Index: percona-toolkit-2.2.10/bin/pt-config-diff =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-config-diff 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-config-diff 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-config-diff 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-config-diff 2014-08-10 15:15:27.000000000 +0100 @@ -5563,8 +5563,6 @@ Show version and exit. =item --[no]version-check @@ -66,10 +66,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-deadlock-logger +Index: percona-toolkit-2.2.10/bin/pt-deadlock-logger =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-deadlock-logger 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-deadlock-logger 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-deadlock-logger 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-deadlock-logger 2014-08-10 15:15:27.000000000 +0100 @@ -5348,8 +5348,6 @@ Show version and exit. =item --[no]version-check @@ -79,10 +79,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-diskstats +Index: percona-toolkit-2.2.10/bin/pt-diskstats =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-diskstats 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-diskstats 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-diskstats 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-diskstats 2014-08-10 15:15:27.000000000 +0100 @@ -5468,8 +5468,6 @@ Show version and exit. =item --[no]version-check @@ -92,10 +92,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-duplicate-key-checker +Index: percona-toolkit-2.2.10/bin/pt-duplicate-key-checker =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-duplicate-key-checker 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-duplicate-key-checker 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-duplicate-key-checker 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-duplicate-key-checker 2014-08-10 15:15:27.000000000 +0100 @@ -5429,8 +5429,6 @@ Show version and exit. =item --[no]version-check @@ -105,10 +105,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-find +Index: percona-toolkit-2.2.10/bin/pt-find =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-find 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-find 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-find 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-find 2014-08-10 15:15:27.000000000 +0100 @@ -4440,8 +4440,6 @@ Show version and exit. =item --[no]version-check @@ -118,10 +118,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-fk-error-logger +Index: percona-toolkit-2.2.10/bin/pt-fk-error-logger =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-fk-error-logger 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-fk-error-logger 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-fk-error-logger 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-fk-error-logger 2014-08-10 15:15:27.000000000 +0100 @@ -4335,8 +4335,6 @@ Show version and exit. =item --[no]version-check @@ -131,10 +131,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-heartbeat +Index: percona-toolkit-2.2.10/bin/pt-heartbeat =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-heartbeat 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-heartbeat 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-heartbeat 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-heartbeat 2014-08-10 15:15:27.000000000 +0100 @@ -6019,8 +6019,6 @@ Show version and exit. =item --[no]version-check @@ -144,11 +144,11 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-index-usage +Index: percona-toolkit-2.2.10/bin/pt-index-usage =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-index-usage 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-index-usage 2014-07-10 21:40:36.000000000 +0100 -@@ -7361,8 +7361,6 @@ Show version and exit. +--- percona-toolkit-2.2.10.orig/bin/pt-index-usage 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-index-usage 2014-08-10 15:15:27.000000000 +0100 +@@ -7375,8 +7375,6 @@ Show version and exit. =item --[no]version-check @@ -157,10 +157,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-kill +Index: percona-toolkit-2.2.10/bin/pt-kill =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-kill 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-kill 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-kill 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-kill 2014-08-10 15:15:27.000000000 +0100 @@ -7640,8 +7640,6 @@ Show version and exit. =item --[no]version-check @@ -170,11 +170,11 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-online-schema-change +Index: percona-toolkit-2.2.10/bin/pt-online-schema-change =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-online-schema-change 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-online-schema-change 2014-07-10 21:40:36.000000000 +0100 -@@ -11320,8 +11320,6 @@ Show version and exit. +--- percona-toolkit-2.2.10.orig/bin/pt-online-schema-change 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-online-schema-change 2014-08-10 15:15:27.000000000 +0100 +@@ -11328,8 +11328,6 @@ Show version and exit. =item --[no]version-check @@ -183,11 +183,11 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-query-digest +Index: percona-toolkit-2.2.10/bin/pt-query-digest =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-query-digest 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-query-digest 2014-07-10 21:40:36.000000000 +0100 -@@ -16267,8 +16267,6 @@ Show version and exit. +--- percona-toolkit-2.2.10.orig/bin/pt-query-digest 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-query-digest 2014-08-10 15:15:27.000000000 +0100 +@@ -16273,8 +16273,6 @@ Show version and exit. =item --[no]version-check @@ -196,10 +196,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-slave-delay +Index: percona-toolkit-2.2.10/bin/pt-slave-delay =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-slave-delay 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-slave-delay 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-slave-delay 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-slave-delay 2014-08-10 15:15:27.000000000 +0100 @@ -4698,8 +4698,6 @@ Show version and exit. =item --[no]version-check @@ -209,10 +209,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-slave-restart +Index: percona-toolkit-2.2.10/bin/pt-slave-restart =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-slave-restart 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-slave-restart 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-slave-restart 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-slave-restart 2014-08-10 15:15:27.000000000 +0100 @@ -5764,8 +5764,6 @@ Show version and exit. =item --[no]version-check @@ -222,11 +222,11 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-table-checksum +Index: percona-toolkit-2.2.10/bin/pt-table-checksum =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-table-checksum 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-table-checksum 2014-07-10 21:40:36.000000000 +0100 -@@ -12391,8 +12391,6 @@ Show version and exit. +--- percona-toolkit-2.2.10.orig/bin/pt-table-checksum 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-table-checksum 2014-08-10 15:15:27.000000000 +0100 +@@ -12415,8 +12415,6 @@ Show version and exit. =item --[no]version-check @@ -235,10 +235,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-table-sync +Index: percona-toolkit-2.2.10/bin/pt-table-sync =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-table-sync 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-table-sync 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-table-sync 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-table-sync 2014-08-10 15:15:27.000000000 +0100 @@ -12500,8 +12500,6 @@ Show version and exit. =item --[no]version-check @@ -248,11 +248,11 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-upgrade +Index: percona-toolkit-2.2.10/bin/pt-upgrade =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-upgrade 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-upgrade 2014-07-10 21:40:36.000000000 +0100 -@@ -11017,8 +11017,6 @@ Show version and exit. +--- percona-toolkit-2.2.10.orig/bin/pt-upgrade 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-upgrade 2014-08-10 15:15:27.000000000 +0100 +@@ -11031,8 +11031,6 @@ Show version and exit. =item --[no]version-check @@ -261,10 +261,10 @@ Check for the latest version of Percona Toolkit, MySQL, and other programs. This is a standard "check for updates automatically" feature, with two -Index: percona-toolkit-2.2.9/bin/pt-variable-advisor +Index: percona-toolkit-2.2.10/bin/pt-variable-advisor =================================================================== ---- percona-toolkit-2.2.9.orig/bin/pt-variable-advisor 2014-07-08 15:36:40.000000000 +0100 -+++ percona-toolkit-2.2.9/bin/pt-variable-advisor 2014-07-10 21:40:36.000000000 +0100 +--- percona-toolkit-2.2.10.orig/bin/pt-variable-advisor 2014-08-06 20:57:30.000000000 +0100 ++++ percona-toolkit-2.2.10/bin/pt-variable-advisor 2014-08-10 15:15:27.000000000 +0100 @@ -5968,8 +5968,6 @@ Show version and exit. =item --[no]version-check -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
