aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Add bug report line to pg_upgrade --help outputPeter Eisentraut2011-05-10
|
* Put pg_test_fsync --help and --version output in line with conventionsPeter Eisentraut2011-05-10
| | | | Foremost, it should go to stdout.
* Adjust documentation with respect to "unknown" timezone setting.Tom Lane2011-05-10
| | | | | | The recent cleanup of GUC assign hooks got rid of the kludge of using "unknown" as a magic value for timezone and log_timezone. But I forgot to update the documentation to match, as noted by Martin Pitt.
* Be more wary in initdb's creation of platform-dependent collations.Tom Lane2011-05-10
| | | | | | | | | | | Discard any collation aliases that match the built-in pg_collation entries (ie, "default", "C", "POSIX"). Such aliases would be refused by a CREATE COLLATION command, but since initdb is injecting them via a simple INSERT, it has to make the corresponding check for itself. Per Martin Pitt's report of funny behavior in a machine that had a bogus "C.UTF-8" locale. Also, use E'' syntax for the output of escape_quotes, as per its header comment.
* In pg_upgrade, remove suggestion of setting pg_hba.conf to 'trust', nowBruce Momjian2011-05-10
| | | | | that we report the libpq connection failure string. Per suggestion from Robert Haas.
* Documentation cleanup for the possible values of the datatype 'boolean'.Bruce Momjian2011-05-09
|
* Update documentation to state there is three-value logic, notBruce Momjian2011-05-09
| | | | | | | three-value boolean logic. Backpatch to 9.0.X since we just got another bug report about this today.
* Remove "make check" target in src/test/isolation/Makefile.Tom Lane2011-05-09
| | | | | | | | | | This doesn't work as expected because the isolationtester program requires libpq to already be installed. While it works when you've already installed libpq, having to already have done "make install" defeats most of the point of a check with a temp installation. And there are weird corner cases if the dynamic linker picks up an old libpq.so from system library directories. Remove the target (or more precisely, make it print a helpful message) so people don't expect the case to work.
* In pg_upgrade, add status message about superuser check.Bruce Momjian2011-05-09
|
* Add C comment about the fact that the autovacuum limit can go backwardsBruce Momjian2011-05-08
| | | | by 3, but that is it OK.
* Fix some portability issues in isolation regression test driver.Tom Lane2011-05-08
| | | | | | | | | | Remove random system #includes in favor of using postgres_fe.h. (The alternative to that is letting this module grow its own configuration testing ability...) Also fix the "make clean" target to actually clean things up. Per local testing.
* Add C comment why client encoding can be set in pg_upgrade.Bruce Momjian2011-05-07
|
* Add xreflabels to /contrib manuals so links appear correct. Also updateBruce Momjian2011-05-07
| | | | README.links to explain xref properly.
* Add missing documention connecting word.Bruce Momjian2011-05-07
|
* In pg_upgrade, report non-super-user username in error message.Bruce Momjian2011-05-07
|
* Check that the pg_upgrade user specified is a super-user.Bruce Momjian2011-05-07
| | | | | | Also report the error message when the post-pg_ctl connection fails. Per private bug report from EnterpriseDB.
* Add comment about memory reordering to PredicateLockTupleRowVersionLink.Robert Haas2011-05-06
| | | | Dan Ports, per head-scratching from Simon Riggs and myself.
* Adjust pg_upgrade FATAL error messages to have consistent newlines.Bruce Momjian2011-05-06
| | | | Also adjust some error message capitalization for consistency.
* Fix typos in SECURITY LABEL documentation.Robert Haas2011-05-06
| | | | KaiGai Kohei
* Improve compiler string shown in version()Peter Eisentraut2011-05-06
| | | | | | | | | With some compilers such as Clang and ICC emulating GCC, using a version string of the form "GCC $version" can be quite misleading. Also, a great while ago, the version output from gcc --version started including the string "gcc", so it is redundant to repeat that. In order to support ancient GCC versions, we now prefix the result with "GCC " only if the version output does not start with a letter.
* Move RegisterPredicateLockingXid() call to a safer place.Tom Lane2011-05-06
| | | | | | | | | | | | | | | | | | | The SSI patch inserted a call of RegisterPredicateLockingXid into GetNewTransactionId, which was a bad idea on a couple of grounds. First, it's not necessary to hold XidGenLock while manipulating that shared memory, and doing so is bad because XidGenLock is a high-contention lock that should be held for as short a time as possible. (Not to mention that it adds an entirely unnecessary deadlock hazard, since we must take SerializableXactHashLock as well.) Second, the specific place where it was put was between extending CLOG and advancing nextXid, which could result in unpleasant behavior in case of a failure there. Pull the call out to AssignTransactionId, which is much safer and arguably better from a modularity standpoint too. There is more work to do to clean up the failure-before-advancing-nextXid issue, but that is a separate change that will need to be back-patched. So for the moment I just want to make GetNewTransactionId look the same as it did in prior versions.
* Remove precedence labeling of keywords TRUE, FALSE, UNKNOWN, and ZONE.Tom Lane2011-05-05
| | | | | | | | | | | | | | | | These were labeled with precedences just to avoid attaching explicit precedences to the productions in which they were the last terminal symbol. Since a terminal symbol precedence marking can affect many other things too, it seems like better practice to attach precedence labels to the productions, and not mark the terminal symbols. Ideally we'd also remove the precedence attached to NULL_P, but it turns out that we are actually depending on that having a precedence higher than POSTFIXOP, else we get a shift/reduce conflict for postfix operators in b_expr. (Which more or less proves my point about these markings having a high risk of unexpected consequences.) For the moment, move NULL_P into the set of keywords grouped with IDENT, so that at least it will act similarly to non-keywords; and document the interaction.
* Unbreak the regression tests from my previous commitMagnus Hagander2011-05-05
|
* Improve pg_archivecleanup and pg_standby --help outputPeter Eisentraut2011-05-05
| | | | | | | | For consistency with other tools, put the options before further usage information. In pg_standby, remove the supposedly deprecated -l option from the given example invocation.
* Improve formatting of pg_upgrade --help outputPeter Eisentraut2011-05-05
|
* Clarify error message when attempting to create index on foreign tableMagnus Hagander2011-05-05
| | | | | Instead of just saying "is not a table", specifically state that indexes aren't supported on *foreign* tables.
* Improve style of generate_history.pl Perl script.Bruce Momjian2011-05-05
|
* Include unary plus in the Operator Precedence table.Tom Lane2011-05-04
| | | | | | | Per gripe from Grzegorz Szpetkowski. Also, change the subsection heading from "Lexical Precedence" (which is a contradiction in terms) to "Operator Precedence".
* Remove redundant port number checkPeter Eisentraut2011-05-04
| | | | | pg_basebackup doesn't need to police the format of port numbers. libpq already does that.
* Message style cleanupPeter Eisentraut2011-05-04
|
* Fix alignment of --help outputPeter Eisentraut2011-05-04
| | | | Tabs replaced by spaces.
* Link some tables into the surrounding text by their idPeter Eisentraut2011-05-04
|
* Update obsolete mention of Sequoia, now known as TungstenAlvaro Herrera2011-05-03
| | | | | | Per http://joomla.aws.continuent.com/community/lab-projects/sequoia Greg Smith
* Improve description of read/write traffic scalabilityAlvaro Herrera2011-05-03
| | | | Greg Smith, after a suggestion of James Bruce
* Add ID attribute to some sect2's missing itAlvaro Herrera2011-05-02
| | | | David Fetter
* Fix pull_up_sublinks' failure to handle nested pull-up opportunities.Tom Lane2011-05-02
| | | | | | | | | | | | | After finding an EXISTS or ANY sub-select that can be converted to a semi-join or anti-join, we should recurse into the body of the sub-select. This allows cases such as EXISTS-within-EXISTS to be optimized properly. The original coding would leave the lower sub-select as a SubLink, which is no better and often worse than what we can do with a join. Per example from Wayne Conrad. Back-patch to 8.4. There is a related issue in older versions' handling of pull_up_IN_clauses, but they're lame enough anyway about the whole area that it seems not worth the extra work to try to fix.
* Update some ALTER USER cross-references to ALTER ROLEAlvaro Herrera2011-05-02
| | | | Greg Smith
* Small cleanup of spacing in verbatim DocBook elementsPeter Eisentraut2011-05-02
|
* Improve aset.c's space management in contexts with small maxBlockSize.Tom Lane2011-05-02
| | | | | | | | | | | | | | | | | The previous coding would allow requests up to half of maxBlockSize to be treated as "chunks", but when that actually did happen, we'd waste nearly half of the space in the malloc block containing the chunk, if no smaller requests came along to fill it. Avoid this scenario by limiting the maximum size of a chunk to 1/8th maxBlockSize, so that we can waste no more than 1/8th of the allocated space. This will not change the behavior at all for the default context size parameters (with large maxBlockSize), but it will change the behavior when using ALLOCSET_SMALL_MAXSIZE. In particular, there's no longer a need for spell.c to be overly concerned about the request size parameters it uses, so remove a rather unhelpful comment about that. Merlin Moncure, per an idea of Tom Lane's
* Catch errors in for loop in makefilePeter Eisentraut2011-05-02
| | | | Add "|| exit" so that the rule aborts when a command fails.
* Rewrite installation makefile rules without for loopsPeter Eisentraut2011-05-02
| | | | | | | | | | install-sh can install multiple files at once, so for loops are not necessary. This was already changed for the rest of the code some time ago, but pgxs.mk was apparently forgotten, and the obsolete coding style has now been copied to the PLs as well. This also fixes the problem that the for loops in question did not catch errors.
* Make CLUSTER lock the old table's toast table before copying data.Tom Lane2011-05-01
| | | | | | | | We must lock out autovacuuming of the old toast table before computing the OldestXmin horizon we will use. Otherwise, autovacuum could start on the toast table later, compute a later OldestXmin horizon, and remove as DEAD toast tuples that we still need (because we think their parent tuples are only RECENTLY_DEAD). Per further thought about bug #5998.
* Lowercase status labels in pg_stat_replication view.Bruce Momjian2011-04-29
|
* Remove special case for xmin == xmax in HeapTupleSatisfiesVacuum().Tom Lane2011-04-29
| | | | | | | | | | | | | | | | | | | | | | VACUUM was willing to remove a committed-dead tuple immediately if it was deleted by the same transaction that inserted it. The idea is that such a tuple could never have been visible to any other transaction, so we don't need to keep it around to satisfy MVCC snapshots. However, there was already an exception for tuples that are part of an update chain, and this exception created a problem: we might remove TOAST tuples (which are never part of an update chain) while their parent tuple stayed around (if it was part of an update chain). This didn't pose a problem for most things, since the parent tuple is indeed dead: no snapshot will ever consider it visible. But MVCC-safe CLUSTER had a problem, since it will try to copy RECENTLY_DEAD tuples to the new table. It then has to copy their TOAST data too, and would fail if VACUUM had already removed the toast tuples. Easiest fix is to get rid of the special case for xmin == xmax. This may delay reclaiming dead space for a little bit in some cases, but it's by far the most reliable way to fix the issue. Per bug #5998 from Mark Reid. Back-patch to 8.3, which is the oldest version with MVCC-safe CLUSTER.
* Rewrite pg_size_pretty() to avoid compiler bug.Tom Lane2011-04-29
| | | | | | | | Convert it to use successive shifts right instead of increasing a divisor. This is probably a tad more efficient than the original coding, and it's nicer-looking than the previous patch because we don't need a special case to avoid overflow in the last branch. But the real reason to do it is to avoid a Solaris compiler bug, as per results from buildfarm member moa.
* Use non-literal format for possibly non-standard strftime formats.Andrew Dunstan2011-04-28
| | | | | | Per recent -hackers discussion. The formats in question are %G and %V, and cause warnings on MinGW at least. We assume the ecpg application knows what it's doing if it passes these formats to the library.
* Add some casts to try to silence most of the remaining format warnings on ↵Andrew Dunstan2011-04-28
| | | | MinGW-W64.
* Use a macro variable PG_PRINTF_ATTRIBUTE for the style used for checking ↵Andrew Dunstan2011-04-28
| | | | | | | | | printf type functions. The style is set to "printf" for backwards compatibility everywhere except on Windows, where it is set to "gnu_printf", which eliminates hundreds of false error messages from modern versions of gcc arising from %m and %ll{d,u} formats.
* The arguments to pg_ctl kill are not optional - remove brackets in the docs.Heikki Linnakangas2011-04-28
| | | | Fujii Masao
* Tag 9.1beta1.REL9_1_BETA1Tom Lane2011-04-27
|