]> granicus.if.org Git - postgresql/log
postgresql
18 years agoClarify wording on when ctid is modified by VACUUM FULL.
Bruce Momjian [Sat, 30 Dec 2006 20:31:11 +0000 (20:31 +0000)]
Clarify wording on when ctid is modified by VACUUM FULL.

18 years agoAdd support for XML build option to MSVC build scripts.
Tom Lane [Fri, 29 Dec 2006 16:49:02 +0000 (16:49 +0000)]
Add support for XML build option to MSVC build scripts.
Magnus Hagander

18 years agoFix multiple breakages in last XML patch.
Tom Lane [Fri, 29 Dec 2006 16:44:28 +0000 (16:44 +0000)]
Fix multiple breakages in last XML patch.

18 years agoDe-escape XML names when reverse-compiling XML expressions.
Peter Eisentraut [Fri, 29 Dec 2006 10:50:22 +0000 (10:50 +0000)]
De-escape XML names when reverse-compiling XML expressions.

18 years agoFix up btree's initial scankey processing to be able to detect redundant
Tom Lane [Thu, 28 Dec 2006 23:16:39 +0000 (23:16 +0000)]
Fix up btree's initial scankey processing to be able to detect redundant
or contradictory keys even in cross-data-type scenarios.  This is another
benefit of the opfamily rewrite: we can find the needed comparison
operators now.

18 years agoAdd TLS thread URL:
Bruce Momjian [Thu, 28 Dec 2006 20:51:13 +0000 (20:51 +0000)]
Add TLS thread URL:

>   http://archives.postgresql.org/pgsql-hackers/2006-12/msg01213.php

18 years agoRemove:
Bruce Momjian [Thu, 28 Dec 2006 20:44:00 +0000 (20:44 +0000)]
Remove:

< * Add a GUC to control whether BEGIN inside a transcation should abort
<   the transaction.

18 years agoRemove caveat about avoiding cross-type operators in constraints intended
Tom Lane [Thu, 28 Dec 2006 20:02:38 +0000 (20:02 +0000)]
Remove caveat about avoiding cross-type operators in constraints intended
for use with constraint exclusion.  We can prove those cases now...

18 years agoEnable btree_predicate_proof() to make proofs involving cross-data-type
Tom Lane [Thu, 28 Dec 2006 19:53:05 +0000 (19:53 +0000)]
Enable btree_predicate_proof() to make proofs involving cross-data-type
predicate operators.  The hard stuff turns out to be already done in the
previous commit, we need merely open the floodgates...

18 years agoDone:
Bruce Momjian [Thu, 28 Dec 2006 18:01:20 +0000 (18:01 +0000)]
Done:

< * Move some /contrib modules out to their own project sites
<
<   Particularly, move GPL-licensed /contrib/userlock and
<   /contrib/dbmirror/clean_pending.pl.
<

18 years agoAdd send and recv functions for xml type.
Peter Eisentraut [Thu, 28 Dec 2006 14:28:36 +0000 (14:28 +0000)]
Add send and recv functions for xml type.

18 years agoHandle content and document options in xmlparse() correctly.
Peter Eisentraut [Thu, 28 Dec 2006 03:17:38 +0000 (03:17 +0000)]
Handle content and document options in xmlparse() correctly.

