--- /dev/null
+<!-- BEGIN page_title_block -->
+Weekly News - January 18 2009
+<!-- END page_title_block -->
+
+<h1>PostgreSQL Weekly News - January 18 2009</h1>
+
+<h2>PostgreSQL Tip of the Week</h2>
+<p>
+To log queries on only one database, do:
+ ALTER <databasename> SET log_statement = 'all'
+</p>
+
+<h2>PostgreSQL Jobs for January</h2>
+<p>
+<a href="http://archives.postgresql.org/pgsql-jobs/2009-01/threads.php">http://archives.postgresql.org/pgsql-jobs/2009-01/threads.php</a>
+</p>
+
+<h2>PostgreSQL Local</h2>
+<p>
+Richard Broersma is coordinating booth volunteers for SCALE (below).
+Contact him at richard DOT broersma AT gmail DOT com.
+</p>
+
+<p>
+The Moscow PostgreSQL and MySQL groups will be holding a join panel
+January 22, 2009 in Moscow. Details and sign-up below.
+<a href="http://forum.postgresqlrussia.org/viewtopic.php?f=6&t=96">http://forum.postgresqlrussia.org/viewtopic.php?f=6&t=96</a>
+</p>
+
+<p>
+SYDPUG will be meeting February 3, 2009 at 6:30pm at Fujitsu Australia
+in North Syndey. Mark Leslie will talk about the history and
+motivations of PostGIS.
+<a href="http://archives.postgresql.org/sydpug/2009-01/msg00000.php">http://archives.postgresql.org/sydpug/2009-01/msg00000.php</a>
+</p>
+
+<p>
+JNBPUG will be meeting February 9 19:00 at News Cafe on New Road in
+Midrand.
+</p>
+
+<p>
+Many of the usual suspects will be at FOSDEM February 7-8 in Brussels,
+Belgium.
+<a href="http://wiki.postgresql.eu/wiki/FOSDEM_2009">http://wiki.postgresql.eu/wiki/FOSDEM_2009</a>
+</p>
+
+<p>
+PostgreSQL will be at SCALE February 20-22 in Los Angeles.
+<a href="http://www.socallinuxexpo.org/">http://www.socallinuxexpo.org/</a>
+</p>
+
+<p>
+Andreas 'ads' Scherbaum will be presenting a talk at Perl Workshop
+2009 on February 25 in Frankfurt am Main, Germany.
+<a href="http://www.perl-workshop.de/talks/151/view">http://www.perl-workshop.de/talks/151/view</a>
+</p>
+
+<p>
+PostgreSQL Conference, U.S. will be holding a PgDay at LinuxFest
+Northwest (April 25/26th). The call for papers is out at
+<a href="http://www.postgresqlconference.org/">http://www.postgresqlconference.org/</a>
+</p>
+
+<p>
+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.
+<a href="http://www.pgcon.org/2009/papers.php">http://www.pgcon.org/2009/papers.php</a>
+</p>
+
+<p>
+PGCon Brazil will be take place October 23-24 2009 at Unicamp in
+Campinas, Sao Paulo state.
+</p>
+
+<h2>PostgreSQL in the News</h2>
+<p>
+Planet PostgreSQL: <a href="http://planet.postgresql.org/">http://planet.postgresql.org/</a>
+</p>
+
+<p>
+PostgreSQL Weekly News is brought to you this week by David Fetter and
+Josh Berkus.
+</p>
+
+<p>
+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.
+</p>
+
+<h2>Applied Patches</h2>
+<p>
+Peter Eisentraut committed:
+</p>
+
+<p>
+- Add ONLY support to LOCK and TRUNCATE. By default, these commands
+ are now recursive. Note this incompatibility in the release notes.
+</p>
+
+<p>
+- In pgsql/src/backend/parser/gram.y, use qualified_name instead of
+ relation_expr for commands that have no business with inheritance
+ recursion: ALTER INDEX, ALTER SEQUENCE, ALTER TRIGGER, ALTER VIEW.
+ They would just silently ignore the ONLY. ALTER TABLE has mixed
+ behavior and cannot be dealt with this way because of the resulting
+ shift/reduce conflicts.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/select.sgml, add some minimal
+ documentation that the SQL standard requires parentheses after ONLY.
+</p>
+
+<p>
+- In pgsql/src/tools/make_etags, remove useless (and insecure) temp
+ file handling.
+</p>
+
+<p>
+- In pgsql/src/interfaces/ecpg/ecpglib/Makefile, misc.o depends on
+ pg_config_paths.h when --enable-nls is used.
+</p>
+
+<p>
+- In pgsql/src/pl/tcl/pltcl.c, make error messages match backend
+ style.
+</p>
+
+<p>
+- In pgsql/src/backend/catalog/information_schema.sql, make the
+ columns is_insertable_into and is_updatable behave uniformly
+ correctly. They are supposed to examine which kinds of rules are
+ present, which they did in some of the info schema views but not in
+ others.
+</p>
+
+<p>
+- In pgsql/src/tools/make_etags, avoid version-control system
+ directories when creating TAGS. Besides being wasteful, this can
+ collide with repostory metadata on case-insensitive file sytems.
+</p>
+
+<p>
+- In pgsql/src/nls-global.mk, make .pot files depend on the makefiles,
+ so that they are updated when the file or trigger function lists are
+ changed.
+</p>
+
+<p>
+- In pgsql/src/interfaces/ecpg/test/Makefile, build needed things in
+ src/test/regress/ first. And some build rules normalization.
+</p>
+
+<p>
+- NLS cleanup in ecpglib Replace leftover instances of _() by
+ ecpg_gettext(), the latter being the correct way to refer to the
+ library's message catalog, instead of the one of the program using
+ the library. Drop NLS support for ecpg_log(), which is a debugging
+ instrument similar to elog() in the backend. We cannot support NLS
+ in the ecpg compatlib, because that requires ecpg_gettext, which is
+ in ecpglib, which is not a dependency of compatlib. It doesn't seem
+ worthwhile to worry about this, since the only translatable string
+ is "out of memory", and gettext probably won't be able to do much
+ without memory either. Adjust messages to project style.
+</p>
+
+<p>
+- In pgsql/src/pl/tcl/nls.mk, remove unneeded GETTEXT_TRIGGERS.
+</p>
+
+<p>
+- Cleanup pass over PL/Python NLS. Add translation support to
+ PLy_elog and PLy_exception_set, and clarify some error messages.
+</p>
+
+<p>
+- In pgsql/src/bin/pg_ctl/pg_ctl.c, remove period from primary error
+ message.
+</p>
+
+<p>
+- Wordsmithing in pgsql/src/interfaces/ecpg/ecpglib/error.c.
+</p>
+
+<p>
+- plpython_error.out is for Python 2.4, plpython_error_3.out is for
+ Python 2.5, as it was previously.
+</p>
+
+<p>
+- In pgsql/src/pl/plpython/expected/plpython_error_1.out, manual
+ attempt to update this file.
+</p>
+
+<p>
+Tom Lane committed:
+</p>
+
+<p>
+- In pgsql/src/backend/executor/nodeBitmapHeapscan.c, tweak order of
+ operations in BitmapHeapNext() to avoid the case of prefetching the
+ same page we are nanoseconds away from reading for real. There
+ should be something left to do on the current page before we
+ consider issuing a prefetch.
+</p>
+
+<p>
+- Fix a pg_dump output ordering problem introduced in 8.3 by the
+ addition of array types for composite types. Although pg_dump
+ understood it wasn't supposed to dump these array types as separate
+ objects, it must include them in the dependency ordering analysis,
+ and it was improperly assigning them the same relatively-high sort
+ priority as regular types. This resulted in effectively moving
+ composite types and tables up to that same high priority, which
+ broke any ordering requirements that weren't explicitly enforced by
+ dependencies. In particular user-defined operator classes, which
+ should come out before tables, failed to do so. Per report from
+ Brendan Jurd. In passing, also fix an ill-considered decision to
+ give text search objects the same sort priority as functions and
+ operators --- the sort result looks a lot nicer if different object
+ types are kept separate. The recent foreign-data patch had copied
+ that decision, making the sort ordering even messier :-(
+</p>
+
+<p>
+Alvaro Herrera committed:
+</p>
+
+<p>
+- Simplify the writing of amoptions routines by introducing a
+ convenience fillRelOptions routine that stores the parsed values in
+ the struct using a table-based approach. Per Tom suggestion. Also
+ remove the "continue" in HANDLE_*_RELOPTION macros, which were
+ useless and in spirit they were assuming too much of how the macros
+ were going to be used. (Note that these macros are now unused, but
+ the intention is to introduce some usage in a future autovacuum
+ patch, which is why they weren't completely removed.) Also, do not
+ call the string validation routine when not validating. It seems
+ less error-prone this way, per commentary on the amoptions SGML
+ docs.
+</p>
+
+<p>
+- Backpatch to 7.4 the part of 1.84 (from the 8.0 timeline) that
+ wasn't already patched, viz. str_numth(). The rest of that patch
+ was already applied as part of 1.69.2.1. Per report and patch from
+ Andreas 'ads' Scherbaum.
+</p>
+
+<p>
+Bruce Momjian committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/backup.sgml, document how pglesslog can be
+ used to reduce the storage requirements of PITR.
+</p>
+
+<p>
+- Renable threading build for Solaris 2.5, per report from Andrew
+ Chernow.
+</p>
+
+<p>
+- Check nsl library for gethostbyname_r() on all platforms (HP-UX uses
+ it too).
+</p>
+
+<p>
+- In pgsql/src/port/thread.c, remove empty #ifdef block.
+</p>
+
+<p>
+- Make 'find' syntax consistent; add .git exclusion to make_ctags.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/wal.sgml, add documentation mention that full
+ page writes have to be enabled for full pages to be restored during
+ recovery. Per private report from Michael Renner
+</p>
+
+<p>
+- In pgsql/GNUmakefile.in, modify distdir rule to skip .git directory.
+</p>
+
+<p>
+Magnus Hagander committed:
+</p>
+
+<p>
+- In pgsql/src/interfaces/libpq/fe-auth.c, remove special-handling of
+ usernames with Kerberos authentication. We will now always use the
+ system username as the default, and not try to pick it up from the
+ kerberos ticket. This fixes the spurious error messages that show
+ up on kerberos-enabled builds when not actually using kerberos, and
+ puts it in line with how other authentication methods work.
+</p>
+
+<p>
+- In pgsql/src/bin/pg_dump/pg_backup_archiver.c, throw an error when
+ using -C and -1 at the same time in pg_restore. It's not possible
+ to do CREATE DATABASE inside a transaction, so previously we just
+ got a server error instead. Backpatch to 8.2, which is where the -1
+ feature appeared.
+</p>
+
+<p>
+Heikki Linnakangas committed:
+</p>
+
+<p>
+- In pgsql/src/pl/plpgsql/src/pl_exec.c, remove broken Assertions that
+ failed if a statement executed in PL/pgSQL is rewritten into another
+ kind of statement, for example if an INSERT is rewritten into an
+ UPDATE. Back-patch to 8.3 and 8.2. For HEAD, Tom suggested
+ inventing a new SPI_OK_REWRITTEN return code, but that's not a
+ backportable solution. I'll do that as a separate patch, this patch
+ will do as a stopgap measure for HEAD too in the meanwhile.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/func.sgml, change explanation of
+ pg_switch_xlog()'s return value to match code.
+</p>
+
+<p>
+- Add vacuum_freeze_table_age GUC option, to control when VACUUM
+ should ignore the visibility map and scan the whole table, to
+ advance relfrozenxid.
+</p>
+
+<p>
+Teodor Sigaev committed:
+</p>
+
+<p>
+- In pgsql/src/backend/tsearch/wparser_def.c, fix generation too long
+ headline with ShortWords. Per
+ <a href="http://archives.postgresql.org/pgsql-hackers/2008-09/msg01088.php">http://archives.postgresql.org/pgsql-hackers/2008-09/msg01088.php</a>
+</p>
+
+<p>
+- Fix URL generation in headline. Only tag lexeme will be replaced by
+ space. Per
+ <a href="http://archives.postgresql.org/pgsql-bugs/2008-12/msg00013.php">http://archives.postgresql.org/pgsql-bugs/2008-12/msg00013.php</a>
+</p>
+
+<p>
+- In pgsql/contrib/tsearch2/expected/tsearch2.out, sync output of
+ tsearch2 regression test.
+</p>
+
+<p>
+- In pgsql/contrib/tsearch2/rank.c, fix uninitialized variables in
+ get_covers.
+</p>
+
+<p>
+Neil Conway committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/create_user_mapping.sgml, fix typo.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/create_server.sgml, fix an ungrammatical
+ statement.
+</p>
+
+<h2>Rejected Patches (for now)</h2>
+<p>
+No one was disappointed this week :-)
+</p>
+
+<h2>Pending Patches</h2>
+<p>
+Koichi Suzuki sent in another revision of the PITR improvement patch.
+</p>
+
+<p>
+Bernd Helmle sent in another revision of his patch to make VIEWs
+updateable.
+</p>
+
+<p>
+Magnus Hagander sent in a patch which improves the error and message
+when the incompatible options -1 and -c are called together.
+</p>
+
+<p>
+KaiGai Kohei sent in a WIP patch to fix some edge cases in the
+column-level privileges patch.
+</p>
+
+<p>
+KaiGai Kohei sent in five more revisions of his SE-PostgreSQL patches.
+</p>
+
+<p>
+Alvaro Herrera sent in two revisions of a patch which adds namespaces
+to reloptions.
+</p>
+
+<p>
+Robert Haas sent in a patch which helps fix log rotation.
+</p>
+
+<p>
+Fujii Masao sent in another revision of his synchronous replication
+patch.
+</p>
+
+<p>
+KaiGai Kohei sent in a patch which puts invocations of
+markColumnForSelectPriv() in transformJoinUsingClause() to mark those
+columns used.
+</p>
+
+<p>
+Stephen Frost sent in four more revisions of his column-level
+privileges patch.
+</p>
+
+<p>
+Ramon Lawrence and Bryce Cutt sent in another revision of the patch to
+improve the performance of multi-batchhash join for skewed data sets.
+</p>
+
+<p>
+Simon Riggs sent in three more revisions of the hot standby patch.
+</p>
+
+<p>
+Alvaro Herrera sent in a patch to move a tablespace.c call from smgr.c
+into the new storage.c.
+</p>
+
+<p>
+Teodor Sigaev sent in another revision of the patch to add B-Tree
+emulation to GIN.
+</p>
+
+<p>
+Teodor Sigaev sent in another revision of the GIN improvements patch.
+</p>
+
+<p>
+Peter Eisentraut sent in an update to Bernd Helmle's patch for
+updateable views.
+</p>
+
+<p>
+Alan Li sent in a patch which fixes some compiler warnings in gcc
+4.3.2.
+
+</p>
+