Commit Graph

8382 Commits

Author SHA1 Message Date
Tom Lane
23843d242f Don't use "cp -i" in the example WAL archive_command.
This is a dangerous example to provide because on machines with GNU cp,
it will silently do the wrong thing and risk archive corruption.  Worse,
during the 9.0 cycle somebody "improved" the discussion by removing the
warning that used to be there about that, and instead leaving the
impression that the command would work as desired on most Unixen.
It doesn't.  Try to rectify the damage by providing an example that is safe
most everywhere, and then noting that you can try cp -i if you want but
you'd better test that.

In back-patching this to all supported branches, I also added an example
command for Windows, which wasn't provided before 9.0.
2011-06-17 19:13:21 -04:00
Magnus Hagander
9c04b88996 Support silent mode for service registrations on win32
Using -s when registering a service will now suppress
the application eventlog entries stating that the service
is starting and started.

MauMau
2011-06-09 18:28:04 +02:00
Peter Eisentraut
302e4e6f3b Fix documentation of information_schema.element_types
The documentation of the columns collection_type_identifier and
dtd_identifier was wrong.  This effectively reverts commits
8e1ccad519 and
57352df66d and updates the name
array_type_identifier (the name in SQL:1999) to
collection_type_identifier.

closes bug #5926
2011-06-09 07:31:13 +03:00
Peter Eisentraut
28395db4ea ECPG documentation fixes
Marc Cousin
2011-06-04 22:53:16 +03:00
Tom Lane
ca76a3956c Protect GIST logic that assumes penalty values can't be negative.
Apparently sane-looking penalty code might return small negative values,
for example because of roundoff error.  This will confuse places like
gistchoose().  Prevent problems by clamping negative penalty values to
zero.  (Just to be really sure, I also made it force NaNs to zero.)
Back-patch to all supported branches.

Alexander Korotkov
2011-05-31 17:54:06 -04:00
Heikki Linnakangas
9c46b7a14d The arguments to pg_ctl kill are not optional - remove brackets in the docs.
Fujii Masao
2011-04-28 12:57:24 +03:00
Marc G. Fournier
0844f42d41 Tag 8.3.15. 2011-04-15 00:18:15 -03:00
Tom Lane
a330793001 Update release notes for releases 9.0.4, 8.4.8, 8.3.15, and 8.2.21. 2011-04-14 15:51:50 -04:00
Robert Haas
9951cf8461 Correct "characters" to "bytes" in createdb docs.
Susanne Ebrecht
2011-03-27 21:29:22 -04:00
Tom Lane
5b6c27a607 Improve user-defined-aggregates documentation.
On closer inspection, that two-element initcond value seems to have been
a little white lie to avoid explaining the full behavior of float8_accum.
But if people are going to expect the examples to be exactly correct,
I suppose we'd better explain.  Per comment from Thom Brown.
2011-03-23 16:57:37 -04:00
Tom Lane
03f957fe1d Fix ancient typo in user-defined-aggregates documentation.
The description of the initcond value for the built-in avg(float8)
aggregate has been wrong since it was written.  Noted by Disc Magnet.
2011-03-23 12:34:08 -04:00
Marc G. Fournier
5370e1a001 Tag 8.3.14 2011-01-27 22:24:47 -04:00
Tom Lane
da61f86011 Update release notes.
Security: CVE-2010-4015
2011-01-27 17:47:27 -05:00
Tom Lane
a84c4eee2f Update release notes for releases 9.0.3, 8.4.7, 8.3.14, and 8.2.20. 2011-01-27 16:10:08 -05:00
Magnus Hagander
b16a18491f Document unavailable parameters in some configurations
Add a note to user-facing parameters that can be removed completely
(and not just empty) by #ifdef's depending on build configuration.
2010-12-18 16:31:54 +01:00
Marc G. Fournier
887e57fe54 Tag 8.3.13. 2010-12-13 23:02:13 -04:00
Tom Lane
0037828a57 Update release notes for releases 9.0.2, 8.4.6, 8.3.13, 8.2.19, and 8.1.23. 2010-12-13 20:23:32 -05:00
Tom Lane
44dfc9cd71 Force default wal_sync_method to be fdatasync on Linux.
Recent versions of the Linux system header files cause xlogdefs.h to
believe that open_datasync should be the default sync method, whereas
formerly fdatasync was the default on Linux.  open_datasync is a bad
choice, first because it doesn't actually outperform fdatasync (in fact
the reverse), and second because we try to use O_DIRECT with it, causing
failures on certain filesystems (e.g., ext4 with data=journal option).
This part of the patch is largely per a proposal from Marti Raudsepp.
More extensive changes are likely to follow in HEAD, but this is as much
change as we want to back-patch.

