Commit Graph

30213 Commits

Author SHA1 Message Date
Heikki Linnakangas c5bd8feac6 Adjust comment to reflect that we now have Hot Standby. Pointed out by
Robert Haas.
2010-05-27 00:38:39 +00:00
Bruce Momjian f495020ede Fix SGML markup 2010-05-26 23:55:51 +00:00
Tom Lane 1e6b654edc Improve SSL-related documentation. Explain how to deal with certificate
chains, do assorted wordsmithing.
2010-05-26 23:49:19 +00:00
Bruce Momjian 092c38a2a8 Document pgFouine and check_postgres as log analysis options. 2010-05-26 23:29:45 +00:00
Heikki Linnakangas fbcdff39bd Thinko in previous commit: ensure that MAX_SEND_SIZE is always greater
than XLOG_BLCKSZ, by defining it as 16 * XLOG_BLCKSZ rather than directly
as 128k bytes.
2010-05-26 22:34:49 +00:00
Heikki Linnakangas ea5516081d In walsender, don't sleep if there's outstanding WAL waiting to be sent,
otherwise we effectively rate-limit the streaming as pointed out by
Simon Riggs. Also, send the WAL in smaller chunks, to respond to signals
more promptly.
2010-05-26 22:21:33 +00:00
Tom Lane 4ed4b6c54e Rearrange libpq's SSL initialization to simplify it and make it handle some
additional cases correctly.  The original coding failed to load additional
(chain) certificates from the client cert file, meaning that indirectly signed
client certificates didn't work unless one hacked the server's root.crt file
to include intermediate CAs (not the desired approach).  Another problem was
that everything got loaded into the shared SSL_context object, which meant
that concurrent connections trying to use different sslcert settings could
well fail due to conflicting over the single available slot for a keyed
certificate.

To fix, get rid of the use of SSL_CTX_set_client_cert_cb(), which is
deprecated anyway in the OpenSSL documentation, and instead just
unconditionally load the client cert and private key during connection
initialization.  This lets us use SSL_CTX_use_certificate_chain_file(),
which does the right thing with additional certs, and is lots simpler than
the previous hacking about with BIO-level access.  A small disadvantage is
that we have to load the primary client cert a second time with
SSL_use_certificate_file, so that that one ends up in the correct slot
within the connection's SSL object where it can get paired with the key.
Given the other overhead of making an SSL connection, that doesn't seem
worth worrying about.

Per discussion ensuing from bug #5468.
2010-05-26 21:39:27 +00:00
Tom Lane 0d046a4d72 Fix bogus error message for SSL-cert authentication, due to lack of
a uaCert entry in auth_failed().  Put the switch entries into a sane
order, namely the one the enum is declared in.
2010-05-26 20:47:13 +00:00
Simon Riggs f9dbac9476 HS Defer buffer pin deadlock check until deadlock_timeout has expired.
During Hot Standby we need to check for buffer pin deadlocks when the
Startup process begins to wait, in case it never wakes up again. We
previously made the deadlock check immediately on the basis it was
cheap, though clearer thinking and prima facie evidence shows that
was too simple. Refactor existing code to make it easy to add in
deferral of deadlock check until deadlock_timeout allowing a good
reduction in deadlock checks since far few buffer pins are held for
that duration. It's worth doing anyway, though major goal is to
prevent further reports of context switching with high numbers of
users on occasional tests.
2010-05-26 19:52:52 +00:00
Robert Haas 5234a95245 Fix psql help: \da+ is same as \da, but \daS is not.
Noted by Stephen Frost.
2010-05-26 19:29:22 +00:00
Tom Lane af5be8bd40 The message style police pay a visit to hba.c. 2010-05-26 16:43:13 +00:00
Tom Lane b1993a6108 Minor editorialization for be-secure.c: fix comments and some formatting
infelicities.
2010-05-26 16:15:57 +00:00
Tom Lane c3bf3bf2aa Tell openssl to include the names of the root certs the server trusts in
requests for client certs.  This lets a client with a keystore select the
appropriate client certificate to send.  In particular, this is necessary
to get Java clients to work in all but the most trivial configurations.
Per discussion of bug #5468.

