Commit Graph

30202 Commits

Author SHA1 Message Date
Bruce Momjian 52783b212c Update pgindent testing instructions. 2010-07-06 19:18:19 +00:00
Tom Lane 8307b092b7 Still more third thoughts: when linking shared libraries, LDFLAGS probably
needs to appear before anything placed in SHLIB_LINK.  This is because
SHLIB_LINK is typically a subset of LIBS, and LIBS has to appear after
LDFLAGS on platforms that are sensitive to the relative order of -L and -l
switches.
2010-07-06 03:55:33 +00:00
Tom Lane 0a4ecfe77e Allow for LDFLAGS_SL already having a value in Makefile.aix.
Per buildfarm results.
2010-07-06 03:41:02 +00:00
Tom Lane f6af1435d9 Dept. of third thoughts: PG_LIBS may contain a -L switch, so it had better
stay in front of LDFLAGS.
2010-07-05 23:40:13 +00:00
Tom Lane bdf00543c2 Make sure LDFLAGS come before LIBS when linking contrib programs.
Solaris, at least, seems to be sensitive to the relative order of -L
and -l switches, so this is needed.  Per buildfarm results.
2010-07-05 23:30:50 +00:00
Tom Lane f9e9da6664 Fix a few single-file (MODULES, not MODULE_big) contrib makefiles that were
supposing that they should set SHLIB_LINK rather than LDFLAGS_SL.  Since these
don't go through Makefile.shlib that was a no-op on most platforms.  Also
regularize the few platform-specific Makefiles that did pay attention to
SHLIB_LINK: it seems that the real value of that is to pull in BE_DLLLIBS,
so do that instead.  Per buildfarm failures on cygwin.
2010-07-05 23:15:56 +00:00
Tom Lane 291a957745 Split the LDFLAGS make variable into two parts: LDFLAGS is now used for
linking both executables and shared libraries, and we add on LDFLAGS_EX when
linking executables or LDFLAGS_SL when linking shared libraries.  This
provides a significantly cleaner way of dealing with link-time switches than
the former behavior.  Also, make sure that the various platform-specific
%.so: %.o rules incorporate LDFLAGS and LDFLAGS_SL; most of them missed that
before.  (I did not add these variables for the platforms that invoke $(LD)
directly, however.  It's not clear if we can do that safely, since for the
most part we assume these variables use CC command-line syntax.)

Per gripe from Aaron Swenson and subsequent investigation.
2010-07-05 18:54:38 +00:00
Heikki Linnakangas eb81b6509f The previous fix in CVS HEAD and 8.4 for handling the case where a cursor
being used in a PL/pgSQL FOR loop is closed was inadequate, as Tom Lane
pointed out. The bug affects FOR statement variants too, because you can
close an implicitly created cursor too by guessing the "<unnamed portal X>"
name created for it.

To fix that, "pin" the portal to prevent it from being dropped while it's
being used in a PL/pgSQL FOR loop. Backpatch all the way to 7.4 which is
the oldest supported version.
2010-07-05 09:27:18 +00:00
Bruce Momjian 2330d9c147 Simplify test_fsync duration computation. 2010-07-04 13:42:51 +00:00
Bruce Momjian 7341a8cab2 Report test_fynsc times in tests per second, instead of total seconds. 2010-07-04 01:50:29 +00:00
Bruce Momjian a520b78f3e Remove SGML tab. 2010-07-03 22:52:25 +00:00
Tom Lane 8771634666 Don't set recoveryLastXTime when replaying a checkpoint --- that was a bogus
idea from the start since the variable is only meant to track commit/abort
events.  This patch reverts the logic around the variable to what it was in
8.4, except that the value is now kept in shared memory rather than a static
variable, so that it can be reported correctly by CreateRestartPoint (which is
executed in the bgwriter).
2010-07-03 22:15:45 +00:00
Tom Lane aceedd88f6 Make vacuum_defer_cleanup_age be PGC_SIGHUP level, since it's not sensible
to have different values in different processes of the primary server.
Also put it into the "Streaming Replication" GUC category; it doesn't belong
in "Standby Servers" because you use it on the master not the standby.
In passing also correct guc.c's idea of wal_keep_segments' category.
2010-07-03 21:23:58 +00:00
Tom Lane e76c1a0f4d Replace max_standby_delay with two parameters, max_standby_archive_delay and
max_standby_streaming_delay, and revise the implementation to avoid assuming
that timestamps found in WAL records can meaningfully be compared to clock
time on the standby server.  Instead, the delay limits are compared to the
elapsed time since we last obtained a new WAL segment from archive or since
we were last "caught up" to WAL data arriving via streaming replication.
This avoids problems with clock skew between primary and standby, as well
as other corner cases that the original coding would misbehave in, such
as the primary server having significant idle time between transactions.
Per my complaint some time ago and considerable ensuing discussion.

