OSDN Git Service
Neil Conway [Sat, 25 Nov 2006 07:03:57 +0000 (07:03 +0000)]
Cosmetic release note fix.
PostgreSQL Daemon [Sat, 25 Nov 2006 03:34:13 +0000 (03:34 +0000)]
update for rc1
Bruce Momjian [Sat, 25 Nov 2006 01:22:28 +0000 (01:22 +0000)]
Copy fsync() defines into test_fsync.c, someday place them in an
include.
Propery align for O_DIRECT.
Check for write()/fsync() failures.
Bruce Momjian [Sat, 25 Nov 2006 00:38:53 +0000 (00:38 +0000)]
Document that to_char() "TM" is controlled by lc_messages.
Tom Lane [Fri, 24 Nov 2006 23:31:55 +0000 (23:31 +0000)]
Update release notes for RC1.
Tom Lane [Fri, 24 Nov 2006 23:06:50 +0000 (23:06 +0000)]
Fix psql's \copy command to ensure that it cycles libpq back to the idle state
(in particular, causing the ReadyForQuery message to be eaten) before
returning from do_copy. The only known consequence of failing to do so is
that get_prompt might show a wrong result for the %x transaction status
escape, as reported by Bernd Helmle; but it's possible there are other issues.
Back-patch as far as 7.4, the oldest version supporting %x.
Bruce Momjian [Fri, 24 Nov 2006 22:25:56 +0000 (22:25 +0000)]
Revert (too late in beta):
Fix to_char() locale handling to honor LC_TIME, not LC_MESSAGES.
Euler Taveira de Oliveira
Tom Lane [Fri, 24 Nov 2006 21:18:42 +0000 (21:18 +0000)]
Change pg_stat_all_tables and sister views to put the recently-added
vacuum/analyze timestamp columns at the end, rather than at a random
spot in the middle as in the original patch. This was deemed more usable
as well as less likely to break existing application code. initdb forced
accordingly. In passing, remove former kluge for initializing
pg_stat_file()'s pg_proc entry --- bootstrap mode was fixed recently
so that this can be done without any hacks, but I overlooked this usage.
Tom Lane [Fri, 24 Nov 2006 18:44:37 +0000 (18:44 +0000)]
Make contrib/isn pass the opr_sanity sanity checks: add missing
commutator operators, and mark hash-opclass members as oprcanhash.
This is a pretty ugly, brute-force solution, but it seems that getting
rid of all these redundant-looking operators would require some tweaks
in the core operator-resolution code to behave nicely, and I'm not
willing to risk that just before RC1.
Peter Eisentraut [Fri, 24 Nov 2006 17:11:57 +0000 (17:11 +0000)]
Translation updates
Peter Eisentraut [Fri, 24 Nov 2006 17:03:50 +0000 (17:03 +0000)]
Separate release preparation jobs for all releases and for major releases
Bruce Momjian [Fri, 24 Nov 2006 15:26:18 +0000 (15:26 +0000)]
Fix to_char() locale handling to honor LC_TIME, not LC_MESSAGES.
Euler Taveira de Oliveira
Peter Eisentraut [Fri, 24 Nov 2006 09:20:12 +0000 (09:20 +0000)]
KB -> kB
Teodor Sigaev [Thu, 23 Nov 2006 17:35:14 +0000 (17:35 +0000)]
Fix lowercasing while parse OO dictionary
Bruce Momjian [Thu, 23 Nov 2006 17:20:47 +0000 (17:20 +0000)]
Revert out:
Update fsync test to match new O_DIRECT behavior.
Greg Smith
Bruce Momjian [Thu, 23 Nov 2006 16:41:11 +0000 (16:41 +0000)]
Update fsync test to match new O_DIRECT behavior.
Greg Smith
Bruce Momjian [Thu, 23 Nov 2006 16:18:12 +0000 (16:18 +0000)]
Update wording:
> * Add a field 'isoyear' to extract(), based on the ISO week
Neil Conway [Thu, 23 Nov 2006 05:58:01 +0000 (05:58 +0000)]
Spelling and related minor fixes for the GIN docs.
Tom Lane [Thu, 23 Nov 2006 05:47:48 +0000 (05:47 +0000)]
Un-break ecpg regression test.
Neil Conway [Thu, 23 Nov 2006 05:43:32 +0000 (05:43 +0000)]
More minor SGML improvements for xfunc.sgml, including making some
titles more concise. (We usually don't need to repeat the name of a
section in the title of one of its subsections.)
Bruce Momjian [Thu, 23 Nov 2006 05:39:17 +0000 (05:39 +0000)]
Document that Kerberos is for authentication, and does not encrypt data
or queries over the network.
Neil Conway [Thu, 23 Nov 2006 05:28:18 +0000 (05:28 +0000)]
Fix a typo in recent xfunc addition, do some routine SGML police work.
Neil Conway [Thu, 23 Nov 2006 05:27:18 +0000 (05:27 +0000)]
Add a comment noting that heap_copytuple_with_tuple() results in a
HeapTuple that is no longer allocated as a single palloc() block; if
used carelessly, this might result in a subsequent memory leak after
heap_freetuple().
Bruce Momjian [Thu, 23 Nov 2006 05:14:04 +0000 (05:14 +0000)]
Update lock comments for concurrent index creation, analyze.
Walter Cruz
Bruce Momjian [Thu, 23 Nov 2006 05:09:26 +0000 (05:09 +0000)]
Add:
> * Add ISO day of week format 'ID' to to_char() where Monday = 1
> * Add an ISO year field to extract() called 'isoyear'
Bruce Momjian [Thu, 23 Nov 2006 05:01:47 +0000 (05:01 +0000)]
Add:
> * Allow SQL-language functions to return results from RETURNING queries
Bruce Momjian [Thu, 23 Nov 2006 04:38:01 +0000 (04:38 +0000)]
Make ecpg test variable 'times' static so as not to conflict with libc
symbol.
Bruce Momjian [Thu, 23 Nov 2006 04:27:33 +0000 (04:27 +0000)]
Add "(assuming <varname>standard_conforming_strings</> is
<literal>off</>)" clauses for bytea.
Bruce Momjian [Thu, 23 Nov 2006 03:52:05 +0000 (03:52 +0000)]
Shared Memory Hooks Documentation
This patch, against xfunc.sgml, adds a new subsection 33.9.12, Shared
Memory and LWLocks in C-Language Functions, describing how shared memory
and lwlocks may be requested by C add-in functions.
Marc Munro
Bruce Momjian [Thu, 23 Nov 2006 03:30:49 +0000 (03:30 +0000)]
Add release entry for 8.1.5 that was missing:
<listitem><para>Fix rare bug in continuous archiving (Tom)</para></listitem>
Tom Lane [Thu, 23 Nov 2006 01:14:59 +0000 (01:14 +0000)]
Several changes to reduce the probability of running out of memory during
AbortTransaction, which would lead to recursion and eventual PANIC exit
as illustrated in recent report from Jeff Davis. First, in xact.c create
a special dedicated memory context for AbortTransaction to run in. This
solves the problem as long as AbortTransaction doesn't need more than 32K
(or whatever other size we create the context with). But in corner cases
it might. Second, in trigger.c arrange to keep pending after-trigger event
records in separate contexts that can be freed near the beginning of
AbortTransaction, rather than having them persist until CleanupTransaction
as before. Third, in portalmem.c arrange to free executor state data
earlier as well. These two changes should result in backing off the
out-of-memory condition before AbortTransaction needs any significant
amount of memory, at least in typical cases such as memory overrun due
to too many trigger events or too big an executor hash table. And all
the same for subtransaction abort too, of course.
Bruce Momjian [Wed, 22 Nov 2006 18:15:34 +0000 (18:15 +0000)]
More HA wording improvements.
Bruce Momjian [Wed, 22 Nov 2006 18:14:26 +0000 (18:14 +0000)]
Update HA docs with more wording improvements.
Bruce Momjian [Wed, 22 Nov 2006 17:36:52 +0000 (17:36 +0000)]
Wording and term clarification for HA docs, per Markus Schiltknecht.
Teodor Sigaev [Wed, 22 Nov 2006 15:55:05 +0000 (15:55 +0000)]
Avoid infinity calculations in rank_cd
Bruce Momjian [Wed, 22 Nov 2006 04:17:03 +0000 (04:17 +0000)]
Mention OIDs are now not created by default.
Bruce Momjian [Wed, 22 Nov 2006 04:01:40 +0000 (04:01 +0000)]
New async/sync multi-master headings for docs.
Bruce Momjian [Wed, 22 Nov 2006 04:00:19 +0000 (04:00 +0000)]
New async/sync multi-master headings for docs.
Bruce Momjian [Wed, 22 Nov 2006 03:44:52 +0000 (03:44 +0000)]
Add mention of shared-memory/disk for multi-master clustering.
Tom Lane [Tue, 21 Nov 2006 23:26:47 +0000 (23:26 +0000)]
Get rid of retail definitions of HAVE_STRDUP and HAVE_VSNPRINTF in
some of the Windows-only makefiles; the correct place to assert these
things is pg_config.h.win32. Per bug #2677.
Tom Lane [Tue, 21 Nov 2006 23:11:55 +0000 (23:11 +0000)]
Translate Windows' GMT Standard Time/GMT Daylight Time zones to
zic's Europe/London, rather than Europe/Dublin as before. This seems
a less surprising choice, particularly with respect to dates before
1948. Original suggestion was to translate to straight GMT, but this
seems wrong given that these zones *are* DST-aware. Per offlist
discussion with Magnus.
Bruce Momjian [Tue, 21 Nov 2006 22:48:33 +0000 (22:48 +0000)]
HA doc wording improvement.
Tom Lane [Tue, 21 Nov 2006 22:35:29 +0000 (22:35 +0000)]
Prevent intratransaction memory leak when a subtransaction is aborted
in the middle of executing a SPI query. This doesn't entirely fix the
problem of memory leakage in plpgsql exception handling, but it should
get rid of the lion's share of leakage.
Tom Lane [Tue, 21 Nov 2006 22:19:46 +0000 (22:19 +0000)]
Suppress timezone (%Z) part of timestamp display when running on Windows,
because on that platform strftime produces localized zone names in varying
encodings. Even though it's only in a comment, this can cause encoding
errors when reloading the dump script. Per suggestion from Andreas
Seltenreich. Also, suppress %Z on Windows in the %s escape of
log_line_prefix ... not sure why this one is different from the other two,
but it shouldn't be.
Tom Lane [Tue, 21 Nov 2006 21:51:05 +0000 (21:51 +0000)]
Fix plpython to work (or at least pass its regression tests) with
python 2.5. This involves fixing several violations of the published
spec for creating PyTypeObjects, and adding another regression test
expected output for yet another variation of error message spelling.
Bruce Momjian [Tue, 21 Nov 2006 21:37:33 +0000 (21:37 +0000)]
Mention pgpool-II can do Clustering For Parallel Query Execution.
Tom Lane [Tue, 21 Nov 2006 20:59:53 +0000 (20:59 +0000)]
On systems that have setsid(2) (which should be just about everything except
Windows), arrange for each postmaster child process to be its own process
group leader, and deliver signals SIGINT, SIGTERM, SIGQUIT to the whole
process group not only the direct child process. This provides saner behavior
for archive and recovery scripts; in particular, it's possible to shut down a
warm-standby recovery server using "pg_ctl stop -m immediate", since delivery
of SIGQUIT to the startup subprocess will result in killing the waiting
recovery_command. Also, this makes Query Cancel and statement_timeout apply
to scripts being run from backends via system(). (There is no support in the
core backend for that, but it's widely done using untrusted PLs.) Per gripe
from Stephen Harris and subsequent discussion.
Bruce Momjian [Tue, 21 Nov 2006 18:31:57 +0000 (18:31 +0000)]
Update Statement-Based Replication Middleware docs to be more general.
Teodor Sigaev [Tue, 21 Nov 2006 18:31:28 +0000 (18:31 +0000)]
Fix type in return value
Bruce Momjian [Tue, 21 Nov 2006 18:15:45 +0000 (18:15 +0000)]
In HA/load balancing does:
Clarify sync/async replication propogation delay issues.
Add SGML comment about Oracle RAC and remove doc mention.
Add item about Multi-master replication with conflict resolution.
Neil Conway [Tue, 21 Nov 2006 17:54:26 +0000 (17:54 +0000)]
VC build patch from Magnus:
Typo in the changes to plperl - uses wrong dir, and had a missing slash.
Also fixes error checking for xsubpp - it was broken in a way that hid
the problem above when run more than once (which is the normal case when
developing).
Bruce Momjian [Tue, 21 Nov 2006 17:01:58 +0000 (17:01 +0000)]
Move libpq environment reference in psql documentation to a more
appropriate place, per Andrew Dunstan.
Andrew Dunstan [Tue, 21 Nov 2006 16:59:02 +0000 (16:59 +0000)]
remove duplicate declaration, per report from Magnus Hagander.
Tom Lane [Tue, 21 Nov 2006 16:28:00 +0000 (16:28 +0000)]
If SSL negotiation fails and SSLMODE is 'prefer', then retry without SSL.
Negotiation failure is only likely to happen if one side or the other is
misconfigured, eg. bad client certificate. I'm not 100% convinced that
a retry is really the best thing, hence not back-patching this fix for now.
Per gripe from Sergio Cinos.
Bruce Momjian [Tue, 21 Nov 2006 15:38:09 +0000 (15:38 +0000)]
Add capitalization mention.
Bruce Momjian [Tue, 21 Nov 2006 03:44:55 +0000 (03:44 +0000)]
I noticed that the Partitioning section of the docs has *two* sections
of caveats in different places, but close together. One called caveats,
one not. That looks like it just led to somebody not reading some
appropriate caveats in the second group of caveats (on -admin).
Simon Riggs
Tom Lane [Tue, 21 Nov 2006 01:23:37 +0000 (01:23 +0000)]
Change the default setting for log_min_error_statement to ERROR. Per
recent discussion in which majority opinion was that this is a more
widely useful setting than the previous default of PANIC.
Tom Lane [Tue, 21 Nov 2006 00:49:55 +0000 (00:49 +0000)]
Adjust elog.c so that elog(FATAL) exits (including cases where ERROR is
promoted to FATAL) end in exit(1) not exit(0). Then change the postmaster to
allow exit(1) without a system-wide panic, but not for the startup subprocess
or the bgwriter. There were a couple of places that were using exit(1) to
deliberately force a system-wide panic; adjust these to be exit(2) instead.
This fixes the problem noted back in July that if the startup process exits
with elog(ERROR), the postmaster would think everything is hunky-dory and
proceed to start up. Alternative solutions such as trying to run the entire
startup process as a critical section seem less clean, primarily because of
the fact that a fair amount of startup code is shared by all postmaster
children in the EXEC_BACKEND case. We'd need an ugly special case somewhere
near the head of main.c to make it work if it's the child process's
responsibility to determine what happens; and what's the point when the
postmaster already treats different children differently?
Bruce Momjian [Mon, 20 Nov 2006 22:07:56 +0000 (22:07 +0000)]
Retitle documentation section, "Statement-Based Replication Using Middleware".
Bruce Momjian [Mon, 20 Nov 2006 21:26:22 +0000 (21:26 +0000)]
Add mention that Shared Disk Failover can use file system mirroring of
the mirroring is consistent.
Bruce Momjian [Mon, 20 Nov 2006 20:58:40 +0000 (20:58 +0000)]
Update Brazilian FAQ.
Euler Taveira de Oliveira
Bruce Momjian [Mon, 20 Nov 2006 20:20:18 +0000 (20:20 +0000)]
For to_char() day/month abbrevitions, mention "3 chars in English,
localized lengths vary".
Bruce Momjian [Mon, 20 Nov 2006 19:31:27 +0000 (19:31 +0000)]
Our MingW FAQ appears to be seriously out of date. Couple of fixes: we
want to direct MSI downloads to main download site, NT4 not supported
anymore, msvc build env in progress, pgsql-hackers-win32 is no more.
Magnus Hagander
Tom Lane [Mon, 20 Nov 2006 19:18:02 +0000 (19:18 +0000)]
More MSVC build fixes:
* New versions of OpenSSL come with proper debug versions, and use
suffixed names on the LIBs for that. Adapts library handling to deal
with that.
* Fixes error where it incorrectly enabled Kerberos based on NLS
configuration instead of Kerberos configuration
* Specifies path of perl in config, instead of using current one.
Required when using a 64-bit perl normally, but want to build pl/perl
against 32-bit one (required)
* Fix so pgevent generates win32ver.rc automatically
Magnus Hagander
Neil Conway [Mon, 20 Nov 2006 17:42:16 +0000 (17:42 +0000)]
Overhaul the "External Projects" chapter in the manual. Replace
the variabelist with a more concise table, add a URL for each project,
remove some orphaned projects, add PL/Py, and various other changes.
Initial patch from Robert Treat, subsequent work by Neil Conway.
Bruce Momjian [Mon, 20 Nov 2006 15:07:13 +0000 (15:07 +0000)]
Update documentation to use Statement-Based Replication rather than
Query Broadcast.
Teodor Sigaev [Mon, 20 Nov 2006 14:03:30 +0000 (14:03 +0000)]
Fix bug archives.postgresql.org/pgsql-bugs/2006-10/msg00258.php.
Fix string's length calculation for recoding, fix strlower() to avoid wrong
assumption about length of recoded string (was: recoded string is no greater
that source, it may not true for multibyte encodings)
Thanks to Thomas H. <me@alternize.com> and Magnus Hagander <mha@sollentuna.net>
Tom Lane [Mon, 20 Nov 2006 01:07:56 +0000 (01:07 +0000)]
When truncating a relation in-place (eg during VACUUM), do not try to unlink
any no-longer-needed segments; just truncate them to zero bytes and leave
the files in place for possible future re-use. This avoids problems when
the segments are re-used due to relation growth shortly after truncation.
Before, the bgwriter, and possibly other backends, could still be holding
open file references to the old segment files, and would write dirty blocks
into those files where they'd disappear from the view of other processes.
Back-patch as far as 8.0. I believe the 7.x branches are not vulnerable,
because they had no bgwriter, and "blind" writes by other backends would
always be done via freshly-opened file references.
Tom Lane [Sun, 19 Nov 2006 21:33:23 +0000 (21:33 +0000)]
Repair problems with hash indexes that span multiple segments: the hash code's
preference for filling pages out-of-order tends to confuse the sanity checks
in md.c, as per report from Balazs Nagy in bug #2737. The fix is to ensure
that the smgr-level code always has the same idea of the logical EOF as the
hash index code does, by using ReadBuffer(P_NEW) where we are adding a single
page to the end of the index, and using smgrextend() to reserve a large batch
of pages when creating a new splitpoint. The patch is a bit ugly because it
avoids making any changes in md.c, which seems the most prudent approach for a
backpatchable beta-period fix. After 8.3 development opens, I'll take a look
at a cleaner but more invasive patch, in particular getting rid of the now
unnecessary hack to allow reading beyond EOF in mdread().
Backpatch as far as 7.4. The bug likely exists in 7.3 as well, but because
of the magnitude of the 7.3-to-7.4 changes in hash, the later-version patch
doesn't even begin to apply. Given the other known bugs in the 7.3-era hash
code, it does not seem worth trying to develop a separate patch for 7.3.
Tom Lane [Fri, 17 Nov 2006 23:25:17 +0000 (23:25 +0000)]
Clarify description of CIDR-address column of pg_hba.conf, to discourage
people from trying notations like '10.6/16', which is accepted but does
not mean what you probably think. Per example from Paul Forgey.
Tom Lane [Fri, 17 Nov 2006 18:00:15 +0000 (18:00 +0000)]
Repair two related errors in heap_lock_tuple: it was failing to recognize
cases where we already hold the desired lock "indirectly", either via
membership in a MultiXact or because the lock was originally taken by a
different subtransaction of the current transaction. These cases must be
accounted for to avoid needless deadlocks and/or inappropriate replacement of
an exclusive lock with a shared lock. Per report from Clarence Gardner and
subsequent investigation.
Peter Eisentraut [Fri, 17 Nov 2006 16:46:27 +0000 (16:46 +0000)]
Small message equalization fix
Bruce Momjian [Fri, 17 Nov 2006 16:38:44 +0000 (16:38 +0000)]
Rename replication section "High Availability and Load Balancing".
Bruce Momjian [Fri, 17 Nov 2006 13:29:53 +0000 (13:29 +0000)]
Data Partitioning documentation section reduced and moved to the end.
Neil Conway [Fri, 17 Nov 2006 09:00:03 +0000 (09:00 +0000)]
Fix a typo.
Michael Meskes [Fri, 17 Nov 2006 08:46:53 +0000 (08:46 +0000)]
Fixed small typo, missing 'l' in 'Cluserting'
Neil Conway [Fri, 17 Nov 2006 05:29:46 +0000 (05:29 +0000)]
Remove a bunch of antique information from the appendix in the docs
that discusses CVS. Remove the recommendation to use cvs 1.10. Remove
discussion of alleged CVSup binaries on postgresql.org, because they
have not existed for several years. Remove discussion of how to
build cvsup from source because the existing text is outdated, and
more accurate information is available from the CVSup homepage.
Bruce Momjian [Fri, 17 Nov 2006 04:52:46 +0000 (04:52 +0000)]
Use more standard terms for replication, ideas from Markus Schiltknecht.
Bruce Momjian [Thu, 16 Nov 2006 21:45:25 +0000 (21:45 +0000)]
Mention two-phase commit for having all transactions commit on all servers.
Bruce Momjian [Thu, 16 Nov 2006 21:43:33 +0000 (21:43 +0000)]
Reconfigure failover/replication doc items to be varlist entries, rather
than new sections, so they appear all on the same web page.
Bruce Momjian [Thu, 16 Nov 2006 18:25:58 +0000 (18:25 +0000)]
Clarify replication items, and define some terms.
Peter Eisentraut [Thu, 16 Nov 2006 14:41:49 +0000 (14:41 +0000)]
Message fix
Peter Eisentraut [Thu, 16 Nov 2006 14:28:41 +0000 (14:28 +0000)]
String fix
Bruce Momjian [Wed, 15 Nov 2006 01:09:08 +0000 (01:09 +0000)]
Improve broadcast wording for failover/clustering documentation.
Bruce Momjian [Tue, 14 Nov 2006 22:26:49 +0000 (22:26 +0000)]
Add URL for case identifiers.
<
> http://archives.postgresql.org/pgsql-hackers/2006-10/msg01527.php
Bruce Momjian [Tue, 14 Nov 2006 22:25:15 +0000 (22:25 +0000)]
Fix xrefs for failover changes.
Bruce Momjian [Tue, 14 Nov 2006 21:43:00 +0000 (21:43 +0000)]
Update failover docs, per suggestions from Chris Browne.
Bruce Momjian [Tue, 14 Nov 2006 04:18:55 +0000 (04:18 +0000)]
Fix URL for patch hold queue.
Andrew Dunstan [Mon, 13 Nov 2006 17:13:57 +0000 (17:13 +0000)]
Force plperl and plperlu to run in separate interpreters. Create an error
on an attempt to create the second interpreter if this is not supported by
the perl installation. Per recent -hackers discussion.
Neil Conway [Sun, 12 Nov 2006 06:55:54 +0000 (06:55 +0000)]
Fix some typos in comments.
Neil Conway [Sun, 12 Nov 2006 06:25:37 +0000 (06:25 +0000)]
Do a round of copy-editing for the system catalog chapter. In particular,
consistently capitalize the content of the "Description" column but do
not include a terminating period, as is the convention elsewhere in the
docs. Also, remove the "References" column from catalog that do not
have any referencing columns, for the sake of brevity. Make various
other SGML and grammar fixes.
Neil Conway [Sun, 12 Nov 2006 05:12:42 +0000 (05:12 +0000)]
Minor improvements to the description of archive_timeout.
Tom Lane [Sat, 11 Nov 2006 01:14:19 +0000 (01:14 +0000)]
Suppress a few 'uninitialized variable' warnings that gcc emits only at
-O3 or higher (presumably because it inlines more things). Per gripe
from Mark Mielke.
Tom Lane [Fri, 10 Nov 2006 22:59:29 +0000 (22:59 +0000)]
Fix pg_get_serial_sequence(), which could incorrectly return the name
of an index on a serial column, rather than the name of the associated
sequence. Fallout from recent changes in dependency setup for serials.
Per bug #2732 from Basil Evseenko.
Tom Lane [Fri, 10 Nov 2006 22:32:20 +0000 (22:32 +0000)]
Clean up some misleading references to %p being a full path, per Simon.
Tom Lane [Fri, 10 Nov 2006 22:15:26 +0000 (22:15 +0000)]
Improve formatting of PQexecParams argument descriptions, per
Theo Kramer.
Tom Lane [Fri, 10 Nov 2006 20:52:18 +0000 (20:52 +0000)]
Emphasize that immutable and stable functions are not allowed to modify
the database. xfunc.sgml was already pretty definite on the point, but
it doesn't hurt to make it clear here too.
Tom Lane [Fri, 10 Nov 2006 18:10:10 +0000 (18:10 +0000)]
Fix errors in key_column_usage.position_in_unique_constraint column recently
added to information_schema (per a SQL2003 addition). The original coding
failed if a referenced column participated in more than one pg_constraint
entry. Also, it did not work if an FK relied directly on a unique index
without any constraint syntactic sugar --- this case is outside the SQL spec,
but PG has always supported it, so it's reasonable for our information_schema
to handle it too. Per bug#2750 from Stephen Haberman.
Although this patch changes the initial catalog contents, I didn't force
initdb. Any beta3 testers who need the fix can install it via CREATE OR
REPLACE VIEW, so forcing them to initdb seems an unnecessary imposition.
Neil Conway [Fri, 10 Nov 2006 06:28:29 +0000 (06:28 +0000)]
Minor code cleanup for pgcrypto: for UDFs declared to be strict, checking
for NULL-ness of function arguments is wasted code.
Tom Lane [Fri, 10 Nov 2006 01:21:41 +0000 (01:21 +0000)]
Fix set_joinrel_size_estimates() to estimate outer-join sizes more
accurately: we have to distinguish the effects of the join's own ON
clauses from the effects of pushed-down clauses. Failing to do so
was a quick hack long ago, but it's time to be smarter. Per example
from Thomas H.