MediaWiki
1.31.0
|
Mysql update list and mysql-specific update functions. More...
Public Member Functions | |
doSchemaRestructuring () | |
doWatchlistUpdate () | |
Check if we need to add talk page rows to the watchlist. More... | |
getSchemaVars () | |
Get appropriate schema variables in the current database connection. More... | |
![]() | |
addExtensionField ( $tableName, $columnName, $sqlPath) | |
addExtensionIndex ( $tableName, $indexName, $sqlPath) | |
addExtensionTable ( $tableName, $sqlPath) | |
Convenience wrapper for addExtensionUpdate() when adding a new table (which is the most common usage of updaters in an extension) More... | |
addExtensionUpdate (array $update) | |
Add a new update coming from an extension. More... | |
addPostDatabaseUpdateMaintenance ( $class) | |
Add a maintenance script to be run after the database updates are complete. More... | |
appendLine ( $line) | |
Append a line to the open filehandle. More... | |
copyFile ( $filename) | |
Append an SQL fragment to the open file handle. More... | |
doUpdates (array $what=[ 'core', 'extensions', 'stats']) | |
Do all the updates. More... | |
dropExtensionField ( $tableName, $columnName, $sqlPath) | |
dropExtensionIndex ( $tableName, $indexName, $sqlPath) | |
Drop an index from an extension table. More... | |
dropExtensionTable ( $tableName, $sqlPath) | |
dropTable ( $table, $patch=false, $fullpath=false) | |
If the specified table exists, drop it, or execute the patch if one is provided. More... | |
getDB () | |
Get a database connection to run updates. More... | |
getPostDatabaseUpdateMaintenance () | |
insertUpdateRow ( $key, $val=null) | |
Helper function: Add a key to the updatelog table Obviously, only use this for updates that occur after the updatelog table was created! More... | |
modifyExtensionField ( $tableName, $fieldName, $sqlPath) | |
modifyExtensionTable ( $tableName, $sqlPath) | |
modifyField ( $table, $field, $patch, $fullpath=false) | |
Modify an existing field. More... | |
modifyTable ( $table, $patch, $fullpath=false) | |
Modify an existing table, similar to modifyField. More... | |
output ( $str) | |
Output some text. More... | |
patchPath (IDatabase $db, $patch) | |
Get the full path of a patch file. More... | |
purgeCache () | |
Purge various database caches. More... | |
renameExtensionIndex ( $tableName, $oldIndexName, $newIndexName, $sqlPath, $skipBothIndexExistWarning=false) | |
Rename an index on an extension table. More... | |
setFileAccess () | |
Set any .htaccess files or equivilent for storage repos. More... | |
tableExists ( $tableName) | |
updateRowExists ( $key) | |
Helper function: check if the given key is present in the updatelog table. More... | |
Protected Member Functions | |
checkBin ( $table, $field, $patchFile) | |
1.4 betas were missing the 'binary' marker from logging.log_title, which causes a collation mismatch error on joins in MySQL 4.1. More... | |
doBacklinkingIndicesUpdate () | |
doCategorylinksIndicesUpdate () | |
doCategoryPopulation () | |
doClFieldsUpdate () | |
doExtendCommentLengths () | |
doFilearchiveIndicesUpdate () | |
doFixAncientImagelinks () | |
doIndexUpdate () | |
Check that proper indexes are in place. More... | |
doInterwikiUpdate () | |
Check that interwiki table exists; if it doesn't source it. More... | |
doIwlinksIndexNonUnique () | |
doLangLinksLengthUpdate () | |
doMaybeProfilingMemoryUpdate () | |
doNamespaceSize () | |
doNonUniquePlTlIl () | |
doOldLinksUpdate () | |
doPagelinksUpdate () | |
doPageRandomUpdate () | |
Set page_random field to a random value where it is equals to 0. More... | |
doPopulateParentId () | |
doRestrictionsUpdate () | |
Adding page_restrictions table, obsoleting page.page_restrictions. More... | |
doRevisionPageRevIndexNonUnique () | |
doTemplatelinksUpdate () | |
doUnsignedSyncronisation () | |
doUpdateMimeMinorField () | |
doUserGroupsUpdate () | |
doUserNewTalkTimestampNotNull () | |
doUserUniqueUpdate () | |
doWatchlistNull () | |
Make sure wl_notificationtimestamp can be NULL, and update old broken items. More... | |
getCoreUpdateList () | |
Get an array of updates to perform on the database. More... | |
indexHasField ( $table, $index, $field) | |
Check whether an index contain a field. More... | |
![]() | |
__construct (Database &$db, $shared, Maintenance $maintenance=null) | |
addField ( $table, $field, $patch, $fullpath=false) | |
Add a new field to an existing table. More... | |
addIndex ( $table, $index, $patch, $fullpath=false) | |
Add a new index to an existing table. More... | |
addTable ( $name, $patch, $fullpath=false) | |
Add a new table to the database. More... | |
applyPatch ( $path, $isFullPath=false, $msg=null) | |
Applies a SQL patch. More... | |
canUseNewUpdatelog () | |
Updatelog was changed in 1.17 to have a ul_value column so we can record more information about what kind of updates we've done (that's what this class does). More... | |
checkStats () | |
Check the site_stats table is not properly populated. More... | |
disableContentHandlerUseDB () | |
Turns off content handler fields during parts of the upgrade where they aren't available. More... | |
doActiveUsersInit () | |
Sets the number of active users in the site_stats table. More... | |
doCollationUpdate () | |
Update CategoryLinks collation. More... | |
doEnableProfiling () | |
Enable profiling table when it's turned on. More... | |
doLogSearchPopulation () | |
Migrate log params to new table and index for searching. More... | |
doLogUsertextPopulation () | |
Populates the log_user_text field in the logging table. More... | |
doMigrateUserOptions () | |
Migrates user options from the user table blob to user_properties. More... | |
doTable ( $name) | |
Returns whether updates should be executed on the database table $name. More... | |
doUpdateTranscacheField () | |
Updates the timestamps in the transcache table. More... | |
dropField ( $table, $field, $patch, $fullpath=false) | |
Drop a field from an existing table. More... | |
dropIndex ( $table, $index, $patch, $fullpath=false) | |
Drop an index from an existing table. More... | |
enableContentHandlerUseDB () | |
Turns content handler fields back on. More... | |
getExtensionUpdates () | |
Get the list of extension-defined updates. More... | |
getOldGlobalUpdates () | |
Before 1.17, we used to handle updates via stuff like $wgExtNewTables/Fields/Indexes. More... | |
migrateActors () | |
Migrate actors to the new 'actor' table. More... | |
migrateArchiveText () | |
Migrate ar_text to modern storage. More... | |
migrateComments () | |
Migrate comments to the new 'comment' table. More... | |
populateArchiveRevId () | |
Populate ar_rev_id, then make it not nullable. More... | |
rebuildLocalisationCache () | |
Rebuilds the localisation cache. More... | |
renameIndex ( $table, $oldIndex, $newIndex, $skipBothIndexExistWarning, $patch, $fullpath=false) | |
Rename an index from an existing table. More... | |
Additional Inherited Members | |
![]() | |
static | newForDB (Database $db, $shared=false, Maintenance $maintenance=null) |
![]() | |
Database | $db |
Handle to the database subclass. More... | |
array | $extensionUpdates = [] |
List of extension-provided database updates. More... | |
resource | $fileHandle = null |
File handle for SQL output. More... | |
$holdContentHandlerUseDB = true | |
Hold the value of $wgContentHandlerUseDB during the upgrade. More... | |
Maintenance | $maintenance |
string[] | $postDatabaseUpdateMaintenance |
Scripts to run after database update Should be a subclass of LoggedUpdateMaintenance. More... | |
$shared = false | |
bool | $skipSchema = false |
Flag specifying whether or not to skip schema (e.g. More... | |
array | $updates = [] |
Array of updates to perform on the database. More... | |
array | $updatesSkipped = [] |
Array of updates that were skipped. More... | |
Mysql update list and mysql-specific update functions.
Definition at line 33 of file MysqlUpdater.php.
|
protected |
1.4 betas were missing the 'binary' marker from logging.log_title, which causes a collation mismatch error on joins in MySQL 4.1.
string | $table | Table name |
string | $field | Field name to check |
string | $patchFile | Path to the patch to correct the field |
Definition at line 363 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Definition at line 935 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and indexHasField().
|
protected |
Definition at line 973 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and indexHasField().
|
protected |
Definition at line 979 of file MysqlUpdater.php.
References class, DatabaseUpdater\output(), and DatabaseUpdater\updateRowExists().
|
protected |
Definition at line 1073 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\output(), and DatabaseUpdater\updateRowExists().
|
protected |
Definition at line 1203 of file MysqlUpdater.php.
References $res, DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 1029 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch().
|
protected |
Definition at line 451 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Check that proper indexes are in place.
Definition at line 432 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Check that interwiki table exists; if it doesn't source it.
Definition at line 408 of file MysqlUpdater.php.
References $IP, DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), global, and DatabaseUpdater\output().
|
protected |
Definition at line 1125 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 1087 of file MysqlUpdater.php.
References $res, DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 1009 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Definition at line 701 of file MysqlUpdater.php.
References $tables, as, and DatabaseUpdater\output().
|
protected |
Definition at line 1038 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 446 of file MysqlUpdater.php.
References class.
|
protected |
Definition at line 727 of file MysqlUpdater.php.
References $name, $wgContLang, DatabaseUpdater\applyPatch(), as, global, and DatabaseUpdater\output().
|
protected |
Set page_random field to a random value where it is equals to 0.
Definition at line 876 of file MysqlUpdater.php.
References $rows, and DatabaseUpdater\output().
|
protected |
Definition at line 997 of file MysqlUpdater.php.
References class, DatabaseUpdater\output(), and DatabaseUpdater\updateRowExists().
|
protected |
Adding page_restrictions table, obsoleting page.page_restrictions.
Migrating old restrictions to new table – Andrew Garrett, January 2007.
Definition at line 949 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), class, and DatabaseUpdater\output().
|
protected |
Definition at line 1183 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), and DatabaseUpdater\output().
MysqlUpdater::doSchemaRestructuring | ( | ) |
Definition at line 519 of file MysqlUpdater.php.
References $rows, $titles, $wgLegacySchemaConversion, as, global, list, LIST_OR, DatabaseUpdater\output(), and wfTimestamp().
|
protected |
Definition at line 888 of file MysqlUpdater.php.
References $res, $services, DatabaseUpdater\applyPatch(), as, NS_TEMPLATE, DatabaseUpdater\output(), and wfWikiID().
|
protected |
Definition at line 1145 of file MysqlUpdater.php.
References $s, DatabaseUpdater\applyPatch(), as, DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Definition at line 1059 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\output(), and DatabaseUpdater\updateRowExists().
|
protected |
Definition at line 780 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), as, DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Definition at line 1103 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Definition at line 762 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), DatabaseUpdater\doTable(), and DatabaseUpdater\output().
|
protected |
Make sure wl_notificationtimestamp can be NULL, and update old broken items.
Definition at line 853 of file MysqlUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
MysqlUpdater::doWatchlistUpdate | ( | ) |
Check if we need to add talk page rows to the watchlist.
Definition at line 473 of file MysqlUpdater.php.
References DatabaseUpdater\output().
|
protected |
Get an array of updates to perform on the database.
Should return a multi-dimensional array. The main key is the MediaWiki version (1.12, 1.13...) with the values being arrays of updates, identical to how updaters.inc did it (for now)
Reimplemented from DatabaseUpdater.
Definition at line 34 of file MysqlUpdater.php.
MysqlUpdater::getSchemaVars | ( | ) |
Get appropriate schema variables in the current database connection.
This should be called after any request data has been imported, but before any write operations to the database. The result should be passed to the DB setSchemaVars() method.
Reimplemented from DatabaseUpdater.
Definition at line 1219 of file MysqlUpdater.php.
References $vars, $wgDBTableOptions, and global.
|
protected |
Check whether an index contain a field.
string | $table | Table name |
string | $index | Index name to check |
string | $field | Field that should be in the index |
Definition at line 385 of file MysqlUpdater.php.
References as, DatabaseUpdater\doTable(), and DatabaseUpdater\output().
Referenced by doBacklinkingIndicesUpdate(), and doCategorylinksIndicesUpdate().