== PostgreSQL Weekly News - February 22 2009 == - Mailing list pgsql-announce

From David Fetter
Subject == PostgreSQL Weekly News - February 22 2009 ==
Date
Msg-id 20090223032103.GB10307@fetter.org
Whole thread Raw
List pgsql-announce
== PostgreSQL Weekly News - February 22 2009 ==

Congratulations to Joshua Drake on the receipt of his passport.  Jet
lag awaits!

== PostgreSQL Product News ==

pgbouncer 1.3 released.
http://pgfoundry.org/projects/pgbouncer/

== PostgreSQL Tip of the Week ==

Use the pg_locks system view, combined with pg_stat_activity, to see
what current queries are being blocked by locks.

== PostgreSQL Jobs for February ==

http://archives.postgresql.org/pgsql-jobs/2009-02/threads.php

== PostgreSQL Local ==

Ed Borasky will be speaking about Data Visualization at PDXPUG on
February 19, 2009, 7-9pm in Portland.
http://calagator.org/events/1250456619

PostgreSQL will be at SCALE February 20-22, 2009 in Los Angeles.
http://www.socallinuxexpo.org/

Andreas 'ads' Scherbaum will be presenting a talk at Perl Workshop
2009 on February 25 in Frankfurt am Main, Germany.
http://www.perl-workshop.de/talks/151/view

The German PostgreSQL User Group will have a booth, 2 talks and a
workshop on the Linuxdays Chemnitz on March 14 and 15, 2009.  More
information in German here:
http://andreas.scherbaum.la/blog/archives/525-PostgreSQL-auf-den-Chemnitzer-Linuxtagen.html

PostgreSQL Conference, U.S. will be holding a PgDay at LinuxFest
Northwest (April 25/26th). The call for papers is out at
http://www.postgresqlconference.org/

PGCon 2009 will be held 21-22 May 2009, in Ottawa at the University of
Ottawa.  It will be preceded by two days of tutorials on 19-20 May
2009.
http://www.pgcon.org/2009/papers.php

Save The Date: pgDay San Jose.  Sunday, July 19th 2009 immediately
before OSCON.  CfP, more info TBA!

PGCon Brazil will be take place October 23-24 2009 at Unicamp in
Campinas, Sao Paulo state.

== PostgreSQL in the News ==

Planet PostgreSQL: http://planet.postgresql.org/

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 david@fetter.org, German language
to pwn@pgug.de, Italian language to pwn@itpug.org.

== Applied Patches ==

Bruce Momjian committed:

- In pgsql/src/bin/pg_dump/pg_dump.c, uppercase keywords.

- In pgsql/src/bin/pg_dump/pg_dump.c, wrap some long queries.

- Add pg_dump --binary-upgrade flag to be used by binary upgrade
  utilities.  The new code allows transfer of dropped column
  information to the upgraded server.

- In pgsql/src/bin/pg_dump/pg_dump.c, add missing newline.

- Have pg_dump/pg_dumpall --binary-upgrade restore frozenids for
  relations and databases.

- Add --freeze option to vacuumdb.

Peter Eisentraut committed:

- Remove gettext trigger write_stderr(), which isn't used by PLs.

- In pgsql/src/pl/plpgsql/src/plpgsql.h, redefine _() to dgettext()
  instead of gettext() so that it uses the plpgsql text domain,
  instead of the postgres one (or whatever the default may be).

- Mark 3rd argument of validate_tupdesc_compat() for translation,
  instead of marking up each instance separately.

- In pgsql/src/pl/plpgsql/src/nls.mk, add plpgsql_yyerror to gettext
  triggers.

- In pgsql/src/pl/plpgsql/src/scan.l, add _() calls for the argument
  of plpgsql_yyerror() so it actually gets translated somehow.

- Message wordsmithing

- In pgsql/src/pl/plperl/nls.mk, remove croak and Perl_croak from
  gettext triggers.  While we could selectively mark up their
  arguments for translation, the Perl xsubpp tool generates a bunch of
  additional Perl_croak calls that we cannot control, so we'd be
  creating a confusing mix of translated and untranslated messages of
  a similar kind.  This is something that might deserve a more
  comprehensive solution later.  Also remove _ from gettext triggers,
  because it wasn't used.  Use SPI.c instead of SPI.xs as source file
  for xgettext, because the .xs format isn't really supported in
  xgettext.

- In pgsql/src/Makefile.global.in, add an implicit rule %.c -> %.i for
  running the C preprocessor.  I occasionally use this for debugging,
  and it seems wasteful to have to reinvent this all the time.

- Wordsmithing for PL/Perl messages

