Thread: == PostgreSQL Weekly News - October 18 2009 ==

== PostgreSQL Weekly News - October 18 2009 ==

From
David Fetter
Date:
== PostgreSQL Weekly News - October 18 2009 ==

Commitfest 2009-09 is now over.  You can all start working on your own
patches now :)

PostgreSQL Conference (JDCon) West closed out today.  Thanks to all
the wonderful people in Seattle for making it a success.

== PostgreSQL Product News ==

PWN Translator 3.0, a translation script for the PostgreSQL Weekly
News, released.
http://pgfoundry.org/projects/pwn-translation/

Benetl 3.2, an ETL tool for files using PostgreSQL, released.
http://www.benetl.net

Bucardo 4.3.0, a replication system with dual-master capability, released.
http://bucardo.org/wiki/Bucardo

== PostgreSQL Jobs for October ==

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

== PostgreSQL Local ==

PGCon Brazil will be take place October 23-24 2009 at Unicamp in
Campinas, Sao Paulo state.  Registration open!
http://pgcon.postgresql.org.br/2009/

Federico Campoli will be presenting a PostgreSQL talk at GULP (Linux
Day Pisa) on October 24, 2009.  Information in Italian below:
http://linuxday2009.gulp.linux.it/

PGDay.EU 2009 will be at Telecom ParisTech in Paris, France on
November 6-7, 2009.  Registration is open.
http://www.pgday.eu/

OpenSQL Camp in Portland is looking for sponsors.  Make your travel plans now! :)
http://www.chesnok.com/daily/2009/07/29/opensql-camp-comes-to-portland-november-14-15-2009/

JPUG 10th Anniversary Conference is November 20-21, 2009 in Tokyo, Japan.
http://archives.postgresql.org/pgsql-announce/2009-05/msg00018.php

FOSDEM 2010 will be in Brussels, Belgium on February 6-7, 2010.
http://www.fosdem.org/

Chemnitzer Linuxtage will be in Chemnitz, Germany on March 13-14, 2010.
http://chemnitzer.linux-tage.de/

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

Tom Lane committed:

- Move the handling of SELECT FOR UPDATE locking and rechecking out of
  execMain.c and into a new plan node type LockRows.  Like the recent
  change to put table updating into a ModifyTable plan node, this
  increases planning flexibility by allowing the operations to occur
  below the top level of the plan tree.  It's necessary in any case to
  restore the previous behavior of having FOR UPDATE locking occur
  before ModifyTable does.  This partially refactors EvalPlanQual to
  allow multiple rows-under-test to be inserted into the EPQ machinery
  before starting an EPQ test query.  That isn't sufficient to fix
  EPQ's general bogosity in the face of plans that return multiple
  rows per test row, though.  Since this patch is mostly about getting
  some plan node infrastructure in place and not about fixing
  ten-year-old bugs, I will leave EPQ improvements for another day.
  Another behavioral change that we could now think about is doing FOR
  UPDATE before LIMIT, but that too seems like it should be treated as
  a followon patch.

- Support GRANT/REVOKE ON ALL TABLES/SEQUENCES/FUNCTIONS IN SCHEMA.
  Petr Jelinek

- Use plurals (TABLES, FUNCTIONS, etc) in ALTER DEFAULT PRIVILEGES.
  We have the keywords as a consequence of the GRANT ALL patch, so we
  might as well use them and make the ALTER commands read more
  naturally.

- Code review for LIKE INCLUDING patch --- clean up some cosmetic and
  not so cosmetic stuff.

- In pgsql/src/backend/utils/adt/tsvector_op.c, fix ts_stat's failure
  on empty tsvector.  Also insert a couple of Asserts that check for
  stack overflow.  Bogus coding appears to be new in 8.4 --- older
  releases had a much simpler algorithm here.  Per bug #5111.

- Add "\pset linestyle ascii/unicode" option to psql, allowing our
  traditional ASCII-art style of table output to be upgraded to use
  Unicode box drawing characters if desired.  By default, psql will
  use the Unicode characters whenever client_encoding is UTF8.  The
  patch forces linestyle=ascii in pg_regress usage, ensuring we don't
  break the regression tests in Unicode locales.  Roger Leigh.

- Support SQL-compliant triggers on columns, ie fire only if certain
  columns are named in the UPDATE's SET list.  Note: the schema of
  pg_trigger has not actually changed; we've just started to use a
  column that was there all along.  catversion bumped anyway so that
  this commit is included in the history of potentially interesting
  changes to system catalog contents.  Itagaki Takahiro.

