MediaWiki  REL1_20
PostgresUpdater Class Reference

Class for handling updates to Postgres databases. More...

Inheritance diagram for PostgresUpdater:
Collaboration diagram for PostgresUpdater:

List of all members.

Public Member Functions

 addPgExtIndex ($table, $index, $type)
 addPgIndex ($table, $index, $type)
 describeIndex ($idx)
 fkeyDeltype ($fkey)
 ruleDef ($table, $rule)

Protected Member Functions

 addInterwikiType ()
 addPgField ($table, $field, $type)
 addSequence ($table, $pkey, $ns)
 changeField ($table, $field, $newtype, $default)
 changeFkeyDeferrable ($table, $field, $clause)
 changeNullableField ($table, $field, $null)
 checkIndex ($index, $should_be, $good_def)
 checkIwlPrefix ()
 checkOiDeleted ()
 checkOiNameConstraint ()
 checkPageDeletedTrigger ()
 checkRevUserFkey ()
 convertArchive2 ()
 describeTable ($table)
 dropIndex ($table, $index, $patch= '', $fullpath=false)
 Drop an index from an existing table.
 getCoreUpdateList ()
 getOldGlobalUpdates ()
 Before 1.17, we used to handle updates via stuff like $wgExtNewTables/Fields/Indexes.
 renameIndex ($table, $old, $new)
 renameSequence ($old, $new)
 renameTable ($old, $new, $patch=false)
 setDefault ($table, $field, $default)
 tsearchFixes ()

Protected Attributes

DatabasePostgres $db
 Handle to the database subclass.

Detailed Description

Class for handling updates to Postgres databases.

Since:
1.17

Definition at line 31 of file PostgresUpdater.php.


Member Function Documentation

Definition at line 736 of file PostgresUpdater.php.

References DatabaseUpdater\applyPatch().

PostgresUpdater::addPgExtIndex ( table,
index,
type 
)

Definition at line 610 of file PostgresUpdater.php.

References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().

PostgresUpdater::addPgField ( table,
field,
type 
) [protected]

Definition at line 530 of file PostgresUpdater.php.

References DatabaseUpdater\output().

PostgresUpdater::addPgIndex ( table,
index,
type 
)

Definition at line 601 of file PostgresUpdater.php.

References DatabaseUpdater\output().

PostgresUpdater::addSequence ( table,
pkey,
ns 
) [protected]

Definition at line 490 of file PostgresUpdater.php.

References DatabaseUpdater\output(), and setDefault().

PostgresUpdater::changeField ( table,
field,
newtype,
default 
) [protected]

Definition at line 541 of file PostgresUpdater.php.

References $res, and DatabaseUpdater\output().

PostgresUpdater::changeFkeyDeferrable ( table,
field,
clause 
) [protected]

Definition at line 623 of file PostgresUpdater.php.

References $command, and DatabaseUpdater\output().

PostgresUpdater::changeNullableField ( table,
field,
null 
) [protected]

Definition at line 575 of file PostgresUpdater.php.

References DatabaseUpdater\output().

PostgresUpdater::checkIndex ( index,
should_be,
good_def 
) [protected]

Definition at line 704 of file PostgresUpdater.php.

References DatabaseUpdater\output().

Definition at line 730 of file PostgresUpdater.php.

References DatabaseUpdater\applyPatch().

Definition at line 662 of file PostgresUpdater.php.

References DatabaseUpdater\output().

Definition at line 673 of file PostgresUpdater.php.

References DatabaseUpdater\output().

Definition at line 398 of file PostgresUpdater.php.

References $res.

PostgresUpdater::describeTable ( table) [protected]

Definition at line 374 of file PostgresUpdater.php.

References $res.

PostgresUpdater::dropIndex ( table,
index,
patch = '',
fullpath = false 
) [protected]

Drop an index from an existing table.

Parameters:
$tableString: Name of the table to modify
$indexString: Name of the old index
$patchString: Path to the patch file
$fullpathBoolean: Whether to treat $patch path as a relative or not

Reimplemented from DatabaseUpdater.

Definition at line 697 of file PostgresUpdater.php.

References DatabaseUpdater\output().

Definition at line 447 of file PostgresUpdater.php.

Referenced by checkRevUserFkey().

Todo:
FIXME: Postgres should use sequential updates like Mysql, Sqlite and everybody else.

It never got refactored like it should've.

Returns:
array

Reimplemented from DatabaseUpdater.

Definition at line 42 of file PostgresUpdater.php.

Before 1.17, we used to handle updates via stuff like $wgExtNewTables/Fields/Indexes.

This is nasty :) We refactored a lot of this in 1.17 but we want to remain back-compatible for a while. So load up these old global-based things into our update list.

Returns:
array

Reimplemented from DatabaseUpdater.

Definition at line 335 of file PostgresUpdater.php.

References DatabaseUpdater\$updates.

PostgresUpdater::renameIndex ( table,
old,
new 
) [protected]

Definition at line 523 of file PostgresUpdater.php.

References DatabaseUpdater\output().

PostgresUpdater::renameSequence ( old,
new 
) [protected]

Definition at line 500 of file PostgresUpdater.php.

References DatabaseUpdater\output().

PostgresUpdater::renameTable ( old,
new,
patch = false 
) [protected]

Definition at line 511 of file PostgresUpdater.php.

References DatabaseUpdater\applyPatch(), and DatabaseUpdater\output().

PostgresUpdater::ruleDef ( table,
rule 
)

Definition at line 467 of file PostgresUpdater.php.

PostgresUpdater::setDefault ( table,
field,
default 
) [protected]

Definition at line 566 of file PostgresUpdater.php.

References DatabaseUpdater\output().

Referenced by addSequence().

Definition at line 740 of file PostgresUpdater.php.

References DatabaseUpdater\applyPatch().


Member Data Documentation

DatabasePostgres PostgresUpdater::$db [protected]

Handle to the database subclass.

Reimplemented from DatabaseUpdater.

Definition at line 35 of file PostgresUpdater.php.


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