OSDN Git Service

pg-rex/syncrep.git
14 years agoAdd checks for valid encoding of query strings passed to SPI by plperl.
Andrew Dunstan [Tue, 9 Mar 2010 02:48:33 +0000 (02:48 +0000)]
Add checks for valid encoding of query strings passed to SPI by plperl.

14 years agoReturn proper exit code (3) from psql when ON_ERROR_STOP=on and
Bruce Momjian [Mon, 8 Mar 2010 23:03:00 +0000 (23:03 +0000)]
Return proper exit code (3) from psql when ON_ERROR_STOP=on and
--single-transaction are both used and the failure happens in commit,
e.g. failed deferred trigger.  Also properly free BEGIN/COMMIT result
structures from --single-transaction.

Per report from Dominic Bevacqua

14 years agoAdd missing space in example.
Magnus Hagander [Mon, 8 Mar 2010 12:38:37 +0000 (12:38 +0000)]
Add missing space in example.

Tim Landscheidt

14 years agoBetter test the content of the SQLSTATE string in ecpglib than the pointer.
Michael Meskes [Mon, 8 Mar 2010 12:15:24 +0000 (12:15 +0000)]
Better test the content of the SQLSTATE string in ecpglib than the pointer.

14 years agoRequire hostname to be set when using GSSAPI authentication. Without it,
Magnus Hagander [Mon, 8 Mar 2010 10:01:12 +0000 (10:01 +0000)]
Require hostname to be set when using GSSAPI authentication. Without it,
the GSSAPI libraries crash.

Noted by Zdenek Kotala

14 years agoDisallow gssapi authentication on local connections, since it
Magnus Hagander [Mon, 8 Mar 2010 09:57:26 +0000 (09:57 +0000)]
Disallow gssapi authentication on local connections, since it
requires a hostname to function.

Noted by Zdenek Kotala

14 years agoUpdate time zone data files to tzdata release 2010c: DST law changes in
Tom Lane [Mon, 8 Mar 2010 01:18:09 +0000 (01:18 +0000)]
Update time zone data files to tzdata release 2010c: DST law changes in
Bangladesh, Mexico, Paraguay.

14 years agoRevert patch for --psqlrc=FILENAME in psql.
Magnus Hagander [Sun, 7 Mar 2010 17:02:34 +0000 (17:02 +0000)]
Revert patch for --psqlrc=FILENAME in psql.

14 years agoFix warning messages in restrict_and_check_grant() to include the column name
Tom Lane [Sat, 6 Mar 2010 23:10:42 +0000 (23:10 +0000)]
Fix warning messages in restrict_and_check_grant() to include the column name
when warning about column-level privileges.  This is more useful than before
and makes the apparent duplication complained of by Piyush Newe not so
duplicate.  Also fix lack of quote marks in a related message text.

Back-patch to 8.4, where column-level privileges were introduced.

Stephen Frost

14 years agoAdd --psqlrc=FILENAME parameter to psql, to process an explicitly named
Magnus Hagander [Sat, 6 Mar 2010 15:28:09 +0000 (15:28 +0000)]
Add --psqlrc=FILENAME parameter to psql, to process an explicitly named
file instead of ~/.psqlrc on startup.

14 years agoWhen reading pg_hba.conf and similar files, do not treat @file as an inclusion
Tom Lane [Sat, 6 Mar 2010 00:45:49 +0000 (00:45 +0000)]
When reading pg_hba.conf and similar files, do not treat @file as an inclusion
unless (1) the @ isn't quoted and (2) the filename isn't empty.  This guards
against unexpectedly treating usernames or other strings in "flat files"
as inclusion requests, as seen in a recent trouble report from Ed L.
The empty-filename case would be guaranteed to misbehave anyway, because our
subsequent path-munging behavior results in trying to read the directory
containing the current input file.

I think this might finally explain the report at
http://archives.postgresql.org/pgsql-bugs/2004-05/msg00132.php
of a crash after printing "authentication file token too long, skipping",
since I was able to duplicate that message (though not a crash) on a
platform where stdio doesn't refuse to read directories.  We never got
far in investigating that problem, but now I'm suspicious that the trigger
condition was an @ in the flat password file.