Craig Ringer
2010-05-26 15:52:37 +00:00
Robert Haas 615704af1e More fixes for shutdown during recovery.
1. If we receive a fast shutdown request while in the PM_STARTUP state,
process it just as we would in PM_RECOVERY, PM_HOT_STANDBY, or PM_RUN.
Without this change, an early fast shutdown followed by Hot Standby causes
the database to get stuck in a state where a shutdown is pending (so no new
connections are allowed) but the shutdown request is never processed unless
we end Hot Standby and enter normal running.

2. Avoid removing the backup label file when a smart or fast shutdown occurs
during recovery.  It makes sense to do this once we've reached normal running,
since we must be taking a backup which now won't be valid.  But during
recovery we must be recovering from a previously taken backup, and any backup
label file is needed to restart recovery from the right place.

Fujii Masao and Robert Haas
2010-05-26 12:32:41 +00:00
Tom Lane 20d629320b Add missing newlines to some SSL-related error messages. Noted while testing. 2010-05-25 22:03:27 +00:00
Tom Lane b486e7f382 Fix oversight in construction of sort/unique plans for UniquePaths.
If the original IN operator is cross-type, for example int8 = int4,
we need to use int4 < int4 to sort the inner data and int4 = int4
to unique-ify it.  We got the first part of that right, but tried to
use the original IN operator for the equality checks.  Per bug #5472
from Vlad Romascanu.

