MediaWiki master
Wikimedia\Rdbms\MaintainableDBConnRef Class Reference

Inherits Wikimedia\Rdbms\DBConnRef.

Collaboration diagram for Wikimedia\Rdbms\MaintainableDBConnRef:

Additional Inherited Members

- Public Member Functions inherited from Wikimedia\Rdbms\DBConnRef
 __call ( $name, array $arguments)
 
 __construct (ILoadBalancer $lb, $params, $role, &$modcount=0)
 
 __toString ()
 Get a debugging string that mentions the database type, the ID of this instance, and the ID of any underlying connection resource or driver object if one is present.
 
 addIdentifierQuotes ( $s)
 Escape a SQL identifier (e.g.
 
 addQuotes ( $s)
 Escape and quote a raw value string for use in a SQL query.
 
 affectedRows ()
 Get the number of rows affected by the last query method call.
 
 anyChar ()
 Returns a token for buildLike() that denotes a '_' to be used in a LIKE query.
 
 anyString ()
 Returns a token for buildLike() that denotes a '' to be used in a LIKE query.
 
 begin ( $fname=__METHOD__, $mode=IDatabase::TRANSACTION_EXPLICIT)
 Begin a transaction.
 
 bitAnd ( $fieldLeft, $fieldRight)
 
 bitNot ( $field)
 
 bitOr ( $fieldLeft, $fieldRight)
 
 buildComparison (string $op, array $conds)
 Build a condition comparing multiple values, for use with indexes that cover multiple fields, common when e.g.
 
 buildConcat ( $stringList)
 Build a concatenation list to feed into a SQL query.
 
 buildExcludedValue ( $column)
 Build a reference to a column value from the conflicting proposed upsert() row.
 
 buildGreatest ( $fields, $values)
 Build a GREATEST function statement comparing columns/values.
 
 buildGroupConcatField ( $delim, $table, $field, $conds='', $join_conds=[])
 Build a GROUP_CONCAT or equivalent statement for a query.
 
 buildIntegerCast ( $field)
 
 buildLeast ( $fields, $values)
 Build a LEAST function statement comparing columns/values.
 
 buildLike ( $param,... $params)
 LIKE statement wrapper.
 
 buildSelectSubquery ( $table, $vars, $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Equivalent to IDatabase::selectSQLText() except wraps the result in Subquery.
 
 buildStringCast ( $field)
 
 buildSubstring ( $input, $startPosition, $length=null)
 
 cancelAtomic ( $fname=__METHOD__, AtomicSectionIdentifier $sectionId=null)
 Cancel an atomic section of SQL statements.
 
 clearFlag ( $flag, $remember=self::REMEMBER_NOTHING)
 Clear a flag for this connection.
 
 close ( $fname=__METHOD__)
 Close the database connection.
 
 commit ( $fname=__METHOD__, $flush=self::FLUSHING_ONE)
 Commits a transaction previously started using begin()
 
 conditional ( $cond, $caseTrueExpression, $caseFalseExpression)
 Returns an SQL expression for a simple conditional.
 
 databasesAreIndependent ()
 Returns true if DBs are assumed to be on potentially different servers.
 
 dbSchema ( $schema=null)
 Get/set the db schema.
 
 decodeBlob ( $b)
 Some DBMSs return a special placeholder object representing blob fields in result objects.
 
 decodeExpiry ( $expiry, $format=TS_MW)
 Decode an expiry time into a DBMS independent format.
 
 delete ( $table, $conds, $fname=__METHOD__)
 Delete all rows in a table that match a condition.
 
 deleteJoin ( $delTable, $joinTable, $delVar, $joinVar, $conds, $fname=__METHOD__)
 Delete all rows in a table that match a condition which includes a join.
 
 doAtomicSection ( $fname, callable $callback, $cancelable=self::ATOMIC_NOT_CANCELABLE)
 Perform an atomic section of reversible SQL statements from a callback.
 
 dropTable ( $table, $fname=__METHOD__)
 Delete a table.
 
 duplicateTableStructure ( $oldName, $newName, $temporary=false, $fname=__METHOD__)
 Creates a new table with structure copied from existing table.
 
 encodeBlob ( $b)
 Some DBMSs have a special format for inserting into blob fields, they don't allow simple quoted strings to be inserted.
 
 encodeExpiry ( $expiry)
 Encode an expiry time into the DBMS dependent format.
 
 endAtomic ( $fname=__METHOD__)
 Ends an atomic section of SQL statements.
 
 ensureConnection ()
 Connect to the database if we are not already connected.
 
 estimateRowCount ( $tables, $vars=' *', $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Estimate the number of rows in dataset.
 
 explicitTrxActive ()
 Check whether there is a transaction open at the specific request of a caller.
 
 expr (string $field, string $op, $value)
 See Expression::__construct()
 
 factorConds ( $condsArray)
 Given an array of condition arrays representing an OR list of AND lists, for example:
 
 fieldExists ( $table, $field, $fname=__METHOD__)
 Determines whether a field exists in a table.
 
 fieldInfo ( $table, $field)
 Get information about a field Returns false if the field doesn't exist.
 
 flushSession ( $fname=__METHOD__, $flush=self::FLUSHING_ONE)
 Release important session-level state (named lock, table locks) as post-rollback cleanup.
 
 flushSnapshot ( $fname=__METHOD__, $flush=self::FLUSHING_ONE)
 Commit any transaction but error out if writes or callbacks are pending.
 
 getDBname ()
 Get the current database name; null if there isn't one.
 
 getDomainID ()
 Return the currently selected domain ID.
 
 getFlag ( $flag)
 Returns a boolean whether the flag $flag is set for this connection.
 
 getInfinity ()
 Find out when 'infinity' is.
 
 getLag ()
 Get the seconds of replication lag on this database server.
 
 getLBInfo ( $name=null)
 Get properties passed down from the server info array of the load balancer.
 
 getPrimaryPos ()
 Get the replication position of this primary DB server.
 
 getProperty ( $name)
 
 getReferenceRole ()
 
 getReplicaPos ()
 Get the replication position of this replica DB.
 
 getScopedLockAndFlush ( $lockKey, $fname, $timeout)
 Acquire a named lock, flush any transaction, and return an RAII style unlocker object.
 
 getServer ()
 Get the hostname or IP address of the server.
 
 getServerInfo ()
 Get a human-readable string describing the current software version.
 
 getServerName ()
 Get the readable name for the server.
 
 getServerVersion ()
 A string describing the current software version.
 
 getSessionLagStatus ()
 Get a cached estimate of the seconds of replication lag on this database server, using the estimate obtained at the start of the current transaction if one is active.
 
 getSoftwareLink ()
 Returns a wikitext style link to the DB's website (e.g.
 
 getTableAliases ()
 Return current table aliases.
 
 getTopologyBasedServerId ()
 Get a non-recycled ID that uniquely identifies this server within the replication topology.
 
 getTopologyRole ()
 Get the replication topology role of this server.
 
 getType ()
 Get the RDBMS type of the server (e.g.
 
 implicitOrderby ()
 Returns true if this database does an implicit order by when the column has an index For example: SELECT page_title FROM page LIMIT 1.
 
 indexExists ( $table, $index, $fname=__METHOD__)
 Determines whether an index exists.
 
 indexUnique ( $table, $index, $fname=__METHOD__)
 Determines if a given index is unique.
 
 insert ( $table, $rows, $fname=__METHOD__, $options=[])
 Insert row(s) into a table, in the provided order.
 
 insertId ()
 Get the sequence-based ID assigned by the last query method call.
 
 insertSelect ( $destTable, $srcTable, $varMap, $conds, $fname=__METHOD__, $insertOptions=[], $selectOptions=[], $selectJoinConds=[])
 INSERT SELECT wrapper.
 
 isOpen ()
 
 isReadOnly ()
 Check if this DB server is marked as read-only according to load balancer info.
 
 lastDoneWrites ()
 Get the last time the connection may have been used for a write query.
 
 lastErrno ()
 Get the RDBMS-specific error code from the last attempted query statement.
 
 lastError ()
 Get the RDBMS-specific error description from the last attempted query statement.
 
 limitResult ( $sql, $limit, $offset=false)
 Construct a LIMIT query with optional offset.
 
 listTables ( $prefix=null, $fname=__METHOD__)
 List all tables on the database.
 
 listViews ( $prefix=null, $fname=__METHOD__)
 Lists all the VIEWs in the database.
 
 lock ( $lockName, $method, $timeout=5, $flags=0)
 Acquire a named lock.
 
 lockForUpdate ( $table, $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Lock all rows meeting the given conditions/options FOR UPDATE.
 
 lockIsFree ( $lockName, $method)
 Check to see if a named lock is not locked by any thread (non-blocking)
 
 makeList (array $a, $mode=self::LIST_COMMA)
 Makes an encoded list of strings from an array.
 
 makeWhereFrom2d ( $data, $baseKey, $subKey)
 Build a "OR" condition with pairs from a two-dimensional array.
 
 namedLocksEnqueue ()
 Check to see if a named lock used by lock() use blocking queues.
 
 newDeleteQueryBuilder ()
 Get an DeleteQueryBuilder bound to this connection.
 
 newInsertQueryBuilder ()
 Get an InsertQueryBuilder bound to this connection.
 
 newReplaceQueryBuilder ()
 Get an ReplaceQueryBuilder bound to this connection.
 
 newSelectQueryBuilder ()
 Create an empty SelectQueryBuilder which can be used to run queries against this connection.
 
 newUnionQueryBuilder ()
 Create an empty UnionQueryBuilder which can be used to run queries against this connection.
 
 newUpdateQueryBuilder ()
 Get an UpdateQueryBuilder bound to this connection.
 
 nextSequenceValue ( $seqName)
 Deprecated method, calls should be removed.
 
 onAtomicSectionCancel (callable $callback, $fname=__METHOD__)
 Run a callback when the atomic section is cancelled.
 
 onTransactionCommitOrIdle (callable $callback, $fname=__METHOD__)
 Run a callback when the current transaction commits or now if there is none.
 
 onTransactionPreCommitOrIdle (callable $callback, $fname=__METHOD__)
 Run a callback before the current transaction commits or now if there is none.
 
 onTransactionResolution (callable $callback, $fname=__METHOD__)
 Run a callback when the current transaction commits or rolls back.
 
 pendingWriteCallers ()
 Get the list of method names that did write queries for this transaction.
 
 pendingWriteQueryDuration ( $type=self::ESTIMATE_TOTAL)
 Get the time spend running write queries for this transaction.
 
 ping (&$rtt=null)
 
 primaryPosWait (DBPrimaryPos $pos, $timeout)
 Wait for the replica server to catch up to a given primary server position.
 
 query ( $sql, $fname=__METHOD__, $flags=0)
 Run an SQL query statement and return the result.
 
 replace ( $table, $uniqueKeys, $rows, $fname=__METHOD__)
 Insert row(s) into a table, in the provided order, while deleting conflicting rows.
 
 restoreFlags ( $state=self::RESTORE_PRIOR)
 Restore the flags to their prior state before the last setFlag/clearFlag call.
 
 rollback ( $fname=__METHOD__, $flush=self::FLUSHING_ONE)
 Rollback a transaction previously started using begin()
 
 select ( $table, $vars, $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Execute a SELECT query constructed using the various parameters provided.
 
 selectDomain ( $domain)
 Set the current domain (database, schema, and table prefix)
 
 selectField ( $table, $var, $cond='', $fname=__METHOD__, $options=[], $join_conds=[])
 A SELECT wrapper which returns a single field from a single result row.
 
 selectFieldValues ( $table, $var, $cond='', $fname=__METHOD__, $options=[], $join_conds=[])
 A SELECT wrapper which returns a list of single field values from result rows.
 
 selectRow ( $table, $vars, $conds, $fname=__METHOD__, $options=[], $join_conds=[])
 Wrapper to IDatabase::select() that only fetches one row (via LIMIT)
 
 selectRowCount ( $tables, $vars=' *', $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Get the number of rows in dataset.
 
 selectSQLText ( $table, $vars, $conds='', $fname=__METHOD__, $options=[], $join_conds=[])
 Take the same arguments as IDatabase::select() and return the SQL it would use.
 
 serverIsReadOnly ()
 
 setFlag ( $flag, $remember=self::REMEMBER_NOTHING)
 Set a flag for this connection.
 
 setIndexAliases (array $aliases)
 Convert certain index names to alternative names before querying the DB.
 
 setLBInfo ( $nameOrArray, $value=null)
 Set the entire array or a particular key of the managing load balancer info array.
 
 setSchemaVars ( $vars)
 Set schema variables to be used when streaming commands from SQL files or stdin.
 
 setSessionOptions (array $options)
 Override database's default behavior.
 
 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)
 Run a callback after each time any transaction commits or rolls back.
 
 sourceFile ( $filename, callable $lineCallback=null, callable $resultCallback=null, $fname=false, callable $inputCallback=null)
 Read and execute SQL commands from a file.
 
 sourceStream ( $fp, callable $lineCallback=null, callable $resultCallback=null, $fname=__METHOD__, callable $inputCallback=null)
 Read and execute commands from an open file handle.
 
 startAtomic ( $fname=__METHOD__, $cancelable=IDatabase::ATOMIC_NOT_CANCELABLE)
 Begin an atomic section of SQL statements.
 
 streamStatementEnd (&$sql, &$newLine)
 Called by sourceStream() to check if we've reached a statement end.
 
 strreplace ( $orig, $old, $new)
 Returns a SQL expression for simple string replacement (e.g.
 
 tableExists ( $table, $fname=__METHOD__)
 Query whether a given table exists.
 
 tableName ( $name, $format='quoted')
 
 tableNames (... $tables)
 Fetch a number of table names into an associative array.
 
 tableNamesN (... $tables)
 Fetch a number of table names into a zero-indexed numerical array.
 
 tablePrefix ( $prefix=null)
 Get/set the table prefix.
 
 textFieldSize ( $table, $field)
 Returns the size of a text field, or -1 for "unlimited".
 
 timestamp ( $ts=0)
 Convert a timestamp in one of the formats accepted by ConvertibleTimestamp to the format used for inserting into timestamp fields in this DBMS.
 
 timestampOrNull ( $ts=null)
 Convert a timestamp in one of the formats accepted by ConvertibleTimestamp to the format used for inserting into timestamp fields in this DBMS.
 
 truncate ( $tables, $fname=__METHOD__)
 Delete all data in a table(s) and reset any sequences owned by that table(s)
 
 truncateTable ( $table, $fname=__METHOD__)
 Delete all data in a table and reset any sequences owned by that table.
 
 trxLevel ()
 Gets the current transaction level.
 
 trxTimestamp ()
 Get the UNIX timestamp of the time that the transaction was established.
 
 unionQueries ( $sqls, $all, $options=[])
 Construct a UNION query.
 
 unionSupportsOrderAndLimit ()
 Determine if the RDBMS supports ORDER BY and LIMIT for separate subqueries within UNION.
 
 unlock ( $lockName, $method)
 Release a lock.
 
 update ( $table, $set, $conds, $fname=__METHOD__, $options=[])
 Update all rows in a table that match a given condition.
 
 upsert ( $table, array $rows, $uniqueKeys, array $set, $fname=__METHOD__)
 Upsert row(s) into a table, in the provided order, while updating conflicting rows.
 
 wasDeadlock ()
 Determines if the last failure was due to a deadlock.
 
 wasReadOnlyError ()
 Determines if the last failure was due to the database being read-only.
 
 writesOrCallbacksPending ()
 Whether there is a transaction open with either possible write queries or unresolved pre-commit/commit/resolution callbacks pending.
 
 writesPending ()
 
- Public Member Functions inherited from Wikimedia\Rdbms\IReadableDatabase
 ping ()
 Ping the server and try to reconnect if it there is no connection.
 
- Public Member Functions inherited from Wikimedia\Rdbms\Platform\ISQLPlatform
 buildSubString ( $input, $startPosition, $length=null)
 Build a SUBSTRING function.
 
 tableName (string $name, $format='quoted')
 Format a table name ready for use in constructing an SQL query.
 
- Public Attributes inherited from Wikimedia\Rdbms\IDatabase
const LOCK_TIMESTAMP = 1
 Flag to return the lock acquisition timestamp (null if not acquired)
 
- Public Attributes inherited from Wikimedia\Rdbms\Platform\ISQLPlatform
const QUERY_PSEUDO_PERMANENT = 2
 Track a TEMPORARY table CREATE as if it was for a permanent table (for testing)
 
- Public Attributes inherited from Wikimedia\Rdbms\Database\IDatabaseFlags
const DBO_COMPRESS = 512
 Enable compression in connection protocol.
 
const DBO_DDLMODE = 128
 Schema file mode; was used by Oracle.
 
const DBO_DEBUG = 1
 Enable debug logging of all SQL queries.
 
const DBO_DEFAULT = 16
 Join load balancer transaction rounds (which control DBO_TRX) in non-CLI mode.
 
const DBO_GAUGE = 1024
 Optimize connection for guaging server state (e.g.
 
const DBO_IGNORE = 4
 Unused since 1.31.
 
const DBO_NOBUFFER = 2
 Unused since 1.34.
 
const DBO_PERSISTENT = 32
 Use DB persistent connections if possible.
 
const DBO_SSL = 256
 Enable SSL/TLS in connection protocol.
 
const DBO_SYSDBA = 64
 DBA session mode; was used by Oracle.
 
const DBO_TRX = 8
 Automatically start a transaction before running a query if none is active.
 
const REMEMBER_NOTHING = ''
 Do not remember the prior flags.
 
const REMEMBER_PRIOR = 'remember'
 Remember the prior flags.
 
const RESTORE_INITIAL = 'initial'
 Restore to the initial flag state.
 
const RESTORE_PRIOR = 'prior'
 Restore to the prior flag state.
 
- Protected Member Functions inherited from Wikimedia\Rdbms\DBConnRef
 assertRoleAllowsWrites ()
 Error out if the role is not DB_PRIMARY.
 
 getDomainChangeException ()
 
 normalizeServerIndex ( $i)
 

Detailed Description

Deprecated:
since 1.39 use DBConnRef

Definition at line 6 of file MaintainableDBConnRef.php.


The documentation for this class was generated from the following file: