From: Date: June 7 2005 4:17am Subject: bk commit into 4.1 tree (elliot:1.2317) BUG#7967 List-Archive: http://lists.mysql.com/internals/25667 X-Bug: 7967 Message-Id: <20050607021722.3C7D017D013@agony.raraavisresearch.com> Below is the list of changes that have just been committed into a local 4.1 repository of emurphy. When emurphy does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet 1.2317 05/06/06 22:17:16 elliot@stripped +2 -0 BUG#7967 Fix mysqlhotcopy --record-log-position scripts/mysqlhotcopy.sh 1.50 05/06/06 22:17:13 elliot@stripped +17 -3 BUG#7967 Use fetchrow_hashref() when parsing SHOW SLAVE STATUS so that --record-log-pos option will work with all versions from 3.23 forward and will not break again in the future if additional columns are added. BitKeeper/etc/ignore 1.228 05/06/06 22:17:13 elliot@stripped +1 -0 Added scripts/mysqlhotcopy.sh.rej to the ignore list # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: elliot # Host: agony.local # Root: /Users/emurphy/src/work/mysql-4.1 --- 1.49/scripts/mysqlhotcopy.sh 2005-02-18 15:36:14 -05:00 +++ 1.50/scripts/mysqlhotcopy.sh 2005-06-06 22:17:13 -04:00 @@ -746,9 +746,15 @@ my ($file,$position) = get_row( $dbh, "show master status" ); die "master status is undefined" if !defined $file || !defined $position; - my ($master_host, undef, undef, undef, $log_file, $log_pos ) - = get_row( $dbh, "show slave status" ); - + my $row_hash = get_row_hash( $dbh, "show slave status" ); + my ($master_host, $log_file, $log_pos ); + if ( $dbh->{mysql_serverinfo} =~ /^3\.23/ ) { + ($master_host, $log_file, $log_pos ) + = @{$row_hash}{ qw / Master_Host Log_File Pos / }; + } else { + ($master_host, $log_file, $log_pos ) + = @{$row_hash}{ qw / Master_Host Master_Log_File Read_Master_Log_Pos / }; + } my $hostname = hostname(); $dbh->do( qq{ replace into $table_name @@ -771,6 +777,14 @@ my $sth = $dbh->prepare($sql); $sth->execute; return $sth->fetchrow_array(); +} + +sub get_row_hash { + my ( $dbh, $sql ) = @_; + + my $sth = $dbh->prepare($sql); + $sth->execute; + return $sth->fetchrow_hashref(); } sub scan_raid_dir { --- 1.227/BitKeeper/etc/ignore 2005-03-07 09:22:06 -05:00 +++ 1.228/BitKeeper/etc/ignore 2005-06-06 22:17:13 -04:00 @@ -1052,3 +1052,4 @@ vio/test-sslclient vio/test-sslserver vio/viotest-ssl +scripts/mysqlhotcopy.sh.rej