aboutsummaryrefslogtreecommitdiff
path: root/doc/src
Commit message (Collapse)AuthorAge
...
* Fix docs build.Heikki Linnakangas2014-01-29
| | | | | | Broken by the huge_tlb_pages patch. Vik Fearing.
* Allow using huge TLB pages on Linux (MAP_HUGETLB)Heikki Linnakangas2014-01-29
| | | | | | | | | | | | | | | | | | | | | | This patch adds an option, huge_tlb_pages, which allows requesting the shared memory segment to be allocated using huge pages, by using the MAP_HUGETLB flag in mmap(). This can improve performance. The default is 'try', which means that we will attempt using huge pages, and fall back to non-huge pages if it doesn't work. Currently, only Linux has MAP_HUGETLB. On other platforms, the default 'try' behaves the same as 'off'. In the passing, don't try to round the mmap() size to a multiple of pagesize. mmap() doesn't require that, and there's no particular reason for PostgreSQL to do that either. When using MAP_HUGETLB, however, round the request size up to nearest 2MB boundary. This is to work around a bug in some Linux kernel versions, but also to avoid wasting memory, because the kernel will round the size up anyway. Many people were involved in writing this patch, including Christian Kruse, Richard Poole, Abhijit Menon-Sen, reviewed by Peter Geoghegan, Andres Freund and me.
* Minor docs fixes for new json functions.Andrew Dunstan2014-01-28
| | | | Thom Brown.
* New json functions.Andrew Dunstan2014-01-28
| | | | | | | | | | | | | json_build_array() and json_build_object allow for the construction of arbitrarily complex json trees. json_object() turns a one or two dimensional array, or two separate arrays, into a json_object of name/value pairs, similarly to the hstore() function. json_object_agg() aggregates its two arguments into a single json object as name value pairs. Catalog version bumped. Andrew Dunstan, reviewed by Marko Tiikkaja.
* Add pg_stat_archiver statistics view.Fujii Masao2014-01-29
| | | | | | This view shows the statistics about the WAL archiver process's activity. Gabriele Bartolini, reviewed by Michael Paquier, refactored a bit by me.
* Keep pg_stat_statements' query texts in a file, not in shared memory.Tom Lane2014-01-27
| | | | | | | | | | | | | | | | | | | | | | | | This change allows us to eliminate the previous limit on stored query length, and it makes the shared-memory hash table very much smaller, allowing more statements to be tracked. (The default value of pg_stat_statements.max is therefore increased from 1000 to 5000.) In typical scenarios, the hash table can be large enough to hold all the statements commonly issued by an application, so that there is little "churn" in the set of tracked statements, and thus little need to do I/O to the file. To further reduce the need for I/O to the query-texts file, add a way to retrieve all the columns of the pg_stat_statements view except for the query text column. This is probably not of much interest for human use but it could be exploited by programs, which will prefer using the queryid anyway. Ordinarily, we'd need to bump the extension version number for the latter change. But since we already advanced pg_stat_statements' version number from 1.1 to 1.2 in the 9.4 development cycle, it seems all right to just redefine what 1.2 means. Peter Geoghegan, reviewed by Pavel Stehule
* Relax the requirement that all lwlocks be stored in a single array.Robert Haas2014-01-27
| | | | | | | | | | | | | | This makes it possible to store lwlocks as part of some other data structure in the main shared memory segment, or in a dynamic shared memory segment. There is still a main LWLock array and this patch does not move anything out of it, but it provides necessary infrastructure for doing that in the future. This change is likely to increase the size of LWLockPadded on some platforms, especially 32-bit platforms where it was previously only 16 bytes. Patch by me. Review by Andres Freund and KaiGai Kohei.
* Code review for auto-tuned effective_cache_size.Tom Lane2014-01-27
| | | | | | Fix integer overflow issue noted by Magnus Hagander, as well as a bunch of other infelicities in commit ee1e5662d8d8330726eaef7d3110cb7add24d058 and its unreasonably large number of followups.
* Provide for client-only installs with MSVC.Andrew Dunstan2014-01-26
| | | | MauMau.
* Enable building with Visual Studion 2013.Andrew Dunstan2014-01-26
| | | | | | Backpatch to 9.3. Brar Piening.
* Use E, not e, for escaping in example docsStephen Frost2014-01-26
| | | | | | | | From the Department of Nitpicking, be consistent with other escaping and use 'E' instead of 'e' to escape the string in the example docs for GET DISAGNOSTICS stack = PG_CONTEXT. Noticed by Department Chief Magnus Hagander.
* Copy-editing docs for recovery_target='immediate', and "ie."Heikki Linnakangas2014-01-25
| | | | | | Phrase the sentence better. Also, spell "i.e." rather than "ie." Thom Brown
* docs: mention CREATE TABLE LIKE linkage using INCLUDING DEFAULTSBruce Momjian2014-01-25
| | | | | | Mention that CREATE TABLE LIKE INCLUDING DEFAULTS creates a link between the original and new tables if a default function modifies the database, like nextval().
* Add recovery_target='immediate' option.Heikki Linnakangas2014-01-25
| | | | | | | | This allows ending recovery as a consistent state has been reached. Without this, there was no easy way to e.g restore an online backup, without replaying any extra WAL after the backup ended. MauMau and me.
* ALTER TABLESPACE ... MOVE ... OWNED BYStephen Frost2014-01-23
| | | | | | | | | | Add the ability to specify the objects to move by who those objects are owned by (as relowner) and change ALL to mean ALL objects. This makes the command always operate against a well-defined set of objects and not have the objects-to-be-moved based on the role of the user running the command. Per discussion with Simon and Tom.
* Remove duplicate index entry DATE_TRUNC in document.Fujii Masao2014-01-24
|
* Add libpq function PQhostaddr().Fujii Masao2014-01-24
| | | | | | | | | | | | | | | | There was a bug in the psql's meta command \conninfo. When the IP address was specified in the hostaddr and psql used it to create a connection (i.e., psql -d "hostaddr=xxx"), \conninfo could not display that address. This is because \conninfo got the connection information only from PQhost() which could not return hostaddr. This patch adds PQhostaddr(), and changes \conninfo so that it can display not only the host name that PQhost() returns but also the IP address which PQhostaddr() returns. The bug has existed since 9.1 where \conninfo was introduced. But it's too late to add new libpq function into the released versions, so no backpatch.
* Add date_trunc('', interval) documentation mentionBruce Momjian2014-01-22
| | | | Report from Eric Howe
* Add a cardinality function for arrays.Robert Haas2014-01-21
| | | | | | | | | Unlike our other array functions, this considers the total number of elements across all dimensions, and returns 0 rather than NULL when the array has no elements. But it seems that both of those behaviors are almost universally disliked, so hopefully that's OK. Marko Tiikkaja, reviewed by Dean Rasheed and Pavel Stehule
* Remove support for native krb5 authenticationMagnus Hagander2014-01-19
| | | | | | | | | | | krb5 has been deprecated since 8.3, and the recommended way to do Kerberos authentication is using the GSSAPI authentication method (which is still fully supported). libpq retains the ability to identify krb5 authentication, but only gives an error message about it being unsupported. Since all authentication is initiated from the backend, there is no need to keep it at all in the backend.
* Add CREATE TABLESPACE ... WITH ... OptionsStephen Frost2014-01-18
| | | | | | | | | | | | | Tablespaces have a few options which can be set on them to give PG hints as to how the tablespace behaves (perhaps it's faster for sequential scans, or better able to handle random access, etc). These options were only available through the ALTER TABLESPACE command. This adds the ability to set these options at CREATE TABLESPACE time, removing the need to do both a CREATE TABLESPACE and ALTER TABLESPACE to get the correct options set on the tablespace. Vik Fearing, reviewed by Michael Paquier.
* Add ALTER TABLESPACE ... MOVE commandStephen Frost2014-01-18
| | | | | | | | | This adds a 'MOVE' sub-command to ALTER TABLESPACE which allows moving sets of objects from one tablespace to another. This can be extremely handy and avoids a lot of error-prone scripting. ALTER TABLESPACE ... MOVE will only move objects the user owns, will notify the user if no objects were found, and can be used to move ALL objects or specific types of objects (TABLES, INDEXES, or MATERIALIZED VIEWS).
* Add gen_random_uuid() to contrib/pgcrypto.Tom Lane2014-01-17
| | | | | | | | | | | This function provides a way of generating version 4 (pseudorandom) UUIDs based on pgcrypto's PRNG. The main reason for doing this is that the OSSP UUID library depended on by contrib/uuid-ossp is becoming more and more of a porting headache, so we need an alternative for people who can't install that. A nice side benefit though is that this implementation is noticeably faster than uuid-ossp's uuid_generate_v4() function. Oskari Saarenmaa, reviewed by Emre Hasegeli
* doc: rename "Equals" to "Equal"Bruce Momjian2014-01-16
|
* doc: fix := description typo.Bruce Momjian2014-01-16
|
* docs: update PL/pgSQL docs about the use of := and =Bruce Momjian2014-01-16
|
* Add display of oprcode (the underlying function's name) to psql's \do+.Tom Lane2014-01-16
| | | | | | | | | The + modifier of \do didn't use to do anything, but now it adds an oprcode column. This is useful both as an additional form of documentation of what the operator does, and to save a step when finding out properties of the underlying function. Marko Tiikkaja, reviewed by Rushabh Lathia, adjusted a bit by me
* Improve FILES section of psql reference page.Tom Lane2014-01-14
| | | | | | | | | | | | Primarily, explain where to find the system-wide psqlrc file, per recent gripe from John Sutton. Do some general wordsmithing and improve the markup, too. Also adjust psqlrc.sample so its comments about file location are somewhat trustworthy. (Not sure why we bother with this file when it's empty, but whatever.) Back-patch to 9.2 where the startup file naming scheme was last changed.
* Documentation for test_shm_mq.Robert Haas2014-01-14
| | | | | Commit 4db3744f1f43554b03d8193da4645a0a5326eb18 added this contrib module but neglected to document it. Oops.
* Mention that VACUUM FREEZE also effectively zeroes the table freeze age.Robert Haas2014-01-14
| | | | Maciek Sakrejda, reviewed by Amit Kapila
* Add OVERLAPS to index in the docs.Heikki Linnakangas2014-01-13
| | | | Per report from Adam Mackler and Jonathan Katz
* Revert fd2ace802811c333b0b4e1a28b138fd4774745f3Bruce Momjian2014-01-11
| | | | Seems we want to document '=' plpgsql assignment instead.
* docs: remove undocumented assign syntax in plpgsql examplesBruce Momjian2014-01-11
| | | | Pavel Stehule
* Update copyright for 2014Bruce Momjian2014-01-07
| | | | | Update all files in head, and files COPYRIGHT and legal.sgml in all back branches.
* Add more use of psprintf()Peter Eisentraut2014-01-06
|
* Aggressively freeze tables when CLUSTER or VACUUM FULL rewrites them.Robert Haas2014-01-02
| | | | | | | | | We haven't wanted to do this in the past on the grounds that in rare cases the original xmin value will be needed for forensic purposes, but commit 37484ad2aacef5ec794f4dd3d5cf814475180a78 removes that objection, so now we can. Per extensive discussion, among many people, on pgsql-hackers.
* Fix alphabetization in catalogs.sgml.Tom Lane2013-12-30
| | | | | Some recent patches seem not to have grasped the concept that the catalogs are described in alphabetical order.
* Revise documentation for new freezing method.Robert Haas2013-12-23
| | | | | | | | Commit 37484ad2aacef5ec794f4dd3d5cf814475180a78 invalidated a good chunk of documentation, so patch it up to reflect the new state of play. Along the way, patch remaining documentation references to FrozenXID to say instead FrozenTransactionId, so that they match the way we actually spell it in the code.
* Support ordered-set (WITHIN GROUP) aggregates.Tom Lane2013-12-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces generic support for ordered-set and hypothetical-set aggregate functions, as well as implementations of the instances defined in SQL:2008 (percentile_cont(), percentile_disc(), rank(), dense_rank(), percent_rank(), cume_dist()). We also added mode() though it is not in the spec, as well as versions of percentile_cont() and percentile_disc() that can compute multiple percentile values in one pass over the data. Unlike the original submission, this patch puts full control of the sorting process in the hands of the aggregate's support functions. To allow the support functions to find out how they're supposed to sort, a new API function AggGetAggref() is added to nodeAgg.c. This allows retrieval of the aggregate call's Aggref node, which may have other uses beyond the immediate need. There is also support for ordered-set aggregates to install cleanup callback functions, so that they can be sure that infrastructure such as tuplesort objects gets cleaned up. In passing, make some fixes in the recently-added support for variadic aggregates, and make some editorial adjustments in the recent FILTER additions for aggregates. Also, simplify use of IsBinaryCoercible() by allowing it to succeed whenever the target type is ANY or ANYELEMENT. It was inconsistent that it dealt with other polymorphic target types but not these. Atri Sharma and Andrew Gierth; reviewed by Pavel Stehule and Vik Fearing, and rather heavily editorialized upon by Tom Lane
* Rename wal_log_hintbits to wal_log_hints, per discussion on pgsql-hackers.Fujii Masao2013-12-21
| | | | Sawada Masahiko
* pg_prewarm, a contrib module for prewarming relationd data.Robert Haas2013-12-20
| | | | | Patch by me. Review by Álvaro Herrera, Amit Kapila, Jeff Janes, Gurjeet Singh, and others.
* Fix typo in docs for min_recovery_apply_delay.Fujii Masao2013-12-19
| | | | Bernd Helmle
* Add ALTER SYSTEM command to edit the server configuration file.Tatsuo Ishii2013-12-18
| | | | | Patch contributed by Amit Kapila. Reviewed by Hari Babu, Masao Fujii, Boszormenyi Zoltan, Andres Freund, Greg Smith and others.
* Allow empty target list in SELECT.Tom Lane2013-12-14
| | | | | | | | | | | | | | | | | | | | | | | This fixes a problem noted as a followup to bug #8648: if a query has a semantically-empty target list, e.g. SELECT * FROM zero_column_table, ruleutils.c will dump it as a syntactically-empty target list, which was not allowed. There doesn't seem to be any reliable way to fix this by hacking ruleutils (note in particular that the originally zero-column table might since have had columns added to it); and even if we had such a fix, it would do nothing for existing dump files that might contain bad syntax. The best bet seems to be to relax the syntactic restriction. Also, add parse-analysis errors for SELECT DISTINCT with no columns (after *-expansion) and RETURNING with no columns. These cases previously produced unexpected behavior because the parsed Query looked like it had no DISTINCT or RETURNING clause, respectively. If anyone ever offers a plausible use-case for this, we could work a bit harder on making the situation distinguishable. Arguably this is a bug fix that should be back-patched, but I'm worried that there may be client apps or PLs that expect "SELECT ;" to throw a syntax error. The issue doesn't seem important enough to risk changing behavior in minor releases.
* Fix more instances of "the the" in comments.Heikki Linnakangas2013-12-13
| | | | Plus one instance of "to to" in the docs.
* Add GUC to enable WAL-logging of hint bits, even with checksums disabled.Heikki Linnakangas2013-12-13
| | | | | | | | | | | | | WAL records of hint bit updates is useful to tools that want to examine which pages have been modified. In particular, this is required to make the pg_rewind tool safe (without checksums). This can also be used to test how much extra WAL-logging would occur if you enabled checksums, without actually enabling them (which you can't currently do without re-initdb'ing). Sawada Masahiko, docs by Samrat Revagade. Reviewed by Dilip Kumar, with further changes by me.
* Fix double "the" in the documentationMagnus Hagander2013-12-13
| | | | Erik Rijkers
* configure: Allow adding a custom string to PG_VERSIONPeter Eisentraut2013-12-12
| | | | | | | | This can be used to mark custom built binaries with an extra version string such as a git describe identifier or distribution package release version. From: Oskari Saarenmaa <os@ohmu.fi>
* Fix ancient docs/comments thinko: XID comparison is mod 2^32, not 2^31.Tom Lane2013-12-12
| | | | Pointed out by Gianni Ciolli.
* Improve EXPLAIN to print the grouping columns in Agg and Group nodes.Tom Lane2013-12-12
| | | | Per request from Kevin Grittner.