Do some desultory editing on the hot standby documentation, too.
2010-07-03 20:43:58 +00:00
Bruce Momjian e6a7416e28 Document more clearly on XML namespaces inside xpath function
Nikolay Samokhvalov
2010-07-03 17:21:48 +00:00
Bruce Momjian da254e3d16 Make pg_upgrade copyrights just 2010, not 2010-2010. 2010-07-03 16:33:15 +00:00
Bruce Momjian de255a6eb1 Add copyrights to pg_upgrade and pg_upgrade_tools files, per Tom. 2010-07-03 16:25:01 +00:00
Bruce Momjian ccbe0c14e6 Add CVS tags to pg_upgrade and pg_upgrade_support files, per request
from Tom.
2010-07-03 14:23:14 +00:00
Robert Haas b3b7d603fb Allow REASSIGNED OWNED to handle opclasses and opfamilies.
Backpatch to 8.3, which is as far back as we have opfamilies.
The opclass portion could probably be backpatched to 8.2, when
REASSIGN OWNED was added, but for now I have not done that.

Asko Tiidumaa, with minor adjustments by me.
2010-07-03 13:53:13 +00:00
Tom Lane 4b200a2769 Fix assorted misstatements and poor wording in the descriptions of the I/O
formats for geometric types.  Per bug #5536 from Jon Strait, and my own
testing.

Back-patch to all supported branches, since this doco has been wrong right
along -- we certainly haven't changed the I/O behavior of these types in
many years.
2010-07-03 04:03:06 +00:00
Robert Haas 276a8f4e99 Additional cross-references to window functions documentation.
Erik Rijkers
2010-07-03 02:57:46 +00:00
Andrew Dunstan 97301ab189 Unbreak MSVC builds by removing copydir.c from list of libpgport files 2010-07-02 23:25:27 +00:00
Robert Haas ce51747673 Remove hstore % text[] operator; use slice() function instead.
David Wheeler, with one small correction by me.
2010-07-02 20:36:49 +00:00
Robert Haas bb0fe9feb9 Move copydir.c from src/port to src/backend/storage/file
The previous commit to make copydir() interruptible prevented
postgres.exe from linking on MinGW and Cygwin, because on those
platforms libpgport_srv.a can't freely reference symbols defined
by the backend.  Since that code is already backend-specific anyway,
just move the whole file into the backend rather than adding further
kludges to deal with the symbols needed by CHECK_FOR_INTERRUPTS().

This probably needs some further cleanup, but this commit just moves
the file as-is, which should hopefully be enough to turn the
buildfarm green again.
2010-07-02 17:03:30 +00:00
Bruce Momjian 621cf14620 Issue 'mkdir' hint when replying CREATE TABLESPACE in recovery mode.
Per idea from Fujii Masao
2010-07-02 02:44:32 +00:00
Robert Haas 71d6d0750d Allow copydir() to be interrupted.
This makes ALTER DATABASE .. SET TABLESPACE and CREATE DATABASE more
sensitive to interrupts.  Backpatch to 8.4, where ALTER DATABASE .. SET
TABLESPACE was introduced.  We could go back further, but in the absence
of complaints about the CREATE DATABASE case it doesn't seem worth it.

Guillaume Lelarge, with a small correction by me.
2010-07-01 20:12:40 +00:00
Tom Lane 600fc1dc9d Get rid of some more stuff that duplicates c.h or port.h. 2010-07-01 15:52:52 +00:00
Bruce Momjian 14bd1c3d9e Remove port.h prototypes from pg_upgrade.h, per report from Robert Haas. 2010-07-01 14:37:53 +00:00
Robert Haas c6cf3060d6 Allow ALTER TABLE .. SET TABLESPACE to be interrupted.
Backpatch to 8.0, where tablespaces were introduced.

Guillaume Lelarge
2010-07-01 14:10:21 +00:00
Bruce Momjian c37e009678 Update 9.0 release notes so streaming replication and hot standby is not
assumed to require continuous archiving.

Per report from Fujii Masao
2010-07-01 02:33:21 +00:00
Heikki Linnakangas 350ab443be stringToNode() and deparse_expression_pretty() crash on invalid input,
but we have nevertheless exposed them to users via pg_get_expr(). It would
be too much maintenance effort to rigorously check the input, so put a hack
in place instead to restrict pg_get_expr() so that the argument must come
from one of the system catalog columns known to contain valid expressions.

