OSDN Git Service

pg-rex/syncrep.git
15 years agoMore release note changes, including a lower level of subsections.
Bruce Momjian [Mon, 30 Mar 2009 22:01:15 +0000 (22:01 +0000)]
More release note changes, including a lower level of subsections.

15 years agoMore release note adjustments, reordering.
Bruce Momjian [Mon, 30 Mar 2009 20:32:49 +0000 (20:32 +0000)]
More release note adjustments, reordering.

15 years agoMore release note wording improvements; section order adjustments.
Bruce Momjian [Mon, 30 Mar 2009 19:59:19 +0000 (19:59 +0000)]
More release note wording improvements;  section order adjustments.

15 years agoReorder release note sections.
Bruce Momjian [Mon, 30 Mar 2009 18:34:56 +0000 (18:34 +0000)]
Reorder release note sections.

15 years agoFix window function plan generation to cope with volatile sort expressions.
Tom Lane [Mon, 30 Mar 2009 17:30:44 +0000 (17:30 +0000)]
Fix window function plan generation to cope with volatile sort expressions.
(Not clear how useful these really are, but failing is no good...)
Per report from David Fetter and Robert Treat.

15 years agoUpdate URL to Python bug tracker. Backpatch to 8.3; doesn't seem worthy of
Alvaro Herrera [Mon, 30 Mar 2009 16:15:43 +0000 (16:15 +0000)]
Update URL to Python bug tracker.  Backpatch to 8.3; doesn't seem worthy of
further backpatch.

15 years agoFix an oversight in the support for storing/retrieving "minimal tuples" in
Tom Lane [Mon, 30 Mar 2009 04:08:43 +0000 (04:08 +0000)]
Fix an oversight in the support for storing/retrieving "minimal tuples" in
TupleTableSlots.  We have functions for retrieving a minimal tuple from a slot
after storing a regular tuple in it, or vice versa; but these were implemented
by converting the internal storage from one format to the other.  The problem
with that is it invalidates any pass-by-reference Datums that were already
fetched from the slot, since they'll be pointing into the just-freed version
of the tuple.  The known problem cases involve fetching both a whole-row
variable and a pass-by-reference value from a slot that is fed from a
tuplestore or tuplesort object.  The added regression tests illustrate some
simple cases, but there may be other failure scenarios traceable to the same
bug.  Note that the added tests probably only fail on unpatched code if it's
built with --enable-cassert; otherwise the bug leads to fetching from freed
memory, which will not have been overwritten without additional conditions.

Fix by allowing a slot to contain both formats simultaneously; which turns out
not to complicate the logic much at all, if anything it seems less contorted
than before.

Back-patch to 8.2, where minimal tuples were introduced.

15 years agoMore release note markup.
Bruce Momjian [Sun, 29 Mar 2009 19:13:46 +0000 (19:13 +0000)]
More release note markup.

15 years agoMore release note markup.
Bruce Momjian [Sun, 29 Mar 2009 03:58:37 +0000 (03:58 +0000)]
More release note markup.

15 years agoAdd SGML markup for commands/literal/application/etc in release notes;
Bruce Momjian [Sun, 29 Mar 2009 03:01:56 +0000 (03:01 +0000)]
Add SGML markup for commands/literal/application/etc in release notes;
still more work to do.

15 years agoConsistent 8.4 release note naming for Itagaki Takahiro
Bruce Momjian [Sat, 28 Mar 2009 22:05:22 +0000 (22:05 +0000)]
Consistent 8.4 release note naming for Itagaki Takahiro

15 years agoClarify variable naming: pq_initssllib -> pq_init_ssl_lib
Bruce Momjian [Sat, 28 Mar 2009 18:48:55 +0000 (18:48 +0000)]
Clarify variable naming: pq_initssllib -> pq_init_ssl_lib

15 years agoUpdate release notes to say citext is multi-byte aware, per suggestion
Bruce Momjian [Sat, 28 Mar 2009 14:15:15 +0000 (14:15 +0000)]
Update release notes to say citext is multi-byte aware, per suggestion
from patch author:

       Add /contrib/citext as a case-insensitive, multibyte-capable
text data type (David Wheeler)

15 years agoBetter document that SET ROLE does not uset ALTER ROLE SET settings;
Bruce Momjian [Sat, 28 Mar 2009 03:26:02 +0000 (03:26 +0000)]
Better document that SET ROLE does not uset ALTER ROLE SET settings;
suggested wording from Josh Berkus.

