summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorterry%mozilla.org <>2000-01-23 06:43:29 +0100
committerterry%mozilla.org <>2000-01-23 06:43:29 +0100
commit6c604de4e442ea6fb716e6ca322a49773e795a74 (patch)
tree364422f2c6ac3f21fcaae83099ebb94d4da01ca4
parentd9c667d9165679a7cbaaf38345158eac955c1f5d (diff)
downloadbugzilla-6c604de4e442ea6fb716e6ca322a49773e795a74.tar.gz
bugzilla-6c604de4e442ea6fb716e6ca322a49773e795a74.tar.xz
AACK! checksetup.pl was stomping all over the new fielddefs table if
it got run more than once. This checkin fixes that, and also changes the DumpBugActivity() routine to give me enough information to hopefully repair the damaged mozilla.org database...
-rw-r--r--CGI.pl8
-rwxr-xr-xchecksetup.pl13
2 files changed, 16 insertions, 5 deletions
diff --git a/CGI.pl b/CGI.pl
index 4ad0064f3..8770da748 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -778,12 +778,14 @@ sub DumpBugActivity {
$datepart = "and bugs_activity.bug_when >= $starttime";
}
my $query = "
- SELECT fielddefs.name, bugs_activity.bug_when,
+ SELECT IFNULL(fielddefs.name, bugs_activity.fieldid),
+ bugs_activity.bug_when,
bugs_activity.oldvalue, bugs_activity.newvalue,
profiles.login_name
- FROM bugs_activity,profiles,fielddefs
+ FROM bugs_activity LEFT JOIN fielddefs ON
+ bugs_activity.fieldid = fielddefs.fieldid,
+ profiles
WHERE bugs_activity.bug_id = $id $datepart
- AND fielddefs.fieldid = bugs_activity.fieldid
AND profiles.userid = bugs_activity.who
ORDER BY bugs_activity.bug_when";
diff --git a/checksetup.pl b/checksetup.pl
index 02e629805..6adbc42f4 100755
--- a/checksetup.pl
+++ b/checksetup.pl
@@ -851,9 +851,17 @@ sub AddFDef ($$$) {
$name = $dbh->quote($name);
$description = $dbh->quote($description);
+ my $sth = $dbh->prepare("SELECT fieldid FROM fielddefs " .
+ "WHERE name = $name");
+ $sth->execute();
+ my ($fieldid) = ($sth->fetchrow_array());
+ if (!$fieldid) {
+ $fieldid = 'NULL';
+ }
+
$dbh->do("REPLACE INTO fielddefs " .
- "(name, description, mailhead, sortkey) VALUES " .
- "($name, $description, $mailhead, $headernum)");
+ "(fieldid, name, description, mailhead, sortkey) VALUES " .
+ "($fieldid, $name, $description, $mailhead, $headernum)");
$headernum++;
}
@@ -876,6 +884,7 @@ AddFDef("cc", "CC", 0);
AddFDef("dependson", "BugsThisDependsOn", 0);
AddFDef("blocked", "OtherBugsDependingOnThis", 0);
AddFDef("target_milestone", "Target Milestone", 0);
+AddFDef("stupidtest", "Stupidtest", 0);