diff options
author | Evan Prodromou <evan@controlyourself.ca> | 2009-07-16 00:26:51 -0400 |
---|---|---|
committer | Evan Prodromou <evan@controlyourself.ca> | 2009-07-16 00:26:51 -0400 |
commit | 83cbf246a871edc8da34a742af3b0ea37e100688 (patch) | |
tree | a0cc428155e8ca8e796a92da75ac76538383984d /classes | |
parent | da512ad8c2b4cba719204d8a8f42ecba9716702e (diff) |
use a soft limit so there's not a whole bunch of deletes on every write
Diffstat (limited to 'classes')
-rw-r--r-- | classes/Notice.php | 4 | ||||
-rw-r--r-- | classes/Notice_inbox.php | 1 |
2 files changed, 4 insertions, 1 deletions
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); |