Fix a bug in how groups using IP filters cache the user Visitor. Also, significant speedups in group lookups. Fixes bug #11552.

This commit is contained in:
Colin Kuskie 2010-05-16 22:08:05 -07:00
parent 0a05907c39
commit d2b6a7fff1
5 changed files with 633 additions and 56 deletions

View file

@ -16,6 +16,7 @@
- fixed #11566: Group API: group membership cannot be checked without consideration of expiration dates.
- fixed #11567: EMS: Build badge page, ticket tab, pagination
- added: a new inbox setting which supresses friend rejection notices
- fixed #11552: Visitors (and others) can bypass group-by-IP restrictions
7.9.4
- We're shipping underscore.js now for its suite of extremely handy utility

View file

@ -35,6 +35,7 @@ my $session = start(); # this line required
modifySortItems( $session );
fixRequestForApprovalScratch($session);
addRejectNoticeSetting($session);
updateGroupGroupingsTable($session);
finish($session); # this line required
@ -56,6 +57,16 @@ sub addRejectNoticeSetting {
print "DONE!\n" unless $quiet;
}
#----------------------------------------------------------------------------
# Add keys and indicies to groupGroupings to help speed up group queries
sub updateGroupGroupingsTable {
my $session = shift;
print "\tAdding primary key and indicies to groupGroupings table... " unless $quiet;
$session->db->write("alter table groupGroupings add primary key (groupId,inGroup)");
$session->db->write("alter table groupGroupings add index inGroup (inGroup)");
print "DONE!\n" unless $quiet;
}
#----------------------------------------------------------------------------
# Describe what our function does
sub fixRequestForApprovalScratch {