]> granicus.if.org Git - postgresql/log
postgresql
16 years agolmgr.c:DescribeLockTag was never taught about virtual xids, per Greg Stark.
Tom Lane [Tue, 8 Jan 2008 23:18:51 +0000 (23:18 +0000)]
lmgr.c:DescribeLockTag was never taught about virtual xids, per Greg Stark.
Also a couple of minor tweaks to try to future-proof the code a bit better
against future locktag additions.

16 years agoAdd URLs to two excellent web pages about SSL API and certificate usage.
Bruce Momjian [Tue, 8 Jan 2008 18:07:38 +0000 (18:07 +0000)]
Add URLs to two excellent web pages about SSL API and certificate usage.

16 years agoinformix.c was violating the coding rule about not including any
Tom Lane [Tue, 8 Jan 2008 01:14:52 +0000 (01:14 +0000)]
informix.c was violating the coding rule about not including any
system headers before c.h.  Per report from J6M.

16 years agoRemove unnecessary comma in enum definition ... some C compilers don't
Tom Lane [Tue, 8 Jan 2008 01:04:08 +0000 (01:04 +0000)]
Remove unnecessary comma in enum definition ... some C compilers don't
like that.  Per report from J6M.

16 years agoMention use of src/tools/major_release_split for creating back-branch
Bruce Momjian [Mon, 7 Jan 2008 22:05:27 +0000 (22:05 +0000)]
Mention use of src/tools/major_release_split for creating back-branch
release notes.

16 years agoFix a minor bug in outfuncs support for SetOp: dupOperators is an array
Neil Conway [Mon, 7 Jan 2008 21:33:10 +0000 (21:33 +0000)]
Fix a minor bug in outfuncs support for SetOp: dupOperators is an array
of Oid, and therefore should use the "%u" escape sequence rather than "%d".

16 years agoA long time ago, Peter pointed out that ruleutils.c didn't dump simple
Tom Lane [Sun, 6 Jan 2008 01:03:16 +0000 (01:03 +0000)]
A long time ago, Peter pointed out that ruleutils.c didn't dump simple
constant ORDER/GROUP BY entries properly:
http://archives.postgresql.org/pgsql-hackers/2001-04/msg00457.php
The original solution to that was in fact no good, as demonstrated by
today's report from Martin Pitt:
http://archives.postgresql.org/pgsql-bugs/2008-01/msg00027.php
We can't use the column-number-reference format for a constant that is
a resjunk targetlist entry, a case that was unfortunately not thought of
in the original discussion.  What we can do instead (which did not work
at the time, but does work in 7.3 and up) is to emit the constant with
explicit ::typename decoration, even if it otherwise wouldn't need it.
This is sufficient to keep the parser from thinking it's a column number
reference, and indeed is probably what the user must have done to get
such a thing into the querytree in the first place.

16 years agoPut spaces after "RFC".
Peter Eisentraut [Sat, 5 Jan 2008 13:17:00 +0000 (13:17 +0000)]
Put spaces after "RFC".

16 years agoAdd URL for:
Bruce Momjian [Fri, 4 Jan 2008 15:58:27 +0000 (15:58 +0000)]
Add URL for:

* Allow AS in "SELECT col AS label" to be optional (not wanted)

>   http://archives.postgresql.org/pgsql-hackers/2003-04/msg00436.php

16 years agoStamp release 8.3RC1. REL8_3_RC1
Tom Lane [Thu, 3 Jan 2008 21:40:12 +0000 (21:40 +0000)]
Stamp release 8.3RC1.

Security: CVE-2007-4769, CVE-2007-4772, CVE-2007-6067, CVE-2007-6600, CVE-2007-6601

16 years agoUpdate release notes for security releases.
Tom Lane [Thu, 3 Jan 2008 21:35:25 +0000 (21:35 +0000)]
Update release notes for security releases.

Security: CVE-2007-4769, CVE-2007-4772, CVE-2007-6067, CVE-2007-6600, CVE-2007-6601

16 years agoThe original patch to disallow non-passworded connections to non-superusers
Tom Lane [Thu, 3 Jan 2008 21:27:59 +0000 (21:27 +0000)]
The original patch to disallow non-passworded connections to non-superusers
failed to cover all the ways in which a connection can be initiated in dblink.
Plug the remaining holes.  Also, disallow transient connections in functions
for which that feature makes no sense (because they are only sensible as
part of a sequence of operations on the same connection).  Joe Conway

Security: CVE-2007-6601