- In pgsql/src/pl/plperl/plperl.c, another small message tweak.

Heikki Linnakangas committed:

- Start background writer during archive recovery. Background writer
  now performs its usual buffer cleaning duties during archive
  recovery, and it's responsible for performing restartpoints.  This
  requires some changes in postmaster. When the startup process has
  done all the initialization and is ready to start WAL redo, it
  signals the postmaster to launch the background writer. The
  postmaster is signaled again when the point in recovery is reached
  where we know that the database is in consistent state. Postmaster
  isn't interested in that at the moment, but that's the point where
  we could let other backends in to perform read-only queries. The
  postmaster is signaled third time when the recovery has ended, so
  that postmaster knows that it's safe to start accepting connections.
  The startup process now traps SIGTERM, and performs a "clean"
  shutdown. If you do a fast shutdown during recovery, a shutdown
  restartpoint is performed, like a shutdown checkpoint, and
  postmaster kills the processes cleanly. You still have to continue
  the recovery at next startup, though.  Currently, the background
  writer is only launched during archive recovery.  We could launch it
  during crash recovery as well, but it seems better to keep that
  codepath as simple as possible, for the sake of robustness. And it
  couldn't do any restartpoints during crash recovery anyway, so it
  wouldn't be that useful.  log_restartpoints is gone. Use
  log_checkpoints instead. This is yet to be documented.  This whole
  operation is a pre-requisite for Hot Standby, but has some value of
  its own whether the hot standby patch makes 8.4 or not.  Simon
  Riggs, with lots of modifications by me.

- In pgsql/src/include/storage/proc.h, increase NUM_AUXILIARY_PROCS,
  now that the startup process can co-exist with other auxiliary
  processes for a short period.  As witnessed by buildfarm member
  dungbeetle.

- In pgsql/src/backend/postmaster/postmaster.c, fix bogus comment,
  from the patch to start bgwriter during archive recovery.

Tom Lane committed:

- Remove the special cases to prevent minus-zero results in float4 and
  float8 unary minus operators.  We weren't attempting to prevent
  minus zero anywhere else; in view of our gradual trend to make the
  float datatypes more IEEE standard compliant, we should allow minus
  zero here rather than disallow it elsewhere.  We don't, however,
  expect that all platforms will produce minus zero, so we need to
  adjust the one affected regression test to allow both results.  Per
  discussion of bug #4660.  (In passing, clean up a couple other minor
  infelicities in float.c.)

- In pgsql/src/backend/optimizer/path/joinrels.c, improve comments
  about semijoin implementation strategy, per a question from Robert
  Haas.

- In pgsql/src/backend/optimizer/plan/initsplan.c, simplify
  overcomplicated (and overly restrictive) test to see whether an IS
  NULL condition is rendered redundant by detection of an antijoin.
  If we know that a join is an antijoin, then *any* Var coming out of
  its righthand side must be NULL, not only the joining column(s).
  Also, it's still gonna be null after being passed up through higher
  joins, whether they're outer joins or not.  I was misled by a faulty
  analogy to reduce_outer_joins() in the original coding.  But
  consider select * from a left join b on a.x = b.y where b.y is null
  and b.z is null; The first IS NULL condition justifies deciding that
  the join is an antijoin (if the = is strict) and then the second one
  is just plain redundant.

- In pgsql/doc/src/sgml/config.sgml, add note that inlined SQL
  functions aren't tracked by track_functions.

Andrew Dunstan committed:

- In pgsql/src/bin/pg_dump/pg_backup_archiver.c, reconnect to the
  right database when using parallel restore with -C.  Fixes bug
  reported by Olivier Prenant

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Teodor Sigaev sent in two variants of the GIN fast insert patch, then
a follow-up patch per feedback from Robert Haas.

Robert Haas sent in another revision of the patch to improve the
performance of multi-batchhash joins for skewed data sets.

Andrew Chernow sent in a patch which implements PQinitSecure in libpq
and a follow-up patch to fix a bug in the first one.

Heikki Linnakangas sent in a patch which makes the postmaster wait for
a startup process signal in particular before allowing general access.

ITAGAKI Takahiro sent in a patch to allow parse_bool* to take 'on' and
'off' as options.

KaiGai Kohei sent in another revision of his SE-PostgreSQL patches.

Adriano Lange sent in a patch to allow graph representation of
structures in the optimizer.


pgsql-announce by date:

Previous
From: David Fetter
Date:
Subject: == PostgreSQL Weekly News - February 15 2009 ==
Next
From: "Francisco Figueiredo Jr."
Date:
Subject: Npgsql 2.0.3 released!