Commit Graph

23840 Commits

Author SHA1 Message Date
Neil Conway
415b925345 Fix a memory leak in psql: we'd leak a few PGresult handles if
a connectivity error occurred while executing one of the queries
for "\d <table>". Not serious, but still worth fixing. Patch from
Brendan Jurd.
2006-11-08 01:22:55 +00:00
Neil Conway
8964b41c7b Remove a 15-year old comment questioning behavior that is now well-
established: referencing an undefined parameter should result in an
error, not NULL.
2006-11-08 00:45:30 +00:00
PostgreSQL Daemon
9b3aee524f Tag as Beta3 ... two outstanding *known* bugs before RC1 ... 2006-11-07 17:59:05 +00:00
Tom Lane
f0395d50e9 Repair bug #2694 concerning an ARRAY[] construct whose inputs are empty
sub-arrays.  Per discussion, if all inputs are empty arrays then result
must be an empty array too, whereas a mix of empty and nonempty arrays
should (and already did) draw an error.  In the back branches, the
construct was strict: any NULL input immediately yielded a NULL output;
so I left that behavior alone.  HEAD was simply ignoring NULL sub-arrays,
which doesn't seem very sensible.  For lack of a better idea it now
treats NULL sub-arrays the same as empty ones.
2006-11-06 18:21:31 +00:00
Tom Lane
36e012e727 Remove temporary Windows-specific debugging code; it seems the problem
with fopen() not using FILE_SHARE_DELETE was indeed the bug we were after,
given lack of recent reports.
2006-11-06 17:10:22 +00:00
Tom Lane
9c3f24bb46 Update release notes in preparation for RC1. 2006-11-06 17:00:27 +00:00
Tom Lane
02f37bd8c4 Revert to the pre-8.2 method of probing for libm, that is, always
include it if it links properly.  It seems too risky to assume that
standard functions like pow() are not special-cased by the compiler.
Per report from Andreas Lange that build fails on Solaris cc compiler
with -fast.  Even though we don't consider that a supported option,
I'm worried that similar issues will arise with other compilers.
2006-11-06 03:44:38 +00:00
Tom Lane
74686b6de7 Get rid of some unnecessary dependencies on DataDir: wherever possible,
the backend should rely on its working-directory setting instead.
Also do some message-style police work in contrib/adminpack.
2006-11-06 03:06:41 +00:00
Neil Conway
62fe410ec6 Minor fix for LDAP authentication: if an error occurs, we need to
manually release the LDAP handle via ldap_unbind(). This isn't a
significant problem in practice because an error eventually results
in exiting the process, but we can cleanup correctly without too
much pain.

In passing, fix an error in snprintf() usage: the "size" parameter
to snprintf() is the size of the destination buffer, including space
for the NUL terminator. Also, depending on the value of NAMEDATALEN,
the old coding could have allowed for a buffer overflow.
2006-11-06 01:27:52 +00:00
Tom Lane
76d5667ba8 Fix recently-identified PITR recovery hazard: the base backup could contain
stale relcache init files (pg_internal.init), and there is no mechanism for
updating them during WAL replay.  Easiest solution is just to delete the init
files at conclusion of startup, and let the first backend started in each
database take care of rebuilding the init file.  Simon Riggs and Tom Lane.

