aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Mention limited usefulness of .pgpass database field.Bruce Momjian2010-10-21
|
* Improve handling of domains over arrays.Tom Lane2010-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch eliminates various bizarre behaviors caused by sloppy thinking about the difference between a domain type and its underlying array type. In particular, the operation of updating one element of such an array has to be considered as yielding a value of the underlying array type, *not* a value of the domain, because there's no assurance that the domain's CHECK constraints are still satisfied. If we're intending to store the result back into a domain column, we have to re-cast to the domain type so that constraints are re-checked. For similar reasons, such a domain can't be blindly matched to an ANYARRAY polymorphic parameter, because the polymorphic function is likely to apply array-ish operations that could invalidate the domain constraints. For the moment, we just forbid such matching. We might later wish to insert an automatic downcast to the underlying array type, but such a change should also change matching of domains to ANYELEMENT for consistency. To ensure that all such logic is rechecked, this patch removes the original hack of setting a domain's pg_type.typelem field to match its base type; the typelem will always be zero instead. In those places where it's really okay to look through the domain type with no other logic changes, use the newly added get_base_element_type function in place of get_element_type. catversion bumped due to change in pg_type contents. Per bug #5717 from Richard Huxton and subsequent discussion.
* Remove obsolete comment, per Josh Kupershmidt.Tom Lane2010-10-20
|
* Clean up pg_upgrade cache lookup code; remove useless NULL pointer tests.Bruce Momjian2010-10-20
|
* If pk is NULL, the backend would segfault when accessing ->algo and theHeikki Linnakangas2010-10-20
| | | | | | | | following NULL check was never reached. This problem was found by Coccinelle (null_ref.cocci from coccicheck). Marti Raudsepp
* Don't try to fetch database name when SetTransactionIdLimit() is executedTom Lane2010-10-20
| | | | | | | | | | | | outside a transaction. This repairs brain fade in my patch of 2009-08-30: the reason we had been storing oldest-database name, not OID, in ShmemVariableCache was of course to avoid having to do a catalog lookup at times when it might be unsafe. This error explains why Aleksandr Dushein is having trouble getting out of an XID wraparound state in bug #5718, though not how he got into that state in the first place. I suspect pg_upgrade is at fault there.
* Remove AtStart_Cache() call in CommandCounterIncrement().Alvaro Herrera2010-10-20
| | | | | | | | This call was present in the aboriginal code from Berkeley, and has never been touched; it may very well be that it was there to mask effects of bugs in other places and it may no longer be necessary. The removal has been foreseen in a code comment since 2007; this seems to be a good time to test this hypothesis.
* Fix ecpg test building process to not generate *.dSYM junk on Macs.Tom Lane2010-10-20
| | | | | | | The trick is to not try to build executables directly from .c files, but to always build the intermediate .o files. For obscure reasons, Darwin's version of gcc will leave debug cruft behind in the first case but not the second. Per complaint from Robert Haas.
* Add some caveats to the contrib/isn docs.Robert Haas2010-10-19
|
* Updates to contrib/isn ISBN tables.Robert Haas2010-10-19
| | | | Jan Otto, reviewed by Peter Geoghegan
* Rename pg_upgrade 'log' to 'log_opts', to avoid platform naming conflict.Bruce Momjian2010-10-20
|
* Further speed up pg_upgrade lookups.Bruce Momjian2010-10-20
|
* Update storage.sgml to describe the 9.0 tablespace directory layout.Tom Lane2010-10-19
|
* Fix for new pg_upgrade cache code.Bruce Momjian2010-10-20
|
* Cache most recent relfilenode lookups, for speed, after report ofBruce Momjian2010-10-20
| | | | pg_upgrade slowness for 150k tables.
* In pg_upgrade, use cached copy of directory listing, rather than callingBruce Momjian2010-10-20
| | | | | | scandir() with a pattern for every table. Optimization after report of pg_upgrade slowness with 150k tables.
* Pgindent run on pg_upgrade source after restructuring.Bruce Momjian2010-10-19
|
* Restructure the pg_upgrade code to use several global structures ratherBruce Momjian2010-10-19
| | | | than packing everything into 'ctx' and passing that to every function.
* Fix incorrect generation of whole-row variables in planner.Tom Lane2010-10-19
| | | | | | | | | | | | | | A couple of places in the planner need to generate whole-row Vars, and were cutting corners by setting vartype = RECORDOID in the Vars, even in cases where there's an identifiable named composite type for the RTE being referenced. While we mostly got away with this, it failed when there was also a parser-generated whole-row reference to the same RTE, because the two Vars weren't equal() due to the difference in vartype. Fix by providing a subroutine the planner can call to generate whole-row Vars the same way the parser does. Per bug #5716 from Andrew Tipton. Back-patch to 9.0 where one of the bogus calls was introduced (the other one is new in HEAD).
* In pg_upgrade, rename SHELL_EXT to SCRIPT_EXT, for clarity.Bruce Momjian2010-10-19
|
* Add removal of PG_VERSION to optional old cluster deletion script.Bruce Momjian2010-10-19
| | | | Backpatch to 9.0.X.
* Add mention of using tools/fsync to test fsync methods. RestructureBruce Momjian2010-10-19
| | | | recent wal_sync_method doc paragraph to be clearer.
* Add levenshtein_less_equal, optimized version for small distances.Robert Haas2010-10-19
| | | | Alexander Korotkov, heavily revised by me.
* Unbreak comments on composite type attributes.Robert Haas2010-10-19
| | | | Report and diagnosis by Peter Eisentraut.
* In pg_upgrade, rename macro EXEC_EXT to SHELL_EXT for clarity.Bruce Momjian2010-10-19
| | | | Backpatch to 9.0.X.
* Support key word 'all' in host column of pg_hba.confPeter Eisentraut2010-10-18
|
* Document the tablespace directory "should" be empty, rather than "must"Bruce Momjian2010-10-18
| | | | be empty. Because of binary migration usage, it might not be empty.
* Change example pg_hba.conf in docs to match altered pg_hba.conf.sampleRobert Haas2010-10-18
| | | | | | | Peter Eisentraut's recent patch to allow host names in pg_hba.conf changed the contents of pg_hba.conf.sample Fujii Masao
* Fix a passel of inappropriately-named global functions in GIN.Tom Lane2010-10-17
| | | | | | | | | | | | | | | | The GIN code has absolutely no business exporting GIN-specific functions with names as generic as compareItemPointers() or newScanKey(); that's just trouble waiting to happen. I got annoyed about this again just now and decided to fix it. This commit ensures that all global symbols defined in access/gin/ have names including "gin" or "Gin". There were a couple of cases, like names involving "PostingItem", where arguably the names were already sufficiently nongeneric; but I figured as long as I was risking creating merge problems for unapplied GIN patches I might as well impose a uniform policy. I didn't touch any static symbol names. There might be some places where it'd be appropriate to rename some static functions to match siblings that are exported, but I'll leave that for another time.
* Improve GIN indexscan cost estimation.Tom Lane2010-10-17
| | | | | | | | | | | | | The better estimate requires more statistics than we previously stored: in particular, counts of "entry" versus "data" pages within the index, as well as knowledge of the number of distinct key values. We collect this information during initial index build and update it during VACUUM, storing the info in new fields on the index metapage. No initdb is required because these fields will read as zeroes in a pre-existing index, and the new gincostestimate code is coded to behave (reasonably) sanely if they are zeroes. Teodor Sigaev, reviewed by Jan Urbanski, Tom Lane, and Itagaki Takahiro.
* Fix msvc build for localized versions of Visual C++Magnus Hagander2010-10-17
| | | | | | | Look only at the non-localized part of the output from "vcbuild /?", which is used to determine the version of Visual Studio in use. Different languages seem to localize different amounts of the string, but we assume the part "Microsoft Visual C++" won't be modified.
* Fix recent changes to not break non-IPV6-aware systems.Tom Lane2010-10-16
|
* Document that translate() removes characters in "from" that don't haveAlvaro Herrera2010-10-16
| | | | | | a corresponding "to" character. Author: Josh Kupershmidt
* Allow WITH clauses to be attached to INSERT, UPDATE, DELETE statements.Tom Lane2010-10-15
| | | | | | | | | | | | | | | | This is not the hoped-for facility of using INSERT/UPDATE/DELETE inside a WITH, but rather the other way around. It seems useful in its own right anyway. Note: catversion bumped because, although the contents of stored rules might look compatible, there's actually a subtle semantic change. A single Query containing a WITH and INSERT...VALUES now represents writing the WITH before the INSERT, not before the VALUES. While it's not clear that that matters to anyone, it seems like a good idea to have it cited in the git history for catversion.h. Original patch by Marko Tiikkaja, with updating and cleanup by Hitoshi Harada.
* Support host names in pg_hba.confPeter Eisentraut2010-10-15
| | | | Peter Eisentraut, reviewed by KaiGai Kohei and Tom Lane
* Change references to SQL/XML:2003 to :2008 and renumber sections accordinglyPeter Eisentraut2010-10-15
|
* Document the DISTINCT noise word in the UNION/INTERSECT/EXCEPT constructs.Tom Lane2010-10-15
| | | | | | | | I also rearranged the order of the sections to match the logical order of processing steps: the distinct-elimination implied by SELECT DISTINCT happens before, not after, any UNION/INTERSECT/EXCEPT combination. Per a suggestion from Hitoshi Harada.
* Allow pg_ctl to register the service in either AUTO or DEMAND start typeAlvaro Herrera2010-10-15
| | | | | Author: Quan Zongliang Documentation updates by David Fetter
* Fix low-risk potential denial of service against RADIUS login.Magnus Hagander2010-10-15
| | | | | | | | | | | | | | | | Corrupt RADIUS responses were treated as errors and not ignored (which the RFC2865 states they should be). This meant that a user with unfiltered access to the network of the PostgreSQL or RADIUS server could send a spoofed RADIUS response to the PostgreSQL server causing it to reject a valid login, provided the attacker could also guess (or brute-force) the correct port number. Fix is to simply retry the receive in a loop until the timeout has expired or a valid (signed by the correct RADIUS server) packet arrives. Reported by Alan DeKok in bug #5687.
* Correct WAL space calculation formula in docs.Simon Riggs2010-10-15
| | | | Error pointed out by Fujii Masao, though not his patch.
* Improve comment about ignoring 128 error code on Windows:Bruce Momjian2010-10-15
| | | | | * Microsoft reports it is related to mutex failure: * http://archives.postgresql.org/pgsql-hackers/2010-09/msg00790.php
* Add pg_user_mappings to the table of system views.Robert Haas2010-10-14
|
* Support MergeAppend plans, to allow sorted output from append relations.Tom Lane2010-10-14
| | | | | | | | | This patch eliminates the former need to sort the output of an Append scan when an ordered scan of an inheritance tree is wanted. This should be particularly useful for fast-start cases such as queries with LIMIT. Original patch by Greg Stark, with further hacking by Hans-Jurgen Schonig, Robert Haas, and Tom Lane.
* Fix makefile logic to not break the build when xgettext is missingPeter Eisentraut2010-10-14
| | | | | | xgettext is only required when make init-po is run manually; it is not required for a build. The intent to handle that was already there, but the ifdef's were in the wrong place.
* Remove reference.cedPeter Eisentraut2010-10-14
| | | | | | This is a parsed DocBook DTD for the PSGML Emacs mode, but it hasn't been updated since we switched to DocBook 4.2 about seven years ago. Also, PSGML has deprecated this method of DTD parsing.
* Complete the documentation of the USAGE privilege for foreign serversPeter Eisentraut2010-10-14
| | | | | | The GRANT reference page failed to mention that the USAGE privilege allows modifying associated user mappings, although this was already documented on the CREATE/ALTER/DROP USER MAPPING pages.
* Document (compositeval).* field selection syntaxPeter Eisentraut2010-10-14
|
* Improvements to docs about pg_archive_cleanup and use of archivesSimon Riggs2010-10-14
| | | | Brendan Jurd
* Make startup process respond to signals to cancel waiting on latch.Simon Riggs2010-10-14
| | | | | | A tidy up for recently committed changes to startup latch. Fujii Masao
* Fix bug in comment of timeline history file.Simon Riggs2010-10-14
| | | | Fujii Masao