15 years agoBetter document PQinitSSL(0) behavior in regards to libcrypto.
Bruce Momjian [Sat, 28 Mar 2009 01:36:11 +0000 (01:36 +0000)]
Better document PQinitSSL(0) behavior in regards to libcrypto.

15 years agoAdd documentation of the fact that dtrace probes evaluate their parameters
Tom Lane [Sat, 28 Mar 2009 00:10:23 +0000 (00:10 +0000)]
Add documentation of the fact that dtrace probes evaluate their parameters
even when not active.  Explain how to prevent that with an ENABLED() check.

15 years agoDocument in release notes that NOT IN is only for NOT EXIST clauses.
Bruce Momjian [Fri, 27 Mar 2009 22:39:42 +0000 (22:39 +0000)]
Document in release notes that NOT IN is only for NOT EXIST clauses.

Andrew Gierth

15 years agoOn Solaris, we should only force use of our own getopt(); it's okay to use
Tom Lane [Fri, 27 Mar 2009 19:58:11 +0000 (19:58 +0000)]
On Solaris, we should only force use of our own getopt(); it's okay to use
the system's getopt_long().  The previous coding was the result of a sloppy
discussion that failed to draw this distinction.  The result was that PG
programs don't handle options as users of that platform expect.  Per
gripe from Chuck McDevitt.

Although this is a pre-existing bug, I'm not backpatching since I think we
could do with a bit of beta testing before concluding this is really OK.

15 years agoFix markup, per Devrim
Magnus Hagander [Fri, 27 Mar 2009 19:17:11 +0000 (19:17 +0000)]
Fix markup, per Devrim

15 years agoAdd an errdetail explaining why we reject infinite dates and timestamps
Tom Lane [Fri, 27 Mar 2009 18:56:57 +0000 (18:56 +0000)]
Add an errdetail explaining why we reject infinite dates and timestamps
while converting to XML.  Bernd Helmle

15 years agoFix possible failures when a tuplestore switches from in-memory to on-disk
Tom Lane [Fri, 27 Mar 2009 18:30:21 +0000 (18:30 +0000)]
Fix possible failures when a tuplestore switches from in-memory to on-disk
mode while callers hold pointers to in-memory tuples.  I reported this for
the case of nodeWindowAgg's primary scan tuple, but inspection of the code
shows that all of the calls in nodeWindowAgg and nodeCtescan are at risk.
For the moment, fix it with a rather brute-force approach of copying
whenever one of the at-risk callers requests a tuple.  Later we might
think of some sort of reference-count approach to reduce tuple copying.

15 years agoTeach reindex_index() to clear pg_index.indcheckxmin when possible.
Tom Lane [Fri, 27 Mar 2009 15:57:11 +0000 (15:57 +0000)]
Teach reindex_index() to clear pg_index.indcheckxmin when possible.
Greg Stark, slightly modified by me.

15 years agoFix tab completion of ANALYZE VERBOSE <tab>. It was previously confused
Heikki Linnakangas [Fri, 27 Mar 2009 14:58:46 +0000 (14:58 +0000)]
Fix tab completion of ANALYZE VERBOSE <tab>. It was previously confused
with EXPLAIN ANALYZE VERBOSE.

Greg Sabino Mullane, reformatted by myself. Backpatch to 8.1, where the
bug was introduced.

15 years agoClearify new SSL certificate verification in libpq
Magnus Hagander [Fri, 27 Mar 2009 12:01:57 +0000 (12:01 +0000)]
Clearify new SSL certificate verification in libpq

15 years agoFix release notes about pg_hba changes
Magnus Hagander [Fri, 27 Mar 2009 11:58:21 +0000 (11:58 +0000)]
Fix release notes about pg_hba changes

15 years agoUpdated release wording, per Greg Stark:
Bruce Momjian [Fri, 27 Mar 2009 02:25:04 +0000 (02:25 +0000)]
Updated release wording, per Greg Stark:

       Previously EXPLAIN VERBOSE had output an internal
representation of the

15 years agoSecond batch of release note fixes by Guillaume Smet
Bruce Momjian [Fri, 27 Mar 2009 01:44:30 +0000 (01:44 +0000)]
Second batch of release note fixes by Guillaume Smet

