summaryrefslogtreecommitdiff
path: root/doc/src
AgeCommit message (Collapse)Author
2014-06-29Add cluster_name GUC which is included in process titles if set.Andres Freund
When running several postgres clusters on one OS instance it's often inconveniently hard to identify which "postgres" process belongs to which postgres instance. Add the cluster_name GUC, whose value will be included as part of the process titles if set. With that processes can more easily identified using tools like 'ps'. To avoid problems with encoding mismatches between postgresql.conf, consoles, and individual databases replace non-ASCII chars in the name with question marks. The length is limited to NAMEDATALEN to make it less likely to truncate important information at the end of the status. Thomas Munro, with some adjustments by me and review by a host of people.
2014-06-28Remove Alpha and Tru64 support.Andres Freund
Support for running postgres on Alpha hasn't been tested for a long while. Due to Alpha's uniquely lax cache coherency model it's a hard to develop for platform (especially blindly!) and thought to be unlikely to currently work correctly. As Alpha is the only supported architecture for Tru64 drop support for it as well. Tru64's support has ended 2012 and it has been in maintenance-only mode for much longer. Also remove stray references to __ksr__ and ultrix defines.
2014-06-26Get rid of bogus separate pg_proc entries for json_extract_path operators.Tom Lane
These should not have existed to begin with, but there was apparently some misunderstanding of the purpose of the opr_sanity regression test item that checks for operator implementation functions with their own comments. The idea there is to check for unintentional violations of the rule that operator implementation functions shouldn't be documented separately .... but for these functions, that is in fact what we want, since the variadic option is useful and not accessible via the operator syntax. Get rid of the extra pg_proc entries and fix the regression test and documentation to be explicit about what we're doing here.
2014-06-26Remove obsolete example of CSV log file name from log_filename document.Fujii Masao
7380b63 changed log_filename so that epoch was not appended to it when no format specifier is given. But the example of CSV log file name with epoch still left in log_filename document. This commit removes such obsolete example. This commit also documents the defaults of log_directory and log_filename. Backpatch to all supported versions. Christoph Berg
2014-06-24Fix typo in replication slot function doc.Fujii Masao
2014-06-24Add missing closing parenthesis into max_replication_slots doc.Fujii Masao
2014-06-21doc: adjust JSONB GIN index descriptionBruce Momjian
Backpatch through 9.4
2014-06-219.4 release notes: adjust some entry wordingBruce Momjian
Backpatch to 9.4
2014-06-21Fix documentation template for CREATE TRIGGER.Kevin Grittner
By using curly braces, the template had specified that one of "NOT DEFERRABLE", "INITIALLY IMMEDIATE", or "INITIALLY DEFERRED" was required on any CREATE TRIGGER statement, which is not accurate. Change to square brackets makes that optional. Backpatch to 9.1, where the error was introduced.
2014-06-20Don't allow to disable backend assertions via the debug_assertions GUC.Andres Freund
The existance of the assert_enabled variable (backing the debug_assertions GUC) reduced the amount of knowledge some static code checkers (like coverity and various compilers) could infer from the existance of the assertion. That could have been solved by optionally removing the assertion_enabled variable from the Assert() et al macros at compile time when some special macro is defined, but the resulting complication doesn't seem to be worth the gain from having debug_assertions. Recompiling is fast enough. The debug_assertions GUC is still available, but readonly, as it's useful when diagnosing problems. The commandline/client startup option -A, which previously also allowed to enable/disable assertions, has been removed as it doesn't serve a purpose anymore. While at it, reduce code duplication in bufmgr.c and localbuf.c assertions checking for spurious buffer pins. That code had to be reindented anyway to cope with the assert_enabled removal.
2014-06-19Document SQL functions' behavior of parsing the whole function at once.Tom Lane
Haribabu Kommi, somewhat rewritten by me
2014-06-19Don't allow data_directory to be set in postgresql.auto.conf by ALTER SYSTEM.Fujii Masao
data_directory could be set both in postgresql.conf and postgresql.auto.conf so far. This could cause some problematic situations like circular definition. To avoid such situations, this commit forbids a user to set data_directory in postgresql.auto.conf. Backpatch this to 9.4 where ALTER SYSTEM command was introduced. Amit Kapila, reviewed by Abhijit Menon-Sen, with minor adjustments by me.
2014-06-18Improve our mechanism for controlling the Linux out-of-memory killer.Tom Lane
Arrange for postmaster child processes to respond to two environment variables, PG_OOM_ADJUST_FILE and PG_OOM_ADJUST_VALUE, to determine whether they reset their OOM score adjustments and if so to what. This is superior to the previous design involving #ifdef's in several ways. The behavior is now available in a default build, and both ends of the adjustment --- the original adjustment of the postmaster's level and the subsequent readjustment by child processes --- can now be controlled in one place, namely the postmaster launch script. So it's no longer necessary for the launch script to act on faith that the server was compiled with the appropriate options. In addition, if someone wants to use an OOM score other than zero for the child processes, that doesn't take a recompile anymore; and we no longer have to cater separately to the two different historical kernel APIs for this adjustment. Gurjeet Singh, somewhat revised by me
2014-06-18Document that jsonb has all the standard comparison operators.Andrew Dunstan
2014-06-18Implement UPDATE tab SET (col1,col2,...) = (SELECT ...), ...Tom Lane
This SQL-standard feature allows a sub-SELECT yielding multiple columns (but only one row) to be used to compute the new values of several columns to be updated. While the same results can be had with an independent sub-SELECT per column, such a workaround can require a great deal of duplicated computation. The standard actually says that the source for a multi-column assignment could be any row-valued expression. The implementation used here is tightly tied to our existing sub-SELECT support and can't handle other cases; the Bison grammar would have some issues with them too. However, I don't feel too bad about this since other cases can be converted into sub-SELECTs. For instance, "SET (a,b,c) = row_valued_function(x)" could be written "SET (a,b,c) = (SELECT * FROM row_valued_function(x))".
2014-06-179.4 release notes: improve valgrind mentionBruce Momjian
Report by Peter Geoghegan
2014-06-14Secure Unix-domain sockets of "make check" temporary clusters.Noah Misch
Any OS user able to access the socket can connect as the bootstrap superuser and proceed to execute arbitrary code as the OS user running the test. Protect against that by placing the socket in a temporary, mode-0700 subdirectory of /tmp. The pg_regress-based test suites and the pg_upgrade test suite were vulnerable; the $(prove_check)-based test suites were already secure. Back-patch to 8.4 (all supported versions). The hazard remains wherever the temporary cluster accepts TCP connections, notably on Windows. As a convenient side effect, this lets testing proceed smoothly in builds that override DEFAULT_PGSOCKET_DIR. Popular non-default values like /var/run/postgresql are often unwritable to the build user. Security: CVE-2014-0067
2014-06-13Adjust 9.4 release notes.Noah Misch
Back-patch to 9.4.
2014-06-12Rename lo_create(oid, bytea) to lo_from_bytea().Tom Lane
The previous naming broke the query that libpq's lo_initialize() uses to collect the OIDs of the server-side functions it requires, because that query effectively assumes that there is only one function named lo_create in the pg_catalog schema (and likewise only one lo_open, etc). While we should certainly make libpq more robust about this, the naive query will remain in use in the field for the foreseeable future, so it seems the only workable choice is to use a different name for the new function. lo_from_bytea() won a small straw poll. Back-patch into 9.4 where the new function was introduced.
2014-06-05Consistently spell a replication slot's name as slot_name.Andres Freund
Previously there's been a mix between 'slotname' and 'slot_name'. It's not nice to be unneccessarily inconsistent in a new feature. As a post beta1 initdb now is required in the wake of eeca4cd35e, fix the inconsistencies. Most the changes won't affect usage of replication slots because the majority of changes is around function parameter names. The prominent exception to that is that the recovery.conf parameter 'primary_slotname' is now named 'primary_slot_name'.
2014-06-05Add description of pg_stat directory into doc.Fujii Masao
Back-patch to 9.3 where pg_stat directory was introduced.
2014-06-03Do not escape a unicode sequence when escaping JSON text.Andrew Dunstan
Previously, any backslash in text being escaped for JSON was doubled so that the result was still valid JSON. However, this led to some perverse results in the case of Unicode sequences, These are now detected and the initial backslash is no longer escaped. All other backslashes are still escaped. No validity check is performed, all that is looked for is \uXXXX where X is a hexidecimal digit. This is a change from the 9.2 and 9.3 behaviour as noted in the Release notes. Per complaint from Teodor Sigaev.
2014-06-03Output timestamps in ISO 8601 format when rendering JSON.Andrew Dunstan
Many JSON processors require timestamp strings in ISO 8601 format in order to convert the strings. When converting a timestamp, with or without timezone, to a JSON datum we therefore now use such a format rather than the type's default text output, in functions such as to_json(). This is a change in behaviour from 9.2 and 9.3, as noted in the release notes.
2014-06-02doc: fix JSON function prototype variable labelBruce Momjian
from_jsonb -> from_json, for consistency Patch by rudolf (private report)
2014-05-31Improvements to the replication protocol documentation.Andres Freund
Document the CREATE_REPLICATION_SLOT's output_plugin parameter; that START_REPLICATION ... LOGICAL takes parameters; that START_REPLICATION ... LOGICAL uses the same messages as ... PHYSICAL; and be more consistent with the usage of <literal/>. Michael Paquier, with some additional changes by me.
2014-05-29In release notes, mention the need to initialize bgw_notify_pid.Robert Haas
Michael Paquier
2014-05-28doc: improve markup of ssl_ecdh_curve commitBruce Momjian
2014-05-27doc: improve ssl_ecdh_curve descriptionsBruce Momjian
Patch by Marko Kreen
2014-05-27Support BSD and e2fsprogs UUID libraries alongside OSSP UUID library.Tom Lane
Allow the contrib/uuid-ossp extension to be built atop any one of these three popular UUID libraries. (The extension's name is now arguably a misnomer, but we'll keep it the same so as not to cause unnecessary compatibility issues for users.) We would not normally consider a change like this post-beta1, but the issue has been forced by our upgrade to autoconf 2.69, whose more rigorous header checks are causing OSSP's header files to be rejected on some platforms. It's been foreseen for some time that we'd have to move away from depending on OSSP UUID due to lack of upstream maintenance, so this is a down payment on that problem. While at it, add some simple regression tests, in hopes of catching any major incompatibilities between the three implementations. Matteo Beccati, with some further hacking by me
2014-05-23doc: link/caps fixes for 9.4 release notesBruce Momjian
Report by Tomonari Katsumata
2014-05-21doc: add ALTER TABLE lock level item as major 9.4 itemBruce Momjian
Report by Simon Riggs
2014-05-20doc: 9.4 release notes update for pg_bench line limit itemBruce Momjian
Report by David Johnston
2014-05-19Fix typo in JSON function document.Fujii Masao
2014-05-19Fix incorrect column name in pg_stat_replication document.Fujii Masao
Fabrízio de Royes Mello
2014-05-19doc: adjust JSONB 9.4 release note itemBruce Momjian
Report by Andrew Dunstan
2014-05-19doc: 9.4 release note adjustementsBruce Momjian
Text from David G Johnston
2014-05-18doc: improve 9.4 release notesBruce Momjian
Patch by Andres Freund
2014-05-15Misc message style and doc fixes.Heikki Linnakangas
Euler Taveira
2014-05-14doc: Clarify what files pg_basebackup omits from data directoryPeter Eisentraut
2014-05-14pg_upgrade: error out on 'line' data type usageBruce Momjian
The data type internal format changed in 9.4. Also mention this in the 9.4 release notes.
2014-05-14doc: fix 9.4 release notes typoBruce Momjian
Report by Dean Rasheed
2014-05-14doc: fix typo in 9.4 release note commentsBruce Momjian
Patch by Sergey Muraviov
2014-05-14docs: mention windows quoting change in 9.4 release notesBruce Momjian
Report by Heikki Linnakangas
2014-05-14doc: auto-updatable view adjustments for 9.4 release notesBruce Momjian
Report by Dean Rasheed
2014-05-13docs: 9.4 release notes adjustmentsBruce Momjian
Patch by Andres Freund, slight adjustments by me
2014-05-12docs: use structfield instead of structname in 9.4 release notesBruce Momjian
Where appropriate
2014-05-12doc: 9.4 release note adjustmentsBruce Momjian
Report by Nicolas Barbier, Tatsuo Ishii, MauMau
2014-05-13Fix typo in test_shm_mq document.Fujii Masao
Amit Langote
2014-05-11Rename jsonb_hash_ops to jsonb_path_ops.Tom Lane
There's no longer much pressure to switch the default GIN opclass for jsonb, but there was still some unhappiness with the name "jsonb_hash_ops", since hashing is no longer a distinguishing property of that opclass, and anyway it seems like a relatively minor detail. At the suggestion of Heikki Linnakangas, we'll use "jsonb_path_ops" instead; that captures the important characteristic that each index entry depends on the entire path from the document root to the indexed value. Also add a user-facing explanation of the implementation properties of these two opclasses.
2014-05-10docs: Mark 9.4 release notes as current as of todayBruce Momjian