Back-patch to all active branches since the problem can be demonstrated in all
branches except HEAD.  The test case, creating a user named "@", doesn't cause
a problem in HEAD since we got rid of the flat password file.  Nonetheless it
seems like a good idea to not consider quoted @ as a file inclusion spec,
so I changed HEAD too.

14 years agoIn case the connection magically disappears libecpg only returns an internal
Michael Meskes [Fri, 5 Mar 2010 13:57:09 +0000 (13:57 +0000)]
In case the connection magically disappears libecpg only returns an internal
error sqlstate. This change makes it return a correct value..

14 years agoFix IsBinaryCoercible to not confuse a cast using in/out functions
Heikki Linnakangas [Thu, 4 Mar 2010 09:39:53 +0000 (09:39 +0000)]
Fix IsBinaryCoercible to not confuse a cast using in/out functions
with binary compatibility.

Backpatch to 8.4 where INOUT casts were introduced.

14 years agoAdd C comment about DDL changes possibly causing pg_dump errors.
Bruce Momjian [Wed, 3 Mar 2010 23:38:44 +0000 (23:38 +0000)]
Add C comment about DDL changes possibly causing pg_dump errors.

14 years agoDocument that "Q" is ignored by to_date and to_timestamp. Add C comment
Bruce Momjian [Wed, 3 Mar 2010 22:28:42 +0000 (22:28 +0000)]
Document that "Q" is ignored by to_date and to_timestamp.  Add C comment
about the behavior.

Document that quotes in to_date, to_timestamp, to_number skip input
characters.

14 years agoFix a couple of places that would loop forever if attempts to read a stdio file
Tom Lane [Wed, 3 Mar 2010 20:31:09 +0000 (20:31 +0000)]
Fix a couple of places that would loop forever if attempts to read a stdio file
set ferror() but never set feof().  This is known to be the case for recent
glibc when trying to read a directory as a file, and might be true for other
platforms/cases too.  Per report from Ed L.  (There is more that we ought to
do about his report, but this is one easily identifiable issue.)

14 years agoFix pg_dump of ACLs of foreign servers. The command to grant/revoke
Heikki Linnakangas [Wed, 3 Mar 2010 20:10:48 +0000 (20:10 +0000)]
Fix pg_dump of ACLs of foreign servers. The command to grant/revoke
privileges of foreign servers is "GRANT ... ON *FOREIGN* SERVER ...".

14 years agoMake contrib/xml2 use core xml.c's error handler, when available (that is,
Tom Lane [Wed, 3 Mar 2010 19:10:22 +0000 (19:10 +0000)]
Make contrib/xml2 use core xml.c's error handler, when available (that is,
in versions >= 8.3).  The core code is more robust and efficient than what
was there before, and this also reduces risks involved in swapping different
libxml error handler settings.

Before 8.3, there is still some risk of problems if add-on modules such as
Perl invoke libxml without setting their own error handler.  Given the lack
of reports I'm not sure there's a risk in practice, so I didn't take the
step of actually duplicating the core code into older contrib/xml2 branches.
Instead I just tweaked the existing code to ensure it didn't leave a dangling
pointer to short-lived memory when throwing an error.

14 years agoExport xml.c's libxml-error-handling support so that contrib/xml2 can use it
Tom Lane [Wed, 3 Mar 2010 17:29:45 +0000 (17:29 +0000)]
Export xml.c's libxml-error-handling support so that contrib/xml2 can use it
too, instead of duplicating the functionality (badly).

I renamed xml_init to pg_xml_init, because the former seemed just a bit too
generic to be safe as a global symbol.  I considered likewise renaming
xml_ereport to pg_xml_ereport, but felt that the reference to ereport probably
made it sufficiently PG-centric already.

14 years agoMake iconv work like other optional libraries for MSVC.
Andrew Dunstan [Wed, 3 Mar 2010 03:29:37 +0000 (03:29 +0000)]
Make iconv work like other optional libraries for MSVC.

14 years agoFix SGML markup.
Bruce Momjian [Wed, 3 Mar 2010 03:23:12 +0000 (03:23 +0000)]
Fix SGML markup.