15 years agoMark Greg as the instigator of the statistics target increase:
Bruce Momjian [Fri, 27 Mar 2009 01:26:36 +0000 (01:26 +0000)]
Mark Greg as the instigator of the statistics target increase:

       Increase the default value of default_statistics_target from 10 to 100
       (Greg Sabino Mullane, Tom)

15 years agoFirst round of release note changes from Guillaume Smet.
Bruce Momjian [Fri, 27 Mar 2009 00:45:40 +0000 (00:45 +0000)]
First round of release note changes from Guillaume Smet.

15 years agoFix release note attribution:
Bruce Momjian [Fri, 27 Mar 2009 00:11:34 +0000 (00:11 +0000)]
Fix release note attribution:

       Support the IS0 8601 time interval syntax (Tom, Kevin
Grittner)

per Ron Mayer

15 years agoImproved release notes interval wording:
Bruce Momjian [Fri, 27 Mar 2009 00:08:14 +0000 (00:08 +0000)]
Improved release notes interval wording:

       Made interval seconds rounding more consistent across output
       formats (Ron Mayer)

Ron Mayer

15 years agoRemove duplicate interval (fractional seconds) items; Ron Mayer
Bruce Momjian [Fri, 27 Mar 2009 00:06:14 +0000 (00:06 +0000)]
Remove duplicate interval (fractional seconds) items;  Ron Mayer

15 years agoDocument that Datestyle no longer controls interval output, per
Bruce Momjian [Fri, 27 Mar 2009 00:01:47 +0000 (00:01 +0000)]
Document that Datestyle no longer controls interval output, per
suggestion from Ron Mayer

15 years agoMake pg_standby's maxretries option do what one would expect. Fujii Masao
Tom Lane [Thu, 26 Mar 2009 22:29:13 +0000 (22:29 +0000)]
Make pg_standby's maxretries option do what one would expect.  Fujii Masao

15 years agoGettext plural support
Peter Eisentraut [Thu, 26 Mar 2009 22:26:08 +0000 (22:26 +0000)]
Gettext plural support

In the backend, I changed only a handful of exemplary or important-looking
instances to make use of the plural support; there is probably more work
there.  For the rest of the source, this should cover all relevant cases.

15 years agoFix a couple of places that still claimed LC_COLLATE and LC_CTYPE can't
Tom Lane [Thu, 26 Mar 2009 20:55:49 +0000 (20:55 +0000)]
Fix a couple of places that still claimed LC_COLLATE and LC_CTYPE can't
be changed after initdb.

15 years agoAdjust phrasing of complaints about multi-byte COPY delimiter strings.
Tom Lane [Thu, 26 Mar 2009 19:24:54 +0000 (19:24 +0000)]
Adjust phrasing of complaints about multi-byte COPY delimiter strings.
Per pgsql-hackers discussion of 2009-02-17.

15 years agoIf we expect a hash join to be performed in multiple batches, suppress
Tom Lane [Thu, 26 Mar 2009 17:15:35 +0000 (17:15 +0000)]
If we expect a hash join to be performed in multiple batches, suppress
"physical tlist" optimization on the outer relation (ie, force a projection
step to occur in its scan).  This avoids storing useless column values when
the outer relation's tuples are written to temporary batch files.

Modified version of a patch by Michael Henderson and Ramon Lawrence.

15 years agoCorrection: ansi-join ->anti-join.
Bruce Momjian [Thu, 26 Mar 2009 12:38:03 +0000 (12:38 +0000)]
Correction:  ansi-join ->anti-join.

15 years agoFix markup so that 'make HISTORY' works. A couple very minor
Tom Lane [Thu, 26 Mar 2009 03:46:14 +0000 (03:46 +0000)]
Fix markup so that 'make HISTORY' works.  A couple very minor
editorial improvements.

15 years agoReorder 8.4 release note sections.
Bruce Momjian [Thu, 26 Mar 2009 02:48:53 +0000 (02:48 +0000)]
Reorder 8.4 release note sections.

15 years agoRe-add release notes for release 8.3.7.
Bruce Momjian [Thu, 26 Mar 2009 02:40:37 +0000 (02:40 +0000)]
Re-add release notes for release 8.3.7.

15 years agoAdjust AS OF release notes markup.
Bruce Momjian [Thu, 26 Mar 2009 01:48:27 +0000 (01:48 +0000)]
Adjust AS OF release notes markup.

15 years agoMention release note items current as of 2009-03-16.
Bruce Momjian [Thu, 26 Mar 2009 01:31:15 +0000 (01:31 +0000)]
Mention release note items current as of 2009-03-16.

