MediaWiki  master
docs/databases/postgres.txt File Reference

Functions

This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of but
without copying over all the
usage comments General notes
on the but these can almost
always be programmed around
*Although Postgres has a true
BOOLEAN boolean columns are
always mapped to as the code
does not always treat the
column as
boolean (which is limited to accepting true, false, 0, 1, t, or f)*The default data type for all VARCHAR
 

Variables

This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of but
without copying over all the
usage comments General notes
on the but these can almost
always be programmed around
*Although Postgres has a true
BOOLEAN boolean columns are
always mapped to as the code
does not always treat the
column as
CHAR
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of but
without copying over all the
usage comments General notes
on the 
conversion
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well 
integrated
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of 
life
 
This document describes the
state of Postgres support in 
MediaWiki
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of but
without copying over all the
usage comments General notes
on the but these can almost
always be programmed around
*Although Postgres has a true
BOOLEAN boolean columns are
always mapped to 
SMALLINT
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss 
Still
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres 
support
 
This document describes the
state of Postgres support in
and is fairly well maintained
The main code is very well
while extensions are very hit
and miss it is probably the
most supported database after
MySQL Much of the work in
making MediaWiki database
agnostic came about through
the work of creating Postgres
as and are nearing end of but
without copying over all the
usage comments General notes
on the but these can almost
always be programmed around
*Although Postgres has a true
BOOLEAN 
type
 

Function Documentation

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of but without copying over all the usage comments General notes on the but these can almost always be programmed around* Although Postgres has a true BOOLEAN boolean columns are always mapped to as the code does not always treat the column as a boolean ( which is limited to accepting  true,
false  ,
,
,
,
or  f 
)

Variable Documentation

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of but without copying over all the usage comments General notes on the but these can almost always be programmed around* Although Postgres has a true BOOLEAN boolean columns are always mapped to as the code does not always treat the column as a CHAR

Definition at line 41 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of but without copying over all the usage comments General notes on the conversion

Definition at line 22 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well integrated

Definition at line 4 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of life
Initial value:
== Database schema ==
Postgres has its own schema file at maintenance/postgres/tables.sql.
The goal is to keep this file as close as possible to the canonical
schema at maintenance/tables.sql
#define the
table suitable for use with IDatabase::select()
Some quick notes on the file repository architecture Functionality is
Definition: README:3
We ve cleaned up the code here by removing clumps of infrequently used code and moving them off somewhere else It s much easier for someone working with this code to see what s _really_ going and make changes or fix bugs In we can take all the code that deals with the little used title reversing we can concentrate it all in an extension file
Definition: hooks.txt:93
This document is intended to provide useful advice for parties seeking to redistribute MediaWiki to end users It s targeted particularly at maintainers for Linux since it s been observed that distribution packages of MediaWiki often break We ve consistently had to recommend that users seeking support use official tarballs instead of their distribution s and this often solves whatever problem the user is having It would be nice if this could such as
Definition: distributors.txt:9
unless you explicitly specified the no dev flag during the install In this case just run composer update Otherwise follow the installation instructions in the PHPUnit Manual at
Definition: README:1
although this is appropriate in some e g manual creation of blank tables prior to an import Most of the PHP scripts need to be run from the command line Prior to doing ensure that the LocalSettings php file in the directory above points to the proper installation Certain scripts will require elevated access to the database In order to provide first create a MySQL user with all permissions on the wiki and then set $wgDBadminuser and $wgDBadminpassword in your LocalSettings e g rebuilding link tables
Definition: README:16

Definition at line 22 of file postgres.txt.

those of us who don t want or need it can just leave it out The extensions don t even have to be shipped with MediaWiki
Initial value:
== Overview ==
Support for PostgreSQL has been available since version 1.7
The MediaWiki class is the helper class for the index.php entry point.
Definition: MediaWiki.php:28
Prior to version
Definition: maintenance.txt:1

Definition at line 4 of file postgres.txt.

Referenced by MediaWikiTest::testTryNormaliseRedirect().

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of but without copying over all the usage comments General notes on the but these can almost always be programmed around* Although Postgres has a true BOOLEAN boolean columns are always mapped to SMALLINT

Definition at line 22 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss Still