Per report from Rushabh Lathia. Backpatch to 7.4 which is the oldest
supported version at the moment.
2010-06-30 18:10:23 +00:00
Andrew Dunstan 71a4d5c642 Correct missing/misspelled surname. 2010-06-30 14:25:24 +00:00
Bruce Momjian 67bc0b2b90 Document that /bin/true on Windows is implemented by 'REM'. 2010-06-30 02:43:10 +00:00
Bruce Momjian e1f8d97e49 In documentation, use "lower case"/"upper case" consistently (use space
between words).
2010-06-29 22:29:14 +00:00
Bruce Momjian 5016b69cf1 Document that shared_preload_libraries and local_preload_libraries
lowercase the library names, unless double-quoted.
2010-06-29 22:23:02 +00:00
Tom Lane 5dbf489868 Add compatibility note warning that plpgsql is now stricter about the column
datatypes of composite results, per gripe from Marcel Asio.  Some desultory
copy-editing of plpgsql-related sections of the release notes.
2010-06-29 21:20:19 +00:00
Bruce Momjian b57ddccf05 Add C comment about why synchronous_commit=off behavior can lose
committed transactions in a postmaster crash.
2010-06-29 18:44:58 +00:00
Peter Eisentraut 89474cc321 Message tuning 2010-06-29 04:12:47 +00:00
Peter Eisentraut a3401bea9c Use different function names for plpython3 handlers, to avoid clashes in
pg_pltemplate

This should have a catversion bump, but it's still being debated whether
it's worth it during beta.
2010-06-29 00:18:11 +00:00
Peter Eisentraut e849b49406 Add note clarifying that XML fragments don't accept DTDs
per complaint from Craig Ringer
2010-06-29 00:03:39 +00:00
Bruce Momjian 93c81c6831 Fix doc double-wording in non-durable patch.
Report from Thom Brown
2010-06-28 22:46:11 +00:00
Bruce Momjian c65f299894 Add new Non-Durable Settings documentation section.
Document that synchronous_commit can lose transactions in a db crash,
not just a OS crash.
2010-06-28 21:57:17 +00:00
Robert Haas 400916b6d7 emode_for_corrupt_record shouldn't reduce LOG messages to WARNING.
In non-interactive sessions, WARNING sorts below LOG.
2010-06-28 19:46:19 +00:00
Peter Eisentraut ee37fb57c0 Add guidelines for formatting errcontext strings 2010-06-28 17:48:26 +00:00
Bruce Momjian 7bfc0e5e79 Remove tab from SGML. 2010-06-28 12:30:32 +00:00
Tom Lane 04d9f4dab4 Improve pg_dump's checkSeek() function to verify the functioning of ftello
as well as fseeko, and to not assume that fseeko(fp, 0, SEEK_CUR) proves
anything.  Also improve some related comments.  Per my observation that
the SEEK_CUR test didn't actually work on some platforms, and subsequent
discussion with Robert Haas.

Back-patch to 8.4.  In earlier releases it's not that important whether
we get the hasSeek test right, but with parallel restore it matters.
2010-06-28 02:07:02 +00:00
Tom Lane b779ea8a9a Fix pg_restore so parallel restore doesn't fail when the input file doesn't
contain data offsets (which it won't, if pg_dump thought its output wasn't
seekable).  To do that, remove an unnecessarily aggressive error check, and
instead fail if we get to the end of the archive without finding the desired
data item.  Also improve the error message to be more specific about the
cause of the problem.  Per discussion of recent report from Igor Neyman.

Back-patch to 8.4 where parallel restore was introduced.
2010-06-27 19:07:24 +00:00
Robert Haas e351593922 Rewrite docs for new libpq keepalive parameters.
The revised documentation makes it more clear that these are client-side
parameters, rather than server side parameters.  It also puts the main
point of each parameter first, and consolidates the conditions under which
it might be ignored in a single list at the end.
2010-06-25 17:08:09 +00:00
Robert Haas 7c49bf9d5d Make AIX suggestions about disabling ipv6 more version-sensitive.
Chris Browne, based on a report from John Pierce.
2010-06-25 16:55:49 +00:00
Tom Lane 399da7d882 Fix thinko in tok_is_keyword(): it was looking at the wrong union variant
of YYSTYPE, and hence returning the wrong answer for cases where a plpgsql
"unreserved keyword" really does conflict with a variable name.  Obviously
I didn't test this enough :-(.  Per bug #5524 from Peter Gagarinov.
2010-06-25 16:40:13 +00:00