]> granicus.if.org Git - postgresql/log
postgresql
15 years agoDoc change in new patch, stand-alone -> standalone
Bruce Momjian [Mon, 6 Apr 2009 17:56:31 +0000 (17:56 +0000)]
Doc change in new patch, stand-alone -> standalone

15 years agoAdd documentation mention of 'check_postgres.pl' in Routine Database
Bruce Momjian [Mon, 6 Apr 2009 17:55:19 +0000 (17:55 +0000)]
Add documentation mention of 'check_postgres.pl' in Routine Database
Maintenance Tasks section.

15 years agoAdjust psql tab completion for new \d 'S' flag behavior; adjust code to
Bruce Momjian [Mon, 6 Apr 2009 15:50:59 +0000 (15:50 +0000)]
Adjust psql tab completion for new \d 'S' flag behavior;  adjust code to
be more flexible about additional modifiers for \d commands.

15 years agoDocument the fact that fuzzystrmatch doesn't work in multibyte encodings.
Tom Lane [Mon, 6 Apr 2009 15:43:00 +0000 (15:43 +0000)]
Document the fact that fuzzystrmatch doesn't work in multibyte encodings.

15 years agoCorrect keywords table for status of COLLATE vs
Tom Lane [Mon, 6 Apr 2009 15:01:36 +0000 (15:01 +0000)]
Correct keywords table for status of COLLATE vs
LC_COLLATE.

15 years agoFix 'all at one page bug' in picksplit method of R-tree emulation. Add defense
Teodor Sigaev [Mon, 6 Apr 2009 14:27:27 +0000 (14:27 +0000)]
Fix 'all at one page bug' in picksplit method of R-tree emulation. Add defense
from buggy user-defined picksplit to GiST.

15 years agoRename the new CREATE DATABASE options to set collation and ctype into
Heikki Linnakangas [Mon, 6 Apr 2009 08:42:53 +0000 (08:42 +0000)]
Rename the new CREATE DATABASE options to set collation and ctype into
LC_COLLATE and LC_CTYPE, per discussion on pgsql-hackers.

15 years agoChange cardinality() into a C-code function, instead of a SQL-language
Tom Lane [Sun, 5 Apr 2009 22:28:59 +0000 (22:28 +0000)]
Change cardinality() into a C-code function, instead of a SQL-language
alias for array_length(v,1).  The efficiency gain here is doubtless
negligible --- what I'm interested in is making sure that if we have
second thoughts about the definition, we will not have to force a
post-beta initdb to change the implementation.

15 years agoMake ExecInitExpr build the list of SubPlans found in a plan tree in order
Tom Lane [Sun, 5 Apr 2009 20:32:06 +0000 (20:32 +0000)]
Make ExecInitExpr build the list of SubPlans found in a plan tree in order
of discovery, rather than reverse order.  This doesn't matter functionally
(I suppose the previous coding dates from the time when lcons was markedly
cheaper than lappend).  However now that EXPLAIN is labeling subplans with
IDs that are based on order of creation, this may help produce a slightly
less surprising printout.

15 years agoChange EXPLAIN output so that subplans and initplans (particularly CTEs)
Tom Lane [Sun, 5 Apr 2009 19:59:40 +0000 (19:59 +0000)]
Change EXPLAIN output so that subplans and initplans (particularly CTEs)
are individually labeled, rather than just grouped under an "InitPlan"
or "SubPlan" heading.  This in turn makes it possible for decompilation of
a subplan reference to usefully identify which subplan it's referencing.
I also made InitPlans identify which parameter symbol(s) they compute,
so that references to those parameters elsewhere in the plan tree can
be connected to the initplan that will be executed.  Per a gripe from
Robert Haas about EXPLAIN output of a WITH query being inadequate,
plus some longstanding pet peeves of my own.

15 years agoFix infinite loop while checking of partial match in pending list.
Teodor Sigaev [Sun, 5 Apr 2009 11:32:01 +0000 (11:32 +0000)]
Fix infinite loop while checking of partial match in pending list.
Improve comments. Now GIN-indexable operators should be strict.
Per Tom's questions/suggestions.

