diff --git a/Slash/DB/Static/MySQL/MySQL.pm b/Slash/DB/Static/MySQL/MySQL.pm index 1dd48e981..6f3af57f6 100644 --- a/Slash/DB/Static/MySQL/MySQL.pm +++ b/Slash/DB/Static/MySQL/MySQL.pm @@ -321,6 +321,25 @@ sub forgetUsersLogtokens { "DATE_ADD(expires, INTERVAL 1 MONTH) < NOW()"); } +######################################################## +# For daily_forget.pl +sub forgetUsersLastLookTime { + my($self) = @_; + my $constants = getCurrentStatic(); + my $reader = getObject('Slash::DB', { db_type => "reader" }); + my $min_lastlooktime = time - ($constants->{lastlookmemory} + 86400*7); + my $uids = $reader->sqlSelectColArrayref("uid", "users_param", + "name='lastlooktime' AND value < '$min_lastlooktime'"); + + my $splice_count = 2000; + while (@$uids) { + my @uid_chunk = splice @$uids, 0, $splice_count; + my $uids_in = join(",", @uid_chunk); + $self->sqlDelete("users_param", + "name IN ('lastlooktime', 'lastlookuid') AND uid IN ($uids_in)"); + } +} + ######################################################## # For daily_forget.pl sub forgetCommentIPs { diff --git a/themes/slashcode/tasks/daily_forget.pl b/themes/slashcode/tasks/daily_forget.pl index 1fffb2be2..7ad940dd0 100644 --- a/themes/slashcode/tasks/daily_forget.pl +++ b/themes/slashcode/tasks/daily_forget.pl @@ -19,6 +19,7 @@ my $forgotten2 = $slashdb->forgetSubmissionIPs; my $forgotten3 = $slashdb->forgetOpenProxyIPs; my $forgotten4 = $slashdb->forgetUsersLogtokens; + my $forgotten4 = $slashdb->forgetUsersLastLookTime; return "forgot approx $forgotten1 comment IPs, $forgotten2 submission IPs, $forgotten3 open proxy IPs, $forgotten4 logtokens"; };