== PostgreSQL Weekly News - November 23 2008 == - Mailing list pgsql-announce

From David Fetter
Subject == PostgreSQL Weekly News - November 23 2008 ==
Date
Msg-id 20081124000252.GB13586@fetter.org
Whole thread Raw
List pgsql-announce
== PostgreSQL Weekly News - November 23 2008 ==

The first annual PGDay Argentina drew attendees from all over Latin
America, with lively talks.

Devrim GUNDUZ has published a new set of RPMs based on the Nov 18 2008
11:00 PM EEST CVS snapshot.
http://yum.pgsqlrpms.org/news-8.4devel-ready-for-testing.php

== PostgreSQL Jobs for November ==

http://archives.postgresql.org/pgsql-jobs/2008-11/threads.php

== PostgreSQL Local ==

PgDay Rio de la Plata is looking for sponsors.  Interested parties
should contact admin AT postgres-arg DOT org.

Dickson Guedes is looking for volunteers to help with a PgMeeting in
Florianópolis.  Write to guediz AT gmail DOT com if you want to help.

David Fetter will be speaking at PGDay Rio de la Plata Buenos Aires
November 22.
http://pgday.postgres-arg.org/

David Fetter will be speaking at OSDC Sydney December 3-5.
http://www.osdc.com.au/2008/index.html

FOSDEM 2009 will take place February 7-8 2009 in Brussels, Belgium.
PostgreSQL will share a booth with the BSD groups and have a developer
room.   Submit your 20-minute, 45 minute or lightning talks to
fosdem (at) postgresql (dot) org.

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

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

Teodor Sigaev committed:

- In pgsql/src/backend/utils/adt/tsvector_op.c, replace plain-memory
  ordered array by binary tree in ts_stat() function.  Performance is
  increased from 50% up to 10^3 times depending on data.

- In pgsql/src/backend/utils/adt/tsvector_op.c, fix compiler warning
  "res may be used uninitialized in this function".  Actually, it
  can't but some compilers are not smart enough.  Per Peter Eisentraut
  gripe.

Bruce Momjian committed:

- In pgsql/doc/src/sgml/high-availability.sgml, document that Bucardo
  is an example of multi-master replication with conflict resolution.

- In pgsql/doc/src/sgml/high-availability.sgml, add "Most Common
  Implementation" row to high availablity table so the table is less
  abstract.  Most common implementations were already mentioned in the
  text.

- Issue a proper error message when MD5 is attempted when
  db_user_namespace is enabled.  Also document this limitation.

Peter Eisentraut committed:

- Ident authentication over Unix-domain sockets on Solaris, using
  getpeerucred() function.  Author: Garick Hamlin.

- In pgsql/src/bin/psql/create_help.pl, change this script to Perl 5
  style.  Add support for multiple refnames.  Sort the output by
  command name.  This previously only worked by source file name,
  which doesn't always match the command name exactly.  And it
  certainly won't work for multiple refnames.

- In pgsql/doc/src/sgml/ref/select.sgml, add WITH as a refname to the
  SELECT reference page.  Now "\help WITH" works and there will be a
  separate WITH(7) man page.

- Add SQL:2008 TABLE command.

- Use relation_expr for TABLE command, requested by Tom Lane.

- Include the platform "FAQs" into the installation instructions.  I
  weeded out some really old information along the way.  FAQ_AIX needs
  separate consideration and will be dealt with later.

Magnus Hagander committed:

- In pgsql/src/test/thread/thread_test.c, add required include to
  build with cygwin.  Andrew Chernow

- Control client certificate requesting with the pg_hba option
  "clientcert" instead of just relying on the root certificate file to
  be present.

- Add support for using SSL client certificates to authenticate to the
  database (only for SSL connections, obviously).

- In pgsql/src/test/regress/pg_regress.c, silence compiler warning
  about ignored return value. Our comment already clearly stated that
  we are aware that we're ignoring it.

- In pgsql/src/pl/plpgsql/src/pl_exec.c, don't pass strings directly
  to errdetail() and errhint() - use %s to unescape them. Fixes a
  potential security issue (in as yet unreleased code).

- Make the enumvals column of pg_settings be text[] instead of just a
  comma separated string.

- In pgsql/doc/src/sgml/catalogs.sgml, docs update for enumvals patch.

- In pgsql/doc/src/sgml/config.sgml, document which GUC settings are
  enums and not strings, along with a short paragraph about what that
  means.

- Fix a few more format argument warnings.

Tom Lane committed:

- Some infrastructure changes for the upcoming auto-explain contrib
  module: Refactor explain.c slightly to export a convenient-to-use
  subroutine for printing EXPLAIN results.  Provide hooks for plugins
  to get control at ExecutorStart and ExecutorEnd as well as
  ExecutorRun.  Add some minimal support for tracking the total
  runtime of ExecutorRun.  This code won't actually do anything unless
  a plugin prods it to.  Change the API of the DefineCustomXXXVariable
  functions to allow nonzero "flags" to be specified for a custom GUC
  variable.  While at it, also make the "bootstrap" default value for
  custom GUCs be explicitly specified as a parameter to these
  functions.  This is to eliminate confusion over where the default
  comes from, as has been expressed in the past by some users of the
  custom-variable facility.  Refactor GUC code a bit to ensure that a
  custom variable gets initialized to something valid (like its
  default value) even if the placeholder value was invalid.