15 years agoFirst version of 8.4 release notes; markup/cleanup/reorganization still
Bruce Momjian [Thu, 26 Mar 2009 01:19:07 +0000 (01:19 +0000)]
First version of 8.4 release notes;  markup/cleanup/reorganization still
required.

15 years agoAdd btree_gin contrib module.
Tom Lane [Wed, 25 Mar 2009 23:20:01 +0000 (23:20 +0000)]
Add btree_gin contrib module.

Teodor Sigaev and Oleg Bartunov

15 years agoAdjust the APIs for GIN opclass support functions to allow the extractQuery()
Tom Lane [Wed, 25 Mar 2009 22:19:02 +0000 (22:19 +0000)]
Adjust the APIs for GIN opclass support functions to allow the extractQuery()
method to pass extra data to the consistent() and comparePartial() methods.
This is the core infrastructure needed to support the soon-to-appear
contrib/btree_gin module.  The APIs are still upward compatible with the
definitions used in 8.3 and before, although *not* with the previous 8.4devel
function definitions.

catversion bump for changes in pg_proc entries (although these are just
cosmetic, since GIN doesn't actually look at the function signature before
calling it...)

Teodor Sigaev and Oleg Bartunov

15 years agoFix old thinko in pgp.h: the idea is to declare some named enum types,
Tom Lane [Wed, 25 Mar 2009 15:03:13 +0000 (15:03 +0000)]
Fix old thinko in pgp.h: the idea is to declare some named enum types,
not global variables of anonymous enum types.  This didn't actually hurt
much because most linkers will just merge the duplicated definitions ...
but some will complain.  Per bug #4731 from Ceriel Jacobs.

Backpatch to 8.1 --- the declarations don't exist before that.

15 years agoUse double quotes instead of single quotes.
Peter Eisentraut [Wed, 25 Mar 2009 14:12:02 +0000 (14:12 +0000)]
Use double quotes instead of single quotes.

15 years agoComplete list of valid fork names, and use double quotes.
Peter Eisentraut [Wed, 25 Mar 2009 14:11:48 +0000 (14:11 +0000)]
Complete list of valid fork names, and use double quotes.

15 years agoUpdate line count for \? output (obtained from wc -l)
Peter Eisentraut [Wed, 25 Mar 2009 13:15:55 +0000 (13:15 +0000)]
Update line count for \? output (obtained from wc -l)

15 years agoIn the \? output, align the columns consistently.
Peter Eisentraut [Wed, 25 Mar 2009 13:14:17 +0000 (13:14 +0000)]
In the \? output, align the columns consistently.

15 years agoPolish SQL/MED terminology
Peter Eisentraut [Wed, 25 Mar 2009 13:11:43 +0000 (13:11 +0000)]
Polish SQL/MED terminology

15 years agoNo period if it's not a sentence
Peter Eisentraut [Wed, 25 Mar 2009 13:07:26 +0000 (13:07 +0000)]
No period if it's not a sentence

15 years agoInstall a search tree depth limit in GIN bulk-insert operations, to prevent
Tom Lane [Tue, 24 Mar 2009 22:06:03 +0000 (22:06 +0000)]
Install a search tree depth limit in GIN bulk-insert operations, to prevent
them from degrading badly when the input is sorted or nearly so.  In this
scenario the tree is unbalanced to the point of becoming a mere linked list,
so insertions become O(N^2).  The easiest and most safely back-patchable
solution is to stop growing the tree sooner, ie limit the growth of N.  We
might later consider a rebalancing tree algorithm, but it's not clear that
the benefit would be worth the cost and complexity.  Per report from Sergey
Burladyan and an earlier complaint from Heikki.

Back-patch to 8.2; older versions didn't have GIN indexes.

15 years agoFix stupid parenthesization mistake. Per bug #4728 from Bruce Toll.
Tom Lane [Tue, 24 Mar 2009 21:12:56 +0000 (21:12 +0000)]
Fix stupid parenthesization mistake.  Per bug #4728 from Bruce Toll.

15 years agoImplement "fastupdate" support for GIN indexes, in which we try to accumulate
Tom Lane [Tue, 24 Mar 2009 20:17:18 +0000 (20:17 +0000)]
Implement "fastupdate" support for GIN indexes, in which we try to accumulate
multiple index entries in a holding area before adding them to the main index
structure.  This helps because bulk insert is (usually) significantly faster
than retail insert for GIN.

