Fix for 1047335: SchemaIterator fails when it encounters a crashed table

This commit is contained in:
Brian Fraser
2012-10-30 18:35:49 -03:00
parent d616a7e5e6
commit 35f5f8d1e4
18 changed files with 232 additions and 68 deletions

View File

@@ -2499,13 +2499,11 @@ sub get_create_table {
PTDEBUG && _d($show_sql);
my $href;
eval { $href = $dbh->selectrow_hashref($show_sql); };
if ( $EVAL_ERROR ) {
PTDEBUG && _d($EVAL_ERROR);
if ( my $e = $EVAL_ERROR ) {
PTDEBUG && _d($old_sql_mode);
$dbh->do($old_sql_mode);
return;
die $e;
}
PTDEBUG && _d($old_sql_mode);
@@ -4807,7 +4805,9 @@ sub is_cluster_node {
PTDEBUG && _d($sql);
my $row = $self->{dbh}->selectrow_arrayref($sql);
PTDEBUG && _d(defined $row ? @$row : 'undef');
$self->{is_cluster_node} = $row && $row->[0] ? 1 : 0;
$self->{is_cluster_node} = $row && $row->[1]
? ($row->[1] eq 'ON' || $row->[1] eq '1')
: 0;
return $self->{is_cluster_node};
}