Back-patched to 8.1.  Arguably this should be fixed in 8.0 too, but it would
require significantly more code since 8.0 has no handy startup-time scan of
pg_database to piggyback on.  Manual solution of the problem is possible
in 8.0 (just delete the pg_internal.init files before starting WAL replay),
so that may be a sufficient answer.
2006-11-05 23:40:31 +00:00
Tom Lane
48188e1621 Fix recently-understood problems with handling of XID freezing, particularly
in PITR scenarios.  We now WAL-log the replacement of old XIDs with
FrozenTransactionId, so that such replacement is guaranteed to propagate to
PITR slave databases.  Also, rather than relying on hint-bit updates to be
preserved, pg_clog is not truncated until all instances of an XID are known to
have been replaced by FrozenTransactionId.  Add new GUC variables and
pg_autovacuum columns to allow management of the freezing policy, so that
users can trade off the size of pg_clog against the amount of freezing work
done.  Revise the already-existing code that forces autovacuum of tables
approaching the wraparound point to make it more bulletproof; also, revise the
autovacuum logic so that anti-wraparound vacuuming is done per-table rather
than per-database.  initdb forced because of changes in pg_class, pg_database,
and pg_autovacuum catalogs.  Heikki Linnakangas, Simon Riggs, and Tom Lane.
2006-11-05 22:42:10 +00:00
Tom Lane
10c70b8602 Add note about space usage of 'manual' approach to clustering, per
suggestion from Sergey Koposov.  Also some other minor editing.
2006-11-04 19:03:51 +00:00
Tom Lane
6fada49805 Correct documentation error: in 8.1 and 8.2, %p in archive and restore
command strings inserts relative not absolute path of file to process.
This is a side-effect of 2005-07-04 change that makes the server use
relative paths in general.  Noted by Bernd Helmle.
2006-11-04 18:20:27 +00:00
Tom Lane
17a814ca02 Mention 'void' as the proper return type when there's nothing to
return, per suggestion from Joachim Wieland.
2006-11-03 07:17:36 +00:00
Tom Lane
70ce5c9082 Fix "failed to re-find parent key" btree VACUUM failure by revising page
deletion code to avoid the case where an upper-level btree page remains "half
dead" for a significant period of time, and to block insertions into a key
range that is in process of being re-assigned to the right sibling of the
deleted page's parent.  This prevents the scenario reported by Ed L. wherein
index keys could become out-of-order in the grandparent index level.

Since this is a moderately invasive fix, I'm applying it only to HEAD.
The bug exists back to 7.4, but the back branches will get a different patch.
2006-11-01 19:43:17 +00:00
Tom Lane
19d0c46def pg_restore failed on tar-format archives if they contained large objects
(blobs) with comments, per bug #2727 from Konstantin Pelepelin.
Mea culpa for not having tested this case.
Back-patch to 8.1; prior branches don't dump blob comments at all.
2006-11-01 15:59:26 +00:00
Tom Lane
c1fdbba49f Update zic database to tzdata2006n. 2006-11-01 05:20:38 +00:00
Teodor Sigaev
bf028fa8a6 Add description of new features 2006-10-31 16:23:05 +00:00
Tom Lane
7e63445d59 Fix misstatement about the results of using -1 with BEGIN. 2006-10-31 02:29:15 +00:00
Neil Conway
bc4b856e7b Add text to the VACUUM, REINDEX, DROP TABLESPACE and CREATE TABLESPACE
reference pages documenting that these commands cannot be used within
a transaction block. Also make some minor improvements to the psql
reference page. Patch from Simon Riggs, minor editorialization by
myself.
2006-10-31 01:52:31 +00:00
Peter Eisentraut
0b9f93e6b0 Code the unknown options check without using m4 diversions. Otherwise this
code relies on the checking macro actually being called at the end, or the
automatic undiversion will produce garbage.  These sort of implicit
side-effects undermine the modularity of the macros and happen to break the
ODBC driver which makes use of them.

