From: Alexandre Emsenhuber Date: Tue, 8 Mar 2011 18:01:17 +0000 (+0000) Subject: * Update class name: FakeMemCachedClient -> EmptyBagOStuff X-Git-Tag: 1.31.0-rc.0~31556 X-Git-Url: http://git.cyclocoop.org/%22.htmlspecialchars%28%24url_syndic%29.%22?a=commitdiff_plain;h=80077a5470c4d6fc11a36a8a2da4b68e396a5655;p=lhc%2Fweb%2Fwiklou.git * Update class name: FakeMemCachedClient -> EmptyBagOStuff * Don't show "Division by zero" warnings when there's no statistics for cache hits --- diff --git a/maintenance/stats.php b/maintenance/stats.php index 2cbbcf9199..1fb46fa91f 100644 --- a/maintenance/stats.php +++ b/maintenance/stats.php @@ -37,8 +37,8 @@ class CacheStats extends Maintenance { global $wgMemc; // Can't do stats if - if ( get_class( $wgMemc ) == 'FakeMemCachedClient' ) { - $this->error( "You are running FakeMemCachedClient, I can not provide any statistics.", true ); + if ( get_class( $wgMemc ) == 'EmptyBagOStuff' ) { + $this->error( "You are running EmptyBagOStuff, I can not provide any statistics.", true ); } $session = intval( $wgMemc->get( wfMemcKey( 'stats', 'request_with_session' ) ) ); $noSession = intval( $wgMemc->get( wfMemcKey( 'stats', 'request_without_session' ) ) ); @@ -59,30 +59,42 @@ class CacheStats extends Maintenance { $absent = intval( $wgMemc->get( wfMemcKey( 'stats', 'pcache_miss_absent' ) ) ); $stub = intval( $wgMemc->get( wfMemcKey( 'stats', 'pcache_miss_stub' ) ) ); $total = $hits + $invalid + $expired + $absent + $stub; - $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); - $this->output( sprintf( "invalid: %-10d %6.2f%%\n", $invalid, $invalid / $total * 100 ) ); - $this->output( sprintf( "expired: %-10d %6.2f%%\n", $expired, $expired / $total * 100 ) ); - $this->output( sprintf( "absent: %-10d %6.2f%%\n", $absent, $absent / $total * 100 ) ); - $this->output( sprintf( "stub threshold: %-10d %6.2f%%\n", $stub, $stub / $total * 100 ) ); - $this->output( sprintf( "total: %-10d %6.2f%%\n", $total, 100 ) ); + if ( $total ) { + $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); + $this->output( sprintf( "invalid: %-10d %6.2f%%\n", $invalid, $invalid / $total * 100 ) ); + $this->output( sprintf( "expired: %-10d %6.2f%%\n", $expired, $expired / $total * 100 ) ); + $this->output( sprintf( "absent: %-10d %6.2f%%\n", $absent, $absent / $total * 100 ) ); + $this->output( sprintf( "stub threshold: %-10d %6.2f%%\n", $stub, $stub / $total * 100 ) ); + $this->output( sprintf( "total: %-10d %6.2f%%\n", $total, 100 ) ); + } else { + $this->output( "no statistics available\n" ); + } + $this->output( "\nImage cache\n" ); $hits = intval( $wgMemc->get( wfMemcKey( 'stats', 'image_cache_hit' ) ) ); $misses = intval( $wgMemc->get( wfMemcKey( 'stats', 'image_cache_miss' ) ) ); $updates = intval( $wgMemc->get( wfMemcKey( 'stats', 'image_cache_update' ) ) ); $total = $hits + $misses; - $this->output( "\nImage cache\n" ); - $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); - $this->output( sprintf( "misses: %-10d %6.2f%%\n", $misses, $misses / $total * 100 ) ); - $this->output( sprintf( "updates: %-10d\n", $updates ) ); + if ( $total ) { + $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); + $this->output( sprintf( "misses: %-10d %6.2f%%\n", $misses, $misses / $total * 100 ) ); + $this->output( sprintf( "updates: %-10d\n", $updates ) ); + } else { + $this->output( "no statistics available\n" ); + } + $this->output( "\nDiff cache\n" ); $hits = intval( $wgMemc->get( wfMemcKey( 'stats', 'diff_cache_hit' ) ) ); $misses = intval( $wgMemc->get( wfMemcKey( 'stats', 'diff_cache_miss' ) ) ); $uncacheable = intval( $wgMemc->get( wfMemcKey( 'stats', 'diff_uncacheable' ) ) ); $total = $hits + $misses + $uncacheable; - $this->output( "\nDiff cache\n" ); - $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); - $this->output( sprintf( "misses: %-10d %6.2f%%\n", $misses, $misses / $total * 100 ) ); - $this->output( sprintf( "uncacheable: %-10d %6.2f%%\n", $uncacheable, $uncacheable / $total * 100 ) ); + if ( $total ) { + $this->output( sprintf( "hits: %-10d %6.2f%%\n", $hits, $hits / $total * 100 ) ); + $this->output( sprintf( "misses: %-10d %6.2f%%\n", $misses, $misses / $total * 100 ) ); + $this->output( sprintf( "uncacheable: %-10d %6.2f%%\n", $uncacheable, $uncacheable / $total * 100 ) ); + } else { + $this->output( "no statistics available\n" ); + } } }