From: Max Kanat-Alexander Date: Tue, 6 Jul 2010 03:48:42 +0000 (-0700) Subject: Bug 577053: When upgrading from a version earlier than 4.0, X-Git-Tag: bugzilla-4.1~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=acaadbdfefd9cf5c42a69356f7da01ff6c12faac;p=thirdparty%2Fbugzilla.git Bug 577053: When upgrading from a version earlier than 4.0, change the logic on how we check to see if we need to populate the status_workflow table for an upgrading installation, because it was broken for upgrades from 2.18 and earlier. --- diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm index ce567528b2..ada500c586 100644 --- a/Bugzilla/Install/DB.pm +++ b/Bugzilla/Install/DB.pm @@ -2928,8 +2928,6 @@ sub _initialize_workflow_for_upgrade { my $old_params = shift; my $dbh = Bugzilla->dbh; - my $had_is_open = $dbh->bz_column_info('bug_status', 'is_open'); - $dbh->bz_add_column('bug_status', 'is_open', {TYPE => 'BOOLEAN', NOTNULL => 1, DEFAULT => 'TRUE'}); @@ -2963,8 +2961,10 @@ sub _initialize_workflow_for_upgrade { } # We only populate the workflow here if we're upgrading from a version - # before 3.2. - return if $had_is_open; + # before 4.0 (which is where init_workflow was added). + my $new_exists = $dbh->selectrow_array( + 'SELECT 1 FROM bug_status WHERE value = ?', undef, 'NEW'); + return if !$new_exists; # Populate the status_workflow table. We do nothing if the table already # has entries. If all bug status transitions have been deleted, the