This patch also removes GIN support for amgettuple-style index scans.  The
API defined for amgettuple is difficult to support with fastupdate, and
the previously committed partial-match feature didn't really work with
it either.  We might eventually figure a way to put back amgettuple
support, but it won't happen for 8.4.

catversion bumped because of change in GIN's pg_am entry, and because
the format of GIN indexes changed on-disk (there's a metapage now,
and possibly a pending list).

Teodor Sigaev

15 years agoFix my typo
Peter Eisentraut [Tue, 24 Mar 2009 12:57:31 +0000 (12:57 +0000)]
Fix my typo

15 years agoRemove munging of xml and xpath params to xpath(). The XML must now be a well formed...
Andrew Dunstan [Mon, 23 Mar 2009 21:00:39 +0000 (21:00 +0000)]
Remove munging of xml and xpath params to xpath(). The XML must now be a well formed XML document.

15 years agoConst-ify the parse table passed to fillRelOptions. The previous coding
Tom Lane [Mon, 23 Mar 2009 16:36:27 +0000 (16:36 +0000)]
Const-ify the parse table passed to fillRelOptions.  The previous coding
meant it had to be built on-the-fly at each entry to default_reloptions.

15 years agoUpdate constraint_exclusion docs because parameter is now 3-valued, not
Bruce Momjian [Mon, 23 Mar 2009 15:14:14 +0000 (15:14 +0000)]
Update constraint_exclusion docs because parameter is now 3-valued, not
just enable/disable.

15 years agoAdd expected file for locale-enabled installations.
Peter Eisentraut [Mon, 23 Mar 2009 08:07:32 +0000 (08:07 +0000)]
Add expected file for locale-enabled installations.

15 years agoMore fixes for 8.4 DTrace probes. Remove useless BUFFER_HIT/BUFFER_MISS
Tom Lane [Mon, 23 Mar 2009 01:52:38 +0000 (01:52 +0000)]
More fixes for 8.4 DTrace probes.  Remove useless BUFFER_HIT/BUFFER_MISS
probes --- the BUFFER_READ_DONE probe provides the same information and more
besides.  Expand the LOCK_WAIT_START/DONE probe arguments so that there's
actually some chance of telling what is being waited for.  Update and
clean up the documentation.

15 years agoClarify libpq 'sslverify' documentation wording.
Bruce Momjian [Mon, 23 Mar 2009 01:45:29 +0000 (01:45 +0000)]
Clarify libpq 'sslverify' documentation wording.

15 years agoAdd isExtend to the parameters of the buffer_read_start and buffer_read_done
Tom Lane [Sun, 22 Mar 2009 22:39:05 +0000 (22:39 +0000)]
Add isExtend to the parameters of the buffer_read_start and buffer_read_done
DTrace probes, so that ordinary reads can be distinguished from relation
extension operations.  Move buffer_read_start probe to before the
smgrnblocks() call that's needed in the isExtend case, since really that step
should be charged as part of the time needed for the extension operation.
(This makes it slightly harder to match the read_start with the associated
read_done, since now you can't match them on blockNumber, but it should still
be possible since isExtend operations on the same relation can never be
interleaved.)  Per recent discussion.

In passing, add the page identity (forkNum/blockNum) to the parameters of the
buffer_flush_start/buffer_flush_done probes, which were unaccountably lacking
the info.

15 years agoClarify 'cert' authentication documention.
Bruce Momjian [Sun, 22 Mar 2009 21:55:07 +0000 (21:55 +0000)]
Clarify 'cert' authentication documention.

15 years agoClean up pg_SSPI_error() coding a little bit: make the messages more
Tom Lane [Sun, 22 Mar 2009 18:06:35 +0000 (18:06 +0000)]
Clean up pg_SSPI_error() coding a little bit: make the messages more
consistent, translate where intended, const-ify declarations.
Resolves a gripe from Alvaro as well as some stuff I didn't like.

15 years agoRemove the -d and -D options of pg_dump and pg_dumpall. The functionality
Tom Lane [Sun, 22 Mar 2009 16:44:26 +0000 (16:44 +0000)]
Remove the -d and -D options of pg_dump and pg_dumpall.  The functionality
is still available, but you must now write the long equivalent --inserts
or --column-inserts.  This change is made to eliminate confusion with the
use of -d to specify a database name in most other Postgres client programs.
Original patch by Greg Mullane, modified per subsequent discussion.

