Skip to content

Wöchentlicher PostgreSQL Newsletter - 22. Februar 2009

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 22. Februar 2009 ==

Glückwünsche an Joshua Drake zum Erhalt seines Reisepasses. Jet Lags
sind zu erwarten!

== PostgreSQL Produkt Neuigkeiten ==

pgbouncer 1.3 erschienen.

== PostgreSQL Tipp der Woche ==

Nutze den pg_locks System View, kombiniert mit pg_stat_activity, um
aktuelle Anfragen zu finden die von Locks blockiert werden.

== PostgreSQL Jobs im Februar ==

== PostgreSQL Lokal ==

Ed Borasky wird über Datenvisualisierung vor der PDXPUG am 19. Februar
2009 von 19-21 Uhr in Portland sprechen.

PostgreSQL wird auf der SCALE vom 20. bis 22. Februar in Los Angeles
vertreten sein.

Andreas 'ads' Scherbaum wird einen Vortrag auf dem Perl Workshop 2009
am 25. Februar in Frankfurt am Main, Deutschland, halten.

Die Deutsche PostgreSQL User Gruppe wird einen Stand, 2 Vorträge und
einen Workshop auf den Chemnitzer Linuxtagen am 14. und 15. März 2009
haben. Mehr Informationen auf Deutsch hier:

PostgreSQL Conference U.S. wird einen PgDay auf dem Linuxfest Nordwest
am 25. und 26. April veranstalten. Der Call for Papers ist unter:

PGCon 2009 wird vom 21. bis 22. Mai 2009 in Ottawa an der Universität
von Ottawa stattfinden. Dem gehen zwei Tage mit Tutorials vom 19. bis
20. Mai 2009 voraus.

Termin vormerken: pgDay San Jose, am Sonntag dem 19. Juli unmittelbar
vor der OSCON. CfP und mehr Informationen bald.

PGCon Brasilien wird am 23.-24. Oktober 2009 auf dem Unicamp in
Campinas, Sao Paulo, stattfinden.

== PostgreSQL in den News ==

Planet PostgreSQL:

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David
Fetter und Josh Berkus.

Sende Neuigkeiten und Ankündigungen bis Sonntag, 15 Uhr Pazifischer
Zeit. Bitte sende englische Beiträge an, deutsche an, italienische an

== Angewandte 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/, add plpgsql_yyerror to gettext

- 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/, 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

- In pgsql/src/, 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

- 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

- 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

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte 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.


No Trackbacks


Display comments as Linear | Threaded

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.
Form options