]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 279910: Query crashed with Software Error: "Unknown column 'bugs.assignee_accessi...
authormkanat%kerio.com <>
Fri, 25 Feb 2005 11:19:45 +0000 (11:19 +0000)
committermkanat%kerio.com <>
Fri, 25 Feb 2005 11:19:45 +0000 (11:19 +0000)
Patch By Frederic Buclin <LpSolit@gmail.com> r=myk, a=myk

checksetup.pl
globals.pl

index c0759d562dfab95ecb107ea9d31a1ba200d59f62..8cc173b1fb5c3fd419174abed6ccc666d1e64b80 100755 (executable)
@@ -3197,14 +3197,12 @@ if (GetFieldDef('bugs_activity', 'oldvalue')) {
 # http://bugzilla.mozilla.org/show_bug.cgi?id=90933
 ChangeFieldType("profiles", "disabledtext", "mediumtext not null");
 
-# 2001-07-26 myk@mozilla.org bug39816: 
-# Add fields to the bugs table that record whether or not the reporter,
-# assignee, QA contact, and users on the cc: list can see bugs even when
+# 2001-07-26 myk@mozilla.org            bug 39816 (original)
+# 2002-02-06 bbaetz@student.usyd.edu.au bug 97471 (revision)
+# Add fields to the bugs table that record whether or not the reporter
+# and users on the cc: list can see bugs even when
 # they are not members of groups to which the bugs are restricted.
-# 2002-02-06 bbaetz@student.usyd.edu.au - assignee/qa can always see the bug
 AddField("bugs", "reporter_accessible", "tinyint not null default 1");
-#AddField("bugs", "assignee_accessible", "tinyint not null default 1");
-#AddField("bugs", "qacontact_accessible", "tinyint not null default 1");
 AddField("bugs", "cclist_accessible", "tinyint not null default 1");
 
 # 2001-08-21 myk@mozilla.org bug84338:
@@ -4092,7 +4090,20 @@ if (GetFieldDef("user_group_map", "isderived")) {
 
 AddField('flags', 'is_active', 'tinyint not null default 1');
 
-    
+# 2005-02-21 - LpSolit@gmail.com - Bug 279910
+# qacontact_accessible and assignee_accessible field names no longer exist
+# in the 'bugs' table. Their corresponding entries in the 'bugs_activity'
+# table should therefore be marked as obsolete, meaning that they cannot
+# be used anymore when querying the database - they are not deleted in
+# order to keep track of these fields in the activity table.
+if (!GetFieldDef('fielddefs', 'obsolete')) {
+    AddField('fielddefs', 'obsolete', 'tinyint not null default 0');
+    print "Marking qacontact_accessible and assignee_accessible as obsolete fields...\n";
+    $dbh->do("UPDATE fielddefs SET obsolete = 1
+              WHERE name = 'qacontact_accessible'
+                 OR name = 'assignee_accessible'");
+}
+
 
 # 2005-02-20 - LpSolit@gmail.com - Bug 277504
 # When migrating quips from the '$datadir/comments' file to the DB,
index eb8169e726c62ae7ad306061312be425776668e0..4f607ad224483331277ab0890798f2ff5de0a609 100644 (file)
@@ -614,13 +614,14 @@ sub GetSelectableProductHash {
 sub GetFieldDefs {
     my $extra = "";
     if (!UserInGroup(Param('timetrackinggroup'))) {
-        $extra = "WHERE name NOT IN ('estimated time', 'remaining_time', " .
+        $extra = "AND name NOT IN ('estimated_time', 'remaining_time', " .
                  "'work_time', 'percentage_complete')";
     }
 
     my @fields;
     PushGlobalSQLState();
-    SendSQL("SELECT name, description FROM fielddefs $extra ORDER BY sortkey");
+    SendSQL("SELECT name, description FROM fielddefs " .
+            "WHERE obsolete = 0 $extra ORDER BY sortkey");
     while (MoreSQLData()) {
         my ($name, $description) = FetchSQLData();
         push(@fields, { name => $name, description => $description });