зеркало из https://github.com/mozilla/pjs.git
Bug 245101: Fixes non-fatal warnings about the "attachstatusdefs" table not existing during an upgrade from 2.14.x or older without going through 2.16.x in between.
r=joel, a=justdave
This commit is contained in:
Родитель
1c9cbe39c9
Коммит
a4097f6c1a
|
@ -3272,7 +3272,13 @@ if (GetFieldDef("products", "product")) {
|
||||||
AddField("versions", "product_id", "smallint not null");
|
AddField("versions", "product_id", "smallint not null");
|
||||||
AddField("milestones", "product_id", "smallint not null");
|
AddField("milestones", "product_id", "smallint not null");
|
||||||
AddField("bugs", "product_id", "smallint not null");
|
AddField("bugs", "product_id", "smallint not null");
|
||||||
AddField("attachstatusdefs", "product_id", "smallint not null");
|
# The attachstatusdefs table was added in version 2.15, but removed again
|
||||||
|
# in early 2.17. If it exists now, we still need to perform this change
|
||||||
|
# with product_id because the code further down which converts the
|
||||||
|
# attachment statuses to flags depends on it. But we need to avoid this
|
||||||
|
# if the user is upgrading from 2.14 or earlier (because it won't be
|
||||||
|
# there to convert).
|
||||||
|
AddField("attachstatusdefs", "product_id", "smallint not null") if TableExists("attachstatusdefs");
|
||||||
my %products;
|
my %products;
|
||||||
my $sth = $dbh->prepare("SELECT id, product FROM products");
|
my $sth = $dbh->prepare("SELECT id, product FROM products");
|
||||||
$sth->execute;
|
$sth->execute;
|
||||||
|
@ -3292,7 +3298,7 @@ if (GetFieldDef("products", "product")) {
|
||||||
$dbh->do("UPDATE bugs SET product_id = $product_id, delta_ts=delta_ts " .
|
$dbh->do("UPDATE bugs SET product_id = $product_id, delta_ts=delta_ts " .
|
||||||
"WHERE product = " . $dbh->quote($product));
|
"WHERE product = " . $dbh->quote($product));
|
||||||
$dbh->do("UPDATE attachstatusdefs SET product_id = $product_id " .
|
$dbh->do("UPDATE attachstatusdefs SET product_id = $product_id " .
|
||||||
"WHERE product = " . $dbh->quote($product));
|
"WHERE product = " . $dbh->quote($product)) if TableExists("attachstatusdefs");
|
||||||
}
|
}
|
||||||
|
|
||||||
print "Updating the database to use component IDs.\n";
|
print "Updating the database to use component IDs.\n";
|
||||||
|
@ -3330,7 +3336,7 @@ if (GetFieldDef("products", "product")) {
|
||||||
DropField("milestones", "product");
|
DropField("milestones", "product");
|
||||||
DropField("bugs", "product");
|
DropField("bugs", "product");
|
||||||
DropField("bugs", "component");
|
DropField("bugs", "component");
|
||||||
DropField("attachstatusdefs", "product");
|
DropField("attachstatusdefs", "product") if TableExists("attachstatusdefs");
|
||||||
RenameField("products", "product", "name");
|
RenameField("products", "product", "name");
|
||||||
ChangeFieldType("products", "name", "varchar(64) not null");
|
ChangeFieldType("products", "name", "varchar(64) not null");
|
||||||
RenameField("components", "value", "name");
|
RenameField("components", "value", "name");
|
||||||
|
|
Загрузка…
Ссылка в новой задаче