15 years agoRemove the datetime keywords ABSTIME and RELTIME, which we'd been treating as
Tom Lane [Sun, 22 Mar 2009 01:12:32 +0000 (01:12 +0000)]
Remove the datetime keywords ABSTIME and RELTIME, which we'd been treating as
noise words for the last twelve years, for compatibility with Berkeley-era
output formatting of the special INVALID values for those datatypes.
Considering that the datatypes themselves have been deprecated for awhile,
this is taking backwards compatibility a little far.  Per gripe from Josh
Berkus.

15 years agoOptimize multi-batch hash joins when the outer relation has a nonuniform
Tom Lane [Sat, 21 Mar 2009 00:04:40 +0000 (00:04 +0000)]
Optimize multi-batch hash joins when the outer relation has a nonuniform
distribution, by creating a special fast path for the (first few) most common
values of the outer relation.  Tuples having hashvalues matching the MCVs
are effectively forced to be in the first batch, so that we never write
them out to the batch temp files.

Bryce Cutt and Ramon Lawrence, with some editorialization by me.

15 years agoRename pg_restore -m to -j, and add documentation about what good numbers
Peter Eisentraut [Fri, 20 Mar 2009 09:21:09 +0000 (09:21 +0000)]
Rename pg_restore -m to -j, and add documentation about what good numbers
are.  per discussion on hackers

15 years agoDon't set the signal handler for SIGQUIT on Windows. Buildfarm shows that
Heikki Linnakangas [Wed, 18 Mar 2009 20:30:35 +0000 (20:30 +0000)]
Don't set the signal handler for SIGQUIT on Windows. Buildfarm shows that
reinstalling the default signal handler doesn't work as it is on Windows.
Presumably core dumps on SIGQUIT are not a problem on Windows, so rather
than figure out what header files or other changes are required to make it
work, just don't bother.

15 years agoBe more clear about when to use gist__int_ops vs. gist__intbig_ops.
Tom Lane [Wed, 18 Mar 2009 20:18:18 +0000 (20:18 +0000)]
Be more clear about when to use gist__int_ops vs. gist__intbig_ops.
Per suggestion from Ron Mayer.

15 years agoDon't intercept SIGQUIT as a signal to trigger failover; that's what
Heikki Linnakangas [Wed, 18 Mar 2009 19:27:28 +0000 (19:27 +0000)]
Don't intercept SIGQUIT as a signal to trigger failover; that's what
postmaster uses for immediate shutdown. Trap SIGUSR1 as the preferred
signal for that.

Per report by Fujii Masao and subsequent discussion on -hackers.

15 years agoFix case of the just resurrected UCS_to_BIG5.pl script, and update
Heikki Linnakangas [Wed, 18 Mar 2009 16:26:18 +0000 (16:26 +0000)]
Fix case of the just resurrected UCS_to_BIG5.pl script, and update
Makefile to use it.

15 years agoAdd seven kanji characters defined in the Windows 950 codepage to our
Heikki Linnakangas [Wed, 18 Mar 2009 16:17:58 +0000 (16:17 +0000)]
Add seven kanji characters defined in the Windows 950 codepage to our
big5/win950 <-> UTF8 conversion tables.

Per report by Roger Chang.

15 years agoFix Windows-specific race condition in syslogger. This could've been
Heikki Linnakangas [Wed, 18 Mar 2009 08:44:49 +0000 (08:44 +0000)]
Fix Windows-specific race condition in syslogger. This could've been
the cause of the "could not write to log file: Bad file descriptor"
errors reported at
http://archives.postgresql.org//pgsql-general/2008-06/msg00193.php

Backpatch to 8.3, the race condition was introduced by the CSV logging
patch.

Analysis and patch by Gurjeet Singh.

15 years agoAdd just-assigned CVE number to release notes for recent security issue.
Tom Lane [Tue, 17 Mar 2009 21:36:21 +0000 (21:36 +0000)]
Add just-assigned CVE number to release notes for recent security issue.

15 years agoImprove zero-year comments.
Bruce Momjian [Tue, 17 Mar 2009 18:39:39 +0000 (18:39 +0000)]
Improve zero-year comments.

15 years agoDocument that datetime year '0' is considered in a recent century, not
Bruce Momjian [Tue, 17 Mar 2009 18:35:26 +0000 (18:35 +0000)]
Document that datetime year '0' is considered in a recent century, not
just '00'.