14 years agoRestructure CREATE FUNCTION "NOTES" section to be shorter; move items
Bruce Momjian [Wed, 3 Mar 2010 03:14:08 +0000 (03:14 +0000)]
Restructure CREATE FUNCTION "NOTES" section to be shorter;  move items
into proper sections, per suggestion from Tom.

14 years agoInstead of trying (and failing) to allow <<label>> at the end of a DECLARE
Tom Lane [Wed, 3 Mar 2010 01:53:17 +0000 (01:53 +0000)]
Instead of trying (and failing) to allow <<label>> at the end of a DECLARE
section, throw an error message saying explicitly that the label must go
before DECLARE.  Per investigation of a recent pgsql-novice question,
this code did not work as intended in any modern PG version, maybe not ever.
Allowing such a thing would only create ambiguity anyway, so it seems better
to remove it than fix it.

14 years agoAdjust max_standby_delay documentation to be clearer, and mention that
Bruce Momjian [Tue, 2 Mar 2010 23:38:17 +0000 (23:38 +0000)]
Adjust max_standby_delay documentation to be clearer, and mention that
two adjacent long-running queries have much less than max_standby_delay
before query cancel is possible.

14 years agoAdd missing library and include dir for XSLT in MSVC builds
Andrew Dunstan [Tue, 2 Mar 2010 22:02:31 +0000 (22:02 +0000)]
Add missing library and include dir for XSLT in MSVC builds

14 years agoDocument the effect of max_standby_delay on increasing the delay of data
Bruce Momjian [Tue, 2 Mar 2010 21:18:59 +0000 (21:18 +0000)]
Document the effect of max_standby_delay on increasing the delay of data
from master to slave, and discourage its use during slave/master
keep-xid-alive connections.

14 years agoUpdate keywords list for 9.0
Peter Eisentraut [Tue, 2 Mar 2010 20:40:48 +0000 (20:40 +0000)]
Update keywords list for 9.0

14 years agoDo not run regression tests for contrib/xml2 on MSVC unless building with XML
Andrew Dunstan [Tue, 2 Mar 2010 17:06:51 +0000 (17:06 +0000)]
Do not run regression tests for contrib/xml2 on MSVC unless building with XML

14 years agoCause plpgsql to throw an error if "INTO rowtype_var" is followed by a comma.
Tom Lane [Tue, 2 Mar 2010 16:14:39 +0000 (16:14 +0000)]
Cause plpgsql to throw an error if "INTO rowtype_var" is followed by a comma.
Per bug #5352, this helps to provide a useful error message if the user
tries to do something presently unsupported, namely use a rowtype variable
as a member of a multiple-item INTO list.

14 years agoAdd XSLT defines for MSVC builds
Andrew Dunstan [Tue, 2 Mar 2010 12:29:14 +0000 (12:29 +0000)]
Add XSLT defines for MSVC builds

