From 45ae32ceb2fd6f0b4869a939321e1db94c8eb101 Mon Sep 17 00:00:00 2001 From: Daniel Nichter Date: Fri, 26 Oct 2012 17:06:21 -0600 Subject: [PATCH] Presume STATEMENT binlog format if < 5.1.5 and still check other slaves in case they're newer versions of MySQL. --- bin/pt-table-checksum | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/bin/pt-table-checksum b/bin/pt-table-checksum index 3a485004..bad2d08e 100755 --- a/bin/pt-table-checksum +++ b/bin/pt-table-checksum @@ -8554,15 +8554,21 @@ sub main { PTDEBUG && _d(scalar @$slaves, 'slaves found'); # https://bugs.launchpad.net/percona-toolkit/+bug/938068 - if ( $o->get('check-binlog-format') - && VersionParser->new($master_dbh) >= '5.1.5' ) { - my ($master_binlog) = $master_dbh->selectrow_array( - 'SELECT @@binlog_format'); + if ( $o->get('check-binlog-format') ) { + my $master_binlog = 'STATEMENT'; + if ( VersionParser->new($master_dbh) >= '5.1.5' ) { + ($master_binlog) = $master_dbh->selectrow_array( + 'SELECT @@binlog_format'); + } + my $err = ''; for my $slave_cxn (@$slaves) { - next unless VersionParser->new($slave_cxn->dbh) >= '5.1.5'; - my ($slave_binlog) = $slave_cxn->dbh->selectrow_array( - 'SELECT @@binlog_format'); + my $slave_binlog = 'STATEMENT'; + if ( VersionParser->new($slave_cxn->dbh) >= '5.1.5' ) { + ($slave_binlog) = $slave_cxn->dbh->selectrow_array( + 'SELECT @@binlog_format'); + } + if ( $master_binlog ne $slave_binlog ) { $err .= $master_cxn->name() . " has binlog_format " . $master_binlog . " but replica " . $slave_cxn->name()