15 years agoRemove a boatload of useless definitions of 'int optreset'. If we
Tom Lane [Sun, 5 Apr 2009 04:19:59 +0000 (04:19 +0000)]
Remove a boatload of useless definitions of 'int optreset'.  If we
are using our own ports of getopt or getopt_long, those will define
the variable for themselves; and if not, we don't need these, because
we never touch the variable anyway.

15 years agoI had always wondered why pg_config.h.win32 claimed that Windows
Tom Lane [Sun, 5 Apr 2009 04:09:01 +0000 (04:09 +0000)]
I had always wondered why pg_config.h.win32 claimed that Windows
provides optreset.  Current mastodon results prove that in fact it
does not; it was only because getopt.c defined the variable anyway
that things failed to fall over.

15 years agoRemove contrib/intarray's definitions of the <@ and @> operators, so that they
Tom Lane [Sun, 5 Apr 2009 00:40:35 +0000 (00:40 +0000)]
Remove contrib/intarray's definitions of the <@ and @> operators, so that they
don't cause confusion with the built-in anyarray versions of those operators.
Adjust the module's index opclasses to support the built-in operators in place
of the private ones.

The private implementations are still available under their historical
names @ and ~, so no functionality is lost.  Some quick testing suggests
that they offer no real benefit over the core operators, however.

Per a complaint from Rusty Conover.

15 years agoHmm, baiji thinks we need explicit 'extern' here.
Tom Lane [Sat, 4 Apr 2009 22:36:11 +0000 (22:36 +0000)]
Hmm, baiji thinks we need explicit 'extern' here.

15 years agoMake an attempt at fixing our current Solaris 11 breakage: add a configure
Tom Lane [Sat, 4 Apr 2009 21:55:50 +0000 (21:55 +0000)]
Make an attempt at fixing our current Solaris 11 breakage: add a configure
probe for opterr (exactly like the one for optreset) and have getopt.c
define the variables only if configure doesn't find them in libc.

15 years agoRemove the recently added node types ReloptElem and OptionDefElem in favor
Tom Lane [Sat, 4 Apr 2009 21:12:31 +0000 (21:12 +0000)]
Remove the recently added node types ReloptElem and OptionDefElem in favor
of adding optional namespace and action fields to DefElem.  Having three
node types that do essentially the same thing bloats the code and leads
to errors of confusion, such as in yesterday's bug report from Khee Chin.

15 years agoA session that does not have any live snapshots does not have to be waited for
Tom Lane [Sat, 4 Apr 2009 17:40:36 +0000 (17:40 +0000)]
A session that does not have any live snapshots does not have to be waited for
when we are waiting for old snapshots to go away during a concurrent index
build.  In particular, this rule lets us avoid waiting for
idle-in-transaction sessions.

This logic could be improved further if we had some way to wake up when
the session we are currently waiting for goes idle-in-transaction.  However
that would be a significantly more complex/invasive patch, so it'll have to
wait for some other day.

Simon Riggs, with some improvements by Tom.

15 years agoRewrite interval_hash() so that the hashcodes are equal for values that
Tom Lane [Sat, 4 Apr 2009 04:53:25 +0000 (04:53 +0000)]
Rewrite interval_hash() so that the hashcodes are equal for values that
interval_eq() considers equal.  I'm not sure how that fundamental requirement
escaped us through multiple revisions of this hash function, but there it is;
it's been wrong since interval_hash was first written for PG 7.1.
Per bug #4748 from Roman Kononov.

Backpatch to all supported releases.

This patch changes the contents of hash indexes for interval columns.  That's
no particular problem for PG 8.4, since we've broken on-disk compatibility
of hash indexes already; but it will require a migration warning note in
the next minor releases of all existing branches: "if you have any hash
indexes on columns of type interval, REINDEX them after updating".

15 years agoDisallow setting fillfactor for TOAST tables.
Alvaro Herrera [Sat, 4 Apr 2009 00:45:02 +0000 (00:45 +0000)]
Disallow setting fillfactor for TOAST tables.

To implement this without almost duplicating the reloption table, treat
relopt_kind as a bitmask instead of an integer value.  This decreases the
range of allowed values, but it's not clear that there's need for that much
values anyway.

