/**
* A simple single-master LBFactory that gets its configuration from the b/c globals
*/
-class LBFactorySimple extends LBFactory {
+class LBFactorySimple extends LBFactoryMW {
/** @var LoadBalancer */
private $mainLB;
/** @var LoadBalancer[] */
* @return LoadBalancer
*/
public function newMainLB( $wiki = false ) {
- global $wgDBservers;
+ global $wgDBservers, $wgDBprefix, $wgDBmwschema, $wgSQLMode, $wgDBmysql5;
if ( is_array( $wgDBservers ) ) {
$servers = $wgDBservers;
} else {
$server['replica'] = true;
}
- $server += [ 'flags' => DBO_DEFAULT ];
+ $server += [
+ 'schema' => $wgDBmwschema,
+ 'tablePrefix' => $wgDBprefix,
+ 'flags' => DBO_DEFAULT,
+ 'sqlMode' => $wgSQLMode,
+ 'utf8Mode' => $wgDBmysql5
+ ];
}
} else {
global $wgDBserver, $wgDBuser, $wgDBpassword, $wgDBname, $wgDBtype, $wgDebugDumpSql;
'user' => $wgDBuser,
'password' => $wgDBpassword,
'dbname' => $wgDBname,
+ 'schema' => $wgDBmwschema,
+ 'tablePrefix' => $wgDBprefix,
'type' => $wgDBtype,
'load' => 1,
'flags' => $flags,
- 'master' => true
+ 'master' => true,
+ 'sqlMode' => $wgSQLMode,
+ 'utf8Mode' => $wgDBmysql5
] ];
}
}
/**
- * @throws MWException
* @param string $cluster
* @param bool|string $wiki
* @return LoadBalancer
+ * @throws InvalidArgumentException
*/
protected function newExternalLB( $cluster, $wiki = false ) {
global $wgExternalServers;