16 years agoMake standard maintenance operations (including VACUUM, ANALYZE, REINDEX,
Tom Lane [Thu, 3 Jan 2008 21:23:15 +0000 (21:23 +0000)]
Make standard maintenance operations (including VACUUM, ANALYZE, REINDEX,
and CLUSTER) execute as the table owner rather than the calling user, using
the same privilege-switching mechanism already used for SECURITY DEFINER
functions.  The purpose of this change is to ensure that user-defined
functions used in index definitions cannot acquire the privileges of a
superuser account that is performing routine maintenance.  While a function
used in an index is supposed to be IMMUTABLE and thus not able to do anything
very interesting, there are several easy ways around that restriction; and
even if we could plug them all, there would remain a risk of reading sensitive
information and broadcasting it through a covert channel such as CPU usage.

To prevent bypassing this security measure, execution of SET SESSION
AUTHORIZATION and SET ROLE is now forbidden within a SECURITY DEFINER context.

Thanks to Itagaki Takahiro for reporting this vulnerability.

Security: CVE-2007-6600

16 years agoFix assorted security-grade bugs in the regex engine. All of these problems
Tom Lane [Thu, 3 Jan 2008 20:47:55 +0000 (20:47 +0000)]
Fix assorted security-grade bugs in the regex engine.  All of these problems
are shared with Tcl, since it's their code to begin with, and the patches
have been copied from Tcl 8.5.0.  Problems:

CVE-2007-4769: Inadequate check on the range of backref numbers allows
crash due to out-of-bounds read.
CVE-2007-4772: Infinite loop in regex optimizer for pattern '($|^)*'.
CVE-2007-6067: Very slow optimizer cleanup for regex with a large NFA
representation, as well as crash if we encounter an out-of-memory condition
during NFA construction.

Part of the response to CVE-2007-6067 is to put a limit on the number of
states in the NFA representation of a regex.  This seems needed even though
the within-the-code problems have been corrected, since otherwise the code
could try to use very large amounts of memory for a suitably-crafted regex,
leading to potential DOS by driving the system into swap, activating a kernel
OOM killer, etc.

Although there are certainly plenty of ways to drive the system into effective
DOS with poorly-written SQL queries, these problems seem worth treating as
security issues because many applications might accept regex search patterns
from untrustworthy sources.

Thanks to Will Drewry of Google for reporting these problems.  Patches by Will
Drewry and Tom Lane.

Security: CVE-2007-4769, CVE-2007-4772, CVE-2007-6067

16 years agoAdd:
Bruce Momjian [Thu, 3 Jan 2008 18:47:44 +0000 (18:47 +0000)]
Add:

> * Allow multiple identical NOTIFY events to always be communicated to the
>   client, rather than sent as a single notification to the listener

16 years agoForbid ALTER TABLE and CLUSTER when there are pending AFTER-trigger events
Tom Lane [Wed, 2 Jan 2008 23:34:42 +0000 (23:34 +0000)]
Forbid ALTER TABLE and CLUSTER when there are pending AFTER-trigger events
in the current backend for the target table.  These operations move tuples
around and would thus invalidate the TIDs stored in the trigger event records.
(We need not worry about events in other backends, since acquiring exclusive
lock should be enough to ensure there aren't any.)  It might be sufficient
to forbid only the table-rewriting variants of ALTER TABLE, but in the absence
of any compelling use-case, let's just be safe and simple.  Per follow-on
investigation of bug #3847, though this is not actually the same problem
reported therein.

Possibly this should be back-patched, but since the case has never been
reported from the field, I didn't bother.

16 years agoInsert ARST into the list of known timezone abbreviations.
Tom Lane [Wed, 2 Jan 2008 21:42:00 +0000 (21:42 +0000)]
Insert ARST into the list of known timezone abbreviations.

16 years agoFix invalid ipv6 address in example. Per doc comment 7211.
Magnus Hagander [Wed, 2 Jan 2008 19:53:13 +0000 (19:53 +0000)]
Fix invalid ipv6 address in example. Per doc comment 7211.

16 years agoFix plpython's overoptimistic caching of information about the rowtype of
Tom Lane [Wed, 2 Jan 2008 03:10:27 +0000 (03:10 +0000)]
Fix plpython's overoptimistic caching of information about the rowtype of
a trigger's target table.  The rowtype could change from one call to the
next, so cope in such cases, while avoiding doing repetitive catalog lookups.
Per bug #3847 from Mark Reid.

Backpatch to 8.2.x.  Likely this fix should go further back, but I can't test
it because I no longer have a machine with a pre-2.5 Python installation.
(Maybe we should rethink that idea about not supporting Python 2.5 in the
older branches.)

16 years agoCorrect two more copyrights found by updated script.
Bruce Momjian [Wed, 2 Jan 2008 02:42:06 +0000 (02:42 +0000)]
Correct two more copyrights found by updated script.

16 years agoModify copyright script to handle cases where there is only one year
Bruce Momjian [Wed, 2 Jan 2008 02:36:18 +0000 (02:36 +0000)]
Modify copyright script to handle cases where there is only one year
in the copyright

16 years agoUpdate time zone data files to tzdata release 2007k.
Tom Lane [Tue, 1 Jan 2008 20:45:10 +0000 (20:45 +0000)]
Update time zone data files to tzdata release 2007k.

16 years agoFix some missed copyright updates.
Tom Lane [Tue, 1 Jan 2008 20:31:21 +0000 (20:31 +0000)]
Fix some missed copyright updates.

16 years agoUpdate copyrights in source tree to 2008.
Bruce Momjian [Tue, 1 Jan 2008 19:46:01 +0000 (19:46 +0000)]
Update copyrights in source tree to 2008.

16 years agoMove a few release note items from "Utility Commands" to "Object Manipulation".
Bruce Momjian [Tue, 1 Jan 2008 19:41:14 +0000 (19:41 +0000)]
Move a few release note items from "Utility Commands" to "Object Manipulation".

16 years agoUpdate release notes to match CVS HEAD.
Bruce Momjian [Tue, 1 Jan 2008 19:36:20 +0000 (19:36 +0000)]
Update release notes to match CVS HEAD.

16 years ago8.3 is possible release on 2008-01-??, not 2007.
Bruce Momjian [Tue, 1 Jan 2008 15:14:37 +0000 (15:14 +0000)]
8.3 is possible release on 2008-01-??, not 2007.

16 years agoProvide a more helpful error message when there is an autoconf version
Bruce Momjian [Mon, 31 Dec 2007 17:28:21 +0000 (17:28 +0000)]
Provide a more helpful error message when there is an autoconf version
mismatch;  backpatch.

16 years agoProvide a more helpful error message when there is an autoconf version
Bruce Momjian [Mon, 31 Dec 2007 16:47:10 +0000 (16:47 +0000)]
Provide a more helpful error message when there is an autoconf version
mismatch.  Batckpatch to 8.2.X.

16 years agoImprove a number of elog messages for not-supposed-to-happen cases in btrees,
Tom Lane [Mon, 31 Dec 2007 04:52:05 +0000 (04:52 +0000)]
Improve a number of elog messages for not-supposed-to-happen cases in btrees,
since these seem to happen after all in corrupted indexes.  Make sure we
supply the index name in all cases, and provide relevant block numbers where
available.  Also consistently identify the index name as such.

Back-patch to 8.2, in hopes that this might help Mason Hale figure out his
problem.

16 years agoAdd missing return code checks in the uuid-ossp contrib module, per bug #3841.
Alvaro Herrera [Mon, 31 Dec 2007 03:55:50 +0000 (03:55 +0000)]
Add missing return code checks in the uuid-ossp contrib module, per bug #3841.

16 years agoAdd sanity check to ensure delimiter and quote are different in CSV mode
Andrew Dunstan [Sun, 30 Dec 2007 14:46:52 +0000 (14:46 +0000)]
Add sanity check to ensure delimiter and quote are different in CSV mode

16 years agoUpdate TODO list based on 8.3 completed items:
Bruce Momjian [Sun, 30 Dec 2007 03:22:53 +0000 (03:22 +0000)]
Update TODO list based on 8.3 completed items:

< * Allow major upgrades without dump/reload, perhaps using pg_upgrade
<   [pg_upgrade]
< * Check for unreferenced table files created by transactions that were
<   in-progress when the server terminated abruptly
<
<   http://archives.postgresql.org/pgsql-patches/2006-06/msg00096.php
<
> * Check for unreferenced table files created by transactions that were
>   in-progress when the server terminated abruptly
>
>   http://archives.postgresql.org/pgsql-patches/2006-06/msg00096.php
>
< * Support table partitioning that allows a single table to be stored
<   in subtables that are partitioned based on the primary key or a WHERE
<   clause
<   creation of rules for INSERT/UPDATE/DELETE, and constraints for
<   rapid partition selection.  Options could include range and hash
>   creation of triggers or rules for INSERT/UPDATE/DELETE, and constraints
>   for rapid partition selection.  Options could include range and hash
<
< * Improve replication solutions
<
<  o Load balancing
<
<    You can use any of the master/slave replication servers to use a
<    standby server for data warehousing. To allow read/write queries to
<    multiple servers, you need multi-master replication like pgcluster.
<
<  o Allow replication over unreliable or non-persistent links
<
<
<  o Mark change-on-restart-only values in postgresql.conf
<    All objects in the default database tablespace must have default
<    tablespace specifications. This is because new databases are
<    created by copying directories. If you mix default tablespace
<    tables and tablespace-specified tables in the same directory,
<    creating a new database from such a mixed directory would create a
<    new database with tables that had incorrect explicit tablespaces.
<    To fix this would require modifying pg_class in the newly copied
<    database, which we don't currently do.
>    Currently all objects in the default database tablespace must
>    have default tablespace specifications. This is because new
>    databases are created by copying directories. If you mix default
>    tablespace tables and tablespace-specified tables in the same
>    directory, creating a new database from such a mixed directory
>    would create a new database with tables that had incorrect
>    explicit tablespaces.  To fix this would require modifying
>    pg_class in the newly copied database, which we don't currently
>    do.
<
<    o Allow recovery.conf to allow the same syntax as
>    o Allow recovery.conf to support the same syntax as
< * Allow user-defined types to specify a type modifier at table creation
<   time
< * Allow all data types to cast to and from TEXT
<
<   http://archives.postgresql.org/pgsql-hackers/2007-04/msg00017.php
<
<
<  o Add support for year-month syntax, INTERVAL '50-6' YEAR TO MONTH
<  o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1 year' AS
<    INTERVAL MONTH), and this should return '12 months'
>  o Add support for year-month syntax, INTERVAL '50-6' YEAR
>    TO MONTH
>  o Interpret INTERVAL '1 year' MONTH as CAST (INTERVAL '1
>    year' AS INTERVAL MONTH), and this should return '12 months'
<  * Allow MONEY to be cast to/from other numeric data types
>  * Allow MONEY to be easily cast to/from other numeric data types
>
< * Allow functions to have a schema search path specified at creation time
< * Fix cases where invalid byte encodings are accepted by the database,
<   but throw an error on SELECT
<
<   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00767.php
< * Improve logging of prepared statements recovered during startup
> * Improve logging of prepared transactions recovered during startup
< * Make standard_conforming_strings the default in 8.4?
> * Make standard_conforming_strings the default in 8.5?
< * Allow the count returned by SELECT, etc to be to represent as an int64
> * Allow the count returned by SELECT, etc to be represented as an int64
<  o Use more reliable method for CREATE DATABASE to get a consistent
<    copy of db?
<  o Fix transaction restriction checks for CREATE DATABASE and
<    other commands
<
<    http://archives.postgresql.org/pgsql-hackers/2007-01/msg00133.php
<    currently allowed.
>    currently allowed.  This currently is done if the table is
>    created inside the same transaction block as the COPY because
>    no other backends can see the table.
<  o Add SET PATH for schemas?
<
<    This is basically the same as SET search_path.
<  o Enforce referential integrity for system tables
<  o Add Oracle-style packages  (Pavel)
<
<    A package would be a schema with session-local variables,
<    public/private functions, and initialization functions.  It
<    is also possible to implement these capabilities
<    in all schemas and not use a separate "packages"
<    syntax at all.
<
<    http://archives.postgresql.org/pgsql-hackers/2006-08/msg00384.php
<
<  o Add single-step debugging of functions
<  o Allow RETURN to return row or record functions
<
<    http://archives.postgresql.org/pgsql-patches/2005-11/msg00045.php
<    http://archives.postgresql.org/pgsql-patches/2006-08/msg00397.php
<    http://archives.postgresql.org/pgsql-hackers/2006-09/msg00388.php
<
<  o Fix problems with RETURN NEXT on tables with
<    dropped/added columns after function creation
<
<    http://archives.postgresql.org/pgsql-patches/2006-02/msg00165.php
<
< * Make consistent use of long/short command options --- pg_ctl needs
<   long ones, pg_config doesn't have short ones, postgres doesn't have
<   enough long ones, etc.
<
<
<
<  o Consider parsing the -c string into individual queries so each
<    is run in its own transaction
<
<    http://archives.postgresql.org/pgsql-hackers/2007-01/msg00291.php
<
<
<  o Remove unnecessary function pointer abstractions in pg_dump source
<    code
>  o Remove unnecessary function pointer abstractions in pg_dump source
>    code
<
<
<  o Fix SSL retry to avoid useless repeated connection attempts and
<    ensuing misleading error messages
>
<
<   This is difficult because it requires datatype-specific knowledge.
<
< * Improve commit_delay handling to reduce fsync()
< * %Add an option to sync() before fsync()'ing checkpoint files
>
< * Reduce lock time during VACUUM FULL by moving tuples with read lock,
<   then write lock and truncate table
<
<   Moved tuples are invisible to other backends so they don't require a
<   write lock. However, the read lock promotion to write lock could lead
<   to deadlock situations.
<
< * Prevent long-lived temporary tables from causing frozen-xid advancement
<    starvation
<
<    The problem is that autovacuum cannot vacuum them to set frozen xids;
<    only the session that created them can do that.
<
<
<
<  o Use free-space map information to guide refilling
<  o Consider logging activity either to the logs or a system view
>    The problem is that autovacuum cannot vacuum them to set frozen xids;
>    only the session that created them can do that.
< * Add connection pooling
<
<   It is unclear if this should be done inside the backend code or done
<   by something external like pgpool. The passing of file descriptors to
<   existing backends is one of the difficulties with a backend approach.
<
< * Consider reducing memory used for shared buffer reference count
<
<   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php
<
< * %Remove memory/file descriptor freeing before ereport(ERROR)
< * %Promote debug_query_string into a server-side function current_query()
< * Allow ecpg to work with MSVC and BCC
< * Add xpath_array() to /contrib/xml2 to return results as an array
< * Allow building in directories containing spaces
<
<   This is probably not possible because 'gmake' and other compiler tools
<   do not fully support quoting of paths with spaces.
<
< * Fix sgmltools so PDFs can be generated with bookmarks
< * Split out libpq pgpass and environment documentation sections to make
<   it easier for non-developers to find
< * Use strlcpy() rather than our StrNCpy() macro
<
<   http://archives.postgresql.org/pgsql-hackers/2006-09/msg02108.php
<
<  o Re-enable timezone output on log_line_prefix '%t' when a
<    shorter timezone string is available
< * Allow statements across databases or servers with transaction
<   semantics
<
<   This can be done using dblink and two-phase commit.
> * Add Oracle-style packages  (Pavel)
< * Add the features of packages
>    A package would be a schema with session-local variables,
>    public/private functions, and initialization functions.  It
>    is also possible to implement these capabilities
>    in any schema and not use a separate "packages"
>    syntax at all.
<  o  Make private objects accessible only to objects in the same schema
<  o  Allow current_schema.objname to access current schema objects
<  o  Add session variables
<  o  Allow nested schemas
>    http://archives.postgresql.org/pgsql-hackers/2006-08/msg00384.php

16 years agoRemove TODO.detil for pg_upgrade.
Bruce Momjian [Sun, 30 Dec 2007 01:50:11 +0000 (01:50 +0000)]
Remove TODO.detil for pg_upgrade.

16 years agoAdd:
Bruce Momjian [Sun, 30 Dec 2007 00:42:38 +0000 (00:42 +0000)]
Add:
>
> * Allow SSL authentication/encryption over unix domain sockets
>
>   http://archives.postgresql.org/pgsql-hackers/2007-12/msg00924.php

16 years agoUpdate Japanese FAQ.
Bruce Momjian [Sat, 29 Dec 2007 19:26:27 +0000 (19:26 +0000)]
Update Japanese FAQ.

Jun Kuwamura

16 years agoDocument how to control the disk write cache on Solaris.
Bruce Momjian [Sat, 29 Dec 2007 17:55:07 +0000 (17:55 +0000)]
Document how to control the disk write cache on Solaris.

Zdenek Kotala

16 years agoRemove tab in file name
Bruce Momjian [Sat, 29 Dec 2007 04:59:27 +0000 (04:59 +0000)]
Remove tab in file name

16 years agoDocument that null ciphers are not recommended.
Bruce Momjian [Sat, 29 Dec 2007 04:27:02 +0000 (04:27 +0000)]
Document that null ciphers are not recommended.

Mark Mielke

16 years agoUpdate docs mentioning PAM doesn't work reading /etc/passwd because of
Bruce Momjian [Sat, 29 Dec 2007 04:15:38 +0000 (04:15 +0000)]
Update docs mentioning PAM doesn't work reading /etc/passwd because of
non-root.

Dhanaraj M

16 years agoDoc wording improvment.
Bruce Momjian [Sat, 29 Dec 2007 03:44:34 +0000 (03:44 +0000)]
Doc wording improvment.

16 years agoDocument problem with NULL SSL ciphers and man-in-the-middle attacks.
Bruce Momjian [Sat, 29 Dec 2007 03:36:56 +0000 (03:36 +0000)]
Document problem with NULL SSL ciphers and man-in-the-middle attacks.

16 years agoUpdate examples in planstats.sgml for 8.3, and improve some aspects of
Tom Lane [Fri, 28 Dec 2007 21:03:31 +0000 (21:03 +0000)]
Update examples in planstats.sgml for 8.3, and improve some aspects of
that discussion.  Add a link from perform.sgml.

16 years agoUpdate docs: client always gets server certificate
Bruce Momjian [Fri, 28 Dec 2007 16:21:08 +0000 (16:21 +0000)]
Update docs:  client always gets server certificate

16 years agomay -> might
Peter Eisentraut [Fri, 28 Dec 2007 12:32:56 +0000 (12:32 +0000)]
may -> might

16 years agoSorry, hit the wrong button with my last commit. Here's the correct changelog:
Michael Meskes [Fri, 28 Dec 2007 11:30:54 +0000 (11:30 +0000)]
Sorry, hit the wrong button with my last commit. Here's the correct changelog:

Applied patch send by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> to fix bug in connect statement if user name is a variable.
Also fixed test case that didn't detect this.

16 years ago*** empty log message ***
Michael Meskes [Fri, 28 Dec 2007 11:25:21 +0000 (11:25 +0000)]
*** empty log message ***

16 years agoDisable LOT for the time being because of TeX problems
Peter Eisentraut [Fri, 28 Dec 2007 11:14:19 +0000 (11:14 +0000)]
Disable LOT for the time being because of TeX problems

16 years agoUpdate required TeX settings
Peter Eisentraut [Fri, 28 Dec 2007 11:13:55 +0000 (11:13 +0000)]
Update required TeX settings

16 years agoImprove consistency of error reporting in GUC assign_hook routines. Some
Tom Lane [Fri, 28 Dec 2007 00:23:23 +0000 (00:23 +0000)]
Improve consistency of error reporting in GUC assign_hook routines.  Some
were reporting ERROR for interactive assignments and LOG for other cases,
some were saying nothing for non-interactive cases, and a few did yet other
things.  Make them use a new function GUC_complaint_elevel() to establish
a reasonably uniform policy about how to report.  There are still a few
edge cases such as assign_search_path(), but it's much better than before.
Per gripe from Devrim Gunduz and subsequent discussion.

As noted by Alvaro, it'd be better to fold these custom messages into the
standard "invalid parameter value" complaint from guc.c, perhaps as the DETAIL
field.  However that will require more redesign than seems prudent for 8.3.
This is a relatively safe, low-impact change that we can afford to risk now.

16 years agoDisallow digits and lower-case ASCII letters as the delimiter in non-CSV
Tom Lane [Thu, 27 Dec 2007 18:28:58 +0000 (18:28 +0000)]
Disallow digits and lower-case ASCII letters as the delimiter in non-CSV
COPY.  We need a restriction here because when the delimiter occurs as a
data character, it is emitted with a backslash, and that will only work
as desired if CopyReadAttributesText() will interpret the backslash sequence
as representing the second character literally.  This is currently untrue
for 'b', 'f', 'n', 'r', 't', 'v', 'x', and octal digits.  For future-proofing
and simplicity of explanation, it seems best to disallow a-z and 0-9.
We must also disallow dot, since "\." by itself would look like copy EOF.
Note: "\N" is by default the null print string, so N would also cause a
problem, but that is already tested for.

16 years agoFix ill-advised usage of x?y:z expressions in errmsg() and errhint() calls.
Tom Lane [Thu, 27 Dec 2007 17:00:56 +0000 (17:00 +0000)]
Fix ill-advised usage of x?y:z expressions in errmsg() and errhint() calls.
This prevented gettext from recognizing the strings that need to be
translated.

16 years agoSwap the order of testing for control characters and for column delimiter in
Tom Lane [Thu, 27 Dec 2007 16:45:22 +0000 (16:45 +0000)]
Swap the order of testing for control characters and for column delimiter in
CopyAttributeOutText(), so that control characters are converted to the
C-style escape sequences even if they happen to be equal to the column
delimiter (as is true by default for tab, for example).  Oversight in my
previous patch to restore pre-8.3 behavior of COPY OUT escaping.  Per report
from Tomas Szepe.

16 years agoWording improvements
Peter Eisentraut [Thu, 27 Dec 2007 13:02:48 +0000 (13:02 +0000)]
Wording improvements

16 years agoUpdate docs to clarify purpose of SSL key file
Bruce Momjian [Tue, 25 Dec 2007 17:06:52 +0000 (17:06 +0000)]
Update docs to clarify purpose of SSL key file

16 years agoAdd two documentation tables to outline SSL file usage for client and server.
Bruce Momjian [Tue, 25 Dec 2007 06:15:34 +0000 (06:15 +0000)]
Add two documentation tables to outline SSL file usage for client and server.

16 years agoAdd documentation section about preventing server spoofing.
Bruce Momjian [Tue, 25 Dec 2007 04:00:44 +0000 (04:00 +0000)]
Add documentation section about preventing server spoofing.

Update SSL documention to be clearer about certificates, and restructure
for clarity.

16 years agoProperly indent SGML paragraph.
Bruce Momjian [Sun, 23 Dec 2007 03:10:04 +0000 (03:10 +0000)]
Properly indent SGML paragraph.

16 years agoRemove paragraph about Linux OOM killer and fork(). Instead link to
Bruce Momjian [Sat, 22 Dec 2007 05:13:03 +0000 (05:13 +0000)]
Remove paragraph about Linux OOM killer and fork(). Instead link to
article about OOM.

16 years agoMove item to proper section:
Bruce Momjian [Fri, 21 Dec 2007 21:20:27 +0000 (21:20 +0000)]
Move item to proper section:

< * Experiment with multi-threaded backend better resource utilization
<
<   This would allow a single query to make use of multiple CPU's or
<   multiple I/O channels simultaneously.  One idea is to create a
<   background reader that can pre-fetch sequential and index scan
<   pages needed by other backends.  This could be expanded to allow
<   concurrent reads from multiple devices in a partitioned table.
<
> * Experiment with multi-threaded backend better resource utilization
>
>   This would allow a single query to make use of multiple CPU's or
>   multiple I/O channels simultaneously.  One idea is to create a
>   background reader that can pre-fetch sequential and index scan
>   pages needed by other backends.  This could be expanded to allow
>   concurrent reads from multiple devices in a partitioned table.

16 years agoUpdate find_typedefs to handle simple 'typedef X' cases, per request
Bruce Momjian [Fri, 21 Dec 2007 21:02:41 +0000 (21:02 +0000)]
Update find_typedefs to handle simple 'typedef X' cases, per request
from Tom.

16 years agoFixed a few minor glitches pointed out by splint.
Michael Meskes [Fri, 21 Dec 2007 14:33:20 +0000 (14:33 +0000)]
Fixed a few minor glitches pointed out by splint.

16 years agoModify pgindent to use an external typedefs file rather than included
Bruce Momjian [Fri, 21 Dec 2007 14:20:36 +0000 (14:20 +0000)]
Modify pgindent to use an external typedefs file rather than included
list.

Remove pgjindent.

16 years agolibpq needs pgsleep on win32 because of the changes to port/open.c.
Magnus Hagander [Fri, 21 Dec 2007 09:03:31 +0000 (09:03 +0000)]
libpq needs pgsleep on win32 because of the changes to port/open.c.

16 years agoFix a small typo, per Jan Urbanski
Tom Lane [Fri, 21 Dec 2007 03:37:18 +0000 (03:37 +0000)]
Fix a small typo, per Jan Urbanski

16 years agoOn win32, loop when opening files if sharing- och lock-violation errors
Magnus Hagander [Thu, 20 Dec 2007 20:27:53 +0000 (20:27 +0000)]
On win32, loop when opening files if sharing- och lock-violation errors
occur. Hopefully, this will make it possible to recover from broken
antivirus and/or backup software that locks our files.

16 years agoWhen given a nonzero column number, pg_get_indexdef() is only supposed to
Tom Lane [Thu, 20 Dec 2007 00:23:19 +0000 (00:23 +0000)]
When given a nonzero column number, pg_get_indexdef() is only supposed to
print the index key variable or expression for that column.  It was mistakenly
printing ASC/DESC/NULLS FIRST/NULLS LAST decoration too --- and not only for
the target column, but all columns.  Someday we should have an option to
extract that info (and the opclass decoration as well) for a single index
column ... but today is not that day.  Per bug #3829 and subsequent
discussion.

16 years agoRemove unnecessary logo output from msbuild when cleaning ecpg regression
Magnus Hagander [Wed, 19 Dec 2007 12:31:35 +0000 (12:31 +0000)]
Remove unnecessary logo output from msbuild when cleaning ecpg regression
test outputs.

16 years agoMake all msvc build scripts use buildenv.pl, not buildenv.bat.
Magnus Hagander [Wed, 19 Dec 2007 12:29:36 +0000 (12:29 +0000)]
Make all msvc build scripts use buildenv.pl, not buildenv.bat.

Andrew Dunstan

16 years agoFix thinko in encoding check for chr()
Andrew Dunstan [Tue, 18 Dec 2007 18:01:48 +0000 (18:01 +0000)]
Fix thinko in encoding check for chr()

16 years agoMake archiver process report its progress in PS display. Per
Tom Lane [Tue, 18 Dec 2007 00:49:34 +0000 (00:49 +0000)]
Make archiver process report its progress in PS display.  Per
proposal by Simon Riggs, though not exactly his patch.

16 years agoMake path_recv() and poly_recv() reject paths/polygons containing no points.
Tom Lane [Tue, 18 Dec 2007 00:04:08 +0000 (00:04 +0000)]
Make path_recv() and poly_recv() reject paths/polygons containing no points.
The zero-point case is sensible so far as the data structure is concerned,
so maybe we ought to allow it sometime; but right now the textual input
routines for these types don't allow it, and it seems that not all the
functions for the types are prepared to cope.
Report and patch by Merlin Moncure.

16 years agoUpdate pg_ctk/kill docs.
Bruce Momjian [Mon, 17 Dec 2007 14:00:52 +0000 (14:00 +0000)]
Update pg_ctk/kill docs.

16 years agoRemove tab in SGML file.
Bruce Momjian [Mon, 17 Dec 2007 13:54:10 +0000 (13:54 +0000)]
Remove tab in SGML file.

16 years agoImprove wording.
Alvaro Herrera [Mon, 17 Dec 2007 13:48:31 +0000 (13:48 +0000)]
Improve wording.

16 years agoUpdate archive_command example to use || test, rather than if [].
Bruce Momjian [Mon, 17 Dec 2007 09:03:52 +0000 (09:03 +0000)]
Update archive_command example to use || test, rather than if [].

16 years agoSome desultory copy-editing on the backup/restore docs.
Tom Lane [Mon, 17 Dec 2007 04:30:05 +0000 (04:30 +0000)]
Some desultory copy-editing on the backup/restore docs.

16 years agoMention use all configure options when getting pgindent typedefs.
Bruce Momjian [Mon, 17 Dec 2007 02:02:48 +0000 (02:02 +0000)]
Mention use all configure options when getting pgindent typedefs.

16 years agoMention installing /contrib libraries for pgindent.
Bruce Momjian [Mon, 17 Dec 2007 01:56:43 +0000 (01:56 +0000)]
Mention installing /contrib libraries for pgindent.

16 years agoUpdate item description:
Bruce Momjian [Mon, 17 Dec 2007 01:40:54 +0000 (01:40 +0000)]
Update item description:

* Consider having the background writer update the transaction status
  hint bits before writing out the page

  Implementing this requires the background writer to have access to system
  catalogs and the transaction status log.

16 years agoMake an editorial pass over the newly SGML-ified contrib documentation.
Tom Lane [Sun, 16 Dec 2007 23:00:42 +0000 (23:00 +0000)]
Make an editorial pass over the newly SGML-ified contrib documentation.
Fix lots of bad markup, bad English, bad explanations.

Last ones ... whew.  Man, that was tedious.

16 years agoWindows write-cache wording improvement.
Bruce Momjian [Sun, 16 Dec 2007 14:05:12 +0000 (14:05 +0000)]
Windows write-cache wording improvement.

16 years agoUpdate write-cache docs to mention windows behavior for various
Bruce Momjian [Sun, 16 Dec 2007 14:03:32 +0000 (14:03 +0000)]
Update write-cache docs to mention windows behavior for various
fsync_methods.

Magnus.

16 years agoMention that HOT helps with DELETE space reuse.
Bruce Momjian [Sun, 16 Dec 2007 13:05:30 +0000 (13:05 +0000)]
Mention that HOT helps with DELETE space reuse.

16 years agoUpdate OOM wording.
Bruce Momjian [Sun, 16 Dec 2007 11:24:25 +0000 (11:24 +0000)]
Update OOM wording.

16 years agoAdd docs about OOM killer.
Bruce Momjian [Sun, 16 Dec 2007 11:22:33 +0000 (11:22 +0000)]
Add docs about OOM killer.

lst_hoe01@kwsoft.de

16 years agoMention pg_ctl kill for Win32 in docs.
Bruce Momjian [Sun, 16 Dec 2007 10:17:13 +0000 (10:17 +0000)]
Mention pg_ctl kill for Win32 in docs.

16 years agoUpdate pgpool-II mention.
Bruce Momjian [Sun, 16 Dec 2007 09:44:27 +0000 (09:44 +0000)]
Update pgpool-II mention.

16 years agoMark 8.3 as likely now January, 2008 in release notes.
Bruce Momjian [Sun, 16 Dec 2007 07:19:32 +0000 (07:19 +0000)]
Mark 8.3 as likely now January, 2008 in release notes.

16 years agoGet dllwrap name from variable instead of hardcoded.
Magnus Hagander [Sat, 15 Dec 2007 16:21:35 +0000 (16:21 +0000)]
Get dllwrap name from variable instead of hardcoded.

Per complaint from Richard Evans

16 years agoFix example archive_command for standalone backups so it doesn't return spurious...
Andrew Dunstan [Sat, 15 Dec 2007 15:41:02 +0000 (15:41 +0000)]
Fix example archive_command for standalone backups so it doesn't return spurious non-zero.

16 years agoUse clearer error message for gmake postgres.pdf:
Bruce Momjian [Sat, 15 Dec 2007 10:28:21 +0000 (10:28 +0000)]
Use clearer error message for gmake postgres.pdf:

  Makefile:171: *** Invalid target;  use postgres-A4.pdf or postgres-US.pdf as targets.  Stop.

16 years agoImprove documentation about Julian dates; in particular, point out the
Tom Lane [Sat, 15 Dec 2007 01:18:34 +0000 (01:18 +0000)]
Improve documentation about Julian dates; in particular, point out the
difference between Julian and Gregorian reckoning of when JD 0 was.

16 years agoMake error message more accurate
Peter Eisentraut [Fri, 14 Dec 2007 14:11:02 +0000 (14:11 +0000)]
Make error message more accurate

16 years agoAdd default error rules for making postgres.pdf and postgres.ps,
Bruce Momjian [Fri, 14 Dec 2007 13:20:30 +0000 (13:20 +0000)]
Add default error rules for making postgres.pdf and postgres.ps,
suggesting proper target names.

16 years agoCorrect result type of convert_to, per Pavel Stehule.
Alvaro Herrera [Thu, 13 Dec 2007 13:22:05 +0000 (13:22 +0000)]
Correct result type of convert_to, per Pavel Stehule.

16 years agoClarify log messages
Peter Eisentraut [Thu, 13 Dec 2007 11:55:44 +0000 (11:55 +0000)]
Clarify log messages

16 years agoChange a couple of examples to say ALTER MAPPING instead of ADD MAPPING,
Tom Lane [Thu, 13 Dec 2007 06:32:47 +0000 (06:32 +0000)]
Change a couple of examples to say ALTER MAPPING instead of ADD MAPPING,
per Oleg.

16 years agoMark items needing updating for beta stamping.
Bruce Momjian [Thu, 13 Dec 2007 02:02:20 +0000 (02:02 +0000)]
Mark items needing updating for beta stamping.

16 years agoImprove the method of localizing column names and other fixed strings in
Tom Lane [Wed, 12 Dec 2007 21:41:47 +0000 (21:41 +0000)]
Improve the method of localizing column names and other fixed strings in
psql's \d commands and other uses of printQuery().  Previously we would pass
these strings through gettext() and then send them to the server as literals
in the SQL query.  But the code was not set up to handle doubling of quotes in
the strings, causing failure if a translation attempted to use the wrong kind
of quote marks, as indeed is now the case for (at least) the French
translation of \dFp.  Another hazard was that gettext() would translate to
whatever encoding was implied by the client's LC_CTYPE setting, which might be
different from the client_encoding setting, which would probably cause the
server to reject the query as mis-encoded.  The new arrangement is to send the
untranslated ASCII strings to the server, and do the translations inside
printQuery() after the query results come back.  Per report from Guillaume
Lelarge and subsequent discussion.