http://www.mediawiki.org/wiki/Special:Code/MediaWiki/56271

Revision: 56271
Author:   aaron
Date:     2009-09-13 16:50:35 +0000 (Sun, 13 Sep 2009)

Log Message:
-----------
For wikis with $wgMiserMode off, update activeuser count daily rather than per 
page view. Those with $wgMiserMode on still use $wgSpecialPageCacheUpdates.

Modified Paths:
--------------
    trunk/phase3/includes/specials/SpecialStatistics.php

Modified: trunk/phase3/includes/specials/SpecialStatistics.php
===================================================================
--- trunk/phase3/includes/specials/SpecialStatistics.php        2009-09-13 
16:27:41 UTC (rev 56270)
+++ trunk/phase3/includes/specials/SpecialStatistics.php        2009-09-13 
16:50:35 UTC (rev 56271)
@@ -23,7 +23,7 @@
        }
        
        public function execute( $par ) {
-               global $wgOut, $wgRequest, $wgMessageCache;
+               global $wgOut, $wgRequest, $wgMessageCache, $wgMemc;
                global $wgDisableCounters, $wgMiserMode;
                $wgMessageCache->loadAllMessages();
                
@@ -48,8 +48,13 @@
                
                # Set active user count
                if( !$wgMiserMode ) {
-                       $dbw = wfGetDB( DB_MASTER );
-                       SiteStatsUpdate::cacheUpdate( $dbw );
+                       $key = wfMemcKey( 'sitestats', 'activeusers-updated' );
+                       // Re-calculate the count if the last tally is old...
+                       if( !$wgMemc->get($key) ) {
+                               $dbw = wfGetDB( DB_MASTER );
+                               SiteStatsUpdate::cacheUpdate( $dbw );
+                               $wgMemc->set( $key, '1', 24*3600 ); // don't 
update for 1 day
+                       }
                }
        
                # Do raw output



_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to