summaryrefslogtreecommitdiff
path: root/doc/src
AgeCommit message (Collapse)Author
2023-11-20docs: meson: Change what 'docs' target buildsAndres Freund
This undoes the change in what the 'docs' target builds 969509c3f2e. Tom was concerned with having a target to just build the html docs, which a prior commit now provided explicitly. A subsequent commit will overhaul the documentation for the documentation targets. While at it, move all target in doc/src/sgml/Makefile up to just after the default "html" target, and add a comment explaining "all" is *not* the default target. Reviewed-by: Peter Eisentraut <peter@eisentraut.org> Discussion: https://postgr.es/m/20230209203855.njrepiupc3rmehfw@awork3.anarazel.de Discussion: https://postgr.es/m/20231103163848.26egkh5qdgw3vmil@awork3.anarazel.de
2023-11-20meson: docs: Add {html,man} targets, rename install-doc-*Andres Freund
We have toplevel html, man targets in the autoconf build as well. It'd be odd to have an 'html' target but have the install target be 'install-doc-html', thus rename the install targets to match. Reviewed-by: Christoph Berg <myon@debian.org> Reviewed-by: Peter Eisentraut <peter@eisentraut.org> Discussion: https://postgr.es/m/20231103163848.26egkh5qdgw3vmil@awork3.anarazel.de
2023-11-18doc: improve description of privileges for MERGE and update glossary.Dean Rasheed
On the MERGE page, the description of the privileges required could be taken to imply that the SELECT privilege is required on all columns of the data source, whereas actually it is only required on the columns referred to by conditions or expressions in the MERGE command. Re-word it to make that a little clearer, and mention expressions as well as conditions. Also, add a glossary entry for MERGE, and nearby on the glossary page, mention MERGE in the list of commands that cannot update a materialized view. Noted by Jian He. Patch by me, reviewed by Jian He. Discussion: https://postgr.es/m/CACJufxHuSoRXKwr0MtSFLXuT2nFVWcVfEWhxg7qdP9h%2Bs3a%2BUw%40mail.gmail.com
2023-11-17docs: Fix standalone INSTALL, broken in 06c70849fb2Andres Freund
We should probably check that INSTALL can be generated in CI. Reported-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/795075.1700254192@sss.pgh.pa.us
2023-11-17doc: update query section to show LIMIT/OFFSET like SELECTBruce Momjian
The parameter names were slightly better in SELECT, so make them match. Reported-by: Euler Taveira Discussion: https://postgr.es/m/CAHE3wgh-EYuAbLG1VS3QTHii1TgWS31h-fYEgrdda7oTOuskOQ@mail.gmail.com Backpatch-through: master
2023-11-17docs: Document --with-selinux/-Dselinux options centrallyAndres Freund
Previously --with-selinux was documented only in the in the sepgsql documentation and there was no corresponding documentation for meson. There are further improvements that could be made, but this change seems worthwhile even on its own. Reviewed-by: Peter Eisentraut <peter@eisentraut.org> Reported-by: Christoph Berg <myon@debian.org> Discussion: https://postgr.es/m/20231103163848.26egkh5qdgw3vmil@awork3.anarazel.de
2023-11-16Add target "slru" to pg_stat_reset_shared()Michael Paquier
Currently, pg_stat_reset_shared() cannot reset the counters in the view pg_stat_slru even if it is a type of shared stats. This patch adds support for a new value in pg_stat_reset_shared(), called "slru", able to do that. Note that pg_stat_reset_shared(NULL) also resets SLRU counters. There may be a point in removing pg_stat_reset_slru() that was introduced in 28cac71bd368 (v13~) as the new option overlaps with this function, but we would lose the ability to reset individual SLRU counters. This is left for future reconsideration. Author: Atsushi Torikoshi Discussion: https://postgr.es/m/e3c25d72e81378e7b64f3c52e0306fc9@oss.nttdata.com
2023-11-15doc: align column order with pg_stat_statements viewDaniel Gustafsson
Commit 5a3423ad8e mistakenly didn't plac the new columns for JIT deform counters at the end to match their placement in the view. Fix by placing the new columns last to be consistent. Author: Julien Rouhaud <rjuju123@gmail.com> Discussion: https://postgr.es/m/fuhxmigipmodhq3bah5iddd2ksfinrva75wqjyg2g2e647p4v7@yev2gynrnr5f
2023-11-15doc: Improve description of targets for pg_stat_reset_shared()Michael Paquier
This commit changes the documentation so as the supported targets are documented with itemized list, making it easier to understand the view a given target affects. Author: Atsushi Torikoshi Discussion: https://postgr.es/m/e3c25d72e81378e7b64f3c52e0306fc9@oss.nttdata.com
2023-11-14Support +/- infinity in the interval data type.Dean Rasheed
This adds support for infinity to the interval data type, using the same input/output representation as the other date/time data types that support infinity. This allows various arithmetic operations on infinite dates, timestamps and intervals. The new values are represented by setting all fields of the interval to INT32/64_MIN for -infinity, and INT32/64_MAX for +infinity. This ensures that they compare as less/greater than all other interval values, without the need for any special-case comparison code. Note that, since those 2 values were formerly accepted as legal finite intervals, pg_upgrade and dump/restore from an old database will turn them from finite to infinite intervals. That seems OK, since those exact values should be extremely rare in practice, and they are outside the documented range supported by the interval type, which gives us a certain amount of leeway. Bump catalog version. Joseph Koshakow, Jian He, and Ashutosh Bapat, reviewed by me. Discussion: https://postgr.es/m/CAAvxfHea4%2BsPybKK7agDYOMo9N-Z3J6ZXf3BOM79pFsFNcRjwA%40mail.gmail.com
2023-11-14doc: Update note about Bison and Flex build requirementsPeter Eisentraut
Updating the Windows-specific chapter was forgotten by 721856ff24.
2023-11-14Fix capitalization of "Tcl"Peter Eisentraut
2023-11-14Fix whitespacePeter Eisentraut
2023-11-14Add support for pg_stat_reset_slru without argumentMichael Paquier
pg_stat_reset_slru currently requires an input argument, either: - NULL to reset the SLRU counters of everything. - A specific value to reset a single SLRU cache. This commit adds support for a new pattern: pg_stat_reset_slru without any argument works the same way as pg_stat_reset_slru(NULL), relying on a DEFAULT in the function definition to handle this case. This makes the function more consistent with 23c8c0c8f472. Bump catalog version. Author: Bharath Rupireddy Reviewed-by: Atsushi Torikoshi Discussion: https://postgr.es/m/CALj2ACW1VizYg01EeH_cA-7qA+4NzWVAoZ5Lw9_XYO1RRHAZbA@mail.gmail.com
2023-11-13doc: clarify handling of ts_headline() operators & extra wordsBruce Momjian
Reported-by: Ngigi Waithaka & Alex Malek Bug: 15172 Discussion: https://postgr.es/m/152461454026.19805.6310947081647212894@wrigleys.postgresql.org Backpatch-through: 16
2023-11-13psql: improve description consistency of \dTS data typesBruce Momjian
This was done particularly for geometric data types. Reported-by: Christoph Berg Discussion: https://postgr.es/m/YGI8Leuk0WvmNWLr@msg.df7cb.de Co-authored-by: Kyotaro Horiguchi Backpatch-through: master
2023-11-13doc: clarify handling of range upper/lower/upper_inf/lower_inf()Bruce Momjian
Clarify handling of infinite range bounds. Reported-by: jani.rahkola@iki.fi Discussion: https://postgr.es/m/160508672127.25505.8356390205508789564@wrigleys.postgresql.org Co-authored-by: Laurenz Albe Backpatch-through: 16
2023-11-13Improve default and empty privilege outputs in psql.Tom Lane
Default privileges are represented as NULL::aclitem[] in catalog ACL columns, while revoking all privileges leaves an empty aclitem[]. These two cases used to produce identical output in psql meta-commands like \dp. Using something like "\pset null '(default)'" as a workaround for spotting the difference did not work, because null values were always displayed as empty strings by describe.c's meta-commands. This patch improves that with two changes: 1. Print "(none)" for empty privileges so that the user is able to distinguish them from default privileges, even without special workarounds. 2. Remove the special handling of null values in describe.c, so that "\pset null" is honored like everywhere else. (This affects all output from these commands, not only ACLs.) The privileges shown by \dconfig+ and \ddp as well as the column privileges shown by \dp are not affected by change #1, because the respective aclitem[] is reset to NULL or deleted from the catalog instead of leaving an empty array. Erik Wienhold and Laurenz Albe Discussion: https://postgr.es/m/1966228777.127452.1694979110595@office.mailbox.org
2023-11-13doc: move ROW IS NULL examples to a different chapterBruce Momjian
Also add examples. Reported-by: Wolfgang Walther Discussion: https://postgr.es/m/21ff8e9c-627a-f949-fb00-a41b9ddcc9d3@technowledgy.de Backpatch-through: master
2023-11-13doc: clarify that pg_global can _only_ be used for system tabs.Bruce Momjian
Reported-by: zhoushulin1992@gmail.com Discussion: https://postgr.es/m/160499688847.25495.8682880307938679648@wrigleys.postgresql.org Backpatch-through: master
2023-11-13doc: restructure ALTER DEFAULT PRIVILEGESBruce Momjian
Clarify that default privileges are not inherited and reorder paragraphs. This is a follow up to a recent ALTER DEFAULT PRIVILEGES doc patch. Reported-by: Sanjay Minni Diagnosed-by: AMpxBo=M35hcH1g4Vg=KRJ0-77FOJcvdrdiVF5KSOAdOG-LvKQ@mail.gmail.com Co-authored-by: Laurenz Albe Backpatch-through: 16
2023-11-13Improve readability and error detection of array_in().Tom Lane
Rewrite array_in() and its subroutines so that we make only one pass over the input text, rather than two. This requires potentially re-pallocing the working arrays values[] and nulls[] larger than our initial guess, but that cost will hopefully be made up by avoiding duplicate parsing. In any case this coding seems much clearer and more straightforward than what we had before. This also fixes array_in() to reject non-rectangular input (that is, different brace depths in different parts of the input) more reliably than before, and to give a better error message when it does so. This is analogous to the plpython and plperl fixes in 0553528e7 and f47004add. Like those PLs, we now accept input such as '{{},{}}' as a valid representation of an empty array, which we did not before. Additionally, reject explicit array subscripts that are outside the integer range (previously you just got whatever atoi() converted them to), and make some other minor improvements in error reporting. Although this is arguably a bug fix, it's also a behavioral change that might trip somebody up, so no back-patch. Tom Lane, Heikki Linnakangas, and Jian He. Thanks to Alexander Lakhin for the initial report and for review/testing. Discussion: https://postgr.es/m/2794005.1683042087@sss.pgh.pa.us
2023-11-13doc: correct description of libpq's PQsetnonblocking() modeBruce Momjian
Reported-by: Yugo NAGATA Discussion: https://postgr.es/m/20210713115949.702986955f8ccf23fa81073c@sraoss.co.jp Backpatch-through: master
2023-11-13Add error about the use of FREEZE in COPY TOBruce Momjian
Also clarify some other error wording. Reported-by: Kyotaro Horiguchi Discussion: https://postgr.es/m/20220802.133046.1941977979333284049.horikyota.ntt@gmail.com Backpatch-through: master
2023-11-13doc: remove RUNAS instructions for pg_upgrade on WindowsBruce Momjian
None of our other tools have such a recommendation. Reported-by: David G. Johnston Discussion: https://postgr.es/m/CAKFQuwbpqP_DB8WhthnwbsUOT_qB=AK3PpBMmmMsYvENQFHhEg@mail.gmail.com Backpatch-through: master
2023-11-13doc: Add missing semicolon in exampleDaniel Gustafsson
One of the examples on the SELECT page was missing a semicolon from a listing which has the look and feel of being a psql session. This adds the missing semicolon and also removes the newline between the query and results to match the other examples nearby. Backpatch to all supported branches to avoid backpatching issues on this page. Reported-by: tim.needham2@gmail.com Discussion: https://postgr.es/m/169965004097.225187.12941375915673151540@wrigleys.postgresql.org Backpatch-through: v12
2023-11-12Add ability to reset all shared stats types in pg_stat_reset_shared()Michael Paquier
Currently, pg_stat_reset_shared() can use an argument to specify the target of statistics to reset, doing nothing for NULL as it is strict. This patch adds to pg_stat_reset_shared() the possibility to reset all the stats types already handled in this function rather than do nothing if the argument value given is NULL or if nothing is specified (proisstrict is switched to false). Like previously, SLRUs are not included in what gets reset. The idea to use NULL or no argument to control if all the shared stats already covered by this function should be reset has been proposed by Andres Freund. Bump catalog version. Author: Atsushi Torikoshi Reviewed-by: Kyotaro Horiguchi, Michael Paquier, Bharath Rupireddy, Matthias van de Meent Discussion: https://postgr.es/m/4291a55137ddda77cf7cc5f46e846daf@oss.nttdata.com
2023-11-10Fix whitespacePeter Eisentraut
Fix trailing whitespace from commit 322f55bdbd.
2023-11-09doc: fix wording describing the checkpoint_flush_after GUCBruce Momjian
Reported-by: Evan Macbeth Discussion: https://postgr.es/m/155208475619.1380.12815553062985622271@wrigleys.postgresql.org Backpatch-through: master
2023-11-09doc: remove unnecessary comma in postgres-fdwBruce Momjian
Backpatch-through: master
2023-11-08doc:: simplify introductory textBruce Momjian
Reported-by: Joshua D. Drake Discussion: https://postgr.es/m/5ac2c96d-37a6-18aa-08c4-327a6fbff24b@commandprompt.com Author: Joshua D. Drake Backpatch-through: master
2023-11-08doc: change "system" to "cluster" where appropriateBruce Momjian
Reported-by: Jeff Davis Discussion: https://postgr.es/m/d040a1144e0127a49e335d1244a4de102a2a443b.camel@j-davis.com Backpatch-through: master
2023-11-08doc: mention that ANALYZE does block DDLBruce Momjian
Reported-by: Aramaki Zyake Discussion: https://postgr.es/m/156628723253.1296.7377373462603881976%40wrigleys.postgresql.org Author: Aramaki Zyake Backpatch-through: master
2023-11-06Remove distprepPeter Eisentraut
A PostgreSQL release tarball contains a number of prebuilt files, in particular files produced by bison, flex, perl, and well as html and man documentation. We have done this consistent with established practice at the time to not require these tools for building from a tarball. Some of these tools were hard to get, or get the right version of, from time to time, and shipping the prebuilt output was a convenience to users. Now this has at least two problems: One, we have to make the build system(s) work in two modes: Building from a git checkout and building from a tarball. This is pretty complicated, but it works so far for autoconf/make. It does not currently work for meson; you can currently only build with meson from a git checkout. Making meson builds work from a tarball seems very difficult or impossible. One particular problem is that since meson requires a separate build directory, we cannot make the build update files like gram.h in the source tree. So if you were to build from a tarball and update gram.y, you will have a gram.h in the source tree and one in the build tree, but the way things work is that the compiler will always use the one in the source tree. So you cannot, for example, make any gram.y changes when building from a tarball. This seems impossible to fix in a non-horrible way. Second, there is increased interest nowadays in precisely tracking the origin of software. We can reasonably track contributions into the git tree, and users can reasonably track the path from a tarball to packages and downloads and installs. But what happens between the git tree and the tarball is obscure and in some cases non-reproducible. The solution for both of these issues is to get rid of the step that adds prebuilt files to the tarball. The tarball now only contains what is in the git tree (*). Getting the additional build dependencies is no longer a problem nowadays, and the complications to keep these dual build modes working are significant. And of course we want to get the meson build system working universally. This commit removes the make distprep target altogether. The make dist target continues to do its job, it just doesn't call distprep anymore. (*) - The tarball also contains the INSTALL file that is built at make dist time, but not by distprep. This is unchanged for now. The make maintainer-clean target, whose job it is to remove the prebuilt files in addition to what make distclean does, is now just an alias to make distprep. (In practice, it is probably obsolete given that git clean is available.) The following programs are now hard build requirements in configure (they were already required by meson.build): - bison - flex - perl Reviewed-by: Michael Paquier <michael@paquier.xyz> Reviewed-by: Andres Freund <andres@anarazel.de> Discussion: https://www.postgresql.org/message-id/flat/e07408d9-e5f2-d9fd-5672-f53354e9305e@eisentraut.org
2023-11-06Add XMLText function (SQL/XML X038)Daniel Gustafsson
This function implements the standard XMLTest function, which converts text into xml text nodes. It uses the libxml2 function xmlEncodeSpecialChars to escape predefined entities (&"<>), so that those do not cause any conflict when concatenating the text node output with existing xml documents. This also adds a note in features.sgml about not supporting XML(SEQUENCE). The SQL specification defines a RETURNING clause to a set of XML functions, where RETURNING CONTENT or RETURNING SEQUENCE can be defined. Since PostgreSQL doesn't support XML(SEQUENCE) all of these functions operate with an implicit RETURNING CONTENT. Author: Jim Jones <jim.jones@uni-muenster.de> Reviewed-by: Vik Fearing <vik@postgresfriends.org> Discussion: https://postgr.es/m/86617a66-ec95-581f-8d54-08059cca8885@uni-muenster.de
2023-11-06doc: pg_resetwal: Add comments how the multipliers are derivedPeter Eisentraut
Reviewed-by: Aleksander Alekseev <aleksander@timescale.com> Discussion: https://www.postgresql.org/message-id/flat/0f3ab4a1-ae80-56e8-3426-6b4a02507687@eisentraut.org
2023-11-03meson: docs: Install all manpages, not just ones in man1Andres Freund
In f13eb16485f I made a mistake leading to only man1 being installed. I will report a bug suggesting that meson warn about mistakes of this sort. Reported-by: Christoph Berg <myon@debian.org> Discussion: https://postgr.es/m/ZUU5pRQO6ZUeBsi6@msg.df7cb.de Backpatch: 16-, where the meson build was introduced
2023-11-03doc: move HBA reload instructions above the syntax detailsBruce Momjian
Reported-by: John <johrss@amazon.com> Discussion: https://postgr.es/m/165947088723.651.7641196693246068619@wrigleys.postgresql.org Backpatch-through: master
2023-11-03doc: \copy can get data values \. and end-of-input confusedBruce Momjian
Reported-by: Svante Richter Discussion: https://postgr.es/m/fcd57e4-8f23-4c3e-a5db-2571d09208e2@beta.fastmail.com Backpatch-through: 11
2023-11-03doc: CREATE DATABASE doesn't copy db-level perms. from templateBruce Momjian
Reported-by: david@kapitaltrading.com Discussion: https://postgr.es/m/166007719137.995877.13951579839074751714@wrigleys.postgresql.org Backpatch-through: 11
2023-11-03doc: mention ORDER BY for some aggregates, add ORDER BY examplesBruce Momjian
Discussion: https://postgr.es/m/CAKFQuwb+4SWnfrfQKB-UM1P1x97Xk+ybSar4xM32XGLd=fq9bA@mail.gmail.com Co-authored-by: David G. Johnston Backpatch-through: master
2023-11-03Doc: update CREATE RULE ref page's hoary discussion of views.Tom Lane
This text left one with the impression that an ON SELECT rule could be attached to a plain table, which has not been true since commit 264c06820 (meaning the text was already misleading when written, evidently by me in 96bd67f61). However, it didn't get really bad until b23cd185f removed the convert-a-table-to-a-view logic, which had made it possible for scripts that thought they were attaching ON SELECTs to tables to still work. Rewrite into a form that makes it clear that an ON SELECT rule is better regarded as an implementation detail of a view. Pre-v16, point out that adding ON SELECT to a table actually converts it to a view. Per bug #18178 from Joshua Uyehara. Back-patch to all supported branches. Discussion: https://postgr.es/m/18178-05534d7064044d2d@postgresql.org
2023-11-03doc: ALTER DEFAULT PRIVILEGES does not affect inherited rolesBruce Momjian
Reported-by: Jordi GutiƩrrez Hermoso Discussion: https://postgr.es/m/72652d72e1816bfc3c05d40f9e0e0373d07823c8.camel@octave.org Co-authored-by: Laurenz Albe Backpatch-through: 11
2023-11-01Additional unicode primitive functions.Jeff Davis
Introduce unicode_version(), icu_unicode_version(), and unicode_assigned(). The latter requires introducing a new lookup table for the Unicode General Category, which is generated along with the other Unicode lookup tables. Discussion: https://postgr.es/m/CA+TgmoYzYR-yhU6k1XFCADeyj=Oyz2PkVsa3iKv+keM8wp-F_A@mail.gmail.com Reviewed-by: Peter Eisentraut
2023-11-02doc: Replace reference to ERRCODE_RAISE_EXCEPTION by "raise_exception"Michael Paquier
This part of the documentation refers to exceptions as handled by PL/pgSQL, and using the internal error code is confusing. Per thinko in 66bde49d96a9. Reported-by: Euler Taveira, Bruce Momjian Discussion: https://postgr.es/m/ZUEUnLevXyW7DlCs@momjian.us Backpatch-through: 11
2023-11-01doc: add reference to wire protocol detailsBruce Momjian
Discussion: https://postgr.es/m/143A51B2-80B1-4ECD-AF67-F7061377FF63@hotmail.com Author: Li Japin Backpatch-through: master
2023-11-01doc: Expand section related to LWLocks and shared memoryMichael Paquier
The documentation includes a section describing how to define custom LWLocks in extensions using the shmem hooks. However, it has never mentioned the second, more flexible method based on the following routines: - LWLockNewTrancheId() to allocate a tranche ID. - LWLockRegisterTranche() to associate a name to a tranche ID. - LWLockInitialize() to initialize a LWLock with a tranche ID. autoprewarm.c is the only example of extension in the tree that allocates a LWLock this way. This commit adds some documentation about all that. While on it, a comment is added about the need of AddinShmemInitLock. This is required especially for EXEC_BACKEND builds (aka Windows, normally), as per a remark from Alexander, because backends can execute shmem initialization paths concurrently. Author: Aleksander Alekseev, Michael Paquier Discussion: https://postgr.es/m/CAJ7c6TPKhFgL+54cdTD9yGpG4+sNcyJ+N1GvQqAxgWENAOa3VA@mail.gmail.com
2023-10-31doc: add missing word to sentence about ParisBruce Momjian
Reported-by: Tang <tanghy.fnst@fujitsu.com> Discussion: https://postgr.es/m/OS0PR01MB6113393560A1DF115ADFB153FB2D9@OS0PR01MB6113.jpnprd01.prod.outlook.com Backpatch-through: master
2023-10-31C comment: improve statistics computation comment exampleBruce Momjian
Discussion: https://postgr.es/m/CAKFQuwbD672Sc0EXv0ifx3pzfQ5UAEpiAeaBGKz_Ox-4d2NGCA@mail.gmail.com Author: David G. Johnston Backpatch-through: master
2023-10-31doc: improve ALTER SYSTEM description of value list quotingBruce Momjian
Reported-by: splarv@ya.ru Discussion: https://postgr.es/m/167105927893.1897.13227723035830709578@wrigleys.postgresql.org Backpatch-through: 11