18 years agoAdd a defense to prevent core dumps if 8.2 version of rank_cd() is used with
Tom Lane [Thu, 28 Dec 2006 01:09:01 +0000 (01:09 +0000)]
Add a defense to prevent core dumps if 8.2 version of rank_cd() is used with
the 8.1 SQL function definition for it.  Per report from Rajesh Kumar Mallah,
such a DBA error doesn't seem at all improbable, and the cost of checking for
it is not very high compared to the cost of running this function.  (It would
have been better to change the C name of the function so it wouldn't be called
by the old SQL definition, but it's too late for that now in the 8.2 branch.)

18 years agofflush the \o file, if any, after each backslash command. We already
Tom Lane [Thu, 28 Dec 2006 00:29:13 +0000 (00:29 +0000)]
fflush the \o file, if any, after each backslash command.  We already
do this for ordinary SQL commands, so it seems consistent to do it for
backslash commands too.  Per gripe from Rajesh Kumar Mallah.

18 years agoRevert exports.list change pending closer study.
Tom Lane [Thu, 28 Dec 2006 00:01:05 +0000 (00:01 +0000)]
Revert exports.list change pending closer study.

18 years agoUse a more backward-compatible syntax for exports.list on Linux.
Tom Lane [Wed, 27 Dec 2006 23:53:13 +0000 (23:53 +0000)]
Use a more backward-compatible syntax for exports.list on Linux.
Per Thorkil Olesen.

18 years agoClean up pgindent handling of comments after 'else' by only moving
Bruce Momjian [Wed, 27 Dec 2006 23:03:52 +0000 (23:03 +0000)]
Clean up pgindent handling of comments after 'else' by only moving
multi-line comments to the next line.

18 years agoModify local buffer management to request memory for local buffers in blocks
Tom Lane [Wed, 27 Dec 2006 22:31:54 +0000 (22:31 +0000)]
Modify local buffer management to request memory for local buffers in blocks
of increasing size, instead of one at a time.  This reduces the memory
management overhead when num_temp_buffers is large: in the previous coding
we would actually waste 50% of the space used for temp buffers, because aset.c
would round the individual requests up to 16K.  Problem noted while studying
a performance issue reported by Steven Flatt.

Back-patch as far as 8.1 --- older versions used few enough local buffers
that the issue isn't significant for them.

18 years agoImprove memory management code to avoid inefficient behavior when a context
Tom Lane [Wed, 27 Dec 2006 22:30:48 +0000 (22:30 +0000)]
Improve memory management code to avoid inefficient behavior when a context
has a small maxBlockSize: the maximum request size that we will treat as a
"chunk" needs to be limited to fit in maxBlockSize.  Otherwise we will round
up the request size to the next power of 2, wasting space, which is a bit
pointless if we aren't going to make the blocks big enough to fit additional
stuff in them.  The example motivating this is local buffer management, which
makes repeated allocations of 8K (one BLCKSZ buffer) in TopMemoryContext,
which has maxBlockSize = 8K because for the most part allocations there are
small.  This leads to each local buffer actually eating 16K of space, which
adds up when there are thousands of them.  I intend to change localbuf.c to
aggregate its requests, which will prevent this particular misbehavior, but
it seems likely that similar scenarios could arise elsewhere, so fixing the
core problem seems wise as well.

18 years agoPrint combining characters (those reported as having zero width by
Tom Lane [Wed, 27 Dec 2006 19:45:36 +0000 (19:45 +0000)]
Print combining characters (those reported as having zero width by
PQdsplen()) normally, instead of replacing them by \uXXXX sequences.
Assume that they in fact occupy zero screen space for formatting purposes.
Per gripe from Michael Fuhr and ensuing discussion.

18 years agoUse FROM clause in example UPDATE commands where appropriate. Also
Tom Lane [Wed, 27 Dec 2006 16:07:36 +0000 (16:07 +0000)]
Use FROM clause in example UPDATE commands where appropriate.  Also
remove long-obsolete statement that there isn't a check for infinite
recursion in view rules.

18 years agoUse "dead" rather than "expired" for vacuumable rows.
Bruce Momjian [Wed, 27 Dec 2006 14:55:17 +0000 (14:55 +0000)]
Use "dead" rather than "expired" for vacuumable rows.

18 years agoFix failure due to accessing an already-freed tuple descriptor in a plan
Tom Lane [Tue, 26 Dec 2006 21:37:20 +0000 (21:37 +0000)]
Fix failure due to accessing an already-freed tuple descriptor in a plan
involving HashAggregate over SubqueryScan (this is the known case, there
may well be more).  The bug is only latent in releases before 8.2 since they
didn't try to access tupletable slots' descriptors during ExecDropTupleTable.
The least bogus fix seems to be to make subqueries share the parent query's
memory context, so that tupdescs they create will have the same lifespan as
those of the parent query.  There are comments in the code envisioning going
even further by not having a separate child EState at all, but that will
require rethinking executor access to range tables, which I don't want to
tackle right now.  Per bug report from Jean-Pierre Pelletier.

18 years agoRepair bug #2839: the various ExecReScan functions need to reset
Tom Lane [Tue, 26 Dec 2006 19:26:46 +0000 (19:26 +0000)]
Repair bug #2839: the various ExecReScan functions need to reset
ps_TupFromTlist in plan nodes that make use of it.  This was being done
correctly in join nodes and Result nodes but not in any relation-scan nodes.
Bug would lead to bogus results if a set-returning function appeared in the
targetlist of a subquery that could be rescanned after partial execution,
for example a subquery within EXISTS().  Bug has been around forever :-(
... surprising it wasn't reported before.

18 years agoRepair bug #2836: SPI_execute_plan returned zero if none of the querytrees
Tom Lane [Tue, 26 Dec 2006 16:56:18 +0000 (16:56 +0000)]
Repair bug #2836: SPI_execute_plan returned zero if none of the querytrees
were marked canSetTag.  While it's certainly correct to return the result
of the last one that is marked canSetTag, it's less clear what to do when
none of them are.  Since plpgsql will complain if zero is returned, the
8.2.0 behavior isn't good.  I've fixed it to restore the prior behavior of
returning the physically last query's result code when there are no
canSetTag queries.

18 years agoRemove incorrect semicolon in example. Joachim Wieland
Tom Lane [Tue, 26 Dec 2006 16:14:58 +0000 (16:14 +0000)]
Remove incorrect semicolon in example.  Joachim Wieland

18 years agoFix memory reallocation condition
Teodor Sigaev [Tue, 26 Dec 2006 14:54:24 +0000 (14:54 +0000)]
Fix memory reallocation condition

18 years agoCall srandom() instead of srand().
Tatsuo Ishii [Tue, 26 Dec 2006 01:02:05 +0000 (01:02 +0000)]
Call srandom() instead of srand().
pgbench calls random() later, so it should have called srandom().
On most platforms except Windows srandom() is actually identical
to srand(), so the bug only bites Windows users.
per bug report from Akio Ishida.

18 years agoMake HISTCONTROL=ignoredups work again (broken by misordering of
Tom Lane [Sun, 24 Dec 2006 19:14:28 +0000 (19:14 +0000)]
Make HISTCONTROL=ignoredups work again (broken by misordering of
operations during recent code refactoring).  Per bug #2840 from Ned Crigler.

18 years agoBring some order and sanity to error handling in the xml patch.
Tom Lane [Sun, 24 Dec 2006 18:25:58 +0000 (18:25 +0000)]
Bring some order and sanity to error handling in the xml patch.
Use a TRY block instead of (inadequate) ad-hoc coding to ensure that
libxml is cleaned up after a failure.  Report the intended SQLCODE
instead of defaulting to XX000.  Avoid risking use of a dangling
pointer by keeping the persistent error buffer in TopMemoryContext.
Be less trusting that error messages don't contain %.

This patch doesn't do anything about changing the way the messages
are put together --- this is just about mechanism.

18 years agoFix machine-dependent crash in sqlchar_to_unicode(). Get rid of
Tom Lane [Sun, 24 Dec 2006 00:57:48 +0000 (00:57 +0000)]
Fix machine-dependent crash in sqlchar_to_unicode().  Get rid of
bletcherous and unsafe manipulation of global encoding setting.
Clean up libxml reporting mechanism a bit (it still looks like a
dangling-pointer crash waiting to happen, though, not to mention
being far less than sane from a localization standpoint).

18 years agoCode review for XML patch. Instill a bit of sanity in the location of
Tom Lane [Sun, 24 Dec 2006 00:29:20 +0000 (00:29 +0000)]
Code review for XML patch.  Instill a bit of sanity in the location of
the XmlExpr code in various lists, use a representation that has some hope
of reverse-listing correctly (though it's still a de-escaping function
shy of correctness), generally try to make it look more like Postgres
coding conventions.

18 years agoSuppress various compiler warnings in new xml code.
Tom Lane [Sat, 23 Dec 2006 04:56:50 +0000 (04:56 +0000)]
Suppress various compiler warnings in new xml code.

18 years agoRemove unnecessary parentheses in if() statements.
Bruce Momjian [Sat, 23 Dec 2006 02:13:24 +0000 (02:13 +0000)]
Remove unnecessary parentheses in if() statements.

18 years agoChange a VACUUM manual page word from 'deleted' to 'expired', so DELETE
Bruce Momjian [Sat, 23 Dec 2006 01:58:40 +0000 (01:58 +0000)]
Change a VACUUM manual page word from 'deleted' to 'expired', so DELETE
and UPDATE are clearly covered by the term.

18 years agoDocument that CREATE TYPE names should not begin with an underscore,
Bruce Momjian [Sat, 23 Dec 2006 01:28:09 +0000 (01:28 +0000)]
Document that CREATE TYPE names should not begin with an underscore,
rather than being disallowed.

18 years agoFor GUC values, check for partial string matches on 'on' and 'off', but
Bruce Momjian [Sat, 23 Dec 2006 00:52:40 +0000 (00:52 +0000)]
For GUC values, check for partial string matches on 'on' and 'off', but
require at least two characters for uniqueness.   This now matches the
behavior of other boolean strings we support, per report from Gurjeet
Singh.

18 years agoRestructure operator classes to allow improved handling of cross-data-type
Tom Lane [Sat, 23 Dec 2006 00:43:13 +0000 (00:43 +0000)]
Restructure operator classes to allow improved handling of cross-data-type
cases.  Operator classes now exist within "operator families".  While most
families are equivalent to a single class, related classes can be grouped
into one family to represent the fact that they are semantically compatible.
Cross-type operators are now naturally adjunct parts of a family, without
having to wedge them into a particular opclass as we had done originally.

This commit restructures the catalogs and cleans up enough of the fallout so
that everything still works at least as well as before, but most of the work
needed to actually improve the planner's behavior will come later.  Also,
there are not yet CREATE/DROP/ALTER OPERATOR FAMILY commands; the only way
to create a new family right now is to allow CREATE OPERATOR CLASS to make
one by default.  I owe some more documentation work, too.  But that can all
be done in smaller pieces once this infrastructure is in place.

18 years agoAdd a link to the developer's FAQ for my article about how companies can
Bruce Momjian [Fri, 22 Dec 2006 22:42:36 +0000 (22:42 +0000)]
Add a link to the developer's FAQ for my article about how companies can
work effectively with open source communities.

18 years agoSlight adjustments to xml documentation to reflect functionality just
Bruce Momjian [Fri, 22 Dec 2006 22:09:31 +0000 (22:09 +0000)]
Slight adjustments to xml documentation to reflect functionality just
added.

18 years agoFix expected file.
Peter Eisentraut [Thu, 21 Dec 2006 19:18:04 +0000 (19:18 +0000)]
Fix expected file.

18 years agoCatalog version bump for SQL/XML changes.
Peter Eisentraut [Thu, 21 Dec 2006 18:32:56 +0000 (18:32 +0000)]
Catalog version bump for SQL/XML changes.

18 years agoFix convertion for 'PFX flag N num'
Teodor Sigaev [Thu, 21 Dec 2006 17:35:28 +0000 (17:35 +0000)]
Fix convertion for 'PFX flag N num'

18 years agoInitial SQL/XML support: xml data type and initial set of functions.
Peter Eisentraut [Thu, 21 Dec 2006 16:05:16 +0000 (16:05 +0000)]
Initial SQL/XML support: xml data type and initial set of functions.

18 years ago8.3 release schedule is year 2007, not 2006.
Bruce Momjian [Wed, 20 Dec 2006 16:22:14 +0000 (16:22 +0000)]
8.3 release schedule is year 2007, not 2006.

18 years agoAdd timeline for next release to developer's FAQ.
Bruce Momjian [Tue, 19 Dec 2006 22:37:37 +0000 (22:37 +0000)]
Add timeline for next release to developer's FAQ.

18 years agoItem done.
Bruce Momjian [Tue, 19 Dec 2006 21:57:10 +0000 (21:57 +0000)]
Item done.

<  o Improve xid wraparound detection by recording per-table rather
<    than per-database

18 years agoInterpret a dbName param to PQsetdbLogin as a conninfo string if it contains an ...
Andrew Dunstan [Tue, 19 Dec 2006 01:53:36 +0000 (01:53 +0000)]
Interpret a dbName param to PQsetdbLogin as a conninfo string if it contains an = sign. Tom Lane and Andrew Dunstan.

18 years agoSet pg_am.amstrategies to zero for index AMs that don't have fixed
Tom Lane [Mon, 18 Dec 2006 18:56:29 +0000 (18:56 +0000)]
Set pg_am.amstrategies to zero for index AMs that don't have fixed
operator strategy numbers, ie, GiST and GIN.  This is almost cosmetic
enough to not need a catversion bump, but since the opr_sanity regression
test has to change in sync with the catalog entry, I figured I'd better
do one.

18 years agofix thinko in placement of TimeValStruct typedef in Windows case, as reported by...
Andrew Dunstan [Mon, 18 Dec 2006 14:17:41 +0000 (14:17 +0000)]
fix thinko in placement of TimeValStruct typedef in Windows case, as reported by Magnus.

18 years agoFix typo:
Bruce Momjian [Sun, 17 Dec 2006 03:57:07 +0000 (03:57 +0000)]
Fix typo:

<   While PostgreSQL clients runs fine limited-resource environments, the
>   While PostgreSQL clients runs fine in limited-resource environments, the

18 years agoMove entry into CLUSTER section:
Bruce Momjian [Sun, 17 Dec 2006 03:55:21 +0000 (03:55 +0000)]
Move entry into CLUSTER section:

< * Make CLUSTER preserve recently-dead tuples per MVCC requirements
>  o Make CLUSTER preserve recently-dead tuples per MVCC requirements

18 years agoenable \timing oputput for \copy commands
Andrew Dunstan [Sat, 16 Dec 2006 00:38:43 +0000 (00:38 +0000)]
enable \timing oputput for \copy commands

18 years agoFix some planner bugs exposed by reports from Arjen van der Meijden. These
Tom Lane [Fri, 15 Dec 2006 18:42:26 +0000 (18:42 +0000)]
Fix some planner bugs exposed by reports from Arjen van der Meijden.  These
are all in new-in-8.2 logic associated with indexability of ScalarArrayOpExpr
(IN-clauses) or amortization of indexscan costs across repeated indexscans
on the inside of a nestloop.  In particular:

Fix some logic errors in the estimation for multiple scans induced by a
ScalarArrayOpExpr indexqual.

Include a small cost component in bitmap index scans to reflect the costs of
manipulating the bitmap itself; this is mainly to prevent a bitmap scan from
appearing to have the same cost as a plain indexscan for fetching a single
tuple.

Also add a per-index-scan-startup CPU cost component; while prior releases
were clearly too pessimistic about the cost of repeated indexscans, the
original 8.2 coding allowed the cost of an indexscan to effectively go to zero
if repeated often enough, which is overly optimistic.

Pay some attention to index correlation when estimating costs for a nestloop
inner indexscan: this is significant when the plan fetches multiple heap
tuples per iteration, since high correlation means those tuples are probably
on the same or adjacent heap pages.

18 years agoPut JST back into the default set of timezone abbreviations;
Tom Lane [Fri, 15 Dec 2006 16:54:43 +0000 (16:54 +0000)]
Put JST back into the default set of timezone abbreviations;
was removed in an unexplainable moment of brain fade.

18 years agoBack out double-run of PDF/PS output. Requires building bookindex.sgml
Bruce Momjian [Fri, 15 Dec 2006 16:50:07 +0000 (16:50 +0000)]
Back out double-run of PDF/PS output.  Requires building bookindex.sgml
properly.

Remove SGML docs about openjade performance patch, and instead add
comment in style sheet where indenting code is commented out.

Backpatch to 8.2.X.

18 years agoTODO item not wanted:
Bruce Momjian [Fri, 15 Dec 2006 15:40:52 +0000 (15:40 +0000)]
TODO item not wanted:

>
> * Embedded server (not wanted)
>
>   While PostgreSQL clients runs fine limited-resource environments, the
>   server requires multiple processes and a stable pool of resources to
>   run reliabily and efficiently.  Stripping down the PostgreSQL server
>   to run in the same process address space as the client application
>   would add too much complexity and failure cases.

18 years agoLink to summary XML email, rather than thread top:
Bruce Momjian [Fri, 15 Dec 2006 13:28:54 +0000 (13:28 +0000)]
Link to summary XML email, rather than thread top:

< * Consider changing documentation from SGML to XML
> * Consider changing documentation format from SGML to XML
<   http://archives.postgresql.org/pgsql-docs/2006-12/msg00033.php
>   http://archives.postgresql.org/pgsql-docs/2006-12/msg00152.php

18 years agoDocument issues for SGML and XML:
Bruce Momjian [Fri, 15 Dec 2006 03:01:20 +0000 (03:01 +0000)]
Document issues for SGML and XML:

>
> * Consider changing documentation from SGML to XML
>
>   http://archives.postgresql.org/pgsql-docs/2006-12/msg00033.php
>

18 years agoDocument patch needed to get PDF and PS output in a reasonable amount of
Bruce Momjian [Fri, 15 Dec 2006 02:44:28 +0000 (02:44 +0000)]
Document patch needed to get PDF and PS output in a reasonable amount of
time.

18 years agoRemove unneeded tab in file.
Bruce Momjian [Fri, 15 Dec 2006 02:19:21 +0000 (02:19 +0000)]
Remove unneeded tab in file.

18 years agoRun Jade twice when outputting Postscript and PDF so the index is
Bruce Momjian [Fri, 15 Dec 2006 01:20:59 +0000 (01:20 +0000)]
Run Jade twice when outputting Postscript and PDF so the index is
correct, add comments about other multiple runs in the Makefile.

Backpatch to 8.2.X.

18 years agoMake --with-ldap build on Unixware, per Olivier Prenant.
Tom Lane [Thu, 14 Dec 2006 21:49:54 +0000 (21:49 +0000)]
Make --with-ldap build on Unixware, per Olivier Prenant.

18 years agoRemove Windows port^W^Wobsolete template file.
Peter Eisentraut [Thu, 14 Dec 2006 20:53:50 +0000 (20:53 +0000)]
Remove Windows port^W^Wobsolete template file.

18 years agoActivate WIN32_STACK_RLIMIT override only on platforms where this is
Peter Eisentraut [Thu, 14 Dec 2006 20:51:14 +0000 (20:51 +0000)]
Activate WIN32_STACK_RLIMIT override only on platforms where this is
necessary.

18 years agoPut back yet another improperly-removed #include, per Mark Kirkwood.
Tom Lane [Wed, 13 Dec 2006 05:54:48 +0000 (05:54 +0000)]
Put back yet another improperly-removed #include, per Mark Kirkwood.

18 years agoUpdate entry:
Bruce Momjian [Tue, 12 Dec 2006 22:31:19 +0000 (22:31 +0000)]
Update entry:

< * Have EXPLAIN ANALYZE highlight poor optimizer estimates
> * Have EXPLAIN ANALYZE issue NOTICE messages when the estimated and
>   actual row counts differ by a specified percentage

18 years agoFix planner to do the right thing when a degenerate outer join (one whose
Tom Lane [Tue, 12 Dec 2006 21:31:02 +0000 (21:31 +0000)]
Fix planner to do the right thing when a degenerate outer join (one whose
joinclause doesn't use any outer-side vars) requires a "bushy" plan to be
created.  The normal heuristic to avoid joins with no joinclause has to be
overridden in that case.  Problem is new in 8.2; before that we forced the
outer join order anyway.  Per example from Teodor.

18 years agoDocument that log_line_prefix %t does not print timezone on Win32.
Bruce Momjian [Tue, 12 Dec 2006 21:30:33 +0000 (21:30 +0000)]
Document that log_line_prefix %t does not print timezone on Win32.

18 years agoOops, removed:
Bruce Momjian [Tue, 12 Dec 2006 20:34:33 +0000 (20:34 +0000)]
Oops, removed:

< * Allow REINDEX CONCURRENTLY

18 years agoAdd:
Bruce Momjian [Tue, 12 Dec 2006 20:33:15 +0000 (20:33 +0000)]
Add:

> * Allow REINDEX CONCURRENTLY

18 years agoAllow augmenting CPPFLAGS from the configure command line. This generally
Peter Eisentraut [Tue, 12 Dec 2006 19:43:19 +0000 (19:43 +0000)]
Allow augmenting CPPFLAGS from the configure command line.  This generally
works, but some platform templates overwrote it without asking.

18 years agoRemove blank lines in HTML FAQ.
Bruce Momjian [Mon, 11 Dec 2006 22:46:02 +0000 (22:46 +0000)]
Remove blank lines in HTML FAQ.

18 years agoAdd FAQ entry to mention using COALESCE() for concatenation of possible
Bruce Momjian [Mon, 11 Dec 2006 22:44:53 +0000 (22:44 +0000)]
Add FAQ entry to mention using COALESCE() for concatenation of possible
NULLs.

18 years agoAdd a paramtypmod field to Param nodes. This is dead weight for Params
Tom Lane [Sun, 10 Dec 2006 22:13:27 +0000 (22:13 +0000)]
Add a paramtypmod field to Param nodes.  This is dead weight for Params
representing externally-supplied values, since the APIs that carry such
values only specify type not typmod.  However, for PARAM_SUBLINK Params
it is handy to carry the typmod of the sublink's output column.  This
is a much cleaner solution for the recently reported 'could not find
pathkey item to sort' and 'failed to find unique expression in subplan
tlist' bugs than my original 8.2-compatible patch.  Besides, someday we
might want to support typmods for external parameters ...

18 years agoMake separate targets for building printable documentation in A4 and
Peter Eisentraut [Sun, 10 Dec 2006 20:46:03 +0000 (20:46 +0000)]
Make separate targets for building printable documentation in A4 and
US letter paper formats.

18 years agoReorganize XSLT stylesheet support. Put common things into a separate
Peter Eisentraut [Sun, 10 Dec 2006 16:01:06 +0000 (16:01 +0000)]
Reorganize XSLT stylesheet support.  Put common things into a separate
file (instead of repeating), add XSL-FO stylesheet and appropriate make
rules.

18 years agoAdd some information about increasing JadeTeX parameters.
Peter Eisentraut [Sun, 10 Dec 2006 02:37:40 +0000 (02:37 +0000)]
Add some information about increasing JadeTeX parameters.

18 years agoDrop indentation of verbatim environments in print output. This increased
Peter Eisentraut [Sun, 10 Dec 2006 01:55:29 +0000 (01:55 +0000)]
Drop indentation of verbatim environments in print output.  This increased
the build time by what seemed like infinity.

18 years agoGeneralize Texinfo rules. Prevent them from overriding the PostScript
Peter Eisentraut [Sun, 10 Dec 2006 01:53:15 +0000 (01:53 +0000)]
Generalize Texinfo rules.  Prevent them from overriding the PostScript
build rules.

18 years agoRemove the logId/logSeg fields from pg_control, because they are not needed
Tom Lane [Fri, 8 Dec 2006 19:50:53 +0000 (19:50 +0000)]
Remove the logId/logSeg fields from pg_control, because they are not needed
in normal operation, and we can avoid rewriting pg_control at every log
segment switch if we don't insist that these values be valid.  Reducing
the number of pg_control updates is a good idea for both performance and
reliability.  It does make pg_resetxlog's life a bit harder, but that seems
a good tradeoff; and anyway the change to pg_resetxlog amounts to automating
something people formerly needed to do by hand, namely look at the existing
pg_xlog files to make sure the new WAL start point was past them.

In passing, change the wording of xlog.c's "database system was interrupted"
messages: describe the pg_control timestamp as "last known up at" rather than
implying it is the exact time of service interruption.  With this change the
timestamp will generally be the time of the last checkpoint, which could be
many minutes before the failure; and we've already seen indications that
people tend to misinterpret the old wording.

initdb forced due to change in pg_control layout.  Simon Riggs and Tom Lane

18 years agoFix broken markup.
Tom Lane [Fri, 8 Dec 2006 19:16:17 +0000 (19:16 +0000)]
Fix broken markup.

18 years agoFix the build for when SHOW_MEMORY_STATS is defined. The reference to
Neil Conway [Fri, 8 Dec 2006 02:15:07 +0000 (02:15 +0000)]
Fix the build for when SHOW_MEMORY_STATS is defined. The reference to
the nonexistent ShowStats variable is simply removed, per Gavin Sherry.

18 years agoAvoid double free of _SPI_current->tuptable. AtEOSubXact_SPI() now tries to
Tom Lane [Fri, 8 Dec 2006 00:40:27 +0000 (00:40 +0000)]
Avoid double free of _SPI_current->tuptable.  AtEOSubXact_SPI() now tries to
release it in a subtransaction abort, but this neglects possibility that
someone outside SPI already did.  Fix is for spi.c to forget about a tuptable
as soon as it's handed it back to the caller.
Per bug #2817 from Michael Andreen.

18 years agoRepair incorrect placement of WHERE clauses when there are multiple,
Tom Lane [Thu, 7 Dec 2006 19:33:40 +0000 (19:33 +0000)]
Repair incorrect placement of WHERE clauses when there are multiple,
rearrangeable outer joins and the WHERE clause is non-strict and mentions
only nullable-side relations.  New bug in 8.2, caused by new logic to allow
rearranging outer joins.  Per bug #2807 from Ross Cohen; thanks to Jeff
Davis for producing a usable test case.

18 years agoFix planning of SubLinks to ensure that Vars generated from transformation of
Tom Lane [Wed, 6 Dec 2006 19:40:01 +0000 (19:40 +0000)]
Fix planning of SubLinks to ensure that Vars generated from transformation of
a sublink's test expression have the correct vartypmod, rather than defaulting
to -1.  There's at least one place where this is important because we're
expecting these Vars to be exactly equal() to those appearing in the subplan
itself.  This is a pretty klugy solution --- it would likely be cleaner to
change Param nodes to include a typmod field --- but we can't do that in the
already-released 8.2 branch.
Per bug report from Hubert Fongarnand.

18 years agoAdd a txn_start column to pg_stat_activity. This makes it easier to
Neil Conway [Wed, 6 Dec 2006 18:06:48 +0000 (18:06 +0000)]
Add a txn_start column to pg_stat_activity. This makes it easier to
identify long-running transactions. Since we already need to record
the transaction-start time (e.g. for now()), we don't need any
additional system calls to report this information.

Catversion bumped, initdb required.

18 years agoVarious improvements to the GUC description strings. Punctuate and
Neil Conway [Wed, 6 Dec 2006 17:35:49 +0000 (17:35 +0000)]
Various improvements to the GUC description strings. Punctuate and
capitalize the strings like sentences. Remove unnecessarily
specific descriptions of the units used by GUC variables, since
we now allow any reasonable unit to be specified.

18 years agoChange psql \\ example to use single quotes, per TOm.
Bruce Momjian [Wed, 6 Dec 2006 15:47:22 +0000 (15:47 +0000)]
Change psql \\ example to use single quotes, per TOm.

18 years agoBack out mention of port success from FAQs, per Tom, added by Simon.
Bruce Momjian [Wed, 6 Dec 2006 15:45:31 +0000 (15:45 +0000)]
Back out mention of port success from FAQs, per Tom, added by Simon.

18 years agoClean up psql -c documentation that uses \\.
Bruce Momjian [Wed, 6 Dec 2006 15:40:11 +0000 (15:40 +0000)]
Clean up psql -c documentation that uses \\.

18 years agoMake URL to docs use /current/.
Bruce Momjian [Tue, 5 Dec 2006 23:13:41 +0000 (23:13 +0000)]
Make URL to docs use /current/.

18 years agoFix documentation example of using psql \x with a SELECT command, per
Bruce Momjian [Tue, 5 Dec 2006 17:40:55 +0000 (17:40 +0000)]
Fix documentation example of using psql \x with a SELECT command, per
Simon Riggs.  Backpatch to 8.2.X.

18 years agoFix typos in comments and error messages in HStore. Patch from Filip
Neil Conway [Tue, 5 Dec 2006 17:36:00 +0000 (17:36 +0000)]
Fix typos in comments and error messages in HStore. Patch from Filip
Rembialkowski, with some additional fixes by myself.

18 years agoUpdate of port patches, HEAD patch only.
Bruce Momjian [Tue, 5 Dec 2006 14:47:34 +0000 (14:47 +0000)]
Update of port patches, HEAD patch only.

Simon Riggs

18 years agoFix pg_dump linking on Win32 with MSVS win32.mak:
Bruce Momjian [Mon, 4 Dec 2006 22:26:17 +0000 (22:26 +0000)]
Fix pg_dump linking on Win32 with MSVS win32.mak:

The module link is insufficient.:-(

---- Sorry, japanese message change to xxx ---
link.exe @C:\DOCUME~1\hi-saito\LOCALS~1\Temp\nmk03360.
common.obj : error LNK2001: xxxxxx "_pg_qsort" xxxxxx
pg_dump_sort.obj : error LNK2001: xxxxx "_pg_qsort" xxxxx
.\Release\pg_dump.exe : fatal error LNK1120: xxxxxxx
NMAKE : fatal error U1077: 'link.exe' : xxxxx '0x460'
Stop.

Hiroshi Saito

18 years agoPatch of Win32 Encoding problem for server messages using
Bruce Momjian [Mon, 4 Dec 2006 22:23:40 +0000 (22:23 +0000)]
Patch of Win32 Encoding problem for server messages using
FormatMessage() (This should have been in 8.2.0, patched to 8.2.X and
HEAD):

I think this problem to be complex....
http://archives.postgresql.org/pgsql-hackers/2006-11/msg00042.php

FormatMessage of windows cannot consider the encoding of the database.
However, I should try the solution now. It is necessary to clear the
problem.

Multi character-code exists together in message and log. It doesn't
consider
the data base encoding that the user intended....

The user in multi-byte country can try this.
http://inet.winpg.jp/~saito/pg_bug/MessageCheck.c

That is, it is likely to become it in this manner.(Japanese)
http://inet.winpg.jp/~saito/pg_bug/FormatMessage998.png

Hiroshi Saito

18 years agoFix core dump of ispell for case of non-successfull initialization.
Teodor Sigaev [Mon, 4 Dec 2006 09:26:57 +0000 (09:26 +0000)]
Fix core dump of ispell for case of non-successfull initialization.
Previous versions aren't affected.

Fix synonym dictionary init: string should be malloc'ed, not palloc'ed. Bug
introduced recently while fixing lowerstr().

18 years agoRefactor ExecGetJunkAttribute to avoid searching for junk attributes
Tom Lane [Mon, 4 Dec 2006 02:06:55 +0000 (02:06 +0000)]
Refactor ExecGetJunkAttribute to avoid searching for junk attributes
by name on each and every row processed.  Profiling suggests this may
buy a percent or two for simple UPDATE scenarios, which isn't huge,
but when it's so easy to get ...

18 years agoFix LIMIT/OFFSET for null limit values. This worked before 8.2 but was broken
Tom Lane [Sun, 3 Dec 2006 21:40:07 +0000 (21:40 +0000)]
Fix LIMIT/OFFSET for null limit values.  This worked before 8.2 but was broken
by the change to make limit values int8 instead of int4.  (Specifically, you
can do DatumGetInt32 safely on a null value, but not DatumGetInt64.)  Per
bug #2803 from Greg Johnson.