Merge "Don't hard-code Preferences page name"
[lhc/web/wiklou.git] / includes / libs / rdbms / TransactionProfiler.php
index aa38206..af431a6 100644 (file)
@@ -19,7 +19,6 @@
  *
  * @file
  * @ingroup Profiler
- * @author Aaron Schulz
  */
 
 namespace Wikimedia\Rdbms;
@@ -100,7 +99,7 @@ class TransactionProfiler implements LoggerAwareInterface {
         * With conflicting expectations, the most narrow ones will be used
         *
         * @param string $event (writes,queries,conns,mConns)
-        * @param integer $value Maximum count of the event
+        * @param int $value Maximum count of the event
         * @param string $fname Caller
         * @since 1.25
         */
@@ -119,7 +118,7 @@ class TransactionProfiler implements LoggerAwareInterface {
         * With conflicting expectations, the most narrow ones will be used
         *
         * @param array $expects Map of (event => limit)
-        * @param $fname
+        * @param string $fname
         * @since 1.26
         */
        public function setExpectations( array $expects, $fname ) {
@@ -200,7 +199,7 @@ class TransactionProfiler implements LoggerAwareInterface {
         * @param string $query Function name or generalized SQL
         * @param float $sTime Starting UNIX wall time
         * @param bool $isWrite Whether this is a write query
-        * @param integer $n Number of affected rows
+        * @param int $n Number of affected rows
         */
        public function recordQueryCompletion( $query, $sTime, $isWrite = false, $n = 0 ) {
                $eTime = microtime( true );
@@ -267,7 +266,7 @@ class TransactionProfiler implements LoggerAwareInterface {
         * @param string $db DB name
         * @param string $id ID string of transaction
         * @param float $writeTime Time spent in write queries
-        * @param integer $affected Number of rows affected by writes
+        * @param int $affected Number of rows affected by writes
         */
        public function transactionWritingOut( $server, $db, $id, $writeTime = 0.0, $affected = 0 ) {
                $name = "{$server} ({$db}) (TRX#$id)";
@@ -330,20 +329,23 @@ class TransactionProfiler implements LoggerAwareInterface {
        /**
         * @param string $expect
         * @param string $query
-        * @param string|float|int $actual [optional]
+        * @param string|float|int $actual
         */
-       protected function reportExpectationViolated( $expect, $query, $actual = null ) {
+       protected function reportExpectationViolated( $expect, $query, $actual ) {
                if ( $this->silenced ) {
                        return;
                }
 
-               $n = $this->expect[$expect];
-               $by = $this->expectBy[$expect];
-               $actual = ( $actual !== null ) ? " (actual: $actual)" : "";
-
                $this->logger->info(
-                       "Expectation ($expect <= $n) by $by not met$actual:\n$query\n" .
-                       ( new RuntimeException() )->getTraceAsString()
+                       "Expectation ({measure} <= {max}) by {by} not met (actual: {actual}):\n{query}\n" .
+                       ( new RuntimeException() )->getTraceAsString(),
+                       [
+                               'measure' => $expect,
+                               'max' => $this->expect[$expect],
+                               'by' => $this->expectBy[$expect],
+                               'actual' => $actual,
+                               'query' => $query
+                       ]
                );
        }
 }