summaryrefslogtreecommitdiff
path: root/doc/src
AgeCommit message (Collapse)Author
2011-02-08Named restore points in recovery. Users can record named points, thenSimon Riggs
new recovery.conf parameter recovery_target_name allows PITR to specify named points as recovery targets. Jaime Casanova, reviewed by Euler Taveira de Oliveira, plus minor edits
2011-02-08Basic Recovery Control functions for use in Hot Standby. Pause, Resume,Simon Riggs
Status check functions only. Also, new recovery.conf parameter to pause_at_recovery_target, default on. Simon Riggs, reviewed by Fujii Masao
2011-02-08Extend ALTER TABLE to allow Foreign Keys to be added without initial validation.Simon Riggs
FK constraints that are marked NOT VALID may later be VALIDATED, which uses an ShareUpdateExclusiveLock on constraint table and RowShareLock on referenced table. Significantly reduces lock strength and duration when adding FKs. New state visible from psql. Simon Riggs, with reviews from Marko Tiikkaja and Robert Haas
2011-02-08Fix copy-pasto in description of pg_serial, and silence compiler warningHeikki Linnakangas
about uninitialized field you get on some compilers.
2011-02-07Avoid having autovacuum workers wait for relation locks.Robert Haas
Waiting for relation locks can lead to starvation - it pins down an autovacuum worker for as long as the lock is held. But if we're doing an anti-wraparound vacuum, then we still wait; maintenance can no longer be put off. To assist with troubleshooting, if log_autovacuum_min_duration >= 0, we log whenever an autovacuum or autoanalyze is skipped for this reason. Per a gripe by Josh Berkus, and ensuing discussion.
2011-02-08Oops, forgot to bump catversion in the Serializable Snapshot Isolation patch.Heikki Linnakangas
I thought we didn't need that, but then I remembered that it added a new SLRU subdirectory, pg_serial. While we're at it, document what pg_serial is.
2011-02-08Implement genuine serializable isolation level.Heikki Linnakangas
Until now, our Serializable mode has in fact been what's called Snapshot Isolation, which allows some anomalies that could not occur in any serialized ordering of the transactions. This patch fixes that using a method called Serializable Snapshot Isolation, based on research papers by Michael J. Cahill (see README-SSI for full references). In Serializable Snapshot Isolation, transactions run like they do in Snapshot Isolation, but a predicate lock manager observes the reads and writes performed and aborts transactions if it detects that an anomaly might occur. This method produces some false positives, ie. it sometimes aborts transactions even though there is no anomaly. To track reads we implement predicate locking, see storage/lmgr/predicate.c. Whenever a tuple is read, a predicate lock is acquired on the tuple. Shared memory is finite, so when a transaction takes many tuple-level locks on a page, the locks are promoted to a single page-level lock, and further to a single relation level lock if necessary. To lock key values with no matching tuple, a sequential scan always takes a relation-level lock, and an index scan acquires a page-level lock that covers the search key, whether or not there are any matching keys at the moment. A predicate lock doesn't conflict with any regular locks or with another predicate locks in the normal sense. They're only used by the predicate lock manager to detect the danger of anomalies. Only serializable transactions participate in predicate locking, so there should be no extra overhead for for other transactions. Predicate locks can't be released at commit, but must be remembered until all the transactions that overlapped with it have completed. That means that we need to remember an unbounded amount of predicate locks, so we apply a lossy but conservative method of tracking locks for committed transactions. If we run short of shared memory, we overflow to a new "pg_serial" SLRU pool. We don't currently allow Serializable transactions in Hot Standby mode. That would be hard, because even read-only transactions can cause anomalies that wouldn't otherwise occur. Serializable isolation mode now means the new fully serializable level. Repeatable Read gives you the old Snapshot Isolation level that we have always had. Kevin Grittner and Dan Ports, reviewed by Jeff Davis, Heikki Linnakangas and Anssi Kääriäinen
2011-02-06remove tags.Bruce Momjian
2011-02-06Force strings passed to and from plperl to be in UTF8 encoding.Andrew Dunstan
String are converted to UTF8 on the way into perl and to the database encoding on the way back. This avoids a number of observed anomalies, and ensures Perl a consistent view of the world. Some minor code cleanups are also accomplished. Alex Hunsaker, reviewed by Andy Colson.
2011-02-06Adjust libpq docs to be clearer about 'hostaddr' usage by rewording andBruce Momjian
using an itemized list.
2011-02-04Add doc comment that installation.sgml can't use xrefs.Bruce Momjian
2011-02-04In docs, move PQrequestCancel() deprecation mention up to match otherBruce Momjian
libpq doc mentions.
2011-02-04Update ALTER TABLE docs to mention using VACUUM FULL for rewrites.Robert Haas
Remove the claim that ALTER TABLE .. SET DATA TYPE is the fastest way of rewriting a table, since it no longer is. Noah Misch and Robert Haas, based on a suggestion from Tom Lane.
2011-02-04Attempt to un-break the documentation build againMagnus Hagander
Another case of <xref linkend> in the documentation that builds INSTALL, which is not allowed.
2011-02-03Avoid maintaining three separate copies of the error codes list.Robert Haas
src/pl/plpgsql/src/plerrcodes.h, src/include/utils/errcodes.h, and a big chunk of errcodes.sgml are now automatically generated from a single file, src/backend/utils/errcodes.txt. Jan Urbański, reviewed by Tom Lane.
2011-02-03ALTER TABLE sometimes takes only ShareUpdateExclusiveLock.Robert Haas
Along the way, be more consistent about the wording we use here.
2011-02-03In docs, PL is Procedural Language, not Programming Language.Bruce Momjian
Satoshi Nagayasu
2011-02-03Include more status information in walsender resultsMagnus Hagander
Add the current xlog insert location to the response of IDENTIFY_SYSTEM, and adds result sets containing start and stop location of backups to BASE_BACKUP responses.
2011-02-03Fix typo.Magnus Hagander
Thom Brown
2011-02-03Further sepgsql documentation cleanup.Robert Haas
2011-02-02sepgsql doc fixRobert Haas
KaiGai Kohei
2011-02-02Log restartpoints in the same fashion as checkpoints.Robert Haas
Prior to 9.0, restartpoints never created, deleted, or recycled WAL files, but now they can. This code makes log_checkpoints treat checkpoints and restartpoints symmetrically. It also adjusts up the documentation of the parameter to mention restartpoints. Fujii Masao. Docs by me, as suggested by Itagaki Takahiro.
2011-02-02Mark all GUC variables with <varname> markup, rather than <literal>.Bruce Momjian
2011-02-02Wrap PL/Python SPI calls into subtransactionsPeter Eisentraut
This allows the language-specific try/catch construct to catch and handle exceptions arising from SPI calls, matching the behavior of other PLs. As an additional bonus you no longer get all the ugly "unrecognized error in PLy_spi_execute_query" errors. Jan Urbański, reviewed by Steve Singer
2011-02-01Document that CREATE VIEW that uses "*" for the column list will notBruce Momjian
auto-add columns later added to the base table.
2011-02-01Properly capitalize hyphenated words in documentation titles.Bruce Momjian
2011-02-01Clarify documentation to state that "zero_damaged_pages" does not forceBruce Momjian
data to disk, so the table or index should be recreated before the parameter is turned off again.
2011-02-01Document that effective cache size does not assume data remains in theBruce Momjian
cache between queries.
2011-02-01Document that Slony can do upgrades easier _because_ it supportsBruce Momjian
replication between different Postgres major versions.
2011-02-01Clarify pg_upgrade install instructions, per suggestion from Robert Haas.Bruce Momjian
2011-02-01Add missing period "." in pg_upgrade documentation.Bruce Momjian
2011-02-01Re-classify ERRCODE_DATABASE_DROPPED to 57P04Simon Riggs
2011-02-01Add a link from client_encoding parameter to the list of character setsItagaki Takahiro
in documentation. Thom Brown
2011-01-31Improve docs for pg_authid encryption description with better markup andBruce Momjian
a mention of unencrypted passwords.
2011-01-31In pg_authid.rolpassword docs, make "md5" appear as a literal.Bruce Momjian
2011-01-31Support LIKE and ILIKE index searches via contrib/pg_trgm indexes.Tom Lane
Unlike Btree-based LIKE optimization, this works for non-left-anchored search patterns. The effectiveness of the search depends on how many trigrams can be extracted from the pattern. (The worst case, with no trigrams, degrades to a full-table scan, so this isn't a panacea. But it can be very useful.) Alexander Korotkov, reviewed by Jan Urbanski
2011-02-01Create new errcode for recovery conflict caused by db drop on master.Simon Riggs
Previously reported as ERRCODE_ADMIN_SHUTDOWN, this case is now reported as ERRCODE_T_R_DATABASE_DROPPED. No message text change. Unlikely to happen on most servers, so low impact change to allow session poolers to correctly handle this situation. Tatsuo Ishii, edits by me, review by Robert Haas
2011-01-31Remove spurious word, spotted by Thom Brown.Heikki Linnakangas
2011-01-31Update pg_upgrade docs to mention its use in a less risk-warning way,Bruce Momjian
and update the pg_upgrade docs to mention its reliance on no changes to the storage format (the later based on Robert Haas's patch).
2011-01-31Fix SGML markup for upgrade doc addition.Bruce Momjian
2011-01-31Update docs on building for Windows to accomodate current reality.Andrew Dunstan
Document how to build 64 bit Windows binaries using the MinGW64 tool set. Remove recommendation against using Mingw as a build platform. Be more specific about when Cygwin is useful and when it's not, in particular note its usefulness for running psql, and add a note about building on Cygwin in non-C locales. Per recent discussions.
2011-01-31Move upgrade instructions into its own section under "Server Setup andBruce Momjian
Operation", merged from upgrade sections in "Installation from Source Code" and "Backup and Restore". This now gives a single place for all upgrade information.
2011-01-31Support multiple concurrent pg_basebackup backups.Heikki Linnakangas
With this patch, pg_basebackup doesn't write a backup_label file in the data directory, so it doesn't interfere with a pg_start/stop_backup() based backup anymore. backup_label is still included in the backup, but it is injected directly into the tar stream. Heikki Linnakangas, reviewed by Fujii Masao and Magnus Hagander.
2011-01-30Add option to include WAL in base backupMagnus Hagander
When included, this makes the base backup a complete working "clone" of the initial database, ready to have a postmaster started against it without the need to set up any log archiving or similar. Magnus Hagander, reviewed by Fujii Masao and Heikki Linnakangas
2011-01-29Properly capitalize documentation headings; some only had initial-wordBruce Momjian
capitalization.
2011-01-29Make installation.sgml build standalone again.Tom Lane
We must not try to link to sections that aren't part of the standalone "make INSTALL" build. Corrects build failure introduced in commit 159e3d86292cfec2a2828f9f69ac7a6cb1be242d.
2011-01-28Copy-edit a paragraph in the contrib/seg documentation.Tom Lane
Although this improves the style, an ulterior motive is to keep the two table links from breaking across lines in PDF output, per complaint from Josh Kupershmidt.
2011-01-27Rephrase pg_conversion description to avoid splitting link across page.Tom Lane
The link to the CREATE CONVERSION manual page was split across a page boundary in the PDF output, leading to "\pdfendlink ended up in different nesting level than \pdfstartlink" error while building PDFs. It wouldn't be worth changing text that's undergoing active editing to avoid this, since other editing might result in moving the link away from the page end anyway. But this paragraph has been static for a long time, so might as well fix it to prevent it from being an issue in future.
2011-01-27Update release notes.Tom Lane
Security: CVE-2010-4015
2011-01-27Update release notes for releases 9.0.3, 8.4.7, 8.3.14, and 8.2.20.Tom Lane