]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 305941: Remove profiles.refreshed_when and groups.last_changed - Patch by Frédéri...
authorlpsolit%gmail.com <>
Sat, 5 Aug 2006 05:24:47 +0000 (05:24 +0000)
committerlpsolit%gmail.com <>
Sat, 5 Aug 2006 05:24:47 +0000 (05:24 +0000)
Bugzilla/DB/Schema.pm
Bugzilla/Group.pm
Bugzilla/Install/DB.pm
Bugzilla/User.pm
checksetup.pl
editgroups.cgi
editproducts.cgi
editusers.cgi
sanitycheck.cgi

index 088a70a7856be1517d05ca63eac7e93d227bf46f..5e5b23bab81124300bf2cd1cb1830cd9f114563b 100644 (file)
@@ -618,7 +618,6 @@ use constant ABSTRACT_SCHEMA => {
                                DEFAULT => 'FALSE'},
             mybugslink     => {TYPE => 'BOOLEAN', NOTNULL => 1,
                                DEFAULT => 'TRUE'},
-            refreshed_when => {TYPE => 'DATETIME', NOTNULL => 1},
             extern_id      => {TYPE => 'varchar(64)'},
         ],
         INDEXES => [
@@ -738,7 +737,6 @@ use constant ABSTRACT_SCHEMA => {
             name         => {TYPE => 'varchar(255)', NOTNULL => 1},
             description  => {TYPE => 'TEXT', NOTNULL => 1},
             isbuggroup   => {TYPE => 'BOOLEAN', NOTNULL => 1},
-            last_changed => {TYPE => 'DATETIME', NOTNULL => 1},
             userregexp   => {TYPE => 'TINYTEXT', NOTNULL => 1,
                              DEFAULT => "''"},
             isactive     => {TYPE => 'BOOLEAN', NOTNULL => 1,
index 45caf65cceb3feb94cbd806d6598dd7d17c2b662..c273e7f20dc812368cc414960ad0aaa611bd668e 100644 (file)
@@ -37,7 +37,6 @@ use constant DB_COLUMNS => qw(
     groups.name
     groups.description
     groups.isbuggroup
-    groups.last_changed
     groups.userregexp
     groups.isactive
 );
@@ -99,7 +98,6 @@ sub id           { return $_[0]->{'id'};           }
 sub name         { return $_[0]->{'name'};         }
 sub description  { return $_[0]->{'description'};  }
 sub is_bug_group { return $_[0]->{'isbuggroup'};   }
-sub last_changed { return $_[0]->{'last_changed'}; }
 sub user_regexp  { return $_[0]->{'userregexp'};   }
 sub is_active    { return $_[0]->{'isactive'};     }
 
@@ -157,7 +155,6 @@ Bugzilla::Group - Bugzilla group class.
     my $id           = $group->id;
     my $name         = $group->name;
     my $description  = $group->description;
-    my $last_changed = $group->last_changed;
     my $user_reg_exp = $group->user_reg_exp;
     my $is_active    = $group->is_active;
 
index 9b29bbc76079fa45e3e82c884f5f827c0e8edd64..5fe84a4f457779c0e73ae3228647bf0e67dbab03 100644 (file)
@@ -459,7 +459,11 @@ sub update_table_definitions {
                           {TYPE => 'INT2', NOTNULL => 1, DEFAULT => 0});
     $dbh->bz_alter_column('products', 'votestoconfirm',
                           {TYPE => 'INT2', NOTNULL => 1, DEFAULT => 0});
-    
+
+    # 2006-08-04 LpSolit@gmail.com - Bug 305941
+    $dbh->bz_drop_column('profiles', 'refreshed_when');
+    $dbh->bz_drop_column('groups', 'last_changed');
+
     ################################################################
     # New --TABLE-- changes should go *** A B O V E *** this point #
     ################################################################
@@ -1315,9 +1319,6 @@ sub _convert_groups_system_from_groupset {
 
     # The groups system needs to be converted if groupset exists
     if ($dbh->bz_column_info("profiles", "groupset")) {
-        $dbh->bz_add_column('groups', 'last_changed',
-            {TYPE => 'DATETIME', NOTNULL => 1}, '0000-00-00 00:00:00');
-
         # Some mysql versions will promote any unique key to primary key
         # so all unique keys are removed first and then added back in
         $dbh->bz_drop_index('groups', 'groups_bit_idx');
@@ -1331,8 +1332,6 @@ sub _convert_groups_system_from_groupset {
 
         $dbh->bz_add_index('groups', 'groups_name_idx',
                            {TYPE => 'UNIQUE', FIELDS => [qw(name)]});
-        $dbh->bz_add_column('profiles', 'refreshed_when',
-            {TYPE => 'DATETIME', NOTNULL => 1}, '0000-00-00 00:00:00');
 
         # Convert all existing groupset records to map entries before removing
         # groupset fields or removing "bit" from groups.
@@ -1979,9 +1978,6 @@ sub _add_user_group_map_grant_type {
         $dbh->bz_add_index('user_group_map', 'user_group_map_user_id_idx',
             {TYPE => 'UNIQUE',
              FIELDS => [qw(user_id group_id grant_type isbless)]});
-
-        # Make sure groups get rederived
-        $dbh->do("UPDATE groups SET last_changed = NOW() WHERE name = 'admin'");
     }
 }
 
@@ -2065,12 +2061,6 @@ sub _rename_votes_count_and_force_group_refresh {
     # Renaming the 'count' column in the votes table because Sybase doesn't
     # like it
     if ($dbh->bz_column_info('votes', 'count')) {
-        # 2003-04-24 - myk@mozilla.org/bbaetz@acm.org, bug 201018
-        # Force all cached groups to be updated at login, due to security bug
-        # Do this here, inside the next schema change block, so that it doesn't
-        # get invalidated on every checksetup run.
-        $dbh->do("UPDATE profiles SET refreshed_when='1900-01-01 00:00:00'");
-
         $dbh->bz_rename_column('votes', 'count', 'vote_count');
     }
 }
index 924cb051138e9901d10b1eb9426e1e5fff59a913..c83732ecc201fde45ce58b40b6b371b49a846c10 100644 (file)
@@ -707,9 +707,6 @@ sub derive_regexp_groups {
 
     my $sth;
 
-    # avoid races, we are only up to date as of the BEGINNING of this process
-    my $time = $dbh->selectrow_array("SELECT NOW()");
-
     # add derived records for any matching regexps
 
     $sth = $dbh->prepare("SELECT id, userregexp, user_group_map.group_id
@@ -735,9 +732,6 @@ sub derive_regexp_groups {
             $group_delete->execute($id, $group, GRANT_REGEXP) if $present;
         }
     }
-
-    $dbh->do(q{UPDATE profiles SET refreshed_when = ? WHERE userid = ?},
-             undef, ($time, $id));
 }
 
 sub product_responsibilities {
@@ -1363,8 +1357,8 @@ sub insert_new_user {
     # Insert the new user record into the database.
     $dbh->do("INSERT INTO profiles 
                           (login_name, realname, cryptpassword, disabledtext,
-                           refreshed_when, disable_mail) 
-                   VALUES (?, ?, ?, ?, '1901-01-01 00:00:00', ?)",
+                           disable_mail) 
+                   VALUES (?, ?, ?, ?, ?)",
              undef, 
              ($username, $realname, $cryptpassword, $disabledtext, 
               $disable_mail));
index 4dad00ecd0cb66acf2140fe6c7b4058077691a7f..c0b206bedc438235de315e17f0ad9084d84d61c9 100755 (executable)
@@ -446,9 +446,8 @@ sub AddGroup {
     
     print "Adding group $name ...\n";
     my $sth = $dbh->prepare('INSERT INTO groups
-                          (name, description, userregexp, isbuggroup,
-                           last_changed)
-                          VALUES (?, ?, ?, ?, NOW())');
+                          (name, description, userregexp, isbuggroup)
+                          VALUES (?, ?, ?, ?)');
     $sth->execute($name, $desc, $userregexp, 0);
 
     my $last = $dbh->bz_last_key('groups', 'id');
index a7a608694f64aa878c38bdc1747e1a35d158abd6..a26bd0c776b4fba3ad58054e5e246d9f41c72a42 100755 (executable)
@@ -289,9 +289,8 @@ if ($action eq 'new') {
 
     # Add the new group
     $dbh->do('INSERT INTO groups
-              (name, description, isbuggroup,
-               userregexp, isactive, last_changed)
-              VALUES (?, ?, 1, ?, ?, NOW())',
+              (name, description, isbuggroup, userregexp, isactive)
+              VALUES (?, ?, 1, ?, ?)',
               undef, ($name, $desc, $regexp, $isactive));
 
     my $gid = $dbh->bz_last_key('groups', 'id');
@@ -566,9 +565,6 @@ if (($action eq 'remove_all_regexp') || ($action eq 'remove_all')) {
             push(@users, $user);
         }
     }
-
-    $dbh->do('UPDATE groups SET last_changed = NOW()
-              WHERE id = ?', undef, $gid);
     $dbh->bz_unlock_tables();
 
     $vars->{'users'}      = \@users;
@@ -711,12 +707,6 @@ sub doGroupChanges {
 
         }
     }
-
-    if ($chgs) {
-        # mark the changes
-        $dbh->do('UPDATE groups SET last_changed = NOW()
-                  WHERE id = ?', undef, $gid);
-    }
     $dbh->bz_unlock_tables();
     return $gid, $chgs, $name, $regexp;
 }
index 2d2f81009a3e9d1c6fb5b99a860ad6c78e602298..432e2a9c634d234189207f027ba5c3531248f713 100755 (executable)
@@ -240,9 +240,8 @@ if ($action eq 'new') {
         my $group_description = "Access to bugs in the " .
                                 $product->name . " product";
 
-        $dbh->do('INSERT INTO groups
-                  (name, description, isbuggroup, last_changed)
-                  VALUES (?, ?, ?, NOW())',
+        $dbh->do('INSERT INTO groups (name, description, isbuggroup)
+                  VALUES (?, ?, ?)',
                   undef, ($productgroup, $group_description, 1));
 
         my $gid = $dbh->bz_last_key('groups', 'id');
index 4f52117654ce58b6ffa52cadc3f3b0ab2ea91293..e9e40eb4ccb82f5e508c0df1315556f5859451e0 100755 (executable)
@@ -410,8 +410,6 @@ if ($action eq 'search') {
                  ($otherUserID, $userid,
                   get_field_id('bug_group'),
                   join(', ', @groupsRemovedFrom), join(', ', @groupsAddedTo)));
-        $dbh->do('UPDATE profiles SET refreshed_when=? WHERE userid = ?',
-                 undef, ('1900-01-01 00:00:00', $otherUserID));
     }
     # XXX: should create profiles_activity entries for blesser changes.
 
index 85b6f5fa2d12932071d3f4c67ae1d1e67dae599b..0a756c3fb154eefacea238cbd94372d1fb9e7a4b 100755 (executable)
@@ -821,28 +821,6 @@ BugCheck("bugs INNER JOIN products ON bugs.product_id = products.id " .
          "WHERE everconfirmed = 0 AND votestoconfirm <= votes",
          "Bugs that have enough votes to be confirmed but haven't been");
 
-###########################################################################
-# Date checks
-###########################################################################
-
-sub DateCheck {
-    my $table = shift @_;
-    my $field = shift @_;
-    my $dbh = Bugzilla->dbh;
-
-    Status("Checking dates in $table.$field");
-    my $c = $dbh->selectrow_array(qq{SELECT COUNT($field)
-                                       FROM $table
-                                      WHERE $field > NOW()});
-    
-    if ($c) {
-        Alert("Found $c dates in future");
-    }
-}
-    
-DateCheck("groups", "last_changed");
-DateCheck("profiles", "refreshed_when");
-
 ###########################################################################
 # Control Values
 ###########################################################################