|
MediaWiki REL1_39
|
Class for handling updates to Postgres databases. More...


Protected Member Functions | |
| addPgEnumValue ( $type, $value) | |
| Add a value to an existing PostgreSQL enum type. | |
| 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 () | |
| 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 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 filehandle. | |
| applyPatch ( $path, $isFullPath=false, $msg=null) | |
| Applies a SQL patch. | |
| 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). | |
| 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. | |
| migrateActors () | |
| Migrate actors to the new 'actor' table. | |
| migrateArchiveText () | |
| Migrate ar_text to modern storage. | |
| migrateComments () | |
| Migrate comments to the new 'comment' table. | |
| migrateImageCommentTemp () | |
Merge image_comment_temp into the image table. | |
| migrateTemplatelinks () | |
| modifyField ( $table, $field, $patch, $fullpath=false) | |
| Modify an existing field. | |
| modifyTable ( $table, $patch, $fullpath=false) | |
| Modify an existing table, similar to modifyField. | |
| populateArchiveRevId () | |
| Populate ar_rev_id, then make it not nullable. | |
| populateContentTables () | |
| Populates the MCR content tables. | |
| populateExternallinksIndex60 () | |
| Populates the externallinks.el_index_60 field. | |
| rebuildLocalisationCache () | |
| Rebuilds the localisation cache. | |
| runMaintenance ( $class, $unused='') | |
| Run a maintenance script. | |
Protected Attributes | |
| DatabasePostgres | $db |
Protected Attributes inherited from DatabaseUpdater | |
| HookContainer null | $autoExtensionHookContainer |
| IMaintainableDatabase | $db |
| Handle to the database subclass. | |
| array | $extensionUpdates = [] |
| List of extension-provided database updates. | |
| 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. | |
| $shared = false | |
| bool | $skipSchema = false |
| Flag specifying whether or not to skip schema (e.g. | |
| 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 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. | |
| 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. | |
| getDB () | |
| Get a database connection to run updates. | |
| getPostDatabaseUpdateMaintenance () | |
| getSchemaVars () | |
| Get appropriate schema variables in the current database connection. | |
| 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 DatabaseUpdater | |
| static | newForDB (IMaintainableDatabase $db, $shared=false, Maintenance $maintenance=null) |
Public Attributes inherited from DatabaseUpdater | |
| const | REPLICATION_WAIT_TIMEOUT = 300 |
Class for handling updates to Postgres databases.
Definition at line 32 of file PostgresUpdater.php.
|
protected |
Add a value to an existing PostgreSQL enum type.
| string | $type | Type name. Must be in the core schema. |
| string | $value | Value to add. |
Definition at line 988 of file PostgresUpdater.php.
References $type, and DatabaseUpdater\output().
|
protected |
Definition at line 970 of file PostgresUpdater.php.
References $type, DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 838 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 959 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 740 of file PostgresUpdater.php.
References DatabaseUpdater\output(), and setDefault().
|
protected |
Definition at line 849 of file PostgresUpdater.php.
References $res, and DatabaseUpdater\output().
|
protected |
Definition at line 875 of file PostgresUpdater.php.
References $res, and DatabaseUpdater\output().
|
protected |
Definition at line 1037 of file PostgresUpdater.php.
References $command, dropConstraint(), and DatabaseUpdater\output().
|
protected |
Definition at line 930 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 1090 of file PostgresUpdater.php.
References dropConstraint(), and DatabaseUpdater\output().
|
protected |
Definition at line 1072 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 640 of file PostgresUpdater.php.
References $res.
|
protected |
Definition at line 611 of file PostgresUpdater.php.
References $res.
|
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 1132 of file PostgresUpdater.php.
References $type.
Referenced by changeFkeyDeferrable(), changePrimaryKey(), and dropFkey().
|
protected |
Drop a default value from a field.
| string | $table | |
| string | $field |
Definition at line 921 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 1022 of file PostgresUpdater.php.
References dropConstraint(), and DatabaseUpdater\output().
|
protected |
Definition at line 827 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 1065 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 753 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 692 of file PostgresUpdater.php.
|
protected |
Reimplemented from DatabaseUpdater.
Definition at line 42 of file PostgresUpdater.php.
References true.
|
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 the new indexes exist. |
| string | $patch | Path to the patch file |
| bool | $fullpath | Whether to treat $patch path as a relative or not |
Reimplemented from DatabaseUpdater.
Definition at line 792 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 760 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 780 of file PostgresUpdater.php.
References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().
|
protected |
Definition at line 715 of file PostgresUpdater.php.
|
protected |
Definition at line 905 of file PostgresUpdater.php.
References DatabaseUpdater\output().
Referenced by addSequence().
|
protected |
Definition at line 772 of file PostgresUpdater.php.
References DatabaseUpdater\output().
|
protected |
Definition at line 37 of file PostgresUpdater.php.