== PostgreSQL Weekly News - July 01 2007 ==
PgDay.it starts this week. Speakers include Josh Berkus, Federico
Campoli, Paolo Cavallini, David Fetter and Enrico Pirozzi.
== PostgreSQL Product News ==
The ht://miner site now has an English version.
PostgreSQL Maestro 7.6 released.
SE-PostgreSQL 1.0 Beta released.
Slony-I 1.2.10 released.
== PostgreSQL Local ==
PDXPUG Day at OSCON is now soliciting for speakers. Thanks to the
generosity of O'Reilly, we will have a full day of PostgreSQL sessions
the day before OSCON (Sunday, July 22nd). Change your plane tickets
now and submit at talk!
Pgday.it in Prato, Tuscany, Italy on July 6 and 7. That's this week!.
Some Important URLs:
PGDay's web site: http://www.pgday.it/en/
Sponsorship campaign: http://www.pgday.it/en/sponsorizzazioni/come
How to get to Prato: http://www.pgday.it/en/logistica/raggiungere_prato
Accommodations in Prato: http://www.pgday.it/en/logistica/dove_dormire
PostgreSQL official T-shirts http://www.prato.linux.it/node/30
Key-signing Party: http://www.pgday.it/en/keysigning
== PostgreSQL in the News ==
Planet PostgreSQL: http://www.planetpostgresql.org/
General Bits, Archives and occasional new articles:
PostgreSQL Weekly News is brought to you this week by David Fetter
To get your submission into the upcoming issue, make sure it arrives
at david(at)fetter(dot)org or in German at pwn(at)pgug(dot)de by Sunday at 3:00pm
== Applied Patches ==
Bruce Momjian committed:
- Mark TODO as done: "Reduce checkpoint performance degredation by
forcing data to disk."
Neil Conway committed:
- A patch which makes \df+ tell whether a function is IMMUTABLE,
STABLE or VOLATILE.
Tom Lane committed:
- Reduce the maximum sleep interval in the autovac launcher to 1
second, so that it responds to SIGQUIT reasonably promptly even on
machines where SA_RESTART signals restart a sleep from scratch.
(This whole area could stand some rethinking, but for now make it
work like the other processes do.) Also some marginal stylistic
- Treat the autovac launcher more like a regular backend, in that we
wait for it to die before telling the bgwriter to initiate shutdown
checkpoint. Since it's connected to shared memory, this seems more
prudent than the alternative of letting it quit asynchronously.
Resolves my complaint of yesterday about repeated shutdown
checkpoints in CVS HEAD.
- Avoid memory leakage when a series of subtransactions invoke AFTER
triggers that are fired at end-of-statement (as is the normal case
for foreign keys, for example). In this situation the per-subxact
deferred trigger context is always empty when subtransaction exit is
reached; so we could free it, but were not doing so, leading to an
intratransaction leak of 8K or more per subtransaction. Per
off-list example from Viatcheslav Kalinin subsequent to bug #3418
(his original bug report omitted a foreign key constraint needed to
cause this leak). Back-patch to 8.2; prior versions were not using
per-subxact contexts for deferred triggers, so did not have this
- In pgsql/src/backend/storage/ipc/procarray.c, fix comments not
updated in recent patch.
- In pgsql/src/backend/postmaster/autovacuum.c, add 'volatile' to
suppress 'variable might be clobbered by longjmp' warning emitted by
some versions of gcc.
- Improve logging of checkpoints. Patch by Greg Smith, worked over by
Heikki Linnakangas and a little bit by me.
- Fix computation of PG_VERSION_NUM by configure: remove unnecessary
and unportable backslashes in awk script (per Patrick Welche), and
add brackets to prevent autoconf from mangling sed's regexp (the sed
call here never did what was expected).
- In pgsql/doc/src/sgml/backup.sgml, add a note that pg_start_backup
will take awhile because of new distributed checkpoint behavior.
Explain how to work around this by issuing a manual CHECKPOINT
command. Per discussion with Heikki Linnakangas.
- Fix a passel of ancient bugs in to_char(), including two distinct
buffer overruns (neither of which seem likely to be exploitable as
security holes, fortunately, since the provoker can't control the
data written). One of these is due to choosing to stomp on the
output of a called function, which is bad news in any case; make it
treat the called functions' results as read-only. Avoid some
unnecessary palloc/pfree traffic too; it's not really helpful to
free small temporary objects, and again this is presuming more than
it ought to about the nature of the results of called functions.
Per report from Patrick Welche and additional code-reading by Imad.
- Fix incorrect tests for undef Perl values in some places in
plperl.c. The correct test for defined-ness is SvOK(sv), not
anything involving SvTYPE. Per bug #3415 from Matt Taylor.
Back-patch as far as 8.0; no apparent problem in 7.x.
- Implement "distributed" checkpoints in which the checkpoint I/O is
spread over a fairly long period of time, rather than being spat out
in a burst. This happens only for background checkpoints carried
out by the bgwriter; other cases, such as a shutdown checkpoint, are
still done at full speed. Remove the "all buffers" scan in the
bgwriter, and associated stats infrastructure, since this seems no
longer very useful when the checkpoint itself is properly throttled.
Original patch by Itagaki Takahiro, reworked by Heikki Linnakangas,
and some minor API editorialization by me.
- Fix PGXS conventions so that extensions can be built against
Postgres installations whose pg_config program does not appear first
in the PATH. Per gripe from Eddie Stanley and subsequent
discussions with Fabien Coelho and others.
Magnus Hagander committed:
- Add notes about configuring Visual Studio Express for use with the
- Andrew Dunstan's patch which adds extra checks for buildfarm to pick
up errors when running on XP or earlier versions of Windows.
Alvaro Herrera committed:
- Avoid crash in interrupted autovacuum worker, caused by leaving the
current memory context pointing at a context not long lived enough.
Also, create a fake PortalContext where to store the vac_context, if
only to avoid having it be a top-level memory context.
- Arrange for SIGINT in autovacuum workers to cancel the current table
and continue with the schedule. Change current uses of SIGINT to
abort a worker into SIGTERM, which keeps the old behaviour of
terminating the process. Patch from ITAGAKI Takahiro, with some
editorializing of my own.
- Remove unused "caller" argument from stringToQualifiedNameList.
- Remove unused BAD_LOCATION definition.
- Improve autovacuum launcher's ability to detect a problem in worker
startup, by having the postmaster signal it when certain failures
occur. This requires the postmaster setting a flag in shared
memory, but should be as safe as the pmsignal.c code is. Also make
sure the launcher honor's a postgresql.conf change turning it off on
== Rejected Patches (for now) ==
Alvaro Herrera's patch to remove SIBackendInit's return value.
== Pending Patches ==
Zdenek Kotala sent in a patch reflecting New Zealand's new DST rules.
Gregory Stark sent in a patch to create reserved words for OLAP
ITAGAKI Takahiro sent in a bug fix for pgstat_drop_relation.
Pavan Deolasee sent in another version of his HOT patch.
Dave Page sent in a patch which fixes some bugs in pg_ctl on Windows.
Jacob Rief sent in a patch to make SPI-header-files safe for C++
Patrick Welche sent in a patch intended to address some issues with
using XML on OpenBSD.
Andrew Dunstan sent in two revisions of a patch intended to allow
logging to CSV files.
Heikki Linnakangas sent in a document update for pg_start_backup,
notifying people that it may now take longer to finish.
Kevin Grittner sent in two revisions of a document patch intended to
clarify how warm standby works.
Robert Treat sent in a patch to improve dblink's connection security.
David Fetter sent in a two revisions of a patch which implements ALTER
[VIEW | SEQUENCE] RENAME TO.
pgsql-announce by date
|Next:||From: Selena Deckelmann||Date: 2007-07-02 15:24:59|
|Subject: Fwd: [ANNOUNCE] PDXPUG Day at OSCON, July 22, Call for Papers|
|Previous:||From: Josh Berkus||Date: 2007-06-30 20:19:16|
|Subject: PDXPUG Day at OSCON, July 22, Call for Papers|