MediaWiki master
|
Class for handling updates to Postgres databases. More...
Inherits MediaWiki\Installer\DatabaseUpdater.
Protected Member Functions | |
addPgExtIndex ( $table, $index, $type) | |
addPgField ( $table, $field, $type) | |
addPgIndex ( $table, $index, $type, $unique=false) | |
addSequence ( $table, $pkey, $ns) | |
changeField ( $table, $field, $newtype, $default) | |
changeFieldPurgeTable ( $table, $field, $newtype, $default) | |
changeFkeyDeferrable ( $table, $field, $clause) | |
changeNullableField ( $table, $field, $null, $update=false) | |
changePrimaryKey ( $table, $shouldBe, $constraintName=null) | |
checkIndex ( $index, $should_be, $good_def) | |
describeIndex ( $idx) | |
describeTable ( $table) | |
dropConstraint ( $table, $field, $type, $conname=null) | |
Drop generic constraint. | |
dropDefault ( $table, $field) | |
Drop a default value from a field. | |
dropFkey ( $table, $field) | |
dropPgField ( $table, $field) | |
dropPgIndex ( $table, $index) | |
dropSequence ( $table, $ns) | |
fkeyDeltype ( $fkey) | |
getCoreUpdateList () | |
getInitialUpdateKeys () | |
Get an array of update keys to insert into the updatelog table after a new installation. | |
renameIndex ( $table, $old, $new, $skipBothIndexExistWarning=false, $a=false, $b=false) | |
Rename an index from an existing table. | |
renameSequence ( $old, $new) | |
renameTable ( $old, $new, $patch=false) | |
ruleDef ( $table, $rule) | |
setDefault ( $table, $field, $default) | |
setSequenceOwner ( $table, $pkey, $seq) | |
Protected Member Functions inherited from MediaWiki\Installer\DatabaseUpdater | |
__construct (IMaintainableDatabase &$db, $shared, Maintenance $maintenance=null) | |
addField ( $table, $field, $patch, $fullpath=false) | |
Add a new field to an existing table. | |
addIndex ( $table, $index, $patch, $fullpath=false) | |
Add a new index to an existing table. | |
addTable ( $name, $patch, $fullpath=false) | |
Add a new table to the database. | |
appendLine ( $line) | |
Append a line to the open file handle. | |
applyPatch ( $path, $isFullPath=false, $msg=null) | |
Applies a SQL patch. | |
checkStats () | |
Check the site_stats table is not properly populated. | |
copyFile ( $filename) | |
Append an SQL fragment to the open file handle. | |
doCollationUpdate () | |
Update CategoryLinks collation. | |
doConvertDjvuMetadata () | |
doTable ( $name) | |
Returns whether updates should be executed on the database table $name. | |
dropField ( $table, $field, $patch, $fullpath=false) | |
Drop a field from an existing table. | |
dropIndex ( $table, $index, $patch, $fullpath=false) | |
Drop an index from an existing table. | |
dropTable ( $table, $patch=false, $fullpath=false) | |
If the specified table exists, drop it, or execute the patch if one is provided. | |
getExtensionUpdates () | |
Get the list of extension-defined updates. | |
ifFieldExists ( $table, $field, $func,... $params) | |
Only run a function if the named field exists. | |
ifTableNotExists ( $table, $func,... $params) | |
Only run a function if a table does not exist. | |
migratePagelinks () | |
migrateTemplatelinks () | |
modifyField ( $table, $field, $patch, $fullpath=false) | |
Modify an existing field. | |
modifyTable ( $table, $patch, $fullpath=false) | |
Modify an existing table, similar to modifyField. | |
rebuildLocalisationCache () | |
Rebuilds the localisation cache. | |
runMaintenance ( $class, $unused='') | |
Run a maintenance script. | |
Protected Attributes | |
DatabasePostgres | $db |
Protected Attributes inherited from MediaWiki\Installer\DatabaseUpdater | |
HookContainer null | $autoExtensionHookContainer |
IMaintainableDatabase | $db |
Handle to the database subclass. | |
array | $extensionUpdates = [] |
List of extension-provided database updates. | |
array | $extensionUpdatesWithVirtualDomains = [] |
List of extension-provided database updates on virtual domain dbs. | |
resource null | $fileHandle = null |
File handle for SQL output. | |
Maintenance | $maintenance |
string[] | $postDatabaseUpdateMaintenance |
Scripts to run after database update Should be a subclass of LoggedUpdateMaintenance. | |
bool | $shared = false |
bool | $skipSchema = false |
Flag specifying whether to skip schema (e.g., SQL-only) updates. | |
array | $updates = [] |
Array of updates to perform on the database. | |
array | $updatesSkipped = [] |
Array of updates that were skipped. | |
Additional Inherited Members | |
Public Member Functions inherited from MediaWiki\Installer\DatabaseUpdater | |
addExtensionField ( $tableName, $columnName, $sqlPath) | |
Add a field to an existing extension table. | |
addExtensionIndex ( $tableName, $indexName, $sqlPath) | |
Add an index to an existing extension table. | |
addExtensionTable ( $tableName, $sqlPath) | |
Convenience wrapper for addExtensionUpdate() when adding a new table (which is the most common usage of updaters in an extension) Intended for use in LoadExtensionSchemaUpdates hook handlers. | |
addExtensionUpdate (array $update) | |
Add a new update coming from an extension. | |
addExtensionUpdateOnVirtualDomain (array $update) | |
Add a new update coming from an extension on virtual domain databases. | |
addPostDatabaseUpdateMaintenance ( $class) | |
Add a maintenance script to be run after the database updates are complete. | |
doUpdates (array $what=[ 'core', 'extensions', 'stats']) | |
Do all the updates. | |
dropExtensionField ( $tableName, $columnName, $sqlPath) | |
Drop a field from an extension table. | |
dropExtensionIndex ( $tableName, $indexName, $sqlPath) | |
Drop an index from an extension table Intended for use in LoadExtensionSchemaUpdates hook handlers. | |
dropExtensionTable ( $tableName, $sqlPath=false) | |
Drop an extension table. | |
fieldExists ( $tableName, $fieldName) | |
getDB () | |
Get a database connection to run updates. | |
getPostDatabaseUpdateMaintenance () | |
getSchemaVars () | |
Get appropriate schema variables in the current database connection. | |
insertInitialUpdateKeys () | |
Add initial keys to the updatelog table. | |
insertUpdateRow ( $key, $val=null) | |
Helper function: Add a key to the updatelog table. | |
modifyExtensionField ( $tableName, $fieldName, $sqlPath) | |
Modify an existing field in an extension table. | |
modifyExtensionTable ( $tableName, $sqlPath) | |
Modify an existing extension table. | |
output ( $str) | |
Output some text. | |
patchPath (IDatabase $db, $patch) | |
Get the full path of a patch file. | |
purgeCache () | |
Purge various database caches. | |
renameExtensionIndex ( $tableName, $oldIndexName, $newIndexName, $sqlPath, $skipBothIndexExistWarning=false) | |
Rename an index on an extension table Intended for use in LoadExtensionSchemaUpdates hook handlers. | |
setAutoExtensionHookContainer (HookContainer $hookContainer) | |
Set the HookContainer to use for loading extension schema updates. | |
setFileAccess () | |
Set any .htaccess files or equivalent for storage repos. | |
tableExists ( $tableName) | |
updateRowExists ( $key) | |
Helper function: check if the given key is present in the updatelog table. | |
Static Public Member Functions inherited from MediaWiki\Installer\DatabaseUpdater | |
static | newForDB (IMaintainableDatabase $db, $shared=false, Maintenance $maintenance=null) |
Public Attributes inherited from MediaWiki\Installer\DatabaseUpdater | |
const | REPLICATION_WAIT_TIMEOUT = 300 |
Class for handling updates to Postgres databases.
Definition at line 41 of file PostgresUpdater.php.
|
protected |
Definition at line 823 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\applyPatch(), and MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 681 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 810 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 583 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output(), and MediaWiki\Installer\PostgresUpdater\setDefault().
|
protected |
Definition at line 692 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 722 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 854 of file PostgresUpdater.php.
References MediaWiki\Installer\PostgresUpdater\dropConstraint(), and MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 781 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 907 of file PostgresUpdater.php.
References MediaWiki\Installer\PostgresUpdater\dropConstraint(), and MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 889 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 487 of file PostgresUpdater.php.
|
protected |
Definition at line 458 of file PostgresUpdater.php.
|
protected |
Drop generic constraint.
If the constraint was created with a custom name, then the name must be queried and supplied as $conname, otherwise standard system suffixes and format would be assumed.
string | $table | |
string | $field | |
string | $type | |
string | null | $conname |
Definition at line 949 of file PostgresUpdater.php.
Referenced by MediaWiki\Installer\PostgresUpdater\changeFkeyDeferrable(), MediaWiki\Installer\PostgresUpdater\changePrimaryKey(), and MediaWiki\Installer\PostgresUpdater\dropFkey().
|
protected |
Drop a default value from a field.
string | $table | |
string | $field |
Definition at line 772 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 835 of file PostgresUpdater.php.
References MediaWiki\Installer\PostgresUpdater\dropConstraint(), and MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 670 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 882 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 596 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 539 of file PostgresUpdater.php.
|
protected |
Reimplemented from MediaWiki\Installer\DatabaseUpdater.
Definition at line 51 of file PostgresUpdater.php.
|
protected |
Get an array of update keys to insert into the updatelog table after a new installation.
The named operations will then be skipped by a subsequent update.
Add keys here to skip updates that are redundant or harmful on a new installation, for example reducing field sizes, adding constraints, etc.
Reimplemented from MediaWiki\Installer\DatabaseUpdater.
Definition at line 447 of file PostgresUpdater.php.
|
protected |
Rename an index from an existing table.
string | $table | Name of the table to modify |
string | $oldIndex | Old name of the index |
string | $newIndex | New name of the index |
bool | $skipBothIndexExistWarning | Whether to warn if both the old and new indexes exist. |
string | $patch | Path to the patch file |
bool | $fullpath | Whether to treat $patch path as a relative or not |
Reimplemented from MediaWiki\Installer\DatabaseUpdater.
Definition at line 635 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 603 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 623 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\applyPatch(), and MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 558 of file PostgresUpdater.php.
|
protected |
Definition at line 752 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
Referenced by MediaWiki\Installer\PostgresUpdater\addSequence().
|
protected |
Definition at line 615 of file PostgresUpdater.php.
References MediaWiki\Installer\DatabaseUpdater\output().
|
protected |
Definition at line 46 of file PostgresUpdater.php.