14 years agoFix translation of strings in psql \d output (translation in headers worked,
Heikki Linnakangas [Mon, 1 Mar 2010 21:27:26 +0000 (21:27 +0000)]
Fix translation of strings in psql \d output (translation in headers worked,
but not in cells).

14 years agoFix numericlocale psql option when used with a null string and latex and troff
Heikki Linnakangas [Mon, 1 Mar 2010 20:55:45 +0000 (20:55 +0000)]
Fix numericlocale psql option when used with a null string and latex and troff
formats; a null string must not be formatted as a numeric. The more exotic
formats latex and troff also incorrectly formatted all strings as numerics
when numericlocale was on.

Backpatch to 8.1 where numericlocale option was added.

This fixes bug #5355 reported by Andy Lester.

14 years agoFix contrib/xml2 so regression test still works when it's built without libxslt.
Tom Lane [Mon, 1 Mar 2010 18:07:59 +0000 (18:07 +0000)]
Fix contrib/xml2 so regression test still works when it's built without libxslt.

This involves modifying the module to have a stable ABI, that is, the
xslt_process() function still exists even without libxslt.  It throws a
runtime error if called, but doesn't prevent executing the CREATE FUNCTION
call.  This is a good thing anyway to simplify cross-version upgrades.

14 years agoIt's clearly now pointless to do backwards compatible parsing of this,
Magnus Hagander [Mon, 1 Mar 2010 16:02:01 +0000 (16:02 +0000)]
It's clearly now pointless to do backwards compatible parsing of this,
since we released a version without it, so remove the comment that
says we might want to do that.

14 years agoBuildfarm still unhappy, so I'll bet it's EACCES not EPERM.
Tom Lane [Mon, 1 Mar 2010 14:54:00 +0000 (14:54 +0000)]
Buildfarm still unhappy, so I'll bet it's EACCES not EPERM.

14 years agoRemove xmlCleanupParser calls from contrib/xml2.
Tom Lane [Mon, 1 Mar 2010 05:16:35 +0000 (05:16 +0000)]
Remove xmlCleanupParser calls from contrib/xml2.

These are unnecessary and probably dangerous.  I don't see any immediate
risk situations in the core XML support or contrib/xml2 itself, but there
could be issues with external uses of libxml2, and in any case it's an
accident waiting to happen.

14 years agoadd EPERM to the list of return codes to expect from opening directories based on...
Greg Stark [Mon, 1 Mar 2010 00:04:06 +0000 (00:04 +0000)]
add EPERM to the list of return codes to expect from opening directories based on Vista results

14 years agoFix up memory management problems in contrib/xml2.
Tom Lane [Sun, 28 Feb 2010 21:31:57 +0000 (21:31 +0000)]
Fix up memory management problems in contrib/xml2.

Get rid of the code that attempted to funnel libxml2's memory allocations
into palloc.   We already knew from experience with the core xml datatype
that trying to do this is simply not reliable.  Unlike the core code, I
did not bother adding a lot of PG_TRY/PG_CATCH logic to try to ensure that
everything is cleaned up on error exit.  Hence, we might leak some memory
if one of these functions fails partway through.  Given the deprecated
status of this contrib module and the fact that errors partway through
the functions shouldn't be too common, it doesn't seem worth worrying about.

Also fix a separate bug in xpath_table, that it did the wrong things
if given a result tuple descriptor with less than 2 columns.  While
such a case isn't very useful in practice, we shouldn't fail or stomp
memory when it occurs.

Add some simple regression tests based on all the reported crash cases
that I have on hand.

This should be back-patched, but let's see if the buildfarm likes it first.

14 years agoSecond try at fsyncing directories in CREATE DATABASE. Let's see what the build farm...
Greg Stark [Sun, 28 Feb 2010 21:05:30 +0000 (21:05 +0000)]
Second try at fsyncing directories in CREATE DATABASE. Let's see what the build farm says of opening directories read-only and ignoring EBADF from fsync of directories

14 years agoAssorted code cleanup for contrib/xml2. No change in functionality,
Tom Lane [Sun, 28 Feb 2010 19:51:37 +0000 (19:51 +0000)]
Assorted code cleanup for contrib/xml2.  No change in functionality,
just make it a bit less ugly in places.

14 years agoUpdate complex locale example in the documentation.
Bruce Momjian [Sun, 28 Feb 2010 02:20:40 +0000 (02:20 +0000)]
Update complex locale example in the documentation.

14 years ago*** empty log message ***
Bruce Momjian [Sun, 28 Feb 2010 02:19:47 +0000 (02:19 +0000)]
*** empty log message ***

14 years agoMake sure ecpg uses the same header files in the same order as the backend.
Michael Meskes [Sat, 27 Feb 2010 21:56:16 +0000 (21:56 +0000)]
Make sure ecpg uses the same header files in the same order as the backend.

14 years agoInsert a hack into get_float8_nan (both core and ecpg copies) to deal with
Tom Lane [Sat, 27 Feb 2010 21:53:21 +0000 (21:53 +0000)]
Insert a hack into get_float8_nan (both core and ecpg copies) to deal with
the fact that NetBSD/mips is currently broken, as per buildfarm member pika.

Also add regression tests to ensure that get_float8_nan and get_float4_nan
are exercised even on platforms where they are not needed by
float8in/float4in.

Zoltán Böszörményi and Tom Lane

14 years agoBack out unintended change to pg_locale.c.
Bruce Momjian [Sat, 27 Feb 2010 20:20:44 +0000 (20:20 +0000)]
Back out unintended change to pg_locale.c.

14 years agoDocument ATAPI FLUSH CACHE EXT.
Bruce Momjian [Sat, 27 Feb 2010 20:16:17 +0000 (20:16 +0000)]
Document ATAPI FLUSH CACHE EXT.

14 years agoDocument trace_recovery_messages() parameter as an enum, not string.
Bruce Momjian [Sat, 27 Feb 2010 14:46:05 +0000 (14:46 +0000)]
Document trace_recovery_messages() parameter as an enum, not string.

Fujii Masao

14 years agoDocument max_standby_delay=-1 option, now that it's allowed again.
Heikki Linnakangas [Sat, 27 Feb 2010 09:29:20 +0000 (09:29 +0000)]
Document max_standby_delay=-1 option, now that it's allowed again.

14 years agoEntity-ify a few new uses of literal <, >, and &.
Tom Lane [Sat, 27 Feb 2010 04:29:44 +0000 (04:29 +0000)]
Entity-ify a few new uses of literal <, >, and &.

14 years agoUndo some more pgindent breakage. Per buildfarm.
Tom Lane [Sat, 27 Feb 2010 03:55:52 +0000 (03:55 +0000)]
Undo some more pgindent breakage.  Per buildfarm.

14 years agoUse <> for libpq #include in example programs, per suggestion from Josh Berkus.
Bruce Momjian [Sat, 27 Feb 2010 03:41:34 +0000 (03:41 +0000)]
Use <> for libpq #include in example programs, per suggestion from Josh Berkus.

14 years agoDocument ATAPI drive flush command, and mention SSD drives.
Bruce Momjian [Sat, 27 Feb 2010 01:39:46 +0000 (01:39 +0000)]
Document ATAPI drive flush command, and mention SSD drives.

14 years agoSuggest gmake installcheck-world for pgindent testing.
Bruce Momjian [Fri, 26 Feb 2010 18:00:15 +0000 (18:00 +0000)]
Suggest gmake installcheck-world for pgindent testing.

14 years agoRevert pgindent changes to ecpg include files that are part of ecpg
Bruce Momjian [Fri, 26 Feb 2010 17:07:55 +0000 (17:07 +0000)]
Revert pgindent changes to ecpg include files that are part of ecpg
regession test output, and update pgindent script to avoid them in the
future.

14 years agoWording improvements to README.
Bruce Momjian [Fri, 26 Feb 2010 15:57:34 +0000 (15:57 +0000)]
Wording improvements to README.

14 years agoUpdate pgindent docs to use maintainer-clean.
Bruce Momjian [Fri, 26 Feb 2010 15:42:36 +0000 (15:42 +0000)]
Update pgindent docs to use maintainer-clean.

14 years agoDocument why pgindent wants a fresh CVS checkout.
Bruce Momjian [Fri, 26 Feb 2010 13:50:34 +0000 (13:50 +0000)]
Document why pgindent wants a fresh CVS checkout.

14 years agoIn vacuumdb --help, call analyze "statistics", not "hints".
Bruce Momjian [Fri, 26 Feb 2010 04:14:36 +0000 (04:14 +0000)]
In vacuumdb --help, call analyze "statistics", not "hints".

14 years agoCall output file typedefs.list; update README.
Bruce Momjian [Fri, 26 Feb 2010 02:58:49 +0000 (02:58 +0000)]
Call output file typedefs.list;  update README.

14 years agoDocument pg_restore --jobs as a performance enhancement.
Bruce Momjian [Fri, 26 Feb 2010 02:31:52 +0000 (02:31 +0000)]
Document pg_restore --jobs as a performance enhancement.

14 years agoUpdate pgindent instructions.
Bruce Momjian [Fri, 26 Feb 2010 02:11:52 +0000 (02:11 +0000)]
Update pgindent instructions.

14 years agopgindent run for 9.0
Bruce Momjian [Fri, 26 Feb 2010 02:01:40 +0000 (02:01 +0000)]
pgindent run for 9.0

14 years agoAdd pgindent typedefs file to CVS.
Bruce Momjian [Fri, 26 Feb 2010 01:55:35 +0000 (01:55 +0000)]
Add pgindent typedefs file to CVS.

14 years agoUpdate pgindent instructions to avoid changes to flex output files.
Bruce Momjian [Fri, 26 Feb 2010 01:40:15 +0000 (01:40 +0000)]
Update pgindent instructions to avoid changes to flex output files.

14 years agoRemove 'emphasis' markup inside literal; not allowed.
Bruce Momjian [Fri, 26 Feb 2010 01:11:46 +0000 (01:11 +0000)]
Remove 'emphasis' markup inside literal;  not allowed.

14 years agoDocument that after triggers that need to see changed rows should not be
Bruce Momjian [Thu, 25 Feb 2010 22:24:00 +0000 (22:24 +0000)]
Document that after triggers that need to see changed rows should not be
marked stable.

14 years agoAllow predicate_refuted_by() to deduce that NOT A refutes A.
Tom Lane [Thu, 25 Feb 2010 20:59:53 +0000 (20:59 +0000)]
Allow predicate_refuted_by() to deduce that NOT A refutes A.

We had originally made the stronger assumption that NOT A refutes any B
if B implies A, but this fails in three-valued logic, because we need to
prove B is false not just that it's not true.  However the logic does
go through if B is equal to A.

Recognizing this limited case is enough to handle examples that arise when
we have simplified "bool_var = true" or "bool_var = false" to just "bool_var"
or "NOT bool_var".  If we had not done that simplification then the
btree-operator proof logic would have been able to prove that the expressions
were contradictory, but only for identical expressions being compared to the
constants; so handling identical A and B covers all the same cases.

The motivation for doing this is to avoid unexpected asymmetrical behavior
when a partitioned table uses a boolean partitioning column, as in today's
gripe from Dominik Sander.

Back-patch to 8.2, which is as far back as predicate_refuted_by attempts to
do anything at all with NOTs.

14 years agoDocument clearly the meaning of none/all for log_statements.
Bruce Momjian [Thu, 25 Feb 2010 19:20:38 +0000 (19:20 +0000)]
Document clearly the meaning of none/all for log_statements.

14 years agoAdd C comment that do_to_timestamp() lacks error checking.
Bruce Momjian [Thu, 25 Feb 2010 18:36:14 +0000 (18:36 +0000)]
Add C comment that do_to_timestamp() lacks error checking.

14 years agoClearly document that timestamp alone means timestamp without timezone,
Bruce Momjian [Thu, 25 Feb 2010 18:16:53 +0000 (18:16 +0000)]
Clearly document that timestamp alone means timestamp without timezone,
per SQL standard, and mention 7.3 behavior at the end.

14 years agoAdd configuration parameter ssl_renegotiation_limit to control
Magnus Hagander [Thu, 25 Feb 2010 13:26:16 +0000 (13:26 +0000)]
Add configuration parameter ssl_renegotiation_limit to control
how often we do SSL session key renegotiation. Can be set to
0 to disable renegotiation completely, which is required if
a broken SSL library is used (broken patches to CVE-2009-3555
a known cause) or when using a client library that can't do
renegotiation.

14 years agoFix typos, per Richard Huxton
Magnus Hagander [Thu, 25 Feb 2010 10:02:30 +0000 (10:02 +0000)]
Fix typos, per Richard Huxton

14 years agoClarify that the connection string for primary_conninfo is in the same
Heikki Linnakangas [Thu, 25 Feb 2010 09:32:19 +0000 (09:32 +0000)]
Clarify that the connection string for primary_conninfo is in the same
format as in PQconnectdb(). As pointed out by Thom Brown.

14 years agoFix typo.
Heikki Linnakangas [Thu, 25 Feb 2010 09:16:42 +0000 (09:16 +0000)]
Fix typo.

14 years agoSmall streaming replication document improvements. Be more explicit that
Heikki Linnakangas [Thu, 25 Feb 2010 08:57:47 +0000 (08:57 +0000)]
Small streaming replication document improvements. Be more explicit that
it's asynchronous.

14 years agoFix streaming replication starting at the very first WAL segment.
Heikki Linnakangas [Thu, 25 Feb 2010 07:31:40 +0000 (07:31 +0000)]
Fix streaming replication starting at the very first WAL segment.
Per complaint from Greg Stark.

14 years agoImprove warning about creating nested named subroutines in plperl.
Tom Lane [Thu, 25 Feb 2010 03:08:07 +0000 (03:08 +0000)]
Improve warning about creating nested named subroutines in plperl.
Per discussion.

14 years agoMake pg_stop_backup's reporting a bit more verbose in hopes of making
Tom Lane [Thu, 25 Feb 2010 02:17:50 +0000 (02:17 +0000)]
Make pg_stop_backup's reporting a bit more verbose in hopes of making
error cases less intimidating for novices.  Per discussion.

Greg Smith

14 years agoAllow zero-dimensional (ie, empty) arrays in contrib/ltree operations.
Tom Lane [Wed, 24 Feb 2010 18:02:24 +0000 (18:02 +0000)]
Allow zero-dimensional (ie, empty) arrays in contrib/ltree operations.

The main motivation for changing this is bug #4921, in which it's pointed out
that it's no longer safe to apply ltree operations to the result of
ARRAY(SELECT ...) if the sub-select might return no rows.  Before 8.3,
the ARRAY() construct would return NULL, which might or might not be helpful
but at least it wouldn't result in an error.  Now it returns an empty array
which results in a failure for no good reason, since the ltree operations
are all perfectly capable of dealing with zero-element arrays.

As far as I can find, these ltree functions are the only places where zero
array dimensionality is rejected unnecessarily.

Back-patch to 8.3 to prevent behavioral regression of queries that worked
in older releases.

14 years agoDocument that pg_restore -t can use -n for its schema qualification.
Bruce Momjian [Wed, 24 Feb 2010 16:27:40 +0000 (16:27 +0000)]
Document that pg_restore -t can use -n for its schema qualification.

14 years agoRevert removal of pre-7.4 documenation behavior mentions.
Bruce Momjian [Wed, 24 Feb 2010 15:54:31 +0000 (15:54 +0000)]
Revert removal of pre-7.4 documenation behavior mentions.

14 years agoRemove stray semicolon, per report from strk
Alvaro Herrera [Wed, 24 Feb 2010 14:10:24 +0000 (14:10 +0000)]
Remove stray semicolon, per report from strk

14 years agoRemove useless codes to initialize TupleDesc from dblink_exec.
Itagaki Takahiro [Wed, 24 Feb 2010 05:20:49 +0000 (05:20 +0000)]
Remove useless codes to initialize TupleDesc from dblink_exec.

14 years agoRemove pre-7.4 documentaiton mentions, now that 8.0 is the oldest
Bruce Momjian [Wed, 24 Feb 2010 03:33:49 +0000 (03:33 +0000)]
Remove pre-7.4 documentaiton mentions, now that 8.0 is the oldest
supported release.

14 years agoFix patch for printing backend and pg_dump versions so that it works in
Tom Lane [Wed, 24 Feb 2010 02:42:55 +0000 (02:42 +0000)]
Fix patch for printing backend and pg_dump versions so that it works in
a desirable fashion in archive-dump cases, ie you should get the pg_dump
version not the pg_restore version.

14 years agoUn-break pg_dump for the case of zero-column tables.
Tom Lane [Wed, 24 Feb 2010 02:15:58 +0000 (02:15 +0000)]
Un-break pg_dump for the case of zero-column tables.

This was evidently broken by the CREATE TABLE OF TYPE patch.  It would have
been noticed if anyone had bothered to try dumping and restoring the
regression database ...

14 years agoUse CREATE OR REPLACE LANGUAGE in pg_dump to avoid the need for a couple of
Tom Lane [Wed, 24 Feb 2010 01:57:16 +0000 (01:57 +0000)]
Use CREATE OR REPLACE LANGUAGE in pg_dump to avoid the need for a couple of
significantly uglier kluges that were working around the change in plpgsql's
preinstalled status.

14 years agoMake pg_regress use CREATE OR REPLACE LANGUAGE, so that --load-language
Tom Lane [Wed, 24 Feb 2010 01:35:14 +0000 (01:35 +0000)]
Make pg_regress use CREATE OR REPLACE LANGUAGE, so that --load-language
will work whether or not the specified language is preinstalled.  This
responds to some complaints about having to change test scripts because
plpgsql is preinstalled as of 9.0.

14 years agoAdd an OR REPLACE option to CREATE LANGUAGE.
Tom Lane [Tue, 23 Feb 2010 22:51:43 +0000 (22:51 +0000)]
Add an OR REPLACE option to CREATE LANGUAGE.

This operates in the same way as other CREATE OR REPLACE commands, ie,
it replaces everything but the ownership and ACL lists of an existing
entry, and requires the caller to have owner privileges for that entry.

While modifying an existing language has some use in development scenarios,
in typical usage all the "replaced" values come from pg_pltemplate so there
will be no actual change in the language definition.  The reason for adding
this is mainly to allow programs to ensure that a language exists without
triggering an error if it already does exist.

This commit just adds and documents the new option.  A followon patch
will use it to clean up some unpleasant cases in pg_dump and pg_regress.

14 years agoModify freebsd start script to just exit 0 with message.
Bruce Momjian [Tue, 23 Feb 2010 22:17:25 +0000 (22:17 +0000)]
Modify freebsd start script to just exit 0 with message.

14 years agoUpdate startup scripts for Linux and FreeBSD.
Bruce Momjian [Tue, 23 Feb 2010 22:15:35 +0000 (22:15 +0000)]
Update startup scripts for Linux and FreeBSD.

Kevin Grittner

14 years agoHave pg_dump (-v) verbose mode output the pg_dump and server versions in
Bruce Momjian [Tue, 23 Feb 2010 21:48:32 +0000 (21:48 +0000)]
Have pg_dump (-v) verbose mode output the pg_dump and server versions in
text output mode, like we do in custom output mode.

Jim Cox

14 years agoRevert recent COPY manual change about encoding; add mention of "server".
Bruce Momjian [Tue, 23 Feb 2010 21:38:35 +0000 (21:38 +0000)]
Revert recent COPY manual change about encoding; add mention of "server".

14 years agoFix configure's regexp for extracting the Perl version number from perl -v
Tom Lane [Tue, 23 Feb 2010 18:35:07 +0000 (18:35 +0000)]
Fix configure's regexp for extracting the Perl version number from perl -v
output.  Per bug #5339, Perl 5.11 has changed the format of that output
enough to break the previous coding.

Alex Hunsaker

14 years agoClarify statements about tar archive format.
Tom Lane [Tue, 23 Feb 2010 17:28:09 +0000 (17:28 +0000)]
Clarify statements about tar archive format.

14 years agoMinor style policing for error messages in pg_dump tar code. Notably, change
Tom Lane [Tue, 23 Feb 2010 16:55:22 +0000 (16:55 +0000)]
Minor style policing for error messages in pg_dump tar code.  Notably, change
"dumping data out of order is not supported" to "restoring data out of order
is not supported", because you get that error during pg_restore not pg_dump.
Also fix some comments that didn't look so good after being pgindented as
perhaps they did originally.

14 years agoRevert recent change of to_char('HH12') handling for intervals; instead
Bruce Momjian [Tue, 23 Feb 2010 16:14:26 +0000 (16:14 +0000)]
Revert recent change of to_char('HH12') handling for intervals;  instead
improve documentation, and add C comment.

14 years agoSecondary patch to fix interval to_char() for "HH" where hours >= 12.
Bruce Momjian [Tue, 23 Feb 2010 06:29:01 +0000 (06:29 +0000)]
Secondary patch to fix interval to_char() for "HH" where hours >= 12.

14 years agoSome platforms reject fsync() on files opened O_RDONLY.
Tom Lane [Tue, 23 Feb 2010 05:44:55 +0000 (05:44 +0000)]
Some platforms reject fsync() on files opened O_RDONLY.

14 years agoMake documentation more direct about the handling of COPY files based on
Bruce Momjian [Tue, 23 Feb 2010 05:17:33 +0000 (05:17 +0000)]
Make documentation more direct about the handling of COPY files based on
the client encoding.