Ensure users are able to edit the page after changing the content model
[lhc/web/wiklou.git] / includes / db / loadbalancer / LBFactorySingle.php
index cbe9517..14cec0e 100644 (file)
@@ -35,10 +35,12 @@ class LBFactorySingle extends LBFactory {
        public function __construct( array $conf ) {
                parent::__construct( $conf );
 
-               $this->lb = new LoadBalancerSingle( array(
+               $this->lb = new LoadBalancerSingle( [
                        'readOnlyReason' => $this->readOnlyReason,
-                       'trxProfiler' => $this->trxProfiler
-               ) + $conf );
+                       'trxProfiler' => $this->trxProfiler,
+                       'srvCache' => $this->srvCache,
+                       'wanCache' => $this->wanCache
+               ] + $conf );
        }
 
        /**
@@ -71,7 +73,7 @@ class LBFactorySingle extends LBFactory {
         * @param bool|string $wiki Wiki ID, or false for the current wiki
         * @return LoadBalancerSingle
         */
-       public function &getExternalLB( $cluster, $wiki = false ) {
+       public function getExternalLB( $cluster, $wiki = false ) {
                return $this->lb;
        }
 
@@ -79,8 +81,8 @@ class LBFactorySingle extends LBFactory {
         * @param string|callable $callback
         * @param array $params
         */
-       public function forEachLB( $callback, array $params = array() ) {
-               call_user_func_array( $callback, array_merge( array( $this->lb ), $params ) );
+       public function forEachLB( $callback, array $params = [] ) {
+               call_user_func_array( $callback, array_merge( [ $this->lb ], $params ) );
        }
 }
 
@@ -97,17 +99,19 @@ class LoadBalancerSingle extends LoadBalancer {
        public function __construct( array $params ) {
                $this->db = $params['connection'];
 
-               parent::__construct( array(
-                       'servers' => array(
-                               array(
+               parent::__construct( [
+                       'servers' => [
+                               [
                                        'type' => $this->db->getType(),
                                        'host' => $this->db->getServer(),
                                        'dbname' => $this->db->getDBname(),
                                        'load' => 1,
-                               )
-                       ),
-                       'trxProfiler' => $this->trxProfiler
-               ) );
+                               ]
+                       ],
+                       'trxProfiler' => isset( $params['trxProfiler'] ) ? $params['trxProfiler'] : null,
+                       'srvCache' => isset( $params['srvCache'] ) ? $params['srvCache'] : null,
+                       'wanCache' => isset( $params['wanCache'] ) ? $params['wanCache'] : null
+               ] );
 
                if ( isset( $params['readOnlyReason'] ) ) {
                        $this->db->setLBInfo( 'readOnlyReason', $params['readOnlyReason'] );