- In pgsql/src/pl/plpython/expected/plpython_unicode_0.out, first
  committed version of plpython_unicode_0.out did not actually contain
  the required \200 bytes.  Let's see if this commit works, or if CVS
  is messing it up.

- In pgsql/src/backend/libpq/auth.c, rewrite pam_passwd_conv_proc to
  be more robust: avoid assuming that the pam_message array contains
  exactly one PAM_PROMPT_ECHO_OFF message.  Instead, deal with however
  many messages there are, and don't throw error for PAM_ERROR_MSG and
  PAM_TEXT_INFO messages.  This logic is borrowed from openssh 5.2p1,
  which hopefully has seen more real-world PAM usage than we have.
  Per bug #5121 from Ryan Douglas, which turned out to be caused by
  the conv_proc being called with zero messages.  Apparently that is
  normal behavior given the combination of Linux pam_krb5 with MS
  Active Directory as the domain controller.  Patch all the way back,
  since this code has been essentially untouched since 7.4.
  (Surprising we've not heard complaints before.)

Andrew Dunstan committed:

- CREATE LIKE INCLUDING COMMENTS and STORAGE, and INCLUDING ALL
  shortcut. Itagaki Takahiro.

Alvaro Herrera committed:

- Add new PGC_S_DATABASE_USER enum value to several places missed by
  my patch last week.  Per note and patch from Jeff Davis.

- Avoid using trivial usernames in foreign_data regression test.
  Martin Pihlak.

Peter Eisentraut committed:

- In pgsql/doc/src/sgml/func.sgml, replace unmatched " by " to
  avoid throwing off syntax highlighters.

- Add alternative expected file for unicode test for client encoding
  not UTF8.

- In the configure check for the Python distutils module, use a less
  obscure shell construct to hide away the stderr output.  Python 3.1
  actually core dumps on the current invocation
  (http://bugs.python.org/issue7111), but the new version also has the
  more general advantage of saving the error message in config.log for
  analysis.

Heikki Linnakangas committed:

- In pgsql/src/backend/libpq/auth.c, raise the maximum authentication
  token (Kerberos ticket) size in GSSAPI and SSPI athentication
  methods. While the old 2000 byte limit was more than enough for Unix
  Kerberos implementations, tickets issued by Windows Domain
  Controllers can be much larger.  Ian Turner.

- In pgsql/src/backend/libpq/auth.c, rename the new
  MAX_AUTH_TOKEN_LENGTH #define to PG_MAX_AUTH_MAX_TOKEN_LENGTH, to
  make it more obvious that it's a PostgreSQL internal limit, not
  something that comes from system header files.

- In pgsql/src/bin/scripts/vacuumdb.c, FREEZE and VERBOSE options were
  in wrong order in the VACUUM command that vacuumdb produces. Per
  report by Thom Brown.

Michael Meskes committed:

- Made ECPG more robust against applications freeing strings, based on
  patch send in by Zoltan Boszormenyi.

Magnus Hagander committed:

- Write to the Windows eventlog in UTF16, converting the message
  encoding as necessary.  Itagaki Takahiro with some changes from me.

- In pgsql/src/backend/utils/mb/mbutils.c, fix typo in previous
  release as reported by Itagaki Takahiro, but missed by me.

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Laurenz Albe sent in another revision of the patch to create a hook to
test password cryptgraphic strength along with a contrib module to use
the hook.

ITAGAKI Takahiro sent in another revision of the patch to fix encoding
issues and eventlog on Win32.

KaiGai Kohei sent in another revision of the patch for large object
ACLs.

Dave Page sent in a WIP patch to add an application_name GUC which
optionally shows the name of the connecting application.

Peter Eisentraut sent in an updated version of the per-column trigger
patch.

KaiGai Kohei sent in another revision of the ACL rework patch.

ITAGAKI Takahiro sent in another revision of the per-column trigger
patch.

Zoltan Boszormenyi sent a patch that makes ECPG more robust against
applications that free() strings by storing its own copy of the
prepared statement name.

ITAGAKI Takahiro sent in a patch to prevent table rewrites caused by
ALTER TABLE from writing WALs.

Heikki Linnakangas sent in an updated patch for Hot Standby.

ITAGAKI Takahiro sent in a patch for contrib/auto_explain which adds
EXPLAIN (ANALYZE|BUFFERS).

ITAGAKI Takahiro sent in a WIP patch to add WHEN to triggers.

Dave Page sent in another revision of the patch to add an
application_name GUC and supporting features for same.