From dc8b1948ddb75ac9a620f1146ce2b19627de4222 Mon Sep 17 00:00:00 2001 From: Michael Foster Date: Wed, 28 Aug 2013 17:08:56 +1000 Subject: [PATCH] Performance: Only purge old antispam hashes once per request (at most) --- inc/anti-bot.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/inc/anti-bot.php b/inc/anti-bot.php index fde97096..41e0a1d6 100644 --- a/inc/anti-bot.php +++ b/inc/anti-bot.php @@ -178,11 +178,14 @@ class AntiBot { } function _create_antibot($board, $thread) { - global $config; + global $config, $purged_old_antispam; $antibot = new AntiBot(array($board, $thread)); - query('DELETE FROM ``antispam`` WHERE `expires` < UNIX_TIMESTAMP()') or error(db_error()); + if (!isset($purged_old_antispam)) { + $purged_old_antispam = true; + query('DELETE FROM ``antispam`` WHERE `expires` < UNIX_TIMESTAMP()') or error(db_error()); + } if ($thread) $query = prepare('UPDATE ``antispam`` SET `expires` = UNIX_TIMESTAMP() + :expires WHERE `board` = :board AND `thread` = :thread AND `expires` IS NULL');