aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* ecpg: Add additional files to .gitignorePeter Eisentraut2014-04-23
| | | | These are test files added by f9179685371b74bf4752bf3f87846e5625cf91fa.
* Update obsolete comments.Heikki Linnakangas2014-04-23
| | | | We no longer have a TLI field in the page header.
* Fix typo, trance -> tranche, in docs.Heikki Linnakangas2014-04-23
| | | | Amit Langote
* Fix typos in comment.Heikki Linnakangas2014-04-23
|
* Cleanup of new b-tree page deletion code.Heikki Linnakangas2014-04-23
| | | | | | | | | | | | When marking a branch as half-dead, a pointer to the top of the branch is stored in the leaf block's hi-key. During normal operation, the high key was left in place, and the block number was just stored in the ctid field of the high key tuple, but in WAL replay, the high key was recreated as a truncated tuple with zero columns. For the sake of easier debugging, also truncate the tuple in normal operation, so that the page is identical after WAL replay. Also, rename the 'downlink' field in the WAL record to 'topparent', as that seems like a more descriptive name. And make sure it's set to invalid when unlinking the leaf page.
* Fix documentation of FmgrInfo.fn_nargs.Tom Lane2014-04-22
| | | | | | | Some ancient comments claimed that fn_nargs could be -1 to indicate a variable number of input arguments; but this was never implemented, and is at variance with what we ultimately did with "variadic" functions. Update the comments.
* Fix broken logic in logical_heap_rewrite_flush_mappings().Tom Lane2014-04-22
| | | | | It's blatantly obvious that commit 4d0d607a454ee832574afd52a3c515099cc85eb3 wasn't tested. The leak's real enough, though.
* revert 4d0d607a454ee832574afd52a3c515099cc85eb3Bruce Momjian2014-04-22
| | | | Revert due to contrib/test_decoding regression failure
* doc: adjust 9970443640b4569cf72b3c8e84abe80bdf533c7f for "null string"Bruce Momjian2014-04-22
| | | | Report by Andrew Dunstan
* doc: improve wording of COPY commit 7ec73783d88a743799b0c262f1235f772497fb1dBruce Momjian2014-04-22
|
* doc: mention CREATE MATERIALIZED VIEW AS can be EXPLAINedBruce Momjian2014-04-22
| | | | | | | | Patch by Amit Langote Report by Backpatch through
* docs: add results for JSON operator examplesBruce Momjian2014-04-22
| | | | Patch by Sehrope Sarkuni
* build: add EXTRA_REGRESS_OPTS to all pg_regress invocationsBruce Momjian2014-04-22
| | | | Patch by Christoph Berg
* docs: clearify use of pg_database.datistemplateBruce Momjian2014-04-22
| | | | Patch by Rajeev rastogi
* release memory used while flushing logical mappingsBruce Momjian2014-04-22
| | | | Patch by Ants Aasma
* doc: improve CREATE RULE event listBruce Momjian2014-04-22
| | | | | | Patch by Fujii Masao Report by Emanuel Calvo
* regression test: fix hot standby tests by using repeatable readBruce Momjian2014-04-22
| | | | | | | Serializable transactions won't work on a Hot Standby. Also fix VACUUM/ANALYZE label mixup. Patch by Martín Marqués
* copy: update docs for FORCE_NULL and FORCE_NOT_NULL combinationBruce Momjian2014-04-22
| | | | | | Also update regression tests Patch by Michael Paquier
* Fix bug in the new B-tree incomplete-split code.Heikki Linnakangas2014-04-22
| | | | | | Forgot to update LSN of left sibling's page, when creating a new root. I fixed this for regular insertions and page splits earlier, but missed new root creation.
* Fix Gin README.Heikki Linnakangas2014-04-22
| | | | | | | The README incorrectly claimed that GIN posting tree pages contain an array of uncompressed items in addition to compressed posting lists. Earlier versions of the GIN posting list compression patch worked that way, but not the one that was committed.
* doc: Improve "replication slot" index entriesPeter Eisentraut2014-04-22
| | | | | Now that we have accumulated two different "replication slot" concepts, make the index entries consistent.
* Fix bug in new B-tree page deletion code.Heikki Linnakangas2014-04-22
| | | | | When modifying a page, must hold an exclusive lock. A shared lock is obviously not good enough.
* Retain original physical order of tuples in redo of b-tree splits.Heikki Linnakangas2014-04-22
| | | | | It makes no difference to the system, but minimizing the differences between a master and standby makes debugging simpler.
* Fix rm_desc routine of b-tree page delete records.Heikki Linnakangas2014-04-22
| | | | A couple of typos from my refactoring of the page deletion patch.
* Avoid transient bogus page contents when creating a sequence.Heikki Linnakangas2014-04-22
| | | | | | | | | | | | Don't use simple_heap_insert to insert the tuple to a sequence relation. simple_heap_insert creates a heap insertion WAL record, and replaying that will create a regular heap page without the special area containing the sequence magic constant, which is wrong for a sequence. That was not a bug because we always created a sequence WAL record after that, and replaying that overwrote the bogus heap page, and the transient state could never be seen by another backend because it was only done when creating a new sequence relation. But it's simpler and cleaner to avoid that in the first place.
* pg_stat_statements forgot to let previous occupant of hook get control too.Tom Lane2014-04-21
| | | | | | | | pgss_post_parse_analyze() neglected to pass the call on to any earlier occupant of the post_parse_analyze_hook. There are no other users of that hook in contrib/, and most likely none in the wild either, so this is probably just a latent bug. But it's a bug nonetheless, so back-patch to 9.2 where this code was introduced.
* Fix another typo.Robert Haas2014-04-20
| | | | Etsuro Fujita
* Fix typo.Robert Haas2014-04-20
| | | | Etsuro Fujita
* doc: CREATE DATABASE doesn't copy template database-level config paramsBruce Momjian2014-04-19
| | | | Report by Alexey Bashtanov
* doc: mention archive_command and recovery_command are exec'ed locallyBruce Momjian2014-04-19
| | | | Report by Craig Ringer
* docs: tablespaces cannot be accessed independentlyBruce Momjian2014-04-19
| | | | | | | | Mention impossibility of moving tablespaces, backing them up independently, or the inadvisability of placing them on temporary file systems. Patch by Craig Ringer, adjustments by Ian Lawrence Warwick and me
* libpq: have PQconnectdbParams() and PQpingParams accept "" as defaultBruce Momjian2014-04-19
| | | | | | | | | | | | | Previously, these functions treated "" optin values as defaults in some ways, but not in others, like when comparing to .pgpass. Also, add documentation to clarify that now "" and NULL use defaults, like PQsetdbLogin() has always done. BACKWARD INCOMPATIBILITY Patch by Adrian Vondendriesch, docs by me Report by Jeff Janes
* Fix typoMagnus Hagander2014-04-18
| | | | Amit Langote
* Create function prototype as part of PG_FUNCTION_INFO_V1 macroPeter Eisentraut2014-04-18
| | | | | | | | | | | | | | | | | Because of gcc -Wmissing-prototypes, all functions in dynamically loadable modules must have a separate prototype declaration. This is meant to detect global functions that are not declared in header files, but in cases where the function is called via dfmgr, this is redundant. Besides filling up space with boilerplate, this is a frequent source of compiler warnings in extension modules. We can fix that by creating the function prototype as part of the PG_FUNCTION_INFO_V1 macro, which such modules have to use anyway. That makes the code of modules cleaner, because there is one less place where the entry points have to be listed, and creates an additional check that functions have the right prototype. Remove now redundant prototypes from contrib and other modules.
* Fix unused-variable warning on Windows.Tom Lane2014-04-17
| | | | | | | | Introduced in 585bca39: msgid is not used in the Windows code path. Also adjust comments a tad (mostly to keep pgindent from messing it up). David Rowley
* pgcrypto: fix memset() calls that might be optimized awayBruce Momjian2014-04-17
| | | | | | | | | | | | | | Specifically, on-stack memset() might be removed, so: * Replace memset() with px_memset() * Add px_memset to copy_crlf() * Add px_memset to pgp-s2k.c Patch by Marko Kreen Report by PVS-Studio Backpatch through 8.4.
* report stat() error in trigger file checkBruce Momjian2014-04-17
| | | | | | | Permissions might prevent the existence of the trigger file from being checked. Per report from Andres Freund
* pg_upgrade: throw an error for non-existent tablespace directoriesBruce Momjian2014-04-17
| | | | | | | | | Non-existent tablespace directory references can occur if user tablespaces are created inside data directories and the data directory is renamed in preparation for running pg_upgrade, and the symbolic links are not updated. Backpatch to 9.3.
* docs: adjustments for streaming standbys that disconnect frequentlyBruce Momjian2014-04-17
| | | | | | | | Document problems when disconnection causes loss of hot_standby_feedback and suggest adjusting max_standby_archive_delay and max_standby_streaming_delay. Initial patch by Marko Tiikkaja, adjustments by me
* Set the all-visible flag on heap page before writing WAL record, not after.Heikki Linnakangas2014-04-17
| | | | | | | | | | | | | | | | If we set the all-visible flag after writing WAL record, and XLogInsert takes a full-page image of the page, the image would not include the flag. We will then proceed to set the VM bit, which would then be set without the corresponding all-visible flag on the heap page. Found by comparing page images on master and standby, after writing/replaying each WAL record. (There is still a discrepancy: the all-visible flag won't be set after replaying the HEAP_CLEAN record, even though it is set in the master. However, it will be set when replaying the HEAP2_VISIBLE record and setting the VM bit, so the all-visible flag and VM bit are always consistent on the standby, even though they are momentarily out-of-sync with master) Backpatch to 9.3 where this code was introduced.
* Rename EXPLAIN ANALYZE's "total runtime" output to "execution time".Tom Lane2014-04-16
| | | | | | | | | | | | | Now that EXPLAIN also outputs a "planning time" measurement, the use of "total" here seems rather confusing: it sounds like it might include the planning time which of course it doesn't. Majority opinion was that "execution time" is a better label, so we'll call it that. This should be noted as a backwards incompatibility for tools that examine EXPLAIN ANALYZE output. In passing, I failed to resist the temptation to do a little editing on the materialized-view example affected by this change.
* docs: properly document psql auto encoding modeBruce Momjian2014-04-16
| | | | | | | | | In psql, both stdin and stdout must be terminals to get a client encoding of 'auto'. Patch by Albe Laurenz Backpatch to 9.3.
* libpq: use pgsocket for socket values, for portabilityBruce Momjian2014-04-16
| | | | | | | | | | Previously, 'int' was used for socket values in libpq, but socket values are unsigned on Windows. This is a style correction. Initial patch and previous PGINVALID_SOCKET initial patch by Joel Jacobson, modified by me Report from PVS-Studio
* doc: move min_recovery_apply_delay into the right sectionBruce Momjian2014-04-16
| | | | Patch by Fujii Masao
* psql: update --help output for unaligned mode paramsBruce Momjian2014-04-16
| | | | | | | Previously it wasn't clear from --help that -F, -R, -z, -0 only controlled psql unaligned output. Initial patch from Jov <amutu@amutu.com>, adjustments by me
* Fix object identities for text search objectsAlvaro Herrera2014-04-16
| | | | | | | We were neglecting to schema-qualify them. Backpatch to 9.3, where object identities were introduced as a concept by commit f8348ea32ec8.
* Fix contrib/postgres_fdw's remote-estimate representation of array Params.Tom Lane2014-04-16
| | | | | | | | | | | We were emitting "(SELECT null::typename)", which is usually interpreted as a scalar subselect, but not so much in the context "x = ANY(...)". This led to remote-side parsing failures when remote_estimate is enabled. A quick and ugly fix is to stick in an extra cast step, "((SELECT null::typename)::typename)". The cast will be thrown away as redundant by parse analysis, but not before it's done its job of making sure the grammar sees the ANY argument as an a_expr rather than a select_with_parens. Per an example from Hannu Krosing.
* docs: make max_wal_senders higher to handle disconnectsBruce Momjian2014-04-16
| | | | | | | | Document abrupt streaming client disconnection might leave slots in use, so max_wal_senders should be slightly higher than needed to allow for immediate reconnection. Per mention by Magnus
* Update oidjoins regression test for 9.4.Tom Lane2014-04-16
| | | | | | | Now that we're pretty much feature-frozen, it's time to update the checks on system catalog foreign-key references. (It looks like we missed doing this altogether for 9.3. Sigh.)
* Attempt to get plpython regression tests working again for MSVC builds.Andrew Dunstan2014-04-16
| | | | | | | | | This has probably been broken for quite a long time. Buildfarm member currawong's current results suggest that it's been broken since 9.1, so backpatch this to that branch. This only supports Python 2 - I will handle Python 3 separately, but this is a fairly simple fix.