- In pgsql/src/backend/utils/misc/guc.c, fix define_custom_variable so
  that SUSET custom variables behave somewhat reasonably.  It's not
  perfect, but it beats the kluge proposed in the auto-explain
  patch...

- Add auto-explain contrib module for automatic logging of the plans
  of slow-running queries.  Takahiro Itagaki.

- Fix breakage of bitmap scan plan creation for special index
  operators such as LIKE.  I oversimplified this code when removing
  support for plan-time determination of index operator lossiness back
  in April --- I had thought create_bitmap_subplan could stop
  returning two separate lists of qual conditions, but it still must
  so that we can treat special operators correctly in
  create_bitmap_scan_plan.  Per report from Rushabh Lathia.

- In pgsql/doc/src/sgml/xaggr.sgml, note that the example aggregate
  array_accum is comparable to the now built-in array_agg.  Per
  suggestion from Robert Haas.

- In pgsql/doc/src/sgml/config.sgml, minor copy-editing.

- Switch the planner over to treating qualifications of a JOIN_SEMI
  join as though it is an inner rather than outer join type.  This
  essentially means that we don't bother to separate "pushed down"
  qual conditions from actual join quals at a semijoin plan node;
  which is okay because the restrictions of SQL syntax make it
  impossible to have a pushed-down qual that references the inner side
  of a semijoin.  This allows noticeably better optimization of
  IN/EXISTS cases than we had before, since the equivalence-class
  machinery can now use those quals.  Also fix a couple of other
  mistakes that had essentially disabled the ability to unique-ify the
  inner relation and then join it to just a subset of the left-hand
  relations.  An example case using the regression database is
  SELECT * from tenk1 a, tenk1 b where (a.unique1,b.unique2) in
  (select unique1,unique2 from tenk1 c); which is planned reasonably
  well by 8.3 and earlier but had been forcing a cartesian join of a/b
  in CVS HEAD.

- In pgsql/src/backend/postmaster/bgwriter.c, teach
  RequestCheckpoint() to wait and retry a few times if it can't signal
  the bgwriter immediately.  This covers the case where the bgwriter
  is still starting up, as seen in a recent buildfarm failure.  In
  future it might also assist with clean recovery after a bgwriter
  termination and restart --- right now the postmaster treats early
  bgwriter exit as a system crash, but that might not always be so.

Heikki Linnakangas committed:

- Rethink the way FSM truncation works. Instead of WAL-logging FSM
  truncations in FSM code, call FreeSpaceMapTruncateRel from
  smgr_redo.  To make that cleaner from modularity point of view, move
  the WAL-logging one level up to RelationTruncate, and move
  RelationTruncate and all the related WAL-logging to new
  src/backend/catalog/storage.c file.  Introduce new
  RelationCreateStorage and RelationDropStorage functions that are
  used instead of calling smgrcreate/smgrscheduleunlink directly. Move
  the pending rel deletion stuff from smgrcreate/smgrscheduleunlink to
  the new functions. This leaves smgr.c as a thin wrapper around md.c;
  all the transactional stuff is now in storage.c.  This will make it
  easier to add new forks with similar truncation logic, like the
  visibility map.

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Magnus Hagander sent in another revision of his patch to add a
clientcert option to pg_hba.conf.

Peter Eisentraut sent in a patch to redo xmlconcat() as a variadic
function.

Fujii Masao sent in another revision of his synchronous replication
patch.

ITAGAKI Takahiro sent in another revision of his auto_explain contrib
module.

Gregory Stark sent in another revision of his posix fadvise patch.

Marcus Kempe sent in a patch to add async notifications using dblink.

Magnus Hagander sent in three revisions of a patch to implement
wildcard SSL certificate matching in libpq.

Bruce Momjian sent in a patch to fix a bug wherein SSL callbacks are
not managed properly when other libraries are involved.

Martin Pihlak sent in another revision of his patch to implement an
SQL/MED compatible connection manager.

Heikki Linnakangas sent in another revision of his patch to add a
visibility map.

Euler Taveira de Oliveira sent in a patch to replace pg_autovacuum
with reloptions.

Ron Mayer sent in another revision of his patch to add interval style
to ECPG.

Alex Hunsaker sent in another revision of his SSL patch.


pgsql-announce by date:

Previous
From: Devrim GÜNDÜZ
Date:
Subject: New shapshot RPMs (Nov 18, 2008) are ready for testing
Next
From: Koichi Suzuki
Date:
Subject: Let's Postgres, new PostgreSQL resource portal site opened.