15 years agoAdd -w option to --help output. It was apparently forgotten when -w was
Peter Eisentraut [Tue, 17 Mar 2009 10:10:13 +0000 (10:10 +0000)]
Add -w option to --help output.  It was apparently forgotten when -w was
implemented.

15 years agoFix contrib/hstore to throw an error for keys or values that don't fit in its
Tom Lane [Sun, 15 Mar 2009 22:05:17 +0000 (22:05 +0000)]
Fix contrib/hstore to throw an error for keys or values that don't fit in its
data structure, rather than silently truncating them.  Andrew Gierth

15 years agoClean up the code for to_timestamp's conversion of year plus ISO day number
Tom Lane [Sun, 15 Mar 2009 20:31:19 +0000 (20:31 +0000)]
Clean up the code for to_timestamp's conversion of year plus ISO day number
to date, as per bug #4702 and subsequent discussion.  In particular, make it
work for years specified using AD/BC or CC fields, and fix the test for "no
year specified" so that it doesn't trigger inappropriately for 1 BC (which it
was doing even in code paths that had nothing to do with to_timestamp).  I
also did some minor code beautification in the non-ISO-day-number code path.

This area has been busted all along, but because the code has been rewritten
repeatedly, it would be considerable trouble to back-patch.  It's such a
corner case that it doesn't seem worth the effort.

15 years agoFix identify_locking_dependencies to reflect the fact that fix_dependencies
Tom Lane [Fri, 13 Mar 2009 22:50:44 +0000 (22:50 +0000)]
Fix identify_locking_dependencies to reflect the fact that fix_dependencies
previously repointed TABLE dependencies to TABLE DATA.  Mea culpa.