This patch also makes heap_reloptions explicitly a no-op for relation kinds
other than heap and TOAST tables.

Patch by ITAGAKI Takahiro with minor edits from me.  (In particular I removed
the bit about adding relation kind to an error message, which I intend to
commit separately.)

15 years agoImprove obsolete comment.
Tom Lane [Sat, 4 Apr 2009 00:44:30 +0000 (00:44 +0000)]
Improve obsolete comment.

15 years agoMake \dt \di and friends more consistent about the treatment of
Tom Lane [Sat, 4 Apr 2009 00:41:11 +0000 (00:41 +0000)]
Make \dt \di and friends more consistent about the treatment of
TOAST tables and indexes; to wit, never show either.  (You can
examine them with plain \d if you're really so inclined.)

15 years agoMinor wordsmithing on descriptions of some \d commands.
Tom Lane [Sat, 4 Apr 2009 00:39:14 +0000 (00:39 +0000)]
Minor wordsmithing on descriptions of some \d commands.

15 years agoAdd missing help output for \ef option. Andrew Gierth
Tom Lane [Fri, 3 Apr 2009 23:38:19 +0000 (23:38 +0000)]
Add missing help output for \ef option.  Andrew Gierth

15 years agoUse (unsigned char) cast in argument of pg_tolower(). Maybe it works on
Tom Lane [Fri, 3 Apr 2009 23:27:17 +0000 (23:27 +0000)]
Use (unsigned char) cast in argument of pg_tolower().  Maybe it works on
Windows without that, but we shouldn't put bad examples where people might
copy them.  Also, reformat slightly to improve the odds that pgindent
won't go nuts on this.

15 years agoAdd a comment documenting the question of whether PrefetchBuffer should
Tom Lane [Fri, 3 Apr 2009 18:17:43 +0000 (18:17 +0000)]
Add a comment documenting the question of whether PrefetchBuffer should
try to protect an already-existing buffer from being evicted.  This was
left as an open issue when the posix_fadvise patch was committed.  I'm
not sure there's any evidence to justify more work in this area, but we
should have some record about it in the source code.

15 years agoDefend against possible crash if a plpython function does not specify names
Tom Lane [Fri, 3 Apr 2009 16:59:43 +0000 (16:59 +0000)]
Defend against possible crash if a plpython function does not specify names
for its arguments.  Also add a regression test, since someone apparently
changed every single plpython test case to use only named parameters; else
we'd have noticed this sooner.

Euler Taveira de Oliveira, per a report from Alvaro

15 years agoMake directory name comparisons on Win32 case insensitive.
Magnus Hagander [Fri, 3 Apr 2009 11:52:08 +0000 (11:52 +0000)]
Make directory name comparisons on Win32 case insensitive.

This method will not catch all different ways since the locale
handling in NTFS doesn't provide an easy way to do that, but it
will hopefully solve the most common cases causing startup
problems when the backend is found in the system PATH.

Attempts to fix bug #4694.

15 years agoDocument that Solaris can't use effective_io_concurrency because of an
Bruce Momjian [Thu, 2 Apr 2009 22:44:10 +0000 (22:44 +0000)]
Document that Solaris can't use effective_io_concurrency because of an
ineffective posix_fadvise().

15 years agoRefactor ExecProject and associated routines so that fast-path code is used
Tom Lane [Thu, 2 Apr 2009 22:39:30 +0000 (22:39 +0000)]
Refactor ExecProject and associated routines so that fast-path code is used
for simple Var targetlist entries all the time, even when there are other
entries that are not simple Vars.  Also, ensure that we prefetch attributes
(with slot_getsomeattrs) for all Vars in the targetlist, even those buried
within expressions.  In combination these changes seem to significantly
reduce the runtime for cases where tlists are mostly but not exclusively
Vars.  Per my proposal of yesterday.

15 years agoRevert DTrace patch from Robert Lor
Bruce Momjian [Thu, 2 Apr 2009 20:59:10 +0000 (20:59 +0000)]
Revert DTrace patch from Robert Lor

15 years agoMinor code beautification/consolidation.
Tom Lane [Thu, 2 Apr 2009 20:16:30 +0000 (20:16 +0000)]
Minor code beautification/consolidation.

15 years agoGive a better error message when trying to change
Bruce Momjian [Thu, 2 Apr 2009 19:57:19 +0000 (19:57 +0000)]
Give a better error message when trying to change
"effective_io_concurrency" on systems without posix_fadvise().

15 years agoHave PL/pgSQL FETCH set DIAGNOSTICS ROW_COUNT.
Bruce Momjian [Thu, 2 Apr 2009 19:20:45 +0000 (19:20 +0000)]
Have PL/pgSQL FETCH set DIAGNOSTICS ROW_COUNT.

Andrew Gierth

15 years agoAdd support for additional DTrace probes.
Bruce Momjian [Thu, 2 Apr 2009 19:14:34 +0000 (19:14 +0000)]
Add support for additional DTrace probes.

Robert Lor

15 years agoFix memory allocation for output of hstore type.
Teodor Sigaev [Thu, 2 Apr 2009 17:57:05 +0000 (17:57 +0000)]
Fix memory allocation for output of hstore type.
Per "maosen.zhang" <maosen.zhang@alibaba-inc.com> report.

15 years agoDo not show information_schema in \d* commands, unless 'S' or pattern is
Bruce Momjian [Thu, 2 Apr 2009 17:38:26 +0000 (17:38 +0000)]
Do not show information_schema in \d* commands, unless 'S' or pattern is
specified.

Martin Pihlak

15 years agoFix SetClientEncoding() to maintain a cache of previously selected encoding
Tom Lane [Thu, 2 Apr 2009 17:30:53 +0000 (17:30 +0000)]
Fix SetClientEncoding() to maintain a cache of previously selected encoding
conversion functions.  This allows transaction rollback to revert to a
previous client_encoding setting without doing fresh catalog lookups.
I believe that this explains and fixes the recent report of "failed to commit
client_encoding" failures.

This bug is present in 8.3.x, but it doesn't seem prudent to back-patch
the fix, at least not till it's had some time for field testing in HEAD.

In passing, remove SetDefaultClientEncoding(), which was used nowhere.

15 years agoChange psql \d* display so 'S' _or_ a pattern include system objects.
Bruce Momjian [Thu, 2 Apr 2009 15:15:32 +0000 (15:15 +0000)]
Change psql \d* display so 'S' _or_ a pattern include system objects.

15 years agoFix GUC's reports of assign_hook failure to always include the parameter value
Tom Lane [Thu, 2 Apr 2009 03:51:43 +0000 (03:51 +0000)]
Fix GUC's reports of assign_hook failure to always include the parameter value
we failed to assign, even in "can't happen" cases.  Motivated by wondering
what's going on in a recent trouble report where "failed to commit" did
happen.

15 years agoplpgsql's exec_simple_cast_value() mistakenly supposed that it could bypass
Tom Lane [Thu, 2 Apr 2009 01:16:11 +0000 (01:16 +0000)]
plpgsql's exec_simple_cast_value() mistakenly supposed that it could bypass
casting effort whenever the input value was NULL.  However this prevents
application of not-null domain constraints in the cases that use this
function, as illustrated in bug #4741.  Since this function isn't meant
for use in performance-critical paths anyway, this certainly seems like
another case of "premature optimization is the root of all evil".

Back-patch as far as 8.2; older versions made no effort to enforce
domain constraints here anyway.

15 years agoImprove pg_dump's query for retrieving BLOB comments to be more efficient
Tom Lane [Wed, 1 Apr 2009 18:54:27 +0000 (18:54 +0000)]
Improve pg_dump's query for retrieving BLOB comments to be more efficient
when there are many blobs and not so many comments.  Tamas Vincze

15 years agoUpdate comment to reflect that LC_COLLATE and LC_CTYPE are now
Heikki Linnakangas [Wed, 1 Apr 2009 09:17:32 +0000 (09:17 +0000)]
Update comment to reflect that LC_COLLATE and LC_CTYPE are now
per-database settings.

15 years agoIndex some array functions, per Mario Splivalo.
Tom Lane [Wed, 1 Apr 2009 03:32:29 +0000 (03:32 +0000)]
Index some array functions, per Mario Splivalo.

15 years agoRemove last references to the crypt auth method, per Andreas Scherbaum.
Tom Lane [Wed, 1 Apr 2009 03:23:50 +0000 (03:23 +0000)]
Remove last references to the crypt auth method, per Andreas Scherbaum.

15 years agoFix contrib/pgstattuple and contrib/pageinspect to prevent attempts to read
Tom Lane [Tue, 31 Mar 2009 22:54:31 +0000 (22:54 +0000)]
Fix contrib/pgstattuple and contrib/pageinspect to prevent attempts to read
temporary tables of other sessions; that is unsafe because of the way our
buffer management works.  Per report from Stuart Bishop.
This is redundant with the bufmgr.c checks in HEAD, but not at all redundant
in the back branches.

15 years agoRemove some "Other" sections in the release notes by putting the items
Bruce Momjian [Tue, 31 Mar 2009 22:23:28 +0000 (22:23 +0000)]
Remove some "Other" sections in the release notes by putting the items
at the top of their sections.

15 years agoModify the relcache to record the temp status of both local and nonlocal
Tom Lane [Tue, 31 Mar 2009 22:12:48 +0000 (22:12 +0000)]
Modify the relcache to record the temp status of both local and nonlocal
temp relations; this is no more expensive than before, now that we have
pg_class.relistemp.  Insert tests into bufmgr.c to prevent attempting
to fetch pages from nonlocal temp relations.  This provides a low-level
defense against bugs-of-omission allowing temp pages to be loaded into shared
buffers, as in the contrib/pgstattuple problem reported by Stuart Bishop.
While at it, tweak a bunch of places to use new relcache tests (instead of
expensive probes into pg_namespace) to detect local or nonlocal temp tables.

15 years agoDon't crash initdb when we fail to get the current username.
Magnus Hagander [Tue, 31 Mar 2009 18:58:16 +0000 (18:58 +0000)]
Don't crash initdb when we fail to get the current username.
Give an error message and exit instead, like we do elsewhere...

Per report from Wez Furlong and Robert Treat.

15 years agoAdd a "relistemp" boolean column to pg_class, which is true for temporary
Tom Lane [Tue, 31 Mar 2009 17:59:56 +0000 (17:59 +0000)]
Add a "relistemp" boolean column to pg_class, which is true for temporary
relations (including a temp table's indexes and toast table/index), and
false for normal relations.  For ease of checking, this commit just adds
the column and fills it correctly --- revising the relation access machinery
to use it will come separately.

15 years agoFix a rare race condition when commit_siblings > 0 and a transaction commits
Heikki Linnakangas [Tue, 31 Mar 2009 05:18:33 +0000 (05:18 +0000)]
Fix a rare race condition when commit_siblings > 0 and a transaction commits
at the same instant as a new backend is spawned. Since CountActiveBackends()
doesn't hold ProcArrayLock, it needs to be prepared for the case that a
pointer at the end of the proc array is still NULL even though numProcs says
it should be valid, since it doesn't hold ProcArrayLock. Backpatch to 8.1.
8.0 and earlier had this right, but it was broken in the split of PGPROC and
sinval shared memory arrays.

Per report and proposal by Marko Kreen.

15 years agoUpdate release note introductory description.
Bruce Momjian [Tue, 31 Mar 2009 02:34:04 +0000 (02:34 +0000)]
Update release note introductory description.

15 years agoAdd PQinitOpenSSL() function to support applications that use libcrypto
Tom Lane [Tue, 31 Mar 2009 01:41:27 +0000 (01:41 +0000)]
Add PQinitOpenSSL() function to support applications that use libcrypto
but not OpenSSL (or perhaps vice versa, if that's possible).

Andrew Chernow, with minor editorialization by me.

15 years agoMore new subsections in release notes.
Bruce Momjian [Tue, 31 Mar 2009 01:26:13 +0000 (01:26 +0000)]
More new subsections in release notes.

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