Fixed a bug in mysqlhotcopy, which made special table names

to cause program to abort. Such table name could have been
one with a semicolon (:) in the middle.
parent 94cce644
...@@ -453,13 +453,13 @@ if ( $opt{dryrun} ) { ...@@ -453,13 +453,13 @@ if ( $opt{dryrun} ) {
} }
else { else {
my $start = time; my $start = time;
$dbh->do("LOCK TABLES $hc_locks"); $dbh->do('LOCK TABLES $hc_locks');
printf "Locked $num_tables tables in %d seconds.\n", time-$start unless $opt{quiet}; printf "Locked $num_tables tables in %d seconds.\n", time-$start unless $opt{quiet};
$hc_started = time; # count from time lock is granted $hc_started = time; # count from time lock is granted
# flush tables to make on-disk copy uptodate # flush tables to make on-disk copy uptodate
$start = time; $start = time;
$dbh->do("FLUSH TABLES /*!32323 $hc_tables */"); $dbh->do('FLUSH TABLES /*!32323 $hc_tables */');
printf "Flushed tables ($hc_tables) in %d seconds.\n", time-$start unless $opt{quiet}; printf "Flushed tables ($hc_tables) in %d seconds.\n", time-$start unless $opt{quiet};
$dbh->do( "FLUSH LOGS" ) if ( $opt{flushlog} ); $dbh->do( "FLUSH LOGS" ) if ( $opt{flushlog} );
$dbh->do( "RESET MASTER" ) if ( $opt{resetmaster} ); $dbh->do( "RESET MASTER" ) if ( $opt{resetmaster} );
...@@ -467,7 +467,7 @@ else { ...@@ -467,7 +467,7 @@ else {
if ( $opt{record_log_pos} ) { if ( $opt{record_log_pos} ) {
record_log_pos( $dbh, $opt{record_log_pos} ); record_log_pos( $dbh, $opt{record_log_pos} );
$dbh->do("FLUSH TABLES /*!32323 $hc_tables */"); $dbh->do('FLUSH TABLES /*!32323 $hc_tables */');
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment