MediaWiki REL1_28
|
Trivial LoadBalancer that always returns an injected connection handle. More...
Public Member Functions | |
__construct (array $params) | |
Public Member Functions inherited from LoadBalancer | |
__destruct () | |
allowLagged ( $mode=null) | |
Disables/enables lag checks. | |
approveMasterChanges (array $options) | |
Perform all pre-commit checks for things like replication safety. | |
beginMasterChanges ( $fname=__METHOD__) | |
Flush any master transaction snapshots and set DBO_TRX (if DBO_DEFAULT is set) | |
closeAll () | |
Close all open connections. | |
closeConnection (IDatabase $conn) | |
Close a connection. | |
commitAll ( $fname=__METHOD__) | |
Commit transactions on all open connections. | |
commitMasterChanges ( $fname=__METHOD__) | |
Issue COMMIT on all master connections where writes where done. | |
disable () | |
Disable this load balancer. | |
finalizeMasterChanges () | |
Perform all pre-commit callbacks that remain part of the atomic transactions and disable any post-commit callbacks until runMasterPostTrxCallbacks() | |
flushReplicaSnapshots ( $fname=__METHOD__) | |
Commit all replica DB transactions so as to flush any REPEATABLE-READ or SSI snapshot. | |
forEachOpenConnection ( $callback, array $params=[]) | |
Call a function with each open connection object. | |
forEachOpenMasterConnection ( $callback, array $params=[]) | |
Call a function with each open connection object to a master. | |
forEachOpenReplicaConnection ( $callback, array $params=[]) | |
Call a function with each open replica DB connection object. | |
getAnyOpenConnection ( $i) | |
getConnection ( $i, $groups=[], $domain=false) | |
getConnectionRef ( $db, $groups=[], $domain=false) | |
Get a database connection handle reference. | |
getLaggedReplicaMode ( $domain=false) | |
getLaggedSlaveMode ( $domain=false) | |
getLagTimes ( $domain=false) | |
Get an estimate of replication lag (in seconds) for each server. | |
getLazyConnectionRef ( $db, $groups=[], $domain=false) | |
Get a database connection handle reference without connecting yet. | |
getMasterPos () | |
Get the current master position for chronology control purposes. | |
getMaxLag ( $domain=false) | |
Get the hostname and lag time of the most-lagged replica DB. | |
getReaderIndex ( $group=false, $domain=false) | |
Get the index of the reader connection, which may be a replica DB This takes into account load ratios and lag times. | |
getReadOnlyReason ( $domain=false, IDatabase $conn=null) | |
getServerCount () | |
Get the number of defined servers (not the number of open connections) | |
getServerInfo ( $i) | |
Return the server info structure for a given index, or false if the index is invalid. | |
getServerName ( $i) | |
Get the host name or IP address of the server with the specified index Prefer a readable name if available. | |
getWriterIndex () | |
hasMasterChanges () | |
Determine if there are pending changes in a transaction by this thread. | |
hasMasterConnection () | |
hasOrMadeRecentMasterChanges ( $age=null) | |
Check if this load balancer object had any recent or still pending writes issued against it by this PHP thread. | |
haveIndex ( $i) | |
Returns true if the specified index is a valid server index. | |
isNonZeroLoad ( $i) | |
Returns true if the specified index is valid and has non-zero load. | |
laggedReplicaUsed () | |
laggedSlaveUsed () | |
lastMasterChangeTimestamp () | |
Get the timestamp of the latest write query done by this thread. | |
openConnection ( $i, $domain=false) | |
pendingMasterChangeCallers () | |
Get the list of callers that have pending master changes. | |
pingAll () | |
reuseConnection ( $conn) | |
Mark a foreign connection as being available for reuse under a different DB name or prefix. | |
rollbackMasterChanges ( $fname=__METHOD__) | |
Issue ROLLBACK only on master, only if queries were done on connection. | |
runMasterPostTrxCallbacks ( $type) | |
Issue all pending post-COMMIT/ROLLBACK callbacks. | |
safeGetLag (IDatabase $conn) | |
Get the lag in seconds for a given connection, or zero if this load balancer does not have replication enabled. | |
safeWaitForMasterPos (IDatabase $conn, $pos=false, $timeout=10) | |
setDomainPrefix ( $prefix) | |
Set a new table prefix for the existing local domain ID for testing. | |
setServerInfo ( $i, array $serverInfo) | |
Sets the server info structure for the given index. | |
setTableAliases (array $aliases) | |
Make certain table names use their own database, schema, and table prefix when passed into SQL queries pre-escaped and without a qualified database name. | |
setTransactionListener ( $name, callable $callback=null) | |
Set a callback via IDatabase::setTransactionListener() on all current and future master connections of this load balancer. | |
suppressTransactionEndCallbacks () | |
Suppress all pending post-COMMIT/ROLLBACK callbacks. | |
waitFor ( $pos) | |
waitForAll ( $pos, $timeout=null) | |
Set the master wait position and wait for ALL replica DBs to catch up to it. | |
waitForOne ( $pos, $timeout=null) | |
Set the master wait position and wait for a "generic" replica DB to catch up to it. | |
Static Public Member Functions | |
static | newFromConnection (IDatabase $db, array $params=[]) |
Protected Member Functions | |
reallyOpenConnection (array $server, $dbNameOverride=false) | |
Really opens a connection. | |
Protected Member Functions inherited from LoadBalancer | |
doWait ( $index, $open=false, $timeout=null) | |
Wait for a given replica DB to catch up to the master pos stored in $this. | |
getScopedPHPBehaviorForCommit () | |
Make PHP ignore user aborts/disconnects until the returned value leaves scope. | |
Private Attributes | |
IDatabase | $db |
Additional Inherited Members | |
Protected Attributes inherited from LoadBalancer | |
string | $agent |
Agent name for query profiling. | |
bool | $cliMode |
Whether this PHP instance is for a CLI script. | |
LoggerInterface | $connLogger |
LoggerInterface | $perfLogger |
object string | $profiler |
Class name or object With profileIn/profileOut methods. | |
LoggerInterface | $queryLogger |
LoggerInterface | $replLogger |
TransactionProfiler | $trxProfiler |
Trivial LoadBalancer that always returns an injected connection handle.
Definition at line 27 of file LoadBalancerSingle.php.
LoadBalancerSingle::__construct | ( | array | $params | ) |
array | $params | An associative array with one member:
|
Reimplemented from LoadBalancer.
Definition at line 35 of file LoadBalancerSingle.php.
References $params.
IDatabase | $db | Live connection handle |
array | $params | Parameter map to LoadBalancerSingle::__constructs() |
Definition at line 67 of file LoadBalancerSingle.php.
|
protected |
Really opens a connection.
Uncached. Returns a Database object whether or not the connection was successful.
array | $server | |
string | bool | $dbNameOverride | Use "" to not select any database |
DBAccessError | |
InvalidArgumentException |
Reimplemented from LoadBalancer.
Definition at line 71 of file LoadBalancerSingle.php.
References $db.
|
private |
Definition at line 29 of file LoadBalancerSingle.php.
Referenced by newFromConnection(), and reallyOpenConnection().