From 83cbf246a871edc8da34a742af3b0ea37e100688 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Thu, 16 Jul 2009 00:26:51 -0400 Subject: use a soft limit so there's not a whole bunch of deletes on every write --- classes/Notice.php | 4 +++- classes/Notice_inbox.php | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/classes/Notice.php b/classes/Notice.php index e16d84352..0359c310d 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -875,7 +875,9 @@ class Notice extends Memcached_DataObject } $qry .= '('.$id.', '.$this->id.', '.$source.', "'.$this->created.'") '; $cnt++; - Notice_inbox::gc($id); + if (rand() % NOTICE_INBOX_SOFT_LIMIT == 0) { + Notice_inbox::gc($id); + } if ($cnt >= MAX_BOXCARS) { $inbox = new Notice_inbox(); $inbox->query($qry); diff --git a/classes/Notice_inbox.php b/classes/Notice_inbox.php index a1aa9b054..2af34b1a4 100644 --- a/classes/Notice_inbox.php +++ b/classes/Notice_inbox.php @@ -27,6 +27,7 @@ define('INBOX_CACHE_WINDOW', 101); define('NOTICE_INBOX_GC_BOXCAR', 128); define('NOTICE_INBOX_GC_MAX', 12800); define('NOTICE_INBOX_LIMIT', 1000); +define('NOTICE_INBOX_SOFT_LIMIT', 1000); define('NOTICE_INBOX_SOURCE_SUB', 1); define('NOTICE_INBOX_SOURCE_GROUP', 2); -- cgit v1.2.3-54-g00ecf