git.postgresql.org Git - postgresql.git/log
Robert Haas [Sat, 3 Jul 2010 02:57:46 +0000 (02:57 +0000)]
Additional cross-references to window functions documentation.
Erik Rijkers
Unbreak MSVC builds by removing copydir.c from list of libpgport files
Robert Haas [Fri, 2 Jul 2010 20:36:49 +0000 (20:36 +0000)]
Remove hstore % text[] operator; use slice() function instead.
David Wheeler, with one small correction by me.
Robert Haas [Fri, 2 Jul 2010 17:03:30 +0000 (17:03 +0000)]
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.
Issue 'mkdir' hint when replying CREATE TABLESPACE in recovery mode.
Per idea from Fujii Masao
Robert Haas [Thu, 1 Jul 2010 20:12:40 +0000 (20:12 +0000)]
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.
Tom Lane [Thu, 1 Jul 2010 15:52:52 +0000 (15:52 +0000)]
Get rid of some more stuff that duplicates c.h or port.h.
Remove port.h prototypes from pg_upgrade.h, per report from Robert Haas.
Robert Haas [Thu, 1 Jul 2010 14:10:21 +0000 (14:10 +0000)]
Allow ALTER TABLE .. SET TABLESPACE to be interrupted.
Backpatch to 8.0, where tablespaces were introduced.
Guillaume Lelarge
Update 9.0 release notes so streaming replication and hot standby is not
assumed to require continuous archiving.
Per report from Fujii Masao
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.
Correct missing/misspelled surname.
Document that /bin/true on Windows is implemented by 'REM'.
In documentation, use "lower case"/"upper case" consistently (use space
between words).
Document that shared_preload_libraries and local_preload_libraries
lowercase the library names, unless double-quoted.
Tom Lane [2010年6月29日 21:20:19 +0000 (21:20 +0000)]
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.
Add C comment about why synchronous_commit=off behavior can lose
committed transactions in a postmaster crash.
Message tuning
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.
Add note clarifying that XML fragments don't accept DTDs
per complaint from Craig Ringer
Fix doc double-wording in non-durable patch.
Report from Thom Brown
Add new Non-Durable Settings documentation section.
Document that synchronous_commit can lose transactions in a db crash,
not just a OS crash.
emode_for_corrupt_record shouldn't reduce LOG messages to WARNING.
In non-interactive sessions, WARNING sorts below LOG.
Add guidelines for formatting errcontext strings
Remove tab from SGML.
Tom Lane [2010年6月28日 02:07:02 +0000 (02:07 +0000)]
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.
Tom Lane [2010年6月27日 19:07:24 +0000 (19:07 +0000)]
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.
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.
Make AIX suggestions about disabling ipv6 more version-sensitive.
Chris Browne, based on a report from John Pierce.
Tom Lane [2010年6月25日 16:40:13 +0000 (16:40 +0000)]
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.
Fix log_temp_files docs and comments to say bytes not kilobytes.
stat(2) field st_size returns bytes not kilobytes.
Bug found during recent performance tuning for PostgreSQL user.
Some copy-editing of the Hot Standby documentation.
Thanks to Joshua Tolley for the review.
Further 9.0 release notes updates.
Josh Berkus
Add stray "else" that seems to have gone missing.
Mention that when alter rewrites a table, indexes are also rebuilt.
Add TCP keepalive support to libpq.
This adds four additional connection parameters to libpq: keepalives,
keepalives_idle, keepalives_count, and keepalives_interval.
keepalives default to on, per discussion, but can be turned off by
specifying keepalives=0. The remaining parameters, where supported,
can be used to adjust how often keepalives are sent and how many
can be lost before the connection is broken.
The immediate motivation for this patch is to make sure that
walreceiver will eventually notice if the master reboots without
closing the connection cleanly, but it should be helpful in other
cases as well.
Tollef Fog Heen, Fujii Masao, and me.
Add username designations to all pg_upgrade utility calls that support it.
Fix pg_upgrade's use of pg_ctl on Win32 to not send command and sever
output to the same file, because it is impossible.
Also set user name for pg_dumpall in pg_upgrade.
Update pg_ctl docs to explain server output behavior differences on
win32 and non-win32 platforms.
Updated expected-output file for hstore.
This is an oversight in my previous patch to deprecate => as an operator
name. Per buildfarm.
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.
Minor markup improvements for Hot Standby documentation.
In a PL/pgSQL "FOR cursor" statement, the statements executed in the loop
might close the cursor, rendering the Portal pointer to it invalid.
Closing the cursor in the middle of the loop is not a very sensible thing
to do, but we must handle it gracefully and throw an error instead of
crashing.
Tom Lane [2010年6月21日 00:14:48 +0000 (00:14 +0000)]
Fix mishandling of whole-row Vars referencing a view or sub-select.
If such a Var appeared within a nested sub-select, we failed to translate it
correctly during pullup of the view, because the recursive call to
replace_rte_variables_mutator was looking for the wrong sublevels_up value.
Bug was introduced during the addition of the PlaceHolderVar mechanism.
Per bug #5514 from Marcos Castedo.
Rename hstore => text[] operator to %
This is not yet in any released version, so we still have the option to
change the name. We may want to reserve the token => in a future release.
Tom Lane [2010年6月17日 17:44:40 +0000 (17:44 +0000)]
Clean up some randomness associated with trace_recovery_messages: don't
put the variable declaration in the middle of a bunch of externs,
and do use extern where it should be used.
Tom Lane [2010年6月17日 17:37:23 +0000 (17:37 +0000)]
Make RemoveOldXlogFiles's debug printout match style used elsewhere:
log and seg aren't an XLogRecPtr and shouldn't be printed like one.
Fujii Masao
Tom Lane [2010年6月17日 17:31:27 +0000 (17:31 +0000)]
Clean up pg_archivecleanup's error and logging output: put newlines in
sane places, make messages follow project's message style guidelines.
Also, avoid closedir(NULL).
Fujii Masao and Tom Lane
Tom Lane [2010年6月17日 17:03:57 +0000 (17:03 +0000)]
Add missing close brackets in old-style COPY syntax diagram.
Spotted by Evan Carroll.
Tom Lane [2010年6月17日 16:41:25 +0000 (16:41 +0000)]
Don't allow walsender to send WAL data until it's been safely fsync'd on the
master. Otherwise a subsequent crash could cause the master to lose WAL that
has already been applied on the slave, resulting in the slave being out of
sync and soon corrupt. Per recent discussion and an example from Robert Haas.
Fujii Masao
Tom Lane [2010年6月17日 16:03:30 +0000 (16:03 +0000)]
Fix typo, init => int, per KOIZUMI Satoru.
Document that receive location can rewind if replication restarts.
Fujii Masao, with some further wordsmithing by me.
Remove prototype of GetOldestWALSendPointer(), that is marked as NOT_USED.
Fix pg_upgrade to remove malloc(0) call.
Update doc description for 9.0 release note item:
Have <command>SELECT</> and <command>CREATE TABLE AS</> return
row counts to the client
9.0 release notes updates.
Josh Berkus
Remove perl symbol table additions for plperl functions, and mention of it
in the release notes, as it is not apparently providing anything useful.
Add notes that CREATE/DROP CONVERSION is similar to CREATE/DROP
TRANSLATION in the SQL standard.
Refactor sprintf calls with computed format strings into multiple calls with
constant format strings, so that the compiler can more easily check the
formats for correctness.
Fix storage of getopt() return, should be 'int', for pg_upgrade.
Steve Singer
Tom Lane [2010年6月15日 20:29:01 +0000 (20:29 +0000)]
Change the interpretation of the primary_key_attnums parameter of
dblink_build_sql_insert() and related functions. Now the column numbers
are treated as logical not physical column numbers. This will provide saner
behavior in the presence of dropped columns; furthermore, if we ever get
around to allowing rearrangement of logical column ordering, the original
definition would become nearly untenable from a usability standpoint.
Per recent discussion of dblink's handling of dropped columns.
Not back-patched for fear of breaking existing applications.
Clarify SELECT FOR UPDATE behavior in docs.
Remove hstore's text[] => text[] operator.
This is not yet in any released version, so we still have the option to
backtrack. Instead, document hstore(text[], text[]). Per discussion.
Tom Lane [2010年6月15日 19:04:15 +0000 (19:04 +0000)]
Fix dblink_build_sql_insert() and related functions to handle dropped
columns correctly. In passing, get rid of some dead logic in the
underlying get_sql_insert() etc functions --- there is no caller that
will pass null value-arrays to them.
Per bug report from Robert Voinea.
Document new 9.0 behavior of ANALYZE on inheritance hierarchies.
In particular, note that autovacuum does not yet understand that it might
need to vacuum inheritance parents as a result of changes to the child
tables.
Tom Lane [2010年6月15日 16:22:19 +0000 (16:22 +0000)]
Consolidate and improve checking of key-column-attnum arguments for
dblink_build_sql_insert() and related functions. In particular, be sure to
reject references to dropped and out-of-range column numbers. The numbers
are still interpreted as physical column numbers, though, for backward
compatibility.
This patch replaces Joe's patch of 2010年02月03日, which handled only some aspects
of the problem.
Unbreak MSVC builds for pg_archivecleanup by linking with libpgport
Add new GUC categories corresponding to sections in docs, and move
description for vacuum_defer_cleanup_age to the correct category.
Sections in postgresql.conf are also sorted in the same order with docs.
Per gripe by Fujii Masao, suggestion by Heikki Linnakangas, and patch by me.
Properly define pg_upgrade global variable, per bug report from Chris
Ruprecht on Mac (64 bit).
Tom Lane [2010年6月14日 20:49:33 +0000 (20:49 +0000)]
Rearrange dblink's dblink_build_sql_insert() and related routines to open and
lock the target relation just once per SQL function call. The original coding
obtained and released lock several times per call. Aside from saving a
not-insignificant number of cycles, this eliminates possible race conditions
if someone tries to modify the relation's schema concurrently. Also
centralize locking and permission-checking logic.
Problem noted while investigating a trouble report from Robert Voinea --- his
problem is still to be fixed, though.
Fix doc plperl doc with is -> are change.
Docs for pg_archivecleanup
Files for pg_archivecleanup
New contrib module for use as an archive_cleanup_command, or as a
standalone utility for removing files from archive.
Fix typo in Japanese translation for psql "Use \d+ to list them."
If a corrupt WAL record is received by streaming replication, disconnect
and retry. If the record is genuinely corrupt in the master database,
there's little hope of recovering, but it's better than simply retrying
to apply the corrupt WAL record in a tight loop without even trying to
retransmit it, which is what we used to do.
Fix misplaced modifier.
As suggested by Ian Barwick.
Fix typo.
Remove max_standby_delay message from ps display of recovery process
in waiting status. The parameter is not so interesting in ps display
because it is referable in postgresql.conf.
Fix ALTER LARGE OBJECT and GRANT ... ON LARGE OBJECT for large OIDs.
The previous coding failed for OIDs too large to be represented by
a signed integer.
Tom Lane [2010年6月12日 21:40:31 +0000 (21:40 +0000)]
postgres.txt should get cleaned by 'make clean'.
Update pg_upgrade C comment about cwd.
Add missing --use-existing --help mention from regression binary.
Jan Urba?ski
Remove lynx -stdin flag for postgres.text.
Have pg_upgrade create its output files in the current directory, rather
than in a subdirectory of the $HOME directory, or $TMP in Windows.
Add SGML Makefile rule for single-page text, postgres.txt.
Add space between after ">" in ">$@" in SGML Makefile, for clarity.
Add target to build HTML documentation as single page
Fix typo/bug, found by Clang compiler
Update Python version information
Add a regression test case for bug #5497
Tom Lane [2010年6月11日 23:58:24 +0000 (23:58 +0000)]
Add missing 'Z' letter to getopt_long call --- the newly added
--analyze-only switch did not work in its short form -Z.
Josh Berkus
Use "replication" as the database name when constructing a connection
string for a streaming replication connection. It's ignored by the
server, but allows libpq to pick up the password from .pgpass where
"replication" is specified as the database name.
Patch by Fujii Masao per Tom's suggestion, with some wording changes by me.
Update text of 9.0 release notes
Josh Berkus
Rename restartpoint_command to archive_cleanup_command.
Make TriggerFile variable static. It's not used outside xlog.c.
Fujii Masao
Return NULL instead of 0/0 in pg_last_xlog_receive_location() and
pg_last_xlog_replay_location(). Per Robert Haas's suggestion, after
Itagaki Takahiro pointed out an issue in the docs. Also, some wording
changes in the docs by me.
Tom Lane [2010年6月10日 04:05:01 +0000 (04:05 +0000)]
Fix quite-bogus handling of arrays in plpython datum-to-PyObject
conversion. Per bug #5497 from David Gardner.
Quote all string values in EXPLAIN (FORMAT YAML) output.
While my previous attempt seems to always produce valid YAML, it
doesn't always produce YAML that means what it appears to mean,
because of tokens like "0xa" and "true", which without quotes will
be interpreted as integer or Boolean literals. So, instead, just
quote everything that's not known to be a number, as we do for
JSON.
Dean Rasheed, with some changes to the comments by me.
Robert Haas [Wed, 9 Jun 2010 21:14:28 +0000 (21:14 +0000)]
Remove stray word from comment.
This is the main PostgreSQL git repository.
RSS
Atom