PostgreSQL Weekly News – June 27 2010

== PostgreSQL Weekly News – June 27 2010 ==

PostgreSQL is looking for quotes for the 9.0 release. If you are
excited about one or more 9.0 features, and represent a company, NGO
or government, please send your quote about 9.0 to

PGXN, the PostgreSQL Extension Network, modelled on CPAN, has begun.

== PostgreSQL Product News ==

Slony-I 2.0.4, a master-to-multiple-cascading-replica system for
PostgreSQL, released.

Benetl 3.5, an ETL tool for files using PostgreSQL, released.

Muldis-D 0.130.0, a specification for an object-relational language
intended to run atop, among other systems, PostgreSQL, released.

== PostgreSQL 9.0 Feature of the Week ==

== PostgreSQL Tip of the Week ==

== PostgreSQL Jobs for June ==

== PostgreSQL Local ==

CHAR(10), the PostgreSQL Conference on Clustering, High Availability
and Replication is now open for online registration and bookings.
July 2-3 2010, Oriel College, Oxford University, UK

PDXPUG Day will be July 18, 2010 at the Oregon Convention Center in
Portland, OR. For more information, see:

OSCON will take place in Portland, Oregon July 19-23, 2010.

FrOSCon 2010 will take place in St. Augustin, Germany on August 21-22,
2010. The German PostgreSQL User Group got his own devroom and is=20
looking for talks. More info:

== PostgreSQL in the News ==

Planet PostgreSQL:

PostgreSQL Weekly News is brought to you this week by David Fetter
and Josh Berkus.

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to, German language
to, Italian language to Spanish language

== Applied Patches ==

Heikki Linnakangas committed:

– In pgsql/src/pl/plpgsql/src/pl_exec.c, 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

Robert Haas committed:

– Minor markup improvements for Hot Standby documentation.

– 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.

– In pgsql/contrib/hstore/expected/hstore.out, updated expected-output
file for hstore. This is an oversight in my previous patch to
deprecate => as an operator name. Per buildfarm.

– 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.

– In pgsql/src/backend/postmaster/postmaster.c, add stray “else” that
seems to have gone missing.

– In pgsql/doc/src/sgml/release-9.0.sgml, further 9.0 release notes
updates. Josh Berkus.

– In pgsql/doc/src/sgml/high-availability.sgml, some copy-editing of
the Hot Standby documentation. Thanks to Joshua Tolley for the

– In pgsql/doc/src/sgml/installation.sgml, make AIX suggestions about
disabling ipv6 more version-sensitive. Chris Browne, based on a
report from John Pierce.

– In pgsql/doc/src/sgml/libpq.sgml, 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.

Bruce Momjian committed:

– In pgsql/doc/src/sgml/ref/pg_ctl-ref.sgml, update pg_ctl docs to
explain server output behavior differences on win32 and non-win32

– 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.

– Add username designations to all pg_upgrade utility calls that
support it.

– In pgsql/doc/src/sgml/ref/alter_table.sgml, mention that when alter
rewrites a table, indexes are also rebuilt.

Simon Riggs committed:

– 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.

Tom Lane committed:

– 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.

– In pgsql/src/bin/pg_dump/pg_backup_custom.c, 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.

== Rejected Patches (for now) ==

No one was disappointed this week 🙂

== Pending Patches ==

Guillaume Lelarge sent in a patch to add a CHECK_FOR_INTERRUPTS call
to the copy_relation_data(), copy_dir(), and copy_file() functions,
which fixes an issue where cancelling ALTER TABLE … SET TABLESPACE

Heikki Linnakangas sent in a patch to fix an issue where the server
would crash while trying to read an expression using pg_get_expr().

Andrew Dunstan sent in a WIP patch to make ENUMs alterable.

Kevin Grittner sent in a cleaned-up version of the patch to allow
dividing money by money.

Peter Eisentraut sent in a patch to make PostgreSQL compile under

Peter Eisentraut sent in another revision of the patch which allows
ommission of non-aggregate columns in certain situations in GROUP BY.

Pavel Baros sent in a patch to implement materialized views.

Robert Haas sent in a patch to simplify emode_for_corrupt_record.

Mark Fowler sent in another revision of the patch to add an
xpath_exists function.

Mark Fowler sent in another revision of the patch to add XMLEXISTS to
the grammar.

Robert Haas sent in a patch to allow suppressing crash recovery after
a crash, per discussion on -performance about a volatile version of

Comments are closed.