Also put the warnings at the very end of configure, so there is an even
better chance of seeing them.
2006-10-30 22:15:04 +00:00
Neil Conway
e45edb35e1 Fix typo in backup docs. Patch from Euler Taveira de Oliveira. 2006-10-30 00:08:02 +00:00
Bruce Momjian
27163e3872 Fix typo in docs. 2006-10-27 12:40:26 +00:00
Bruce Momjian
50f479a112 Fix spelling mistake in docs. 2006-10-26 17:07:03 +00:00
Bruce Momjian
75f0655345 Add missing file for documentation section on failover, replication,
load balancing, and clustering options.
2006-10-26 15:32:45 +00:00
Bruce Momjian
2cbdb5522b Add documentation section on failover, replication, load balancing, and
clustering options.
2006-10-26 15:26:54 +00:00
Tom Lane
76d5f6f035 expression_tree_walker failed to let walker function see the immediate child
node of a SubLink or SubPlan testexpr field.  Bug resulted from replacing
the old lefthand/exprs list fields with a simple expression field, and not
remembering that expression_tree_walker is coded to save a few cycles by
recursing directly to self on list fields (on the assumption the walker
isn't interested in List nodes per se).  On non-list fields it must of
course call the walker.  Possibly that hack isn't worth the risk of more
such bugs, but I'll leave it be for now.  Per bug report from James Robinson.
2006-10-25 22:11:32 +00:00
Tom Lane
4df8de7a68 Fix check for whether a clauseless join has to be forced in the presence of
outer joins.  Originally it was only looking for overlap of the righthand
side of a left join, but we have to do it on the lefthand side too.
Per example from Jean-Pierre Pelletier.
2006-10-24 17:50:22 +00:00
Tom Lane
d8221dfa6d Tweak zic.c to compile cleanly on MSVC: use CopyFile instead of
CopyFileEx.  This avoids a warning about the function not being
present on older Windows versions.  Magnus Hagander
2006-10-24 15:11:03 +00:00
Bruce Momjian
9601745d35 Correctino, add URL on :
* Add estimated_count(*) to return an estimate of COUNT(*)
>   http://archives.postgresql.org/pgsql-hackers/2005-11/msg00943.php
2006-10-24 02:42:34 +00:00
Bruce Momjian
2b1ccefe72 Add URL for:
* Speed up COUNT(*)
>   http://archives.postgresql.org/pgsql-hackers/2005-11/msg00943.php
2006-10-24 02:41:22 +00:00
Tom Lane
cfb3a42831 Rewrite discussion of ORDER BY to emphasize the SQL99 expression case
instead of the SQL92 output-column-ID case.
2006-10-24 02:24:27 +00:00
Tom Lane
66f5264a2e Stamp 8.2beta2. 2006-10-23 22:50:20 +00:00
Peter Eisentraut
0ff4352d7a Add some real descriptions to the multiargument aggregate functions rather
than just showing the incomprehensible formulas.
2006-10-23 19:57:37 +00:00
Tom Lane
28b14b034a Fix broken markup. 2006-10-23 19:29:46 +00:00
Peter Eisentraut
0f763503ff Spellchecking and such 2006-10-23 18:10:32 +00:00
Peter Eisentraut
033cb9d30b Fix list of environment variables for configure. Remove some variables
that are almost never used.  Put documentation-related variables into the
documentation chapter.
2006-10-23 14:13:43 +00:00
Michael Meskes
a09f9ff649 Small parser sync 2006-10-23 08:00:48 +00:00
Tom Lane
954c1813ac Remove an unnecessary HOLD_INTERRUPTS/RESUME_INTERRUPTS pair.
This was required back when RESUME_INTERRUPTS could actually
execute ProcessInterrupts, but that hasn't been true since 2001...
2006-10-22 20:34:54 +00:00
Tom Lane
bd95c74985 Code cleanup for pg_buffercache, from Mark Kirkwood. 2006-10-22 17:49:21 +00:00
Tom Lane
c2c0b14086 Various MSVC build fixes from Magnus; also remove stray Windows
newlines.
2006-10-22 17:17:09 +00:00
Tom Lane
fa5d08fbf8 Some desultory copy-editing. 2006-10-22 03:03:41 +00:00
Tom Lane
ed19393326 Some marginal editorial improvements and updates in the tutorial. 2006-10-21 23:12:57 +00:00
Peter Eisentraut
9c2c41646a Translations update 2006-10-21 21:03:04 +00:00
Tom Lane
890ce3975e Further release-note editorialization. 2006-10-21 18:41:53 +00:00
Tom Lane
425417d498 Editorial improvements for recent plpython doc updates. 2006-10-21 18:33:05 +00:00
Bruce Momjian
90f53d8487 Update PQserverVersion() to use 8.1.X as an example, rather than 7.4
because the function didn't exist in 7.4.X.
2006-10-21 18:25:01 +00:00
Bruce Momjian
a7701718b2 Update release notes for new pgcrypto additions.
Marko Kreen
2006-10-21 18:15:44 +00:00
Bruce Momjian
944c4e3feb Add URL for async I/O:
>   http://archives.postgresql.org/pgsql-hackers/2006-10/msg00820.php
2006-10-21 17:31:18 +00:00
Tom Lane
a003bd07f3 Rewrite discussion of string constant syntax to bring it into line with
the politically correct view that backslash escapes are deprecated.
2006-10-21 17:12:07 +00:00