Backpatch to 8.4, where the bug was introduced by the patch that unified
SortClause and GroupClause.  I was able to take out a whole lot of on-the-fly
calls of get_equality_op_for_ordering_op(), but failed to realize that
I needed to put one back in right here :-(
2010-05-25 17:44:41 +00:00
Michael Meskes 29259531c7 Replace self written 'long long int' configure test by standard 'AC_TYPE_LONG_LONG_INT' macro call. 2010-05-25 17:28:20 +00:00
Bruce Momjian 9b6dba1193 Remove IMPLEMENTATION.jp file from pg_upgrade docs; still in pgFoundry
for pg_migrator, per suggestion from Magnus.
2010-05-25 16:53:24 +00:00
Bruce Momjian 02265f06b7 Update pg_upgrade IMPLEMENTATION doc file to match current 9.0 behavior. 2010-05-25 16:09:29 +00:00
Bruce Momjian 238d21d7d2 Modify pg_standby, pgbench, and pg_upgrade manual pages to be consistent
in their display of command-line options with other client applications.
2010-05-25 15:55:28 +00:00
Bruce Momjian 7ff79fa425 Add pg_upgrade docs about binary compatibility, per Robert Haas. 2010-05-25 14:50:56 +00:00
Michael Meskes 555a02f910 Added a configure test for "long long" datatypes. So far this is only used in ecpg and replaces the old test that was kind of hackish. 2010-05-25 14:32:55 +00:00
Bruce Momjian f4e9436026 Add Japanese Implementation file to CVS. 2010-05-25 02:56:36 +00:00
Bruce Momjian 7a74d70e71 Re-order pg_upgrade 'help' options to be alphabetical. 2010-05-25 02:55:58 +00:00
Bruce Momjian 6368682788 In pg_upgrade, test for datallowconn instead of hardcoding template0. 2010-05-24 19:52:33 +00:00
Bruce Momjian 4b9904a0f8 Update pg_upgrade docs to show options in alphabetical order, and
improve 8.3 doc limitations paragraph.
2010-05-24 17:43:39 +00:00
Bruce Momjian 00be75415c Split apart pg_upgrade user lookup and root check so '--help' shows
proper default username.
2010-05-24 16:34:35 +00:00
Tom Lane add8044778 issue_warnings() has no business freeing its parameter, especially not when
its sole caller does that too.  Jan Matousek, via Pavel Stehule
2010-05-23 16:54:13 +00:00
Tom Lane 7df4cf7fd3 Fix oversight in join removal patch: we have to delete the removed relation
from SpecialJoinInfo relid sets as well.  Per example from Vaclav Novotny.
2010-05-23 16:34:38 +00:00
Robert Haas c8518845de Unbreak \h; can't do strlen(NULL).
This was broken by the following commmit.  Although the original commit was
backpatched all the way to 7.4, this particular bug exists only in the version
applied to HEAD.

http://archives.postgresql.org/pgsql-committers/2010-05/msg00058.php
2010-05-21 17:37:44 +00:00
Michael Meskes 15ab0e9a60 Ecpg now accepts "long long" datatypes even if "long" is 64bit wide. This used to cover the equally long "long long" type. This patch closes bug #5464. 2010-05-20 22:10:46 +00:00
Tom Lane de98ef62c7 Fix index entry for lo_compat_privileges, per bug #5467 from KOIZUMI Satoru. 2010-05-20 20:32:27 +00:00
Magnus Hagander ef01b235f8 Change the "N. Central Asia Standard Time" timezone to map to
Asia/Novosibirsk on Windows.

Microsoft changed the behaviour of this zone in the timezone update
from KB976098. The zones differ in handling of DST, and the old
zone was just removed.

Noted by Dmitry Funk
2010-05-20 14:13:11 +00:00
Bruce Momjian 47671aae77 Show oid2name command-line arguments in documentation like we do for
non-contrib command-line tools (no longer in a single table display).
2010-05-20 03:45:38 +00:00
Bruce Momjian 9974a46004 SGML markup cleanup for pg_upgrade. 2010-05-19 20:47:18 +00:00
Bruce Momjian 5add506838 Doc change: Rename of directory no longer required for pg_migrator 9.0.
Alvaro
2010-05-19 20:40:33 +00:00
Bruce Momjian 5eae7e1756 pg_upgrade doc cleanup
Stefan Kaltenbrunner
2010-05-19 20:37:03 +00:00
Bruce Momjian 2963d82281 Restore oid2name doc change. 2010-05-19 20:22:05 +00:00
Bruce Momjian 67fd5f3c85 Add command-line documentation for pg_upgrade. 2010-05-19 20:20:38 +00:00
Bruce Momjian 3245bd5240 Simplify pg_upgrade queries by using IN instead of multiple OR clauses
comparing the same column to multiple values.
2010-05-19 18:56:47 +00:00
Bruce Momjian 573e446f6f For pg_upgrade, update template0's datfrozenxid and its relfrozenxids to
match the behavior of autovacuum, which does this as the xid advances
even if autovacuum is turned off.
2010-05-19 18:27:43 +00:00
Magnus Hagander 3ef9574102 Refer to pg_ident.conf as config file for username mapping, as it's
now used for other things than just ident authentication.

Noted by Stephen Frost
2010-05-18 19:05:17 +00:00
Bruce Momjian 64719a18db Use a 'datallowconn' check for avoiding 'template0', rather than
hardcoding a 'template0' check, per suggestion from Alvaro.

This might fix a problem where someone has allowed 'template0'
connections, but it is a cleaner approach even if doesn't fix the
bug.
2010-05-18 18:40:51 +00:00
Magnus Hagander 60e7f45966 Make pg_upgrade documentation refer to 9.0 instead of 8.4.
Fujii Masao
2010-05-18 15:41:36 +00:00
Andrew Dunstan 2627d5bd0d Fix regression tests to match error message change 2010-05-18 03:35:34 +00:00
Bruce Momjian 37953b2d20 Add pg_upgrade TESTING files explaining a testing method. 2010-05-18 03:26:12 +00:00
Robert Haas 11f2efd12a Move pg_notify() details to a subsection within the NOTIFY reference page.
This allows the index to reference the pg_notify() subsection specifically,
rather than Notes section of the NOTIFY reference page more generally.

Fujii Masao
2010-05-18 02:28:53 +00:00
Alvaro Herrera 91e01e21a2 Make table in example less wide. 2010-05-17 20:50:44 +00:00
Andrew Dunstan a6eeb8c10d Follow up a visit from the style police. 2010-05-17 19:43:04 +00:00
Andrew Dunstan 99ad9236bc Clarify plperl subroutine name release notes item, remove now redundant Safe.pm item. 2010-05-17 17:46:13 +00:00