Definition at line 4 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres support
Initial value:
== Required versions ==
The current minimum version of PostgreSQL for MediaWiki is 8.1.
It is expected that this will be raised to 8.3 at some point
deferred txt A few of the database updates required by various functions here can be deferred until after the result page is displayed to the user For updating the view updating the linked to tables after a etc PHP does not yet have any way to tell the server to actually return and disconnect while still running these but it might have such a feature in the future We handle these by creating a deferred update object and putting those objects on a global then executing the whole list after the page is displayed We don t do anything smart like collating updates to the same table or such because the list is almost always going to have just one item on if that
Definition: deferred.txt:11
I won t presume to tell you how to I m just describing the methods I chose to use for myself If you do choose to follow these it will probably be easier for you to collaborate with others on the but if you want to contribute without by all means do which work well I also use K &R brace matching style I know that s a religious issue for some
Definition: design.txt:79
globals txt Globals are evil The original MediaWiki code relied on globals for processing context far too often MediaWiki development since then has been a story of slowly moving context out of global variables and into objects Storing processing context in object member variables allows those objects to be reused in a much more flexible way Consider the elegance of
database rows
Definition: globals.txt:10
The MediaWiki class is the helper class for the index.php entry point.
Definition: MediaWiki.php:28
Prior to version
Definition: maintenance.txt:1
Some quick notes on the file repository architecture Functionality is
Definition: README:3
unless you explicitly specified the no dev flag during the install In this case just run composer update Otherwise follow the installation instructions in the PHPUnit Manual at
Definition: README:1
</td >< td > &</td >< td > t want your writing to be edited mercilessly and redistributed at will

Definition at line 14 of file postgres.txt.

This document describes the state of Postgres support in and is fairly well maintained The main code is very well while extensions are very hit and miss it is probably the most supported database after MySQL Much of the work in making MediaWiki database agnostic came about through the work of creating Postgres as and are nearing end of but without copying over all the usage comments General notes on the but these can almost always be programmed around* Although Postgres has a true BOOLEAN type

Definition at line 22 of file postgres.txt.

Referenced by ChangesFeed::__construct(), PoolCounterWork::__construct(), SearchIndexFieldDefinition::__construct(), JobQueue::__construct(), MediaWiki\Auth\Throttler::__construct(), LogPage::__construct(), Exif::__construct(), JobSpecification::__construct(), Site::__construct(), ProtectedPagesPager::__construct(), ManualLogEntry::__construct(), JSNode::__construct(), LogPage::addEntry(), JobQueue::batchPush(), JobQueueDB::claimOldest(), JobQueueDB::claimRandom(), MediaWiki\Auth\Throttler::clear(), JobQueueRedis::doAck(), JobQueueDB::doAck(), JobQueueRedis::doBatchPush(), JobQueueDB::doBatchPushInternal(), JobQueueMemory::doDelete(), JobQueueDB::doDelete(), JobQueueDB::doIsEmpty(), JobQueueDB::doPop(), JobQueueRedis::doPop(), JobQueueRedis::encodeQueueName(), UserloginTemplate::execute(), UpdateLogging::execute(), UsercreateTemplate::execute(), SpecialUnblock::execute(), ChangesFeed::execute(), SkinFallbackTemplate::execute(), JSParser::Expression(), JobQueueDB::getCacheKey(), LogPage::getDescription(), SpecialUnblock::getFields(), File::getIsSafeFileUncached(), RedisLockManager::getLocksOnServer(), LogPage::getName(), ProtectedPagesPager::getQueryInfo(), JobQueueMemory::getQueueData(), Block::getRangeEnd(), Block::getRangeStart(), LogPage::getRestriction(), JobQueue::getRootJobCacheKey(), MediaWiki\Auth\Throttler::increase(), SearchIndexFieldDefinition::merge(), Block::newLoad(), AtomFeed::outHeader(), AtomFeed::outItem(), JobQueue::pop(), JobQueueDB::recycleAndDeleteStaleJobs(), LogPage::saveContent(), DBConnectionError::searchForm(), SpecialBlock::setParameter(), Block::setTarget(), WikiRevision::setType(), EditPage::showFormBeforeText(), LogEventsList::showLogExtract(), and JSParser::Statement().