summaryrefslogtreecommitdiff
path: root/doc/src
AgeCommit message (Collapse)Author
2012-08-10Fix upper limit of superuser_reserved_connections, add limit for wal_sendersMagnus Hagander
Should be limited to the maximum number of connections excluding autovacuum workers, not including. Add similar check for max_wal_senders, which should never be higher than max_connections.
2012-08-09Make psql -1 < file behave as expected.Robert Haas
Previously, the -1 option was silently ignored. Also, emit an error if -1 is used in a context where it won't be respected, to avoid user confusion. Original patch by Fabien COELHO, but this version is quite different from the original submission.
2012-08-08Doc correction to point out that 9.2+ can overwrite pg_xlog files.Simon Riggs
Noted by Noah Misch, patch by Fujii Masao
2012-08-07Implement SQL-standard LATERAL subqueries.Tom Lane
This patch implements the standard syntax of LATERAL attached to a sub-SELECT in FROM, and also allows LATERAL attached to a function in FROM, since set-returning function calls are expected to be one of the principal use-cases. The main change here is a rewrite of the mechanism for keeping track of which relations are visible for column references while the FROM clause is being scanned. The parser "namespace" lists are no longer lists of bare RTEs, but are lists of ParseNamespaceItem structs, which carry an RTE pointer as well as some visibility-controlling flags. Aside from supporting LATERAL correctly, this lets us get rid of the ancient hacks that required rechecking subqueries and JOIN/ON and function-in-FROM expressions for invalid references after they were initially parsed. Invalid column references are now always correctly detected on sight. In passing, remove assorted parser error checks that are now dead code by virtue of our having gotten rid of add_missing_from, as well as some comments that are obsolete for the same reason. (It was mainly add_missing_from that caused so much fudging here in the first place.) The planner support for this feature is very minimal, and will be improved in future patches. It works well enough for testing purposes, though. catversion bump forced due to new field in RangeTblEntry.
2012-08-07Fix to_char(), to_date(), and to_timestamp() to handle negative/BCBruce Momjian
century specifications just like positive/AD centuries. Previously the behavior was either wrong or inconsistent with positive/AD handling. Centuries without years now always assume the first year of the century, which is now documented.
2012-08-06Typo fixes for previous commit.Robert Haas
Noted by Thom Brown.
2012-08-06Warn more vigorously about the non-transactional behavior of sequences.Robert Haas
Craig Ringer, edited fairly heavily by me
2012-08-04Reword documentation for concurrent index rebuilds to be clearer.Bruce Momjian
Backpatch to 9.1 and 9.2.
2012-08-03Add link to synchronous_commit variables in high availability docs.Bruce Momjian
Backpatch to 9.2 Erik Rijkers
2012-08-03Document that trying to exceed temp_file_limit causes a query cancel.Bruce Momjian
Backpatch to 9.2.
2012-08-03Document that, for psql -c, only the result of the last command isBruce Momjian
returned, per report from Aleksey Tsalolikhin Backpatch to 9.2 and 9.1.
2012-08-02Update release notes for libpq feature change.Tom Lane
2012-08-02Replace libpq's "row processor" API with a "single row" mode.Tom Lane
After taking awhile to digest the row-processor feature that was added to libpq in commit 92785dac2ee7026948962cd61c4cd84a2d052772, we've concluded it is over-complicated and too hard to use. Leave the core infrastructure changes in place (that is, there's still a row processor function inside libpq), but remove the exposed API pieces, and instead provide a "single row" mode switch that causes PQgetResult to return one row at a time in separate PGresult objects. This approach incurs more overhead than proper use of a row processor callback would, since construction of a PGresult per row adds extra cycles. However, it is far easier to use and harder to break. The single-row mode still affords applications the primary benefit that the row processor API was meant to provide, namely not having to accumulate large result sets in memory before processing them. Preliminary testing suggests that we can probably buy back most of the extra cycles by micro-optimizing construction of the extra results, but that task will be left for another day. Marko Kreen
2012-08-01Add documentation cross-reference for JSON functions.Tom Lane
Thom Brown
2012-07-31pg_basebackup: stylistic adjustmentsAlvaro Herrera
The most user-visible part of this is to change the long options --statusint and --noloop to --status-interval and --no-loop, respectively, per discussion. Also, consistently enclose file names in double quotes, per our conventions; and consistently use the term "transaction log file" to talk about WAL segments. (Someday we may need to go over this terminology and make it consistent across the whole source code.) Finally, reflow the code to better fit in 80 columns, and have pgindent fix it up some more.
2012-07-30Now that the diskchecker.pl author has updated the download link on hisBruce Momjian
website, revert the separate link to the download git repository. Backpatch from 9.0 to current.
2012-07-26Update doc mention of diskchecker.pl to add URL for script; retain URLBruce Momjian
for description. Patch to 9.0 and later, where script is mentioned.
2012-07-26Document that the pg_upgrade user of rsync might want to skip someBruce Momjian
files, like postmaster.pid. Backpatch to 9.2.
2012-07-25Document that pg_basebackup will create its output directoryPeter Eisentraut
2012-07-24Change syntax of new CHECK NO INHERIT constraintsAlvaro Herrera
The initially implemented syntax, "CHECK NO INHERIT (expr)" was not deemed very good, so switch to "CHECK (expr) NO INHERIT" instead. This way it looks similar to SQL-standards compliant constraint attribute. Backport to 9.2 where the new syntax and feature was introduced. Per discussion.
2012-07-23Make pgbench vacuum before building indexes.Robert Haas
This is apparently faster than doing things the other way around when the scale factor is large. Along the way, adjust -n to suppress vacuuming during initialization as well as during test runs. Jeff Janes, with some small changes by me.
2012-07-20Make new event trigger facility actually do something.Robert Haas
Commit 3855968f328918b6cd1401dd11d109d471a54d40 added syntax, pg_dump, psql support, and documentation, but the triggers didn't actually fire. With this commit, they now do. This is still a pretty basic facility overall because event triggers do not get a whole lot of information about what the user is trying to do unless you write them in C; and there's still no option to fire them anywhere except at the very beginning of the execution sequence, but it's better than nothing, and a good building block for future work. Along the way, add a regression test for ALTER LARGE OBJECT, since testing of event triggers reveals that we haven't got one. Dimitri Fontaine and Robert Haas
2012-07-18Syntax support and documentation for event triggers.Robert Haas
They don't actually do anything yet; that will get fixed in a follow-on commit. But this gets the basic infrastructure in place, including CREATE/ALTER/DROP EVENT TRIGGER; support for COMMENT, SECURITY LABEL, and ALTER EXTENSION .. ADD/DROP EVENT TRIGGER; pg_dump and psql support; and documentation for the anticipated initial feature set. Dimitri Fontaine, with review and a bunch of additional hacking by me. Thom Brown extensively reviewed earlier versions of this patch set, but there's not a whole lot of that code left in this commit, as it turns out.
2012-07-17Show step titles in the pg_upgrade man pagePeter Eisentraut
The upstream XSLT stylesheets missed that case. found by Álvaro Herrera
2012-07-14Add link to PEP 394 regarding python2 vs python3 namingPeter Eisentraut
2012-07-13Add fsync capability to initdb, and use sync_file_range() if available.Tom Lane
Historically we have not worried about fsync'ing anything during initdb (in fact, initdb intentionally passes -F to each backend launch to prevent it from fsync'ing). But with filesystems getting more aggressive about caching data, that's not such a good plan anymore. Make initdb do a pass over the finished data directory tree to fsync everything. For testing purposes, the -N/--nosync flag can be used to restore the old behavior. Also, testing shows that on Linux, sync_file_range() is much faster than posix_fadvise() for hinting to the kernel that an fsync is coming, apparently because the latter blocks on a rather small request queue while the former doesn't. So use this function if available in initdb, and also in the backend's pg_flush_data() (where it currently will affect only the speed of CREATE DATABASE's cloning step). We will later make pg_regress invoke initdb with the --nosync flag to avoid slowing down cases such as "make check" in contrib. But let's not do so until we've shaken out any portability issues in this patch. Jeff Davis, reviewed by Andres Freund
2012-07-11Add array_remove() and array_replace() functions.Tom Lane
These functions support removing or replacing array element value(s) matching a given search value. Although intended mainly to support a future array-foreign-key feature, they seem useful in their own right. Marco Nenciarini and Gabriele Bartolini, reviewed by Alex Hunsaker
2012-07-10Document that Log-Shipping Standby Servers cannot be upgraded byBruce Momjian
pg_upgrade. Backpatch to 9.2.
2012-07-04Run newly-configured perltidy script on Perl files.Bruce Momjian
Run on HEAD and 9.2.
2012-07-04Reduce messages about implicit indexes and sequences to DEBUG1.Robert Haas
Per recent discussion on pgsql-hackers, these messages are too chatty for most users.
2012-07-04Fix sample INSTR function to return 0 if third arg is 0.Robert Haas
Albe Laurenz, per a report by Greg Smith that our sample function doesn't quite match Oracle's behavior.
2012-07-04More doc cleanups for recent shared memory changes.Robert Haas
Josh Kupershmidt
2012-07-04Documentation cleanups for recent shared memory changes.Robert Haas
2012-07-04Remove reference to default wal_buffers being 8Magnus Hagander
This hasn't been true since 9.1, when the default was changed to -1. Remove the reference completely, keeping the discussion of the parameter and it's shared memory effects on the config page.
2012-07-04Remove references to pgfoundry as recommended hosting platformMagnus Hagander
pgfoundry is deprectaed and no longer accepting new projects, so we really shouldn't be directing people there.
2012-07-04Remove references to PostgreSQL bundled on SolarisMagnus Hagander
Also remove special references to downloads off pgfoundry since they are not correct - downloads are done through the main website.
2012-07-02Make commit_delay much smarter.Robert Haas
Instead of letting every backend participating in a group commit wait independently, have the first one that becomes ready to flush WAL wait for the configured delay, and let all the others wait just long enough for that first process to complete its flush. This greatly increases the chances of being able to configure a commit_delay setting that actually improves performance. As a side consequence of this change, commit_delay now affects all WAL flushes, rather than just commits. There was some discussion on pgsql-hackers about whether to rename the GUC to, say, wal_flush_delay, but in the absence of consensus I am leaving it alone for now. Peter Geoghegan, with some changes, mostly to the documentation, by me.
2012-06-27Update release notes for pg_terminate_backend changes.Robert Haas
2012-06-26Allow pg_terminate_backend() to be used on backends with matching role.Robert Haas
A similar change was made previously for pg_cancel_backend, so now it all matches again. Dan Farina, reviewed by Fujii Masao, Noah Misch, and Jeff Davis, with slight kibitzing on the doc changes by me.
2012-06-26Fix pg_upgrade, broken by the xlogid/segno -> 64-bit int refactoring.Heikki Linnakangas
The xlogid + segno representation of a particular WAL segment doesn't make much sense in pg_resetxlog anymore, now that we don't use that anywhere else. Use the WAL filename instead, since that's a convenient way to name a particular WAL segment. I did this partially for pg_resetxlog in the original xlogid/segno -> uint64 patch, but I neglected pg_upgrade and the docs. This should now be more complete.
2012-06-25Replace int2/int4 in C code with int16/int32Peter Eisentraut
The latter was already the dominant use, and it's preferable because in C the convention is that intXX means XX bits. Therefore, allowing mixed use of int2, int4, int8, int16, int32 is obviously confusing. Remove the typedefs for int2 and int4 for now. They don't seem to be widely used outside of the PostgreSQL source tree, and the few uses can probably be cleaned up by the time this ships.
2012-06-22Document that && can be used to search arrays.Robert Haas
Also, add some cross-links to the indexing documentation, so it's easier to notice that && and other array operators have index support. Ryan Kelly, edited by me.
2012-06-22Make placeholders in SQL command help more consistent and precisePeter Eisentraut
To avoid divergent names on related pages, avoid ambiguities, and reduce translation work a little.
2012-06-19Add pgbench option to add foreign key constraints to the standard scenario.Tom Lane
The option --foreign-keys, used at initialization time, will create foreign key constraints for the columns that represent references to other tables' primary keys. This can help in benchmarking FK performance. Jeff Janes
2012-06-20Remove confusing half sentence from legal noticePeter Eisentraut
pointed out by Stefan Kaltenbrunner
2012-06-18Change ON UPDATE SET NULL/SET DEFAULT referential actions to meet SQL spec.Tom Lane
Previously, when executing an ON UPDATE SET NULL or SET DEFAULT action for a multicolumn MATCH SIMPLE foreign key constraint, we would set only those referencing columns corresponding to referenced columns that were changed. This is what the SQL92 standard said to do --- but more recent versions of the standard say that all referencing columns should be set to null or their default values, no matter exactly which referenced columns changed. At least for SET DEFAULT, that is clearly saner behavior. It's somewhat debatable whether it's an improvement for SET NULL, but it appears that other RDBMS systems read the spec this way. So let's do it like that. This is a release-notable behavioral change, although considering that our documentation already implied it was done this way, the lack of complaints suggests few people use such cases.
2012-06-17Refer to the default foreign key match style as MATCH SIMPLE internally.Tom Lane
Previously we followed the SQL92 wording, "MATCH <unspecified>", but since SQL99 there's been a less awkward way to refer to the default style. In addition to the code changes, pg_constraint.confmatchtype now stores this match style as 's' (SIMPLE) rather than 'u' (UNSPECIFIED). This doesn't affect pg_dump or psql because they use pg_get_constraintdef() to reconstruct foreign key definitions. But other client-side code might examine that column directly, so this change will have to be marked as an incompatibility in the 9.3 release notes.
2012-06-18Make documentation of --help and --version options more consistentPeter Eisentraut
Before, some places didn't document the short options (-? and -V), some documented both, some documented nothing, and they were listed in various orders. Now this is hopefully more consistent and complete.
2012-06-17Reorder basebackup options, to list pg_basebackup firstMagnus Hagander
Since this is the easy way of doing it, it should be listed first. All the old information is retained for those who want the more advanced way. Also adds a subheading for compressing logs, that seems to have been missing
2012-06-14Doc corrections for pg_is_in_backup patch.Robert Haas
Fujii Masao