namespace Wikimedia\Rdbms;
-use IDatabase;
use InvalidArgumentException;
/**
'load' => 1,
]
],
- 'trxProfiler' => isset( $params['trxProfiler'] ) ? $params['trxProfiler'] : null,
- 'srvCache' => isset( $params['srvCache'] ) ? $params['srvCache'] : null,
- 'wanCache' => isset( $params['wanCache'] ) ? $params['wanCache'] : null
+ 'trxProfiler' => $params['trxProfiler'] ?? null,
+ 'srvCache' => $params['srvCache'] ?? null,
+ 'wanCache' => $params['wanCache'] ?? null,
+ 'localDomain' => $params['localDomain'] ?? $this->db->getDomainID()
] );
if ( isset( $params['readOnlyReason'] ) ) {
* @since 1.28
*/
public static function newFromConnection( IDatabase $db, array $params = [] ) {
- return new static( [ 'connection' => $db ] + $params );
+ return new static( array_merge(
+ [ 'localDomain' => $db->getDomainID() ],
+ $params,
+ [ 'connection' => $db ]
+ ) );
}
- protected function reallyOpenConnection( array $server, $dbNameOverride = false ) {
+ protected function reallyOpenConnection( array $server, DatabaseDomain $domainOverride ) {
return $this->db;
}
}
-class_alias( 'Wikimedia\Rdbms\LoadBalancerSingle', 'LoadBalancerSingle' );
+/**
+ * @deprecated since 1.29
+ */
+class_alias( LoadBalancerSingle::class, 'LoadBalancerSingle' );