Bug 361140: Upgrades from versions with enums fail UTF-8 conversion

Patch By Max Kanat-Alexander <mkanat@bugzilla.org> r=bkor, a=justdave


git-svn-id: svn://10.0.0.236/trunk@215458 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mkanat%bugzilla.org
2006-11-20 04:25:09 +00:00
parent e18a0f0428
commit 80e5fb0f5e

View File

@@ -576,6 +576,10 @@ EOT
my $info_sth = $self->prepare("SHOW FULL COLUMNS FROM $table");
$info_sth->execute();
while (my $column = $info_sth->fetchrow_hashref) {
# Our conversion code doesn't work on enum fields, but they
# all go away later in checksetup anyway.
next if $column->{Type} =~ /enum/i;
# If this particular column isn't stored in utf-8
if ($column->{Collation}
&& $column->{Collation} ne 'NULL'
@@ -617,8 +621,9 @@ EOT
$self->do("ALTER TABLE $table CHANGE COLUMN $name $name
$utf8");
}
$self->do("ALTER TABLE $table DEFAULT CHARACTER SET utf8");
}
$self->do("ALTER TABLE $table DEFAULT CHARACTER SET utf8");
} # foreach my $table (@tables)
my $db_name = Bugzilla->localconfig->{db_name};