15 years agoRestore previous ordering of BUFFER_FLUSH_START probe. I had wanted to
Tom Lane [Fri, 13 Mar 2009 17:46:21 +0000 (17:46 +0000)]
Restore previous ordering of BUFFER_FLUSH_START probe.  I had wanted to
make it include the time for the possible smgropen() call, but that
results in a null pointer dereference :-(.

An alternative solution would be to fetch the buffer tag instead of
looking at *reln, but I'll just put it back as it was for the moment.

BTW, this indicates that DTrace probes evaluate their arguments even
when nominally inactive.  What was that about "zero cost", again?

15 years agoUpdate back-branch release notes.
Tom Lane [Thu, 12 Mar 2009 22:35:48 +0000 (22:35 +0000)]
Update back-branch release notes.

15 years agoFix core dump due to null-pointer dereference in to_char() when datetime
Tom Lane [Thu, 12 Mar 2009 00:53:25 +0000 (00:53 +0000)]
Fix core dump due to null-pointer dereference in to_char() when datetime
format codes are misapplied to a numeric argument.  (The code still produces
a pretty bogus error message in such cases, but I'll settle for stopping the
crash for now.)  Per bug #4700 from Sergey Burladyan.

Problem exists in all supported branches, so patch all the way back.
In HEAD, also clean up some ugly coding in the nearby cache management
code.

15 years agoCode review for dtrace probes added (so far) to 8.4. Adjust placement of
Tom Lane [Wed, 11 Mar 2009 23:19:25 +0000 (23:19 +0000)]
Code review for dtrace probes added (so far) to 8.4.  Adjust placement of
some bufmgr probes, take out redundant and memory-leak-inducing path arguments
to smgr__md__read__done and smgr__md__write__done, fix bogus attempt to
recalculate space used in sort__done, clean up formatting in places where
I'm not sure pgindent will do a nice job by itself.

15 years agoSome languages have symbols with zero display's width or/and vowels/signs which
Teodor Sigaev [Wed, 11 Mar 2009 16:03:40 +0000 (16:03 +0000)]
Some languages have symbols with zero display's width or/and vowels/signs which
are not an alphabetic character although they are not word-breakers too.
So, treat them as part of word.

Per off-list discussion with Dibyendra Hyoju <dibyendra@gmail.com> and
and Bal Krishna Bal <balkrishna7bal@gmail.com> about Nepali language and
Devanagari alphabet.

15 years agoUse thread-local storage for querybuffer in fmtId() on Windows, when needed (i.e...
Andrew Dunstan [Wed, 11 Mar 2009 03:33:29 +0000 (03:33 +0000)]
Use thread-local storage for querybuffer in fmtId() on Windows, when needed (i.e. when
running pg_restore, which might run in parallel).
Only reopen archive file when we really need to read from it, in parallel code. Otherwise,
close it immediately in a worker, if possible.

15 years agoImprove match_special_index_operator() to recognize that LIKE with an
Tom Lane [Wed, 11 Mar 2009 03:32:22 +0000 (03:32 +0000)]
Improve match_special_index_operator() to recognize that LIKE with an
exact-match pattern (no wildcard) can be index-optimized in some cases where a
prefix-match pattern cannot; specifically, since the required index clause is
simple equality, it works for regular text/varchar indexes even when the
locale is not C.  I'm not sure how often this case really comes up, but since
it requires hardly any additional work to handle it, we might as well get it
right.  Motivated by a discussion on the JDBC list.

15 years agoMake SubPlan nodes carry the result's typmod as well as datatype OID. This is
Tom Lane [Tue, 10 Mar 2009 22:09:26 +0000 (22:09 +0000)]
Make SubPlan nodes carry the result's typmod as well as datatype OID.  This is
for consistency with the (relatively) recent addition of typmod to SubLink.
An example of why it's a good idea is to be seen in the recent "failed to
locate grouping columns" bug, which wouldn't have happened if a SubPlan
exposed the same typmod info as the SubLink it was derived from.

This could be back-patched, since it doesn't affect any on-disk data format,
but for the moment it doesn't seem necessary to do so.

15 years agoFix set_subquery_pathlist() to copy the RTE's subquery before it gets mangled
Tom Lane [Tue, 10 Mar 2009 20:58:26 +0000 (20:58 +0000)]
Fix set_subquery_pathlist() to copy the RTE's subquery before it gets mangled
by the planning process.  This prevents the "failed to locate grouping columns"
error recently reported by Dickson Guedes.  That happens because planning
replaces SubLinks by SubPlans in the subquery's targetlist, and exprTypmod()
is smarter about the former than the latter, causing the apparent type of
the subquery's output columns to change.  This seems to be a deficiency we
should fix in exprTypmod(), but that will be a much more invasive patch
with possible side-effects elsewhere, so I'll do that only in HEAD.

Back-patch to 8.3.  Arguably the lack of a copying step is broken/dangerous
all the way back, but in the absence of known problems I'll refrain from
making the older branches pay the extra cost.  (The reason this particular
symptom didn't appear before is that exprTypmod() wasn't smart about SubLinks
either, until 8.3.)

15 years agoPrevent recursion during parse of email-like string with multiple '@'.
Teodor Sigaev [Tue, 10 Mar 2009 17:32:14 +0000 (17:32 +0000)]
Prevent recursion during parse of email-like string with multiple '@'.
Patch by Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>

15 years agoDoc patch for the recently added probes.
Bruce Momjian [Tue, 10 Mar 2009 00:08:28 +0000 (00:08 +0000)]
Doc patch for the recently added probes.

Robert Lor

15 years agoIn parse_bool_with_len, avoid crash when no result pointer is passed. Probably
Peter Eisentraut [Mon, 9 Mar 2009 16:49:12 +0000 (16:49 +0000)]
In parse_bool_with_len, avoid crash when no result pointer is passed.  Probably
an unlikely call mode, but better be safe.

15 years agoTweak the regression test case so that the ordering of numbers vs. letters
Peter Eisentraut [Mon, 9 Mar 2009 15:04:21 +0000 (15:04 +0000)]
Tweak the regression test case so that the ordering of numbers vs. letters
doesn't matter.  This fixes failures in the Czech locale.

15 years agoAccept 'on' and 'off' as input for boolean data type, unifying the syntax
Peter Eisentraut [Mon, 9 Mar 2009 14:34:35 +0000 (14:34 +0000)]
Accept 'on' and 'off' as input for boolean data type, unifying the syntax
that the data type and GUC accepts.

ITAGAKI Takahiro

15 years agoAdd summarization comment about visibility functions.
Bruce Momjian [Mon, 9 Mar 2009 13:08:05 +0000 (13:08 +0000)]
Add summarization comment about visibility functions.

Add URL about the Halloween problem.

15 years agoRevert pg_bind_textdomain_codeset to a existant-but-empty function when
Alvaro Herrera [Mon, 9 Mar 2009 00:01:32 +0000 (00:01 +0000)]
Revert pg_bind_textdomain_codeset to a existant-but-empty function when
ENABLE_NLS is not defined, for better compatibility of the backend with
modules compiled the other way.

Per note from Tom after my previous commit.