aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Link from pg_shadow docs to pg_authid docs.Robert Haas2010-09-13
| | | | Per discussion with Josh Kupershmidt.
* Re-add documentation for Win32 copy syntax for archive_command.Bruce Momjian2010-09-12
| | | | Backpatch to 9.0.X.
* SERIALIZABLE transactions are actually implemented beneath the covers withJoe Conway2010-09-11
| | | | | | | | | | | transaction snapshots, i.e. a snapshot registered at the beginning of a transaction. Change variable naming and comments to reflect this reality in preparation for a future, truly serializable mode, e.g. Serializable Snapshot Isolation (SSI). For the moment transaction snapshots are still used to implement SERIALIZABLE, but hopefully not for too much longer. Patch by Kevin Grittner and Dan Ports with review and some minor wording changes by me.
* Add missing #includes, needed on some platforms. This should makeHeikki Linnakangas2010-09-11
| | | | the unixware buildfarm animals happy again.
* Introduce latches. A latch is a boolean variable, with the capability toHeikki Linnakangas2010-09-11
| | | | | | | | | | | | | | | | | | wait until it is set. Latches can be used to reliably wait until a signal arrives, which is hard otherwise because signals don't interrupt select() on some platforms, and even when they do, there's race conditions. On Unix, latches use the so called self-pipe trick under the covers to implement the sleep until the latch is set, without race conditions. On Windows, Windows events are used. Use the new latch abstraction to sleep in walsender, so that as soon as a transaction finishes, walsender is woken up to immediately send the WAL to the standby. This reduces the latency between master and standby, which is good. Preliminary work by Fujii Masao. The latch implementation is by me, with helpful comments from many people.
* Cursor names in the backend are not case-sensitve. This change makes sure thatMichael Meskes2010-09-10
| | | | | | ecpg also does not regard cursor names as case-sensitive. Thanks to Zoltan Boszormenyi for the patch.
* Remove obsolete claim that gzip is needed while installing PG's documentation.Tom Lane2010-09-09
| | | | | | | It isn't, now that we ship the docs as loose files rather than a sub-tarball. Also adjust the wording in a couple of places to make the lists of required software read more consistently.
* Doc fixes:Bruce Momjian2010-09-09
| | | | | | | | | | | | | - remove excessive table cells - moving function parameters into function tags rather than having them being considered separate - add return type column on XML2 contrib module functions list and removing return types from function - add table header to XML2 contrib parameter table Thom Brown Backpatch to 9.0.X.
* Add tip about building plpython 2 and 3. Fix link to Python docs.Peter Eisentraut2010-09-08
|
* Clarify that surrogate pairs are not encoded in UTF-8 directlyPeter Eisentraut2010-09-07
|
* Modify pg_upgrade to set/restore all environment variables related toBruce Momjian2010-09-07
| | | | | | | collation/encoding to match English when reading controldata. This now matches the English variable setting used by pg_regress.c. Backpatch to 9.0.X.
* GROUP BY can only infer functional dependency from non-deferrable primary keys.Tom Lane2010-09-05
| | | | | Peter's original patch had this right, but I dropped the check while revising the code to search pg_constraint instead of pg_index. Spotted by Dean Rasheed.
* Pad the ps_status display with nulls, not blanks, on Darwin.Tom Lane2010-09-04
| | | | | | A long time ago, this didn't work nicely, but it seems to work on all recent versions of OS X. The blank-pad method is less desirable since it results in lots of extra space in ps' output. Per Alexey Klyukin.
* Install a data-type-based solution for protecting pg_get_expr().REL9_1_ALPHA1Tom Lane2010-09-03
| | | | | | | | | | | | Since the code underlying pg_get_expr() is not secure against malformed input, and can't practically be made so, we need to prevent miscreants from feeding arbitrary data to it. We can do this securely by declaring pg_get_expr() to take a new datatype "pg_node_tree" and declaring the system catalog columns that hold nodeToString output to be of that type. There is no way at SQL level to create a non-null value of type pg_node_tree. Since the backend-internal operations that fill those catalog columns operate below the SQL level, they are oblivious to the datatype relabeling and don't need any changes.
* In HEAD only, revert kluge solution for preventing misuse of pg_get_expr().Tom Lane2010-09-03
| | | | | A data-type-based solution, which is much cleaner and more bulletproof, will follow shortly. It seemed best to make this a separate commit though.
* 9.1alpha1 release notes.Tom Lane2010-09-02
|
* Clean up description of ecpg's dtcvfmtasc function.Tom Lane2010-09-02
| | | | Per KOIZUMI Satoru.
* Clean up some bad grammar and punctuation in description of ecpg's decimalTom Lane2010-09-02
| | | | type. Per KOIZUMI Satoru.
* Fix up flushing of composite-type typcache entries to be driven directly byTom Lane2010-09-02
| | | | | | | | | | | | | | | | | | | | | | SI invalidation events, rather than indirectly through the relcache. In the previous coding, we had to flush a composite-type typcache entry whenever we discarded the corresponding relcache entry. This caused problems at least when testing with RELCACHE_FORCE_RELEASE, as shown in recent report from Jeff Davis, and might result in real-world problems given the kind of unexpected relcache flush that that test mechanism is intended to model. The new coding decouples relcache and typcache management, which is a good thing anyway from a structural perspective. The cost is that we have to search the typcache linearly to find entries that need to be flushed. There are a couple of ways we could avoid that, but at the moment it's not clear it's worth any extra trouble, because the typcache contains very few entries in typical operation. Back-patch to 8.2, the same as some other recent fixes in this general area. The patch could be carried back to 8.0 with some additional work, but given that it's only hypothetical whether we're fixing any problem observable in the field, it doesn't seem worth the work now.
* Fix typo. Pointed out by Kevin Grittner.Robert Haas2010-09-02
|
* Clarify documentation of handling of null arguments for aggregates.Tom Lane2010-09-01
| | | | Per discussion.
* Improve release notes' description of Teodor's fixes for polygon overlapsTom Lane2010-09-01
| | | | and contains operators.
* Add missing markup for translatabilityAlvaro Herrera2010-08-31
|
* Cosmetic fixes for KnownAssignedXidsGetOldestXmin, per Fujii Masao.Tom Lane2010-08-30
|
* Fix oversight in RelFileNodeBackend patch: CreateFakeRelcacheEntry needs toTom Lane2010-08-30
| | | | | | initialize the rd_backend field of a fake Relation entry correctly. Fortunately, that is easy, since only non-temp relations should ever be mentioned in the WAL stream.
* Fix misleading DEBUG2 issued during RemoveOldXlogFiles()Simon Riggs2010-08-30
|
* Truncate subtrans after each restartpoint.Simon Riggs2010-08-30
| | | | Issue reported by Harald Kolb, patch by Fujii Masao, review by me.
* Teach GetOldestXmin() about KnownAssignedXids during recovery.Simon Riggs2010-08-30
| | | | | Very minor issue, though this is required for a later patch. Reported by Heikki Linnakangas.
* Fix typo in comment.Heikki Linnakangas2010-08-30
|
* Reduce PANIC to ERROR in some occasionally-reported btree failure cases.Tom Lane2010-08-29
| | | | | | | | | | | | | | | | | | | | | | | | This patch changes _bt_split() and _bt_pagedel() to throw a plain ERROR, rather than PANIC, for several cases that are reported from the field from time to time: * right sibling's left-link doesn't match; * PageAddItem failure during _bt_split(); * parent page's next child isn't right sibling during _bt_pagedel(). In addition the error messages for these cases have been made a bit more verbose, with additional values included. The original motivation for PANIC here was to capture core dumps for subsequent analysis. But with so many users whose platforms don't capture core dumps by default, or who are unprepared to analyze them anyway, it's hard to justify a forced database restart when we can fairly easily detect the problems before we've reached the critical sections where PANIC would be necessary. It is not currently known whether the reports of these messages indicate well-hidden bugs in Postgres, or are a result of storage-level malfeasance; the latter possibility suggests that we ought to try to be more robust even if there is a bug here that's ultimately found. Backpatch to 8.2. The code before that is sufficiently different that it doesn't seem worth the trouble to back-port further.
* Remove obsolete remark that PQprepare() is more flexible than PREPARE.Tom Lane2010-08-29
| | | | | Spotted by Dmitriy Igrishin. Back-patch to 8.2, which is when the PREPARE statement was improved to allow parameter types to be omitted.
* Insert additional compiler placation into objectaddress.c.Robert Haas2010-08-27
| | | | | | | Peter Eisentraut reports that some bits of the "address" variable in get_object_address() give "may be used uninitialized" warnings; this likes the only excuse his compiler could have for thinking that's possible.
* Small refactoring of makeVar() from a TargetEntryPeter Eisentraut2010-08-27
|
* Rewrite comment code for better modularity, and add necessary locking.Robert Haas2010-08-27
| | | | Review by Alvaro Herrera, KaiGai Kohei, and Tom Lane.
* Document the existence of the socket lock file under unix_socket_directory,Tom Lane2010-08-26
| | | | | | which is perhaps not a terribly good spot for it but there doesn't seem to be a better place. Also add a source-code comment pointing out a couple reasons for having a separate lock file. Per suggestion from Greg Smith.
* Explain automatic creation (or lack of it) of indexes for the various typesTom Lane2010-08-26
| | | | | | of constraints. Kevin Grittner
* Update time zone data files to tzdata release 2010l: DST law changes inTom Lane2010-08-26
| | | | | | | Egypt and Palestine. Added new names for two Micronesian timezones: Pacific/Chuuk is now preferred over Pacific/Truk (and the preferred abbreviation is CHUT not TRUT) and Pacific/Pohnpei is preferred over Pacific/Ponape. Historical corrections for Finland.
* Improve wording for privilege description on certain failure messages; theAlvaro Herrera2010-08-26
| | | | | original misleadingly suggests that only access is meant, causing confusion. Per recent trouble report by Robert McGehee on pgsql-admin.
* Remove duplicate translatable phraseAlvaro Herrera2010-08-26
|
* Fix ExecMakeTableFunctionResult to verify that all rows returned by a SRFTom Lane2010-08-26
| | | | | | | | | | | returning "record" actually do have the same rowtype. This is needed because the parser can't realistically enforce that they will all have the same typmod, as seen in a recent example from David Wheeler. Back-patch to 8.0, which is as far back as we have the notion of RECORD subtypes being distinguished by typmod. Wheeler's example depends on 8.4-and-up features, but I suspect there may be ways to provoke similar failures before 8.4.
* Don't auto-create the subdirectories holding built documentation in a VPATHTom Lane2010-08-26
| | | | | | | | build tree. If we actually build the docs in the VPATH tree, those dirs will get created then; but if they're present and empty, they capture the vpathsearch searches in "make install", preventing installation of prebuilt docs that might exist in the source tree. Per bug #5595 from Dmtiriy Igrishin. Fix based on idea from Peter Eisentraut.
* Remove docs for "Incrementally Updated Backups" because it was ofBruce Momjian2010-08-25
| | | | | | | | questionable reliability; information moved to a wiki: http://wiki.postgresql.org/wiki/Incrementally_Updated_Backups Backpatch to 9.0.
* Document filtering dictionaries in textsearch.sgml.Tom Lane2010-08-25
| | | | | | While at it, copy-edit the description of prefix-match marker support in synonym dictionaries, and clarify the description of the default unaccent dictionary a bit more.
* Improve hint message for ENOMEM failure from shmget().Tom Lane2010-08-25
| | | | | | | | | | | | It turns out that some platforms return ENOMEM for a request that violates SHMALL, whereas we were assuming that ENOSPC would always be used for that. Apparently the latter is a Linuxism while ENOMEM is the BSD tradition. Extend the ENOMEM hint to suggest that raising SHMALL might be needed. Per gripe from A.M. Backpatch to 9.0, but not further, because this doesn't seem important enough to warrant creating extra translation work in the stable branches. (If it were, we'd have figured this out years ago.)
* Update release notes, per comments from Simon Riggs.Bruce Momjian2010-08-25
|
* Catch null pointer returns from PyCObject_AsVoidPtr and PyCObject_FromVoidPtrPeter Eisentraut2010-08-25
| | | | | | | | This is reproducibly possible in Python 2.7 if the user turned PendingDeprecationWarning into an error, but it's theoretically also possible in earlier versions in case of exceptional conditions. backpatched to 8.0
* Add missing description of reloftype fieldPeter Eisentraut2010-08-25
|
* Docs review for unaccent: fix grammar, markup, etc.Tom Lane2010-08-25
|
* Avoid passing signed chars to <ctype.h> functions ... same oldTom Lane2010-08-25
| | | | portability mistake as always. Per buildfarm member pika.
* Update 9.0 release notes for changes since beta4.Tom Lane2010-08-25
| | | | | Note: as usual, bug fixes that were also applied in back branches are not considered material to include in a new major release's notes.