aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* find -path is not portable, so use grep -v instead.Alvaro Herrera2010-10-25
| | | | | Per previous failure of buildfarm member koi (which is no longer failing, alas).
* Work around rounding misbehavior exposed by buildfarm.Tom Lane2010-10-25
|
* Remove unnecessary use of trigger flag to hash plperl functionsAndrew Dunstan2010-10-24
|
* Allow new values to be added to an existing enum type.Tom Lane2010-10-24
| | | | | | | After much expenditure of effort, we've got this to the point where the performance penalty is pretty minimal in typical cases. Andrew Dunstan, reviewed by Brendan Jurd, Dean Rasheed, and Tom Lane
* Support suffix matching of host names in pg_hba.confPeter Eisentraut2010-10-24
| | | | | A name starting with a dot can be used to match a suffix of the actual host name (e.g., .example.com matches foo.example.com).
* Correct a mistake in levenshtein_less_equal() multibyte character handling.Robert Haas2010-10-22
| | | | | | Spotted by Alexander Korotkov. Along the way, remove a misleading comment line.
* Add semicolon, missed in previous patch. And update the keyword list inHeikki Linnakangas2010-10-22
| | | | the docs to reflect that OFF is now unreserved. Spotted by Tom Lane.
* Make OFF keyword unreserved. It's not hard to imagine wanting to use 'off'Heikki Linnakangas2010-10-22
| | | | | | | | as a variable or column name, and it's not reserved in recent versions of the SQL spec either. This became particularly annoying in 9.0, before that PL/pgSQL replaced variable names in queries with parameter markers, so it was possible to use OFF and many other backend parser keywords as variable names. Because of that, backpatch to 9.0.
* 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
|