Also clean up confusing code and incorrect documentation surrounding the
fsync_writethrough option.  Those changes shouldn't result in any actual
behavioral change, but I chose to back-patch them anyway to keep the
branches looking similar in this area.

In 9.0 and HEAD, also do some copy-editing on the WAL Reliability
documentation section.

Back-patch to all supported branches, since any of them might get used
on modern Linux versions.
2010-12-08 20:01:24 -05:00
Bruce Momjian
8a69187325 Add mention of using tools/fsync to test fsync methods. Restructure
recent wal_sync_method doc paragraph to be clearer.
2010-10-19 15:05:58 +00:00
Robert Haas
10a829dea8 Warn that views can be safely used to hide columns, but not rows. 2010-10-08 09:16:33 -04:00
Robert Haas
9cb2802139 Improve WAL reliability documentation, and add more cross-references to it.
In particular, we are now more explicit about the fact that you may need
wal_sync_method=fsync_writethrough for crash-safety on some platforms,
including MaxOS X.  There's also now an explicit caution against assuming
that the default setting of wal_sync_method is either crash-safe or best
for performance.
2010-10-07 12:22:12 -04:00
Marc G. Fournier
e32229adfa Tag 8.3.12 2010-10-01 10:36:12 -03:00
Tom Lane
3b4c327ca8 Use a separate interpreter for each calling SQL userid in plperl and pltcl.
There are numerous methods by which a Perl or Tcl function can subvert
the behavior of another such function executed later; for example, by
redefining standard functions or operators called by the target function.
If the target function is SECURITY DEFINER, or is called by such a
function, this means that any ordinary SQL user with Perl or Tcl language
usage rights can do essentially anything with the privileges of the target
function's owner.

To close this security hole, create a separate Perl or Tcl interpreter for
each SQL userid under which plperl or pltcl functions are executed within
a session.  However, all plperlu or pltclu functions run within a session
still share a single interpreter, since they all execute at the trust
level of a database superuser anyway.

Note: this change results in a functionality loss when libperl has been
built without the "multiplicity" option: it's no longer possible to call
plperl functions under different userids in one session, since such a
libperl can't support multiple interpreters in one process.  However, such
a libperl already failed to support concurrent use of plperl and plperlu,
so it's likely that few people use such versions with Postgres.

Security: CVE-2010-3433
2010-09-30 17:21:04 -04:00
Tom Lane
f7282fc962 Update release notes for releases 9.0.1, 8.4.5, 8.3.12, 8.2.18, 8.1.22,
8.0.26, and 7.4.30.
2010-09-30 14:27:41 -04:00
Tom Lane
95510b8ca6 Do some copy-editing on the Git usage docs. 2010-09-22 20:22:47 -04:00
Tom Lane
6e14a30184 Fix documentation gitignore for pre-9.0 doc build methods. 2010-09-22 18:26:21 -04:00
Magnus Hagander
c39a3813bd Remove anonymous cvs instructions, and replace them with instructions
for git. Change other references from cvs to git as well.
2010-09-22 20:10:36 +02:00
Magnus Hagander
5fff996347 Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:12 +02:00
Tom Lane
93a5ecc7df Remove obsolete remark that PQprepare() is more flexible than PREPARE.
Spotted by Dmitriy Igrishin.  Back-patch to 8.2, which is when the PREPARE
statement was improved to allow parameter types to be omitted.
2010-08-29 15:19:26 +00:00
Peter Eisentraut
4d20da794e Backpatch some blatant spelling mistakes 2010-08-17 04:49:32 +00:00
Robert Haas
38095bd06d Fix one more incorrect errno definition in the ECPG manual.
Again, back-patch all the way to 7.4.
2010-08-11 19:03:46 +00:00
Robert Haas
d6e900e5b2 Fix incorrect errno definitions in ECPG manual.
ecpgerrno.h hasn't materially changed since PostgreSQL 7.4, so this has
been wrong for a very long time.  Back-patch all the way.

Satoshi Nagayasu
2010-08-11 18:52:33 +00:00
Peter Eisentraut
5f836f9acb Fix indexterm spelling 2010-08-06 20:08:59 +00:00
Peter Eisentraut
3c93b54b93 Spelling fix 2010-07-27 18:55:44 +00:00
Peter Eisentraut
0aab3c0c8d Fix grammar
backpatched to 8.1
2010-07-26 20:29:35 +00:00
Tom Lane
b1a33e6719 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:21 +00:00
Robert Haas
8ce3f26fab Deprecate the use of => as an operator name.
In HEAD, emit a warning when an operator named => is defined.
In both HEAD and the backbranches (except in 8.2, where contrib
modules do not have documentation), document that hstore's text =>
text operator may be removed in a future release, and encourage the
use of the hstore(text, text) function instead.  This function only
exists in HEAD (previously, it was called tconvert), so backpatch
it back to 8.2, when hstore was added.  Per discussion.
2010-06-22 11:36:36 +00:00
Robert Haas
c261e08ef3 Fix longstanding typo in V1 calling conventions documentation.
Erik Rijkers
2010-05-16 03:56:19 +00:00
Tom Lane
0194b7f597 Improve documentation of pg_restore's -l and -L switches to point out their
interactions with filtering switches, such as -n and -t.  Per a complaint
from Russell Smith.
2010-05-15 18:11:19 +00:00
Marc G. Fournier
c70af4d2fc tag 8.3.11 2010-05-14 03:27:08 +00:00
Tom Lane
405f02b083 Update release notes with security issues.
Security: CVE-2010-1169, CVE-2010-1170
2010-05-13 21:27:15 +00:00
Tom Lane
36b4b365f7 Use an entity instead of non-ASCII letter. Thom Brown 2010-05-13 19:16:27 +00:00
Tom Lane
6a358de1f9 Prevent PL/Tcl from loading the "unknown" module from pltcl_modules unless
that is a regular table or view owned by a superuser.  This prevents a
trojan horse attack whereby any unprivileged SQL user could create such a
table and insert code into it that would then get executed in other users'
sessions whenever they call pltcl functions.

Worse yet, because the code was automatically loaded into both the "normal"
and "safe" interpreters at first use, the attacker could execute unrestricted
Tcl code in the "normal" interpreter without there being any pltclu functions
anywhere, or indeed anyone else using pltcl at all: installing pltcl is
sufficient to open the hole.  Change the initialization logic so that the
"unknown" code is only loaded into an interpreter when the interpreter is
first really used.  (That doesn't add any additional security in this
particular context, but it seems a prudent change, and anyway the former
behavior violated the principle of least astonishment.)

Security: CVE-2010-1170
2010-05-13 18:29:25 +00:00
Andrew Dunstan
58dd2648ea Abandon the use of Perl's Safe.pm to enforce restrictions in plperl, as it is
fundamentally insecure. Instead apply an opmask to the whole interpreter that
imposes restrictions on unsafe operations. These restrictions are much harder
to subvert than is Safe.pm, since there is no container to be broken out of.
Backported to release 7.4.

In releases 7.4, 8.0 and 8.1 this also includes the necessary backporting of
the two interpreters model for plperl and plperlu adopted in release 8.2.

In versions 8.0 and up, the use of Perl's POSIX module to undo its locale
mangling on Windows has become insecure with these changes, so it is
replaced by our own routine, which is also faster.

Nice side effects of the changes include that it is now possible to use perl's
"strict" pragma in a natural way in plperl, and that perl's $a and
$b variables now work as expected in sort routines, and that function
compilation is significantly faster.

Tim Bunce and Andrew Dunstan, with reviews from Alex Hunsaker and
Alexey Klyukin.

Security: CVE-2010-1169
2010-05-13 16:42:51 +00:00
Magnus Hagander
1f34a7207e Fix some spelling errors.
Thom Brown
2010-05-13 14:16:51 +00:00
Tom Lane
060973808c Preliminary release notes for releases 8.4.4, 8.3.11, 8.2.17, 8.1.21, 8.0.25,
7.4.29.
2010-05-12 23:27:36 +00:00
Heikki Linnakangas
7e23e15967 Fix incorrect parameter tag in docs, spotted by KOIZUMI Satoru. 2010-05-05 15:14:24 +00:00
Robert Haas
750503cea5 Provide better guidance for adjusting shared_buffers.
This change was previously committed to HEAD, but the consensus seems to be
in favor of back-patching it.  I'm only backpatching as far as 8.3.X, however,
because it's not clear to me to what degree this advice applies to older
branches, and in any case our first advice to anyone attempting to tune those
versions is likely to be "upgrade".
2010-04-19 00:00:22 +00:00
Peter Eisentraut
02915f614d IP port -> TCP port
backpatched to 8.1, where this first appeared
2010-04-15 20:47:06 +00:00
Magnus Hagander
62056d9685 Typo fixes.
Fujii Masao
2010-03-17 18:04:25 +00:00