--- /dev/null
+<!-- BEGIN page_title_block -->
+Weekly News - June 20 2010
+<!-- END page_title_block -->
+
+<h1>PostgreSQL Weekly News - June 20 2010</h1>
+
+<h2>PostgreSQL Jobs for June</h2>
+<p>
+<a href="http://archives.postgresql.org/pgsql-jobs/2010-06/threads.php">http://archives.postgresql.org/pgsql-jobs/2010-06/threads.php</a>
+</p>
+
+<h2>PostgreSQL Local</h2>
+<p>
+Michael Renner will be speaking at Netways OSDC in Nuremberg, Germany,
+which will be June 23-24, 2010.
+<a href="http://www.netways.de/osdc/y2010/programm/">http://www.netways.de/osdc/y2010/programm/</a>
+</p>
+
+<p>
+CHAR(10), the PostgreSQL Conference on Clustering, High Availability
+and Replication is now open for online registration and bookings.
+July 2-3 2010, Oriel College, Oxford University, UK
+<a href="http://www.char10.org/">http://www.char10.org/</a>
+</p>
+
+<p>
+PDXPUG Day will be July 18, 2010 at the Oregon Convention Center in
+Portland, OR. For more information, see:
+<a href="http://wiki.postgresql.org/wiki/PDXPUGDay2010">http://wiki.postgresql.org/wiki/PDXPUGDay2010</a>
+</p>
+
+<p>
+OSCON will take place in Portland, Oregon July 19-23, 2010.
+<a href="http://www.oscon.com/oscon2010">http://www.oscon.com/oscon2010</a>
+</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.
+</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. Spanish language
+to pwn@arpug.com.ar.
+</p>
+
+<h2>Applied Patches</h2>
+<p>
+Heikki Linnakangas committed:
+</p>
+
+<p>
+- In pgsql/src/backend/access/transam/xlog.c, if a corrupt WAL record
+ is received by streaming replication, disconnect and retry. If the
+ record is genuinely corrupt in the master database, there's little
+ hope of recovering, but it's better than simply retrying to apply
+ the corrupt WAL record in a tight loop without even trying to
+ retransmit it, which is what we used to do.
+</p>
+
+<p>
+ITAGAKI Takahiro committed:
+</p>
+
+<p>
+- In pgsql/src/bin/psql/po/ja.po, fix typo in Japanese translation for
+ psql "Use \d+ to list them."
+</p>
+
+<p>
+- Add new GUC categories corresponding to sections in docs, and move
+ description for vacuum_defer_cleanup_age to the correct category.
+ Sections in postgresql.conf are also sorted in the same order with
+ docs. Per gripe by Fujii Masao, suggestion by Heikki Linnakangas,
+ and patch by me.
+</p>
+
+<p>
+- In pgsql/src/include/replication/walsender.h, remove prototype of
+ GetOldestWALSendPointer(), that is marked as NOT_USED.
+</p>
+
+<p>
+Simon Riggs committed:
+</p>
+
+<p>
+- In pgsql/contrib/Makefile, new contrib module for use as an
+ archive_cleanup_command, or as a standalone utility for removing
+ files from archive.
+</p>
+
+<p>
+- Files for pg_archivecleanup.
+</p>
+
+<p>
+- Docs for pg_archivecleanup.
+</p>
+
+<p>
+Bruce Momjian committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/plperl.sgml, fix doc plperl doc with is -> are
+ change.
+</p>
+
+<p>
+- Properly define pg_upgrade global variable, per bug report from
+ Chris Ruprecht on Mac (64 bit).
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/select.sgml, clarify SELECT FOR UPDATE
+ behavior in docs.
+</p>
+
+<p>
+- In pgsql/contrib/pg_upgrade/option.c, fix storage of getopt()
+ return, should be 'int', for pg_upgrade. Steve Singer.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/release-9.0.sgml, 9.0 release notes updates.
+ Josh Berkus
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/release-9.0.sgml, update doc description for
+ 9.0 release note item: Have <command>SELECT</> and <command>CREATE
+ TABLE AS</> return row counts to the client
+</p>
+
+<p>
+- In pgsql/contrib/pg_upgrade/tablespace.c, fix pg_upgrade to remove
+ malloc(0) call.
+</p>
+
+<p>
+Tom Lane committed:
+</p>
+
+<p>
+- In pgsql/contrib/dblink/dblink.c, rearrange dblink's
+ dblink_build_sql_insert() and related routines to open and lock the
+ target relation just once per SQL function call. The original
+ coding obtained and released lock several times per call. Aside
+ from saving a not-insignificant number of cycles, this eliminates
+ possible race conditions if someone tries to modify the relation's
+ schema concurrently. Also centralize locking and
+ permission-checking logic. Problem noted while investigating a
+ trouble report from Robert Voinea --- his problem is still to be
+ fixed, though.
+</p>
+
+<p>
+- Consolidate and improve checking of key-column-attnum arguments for
+ dblink_build_sql_insert() and related functions. In particular, be
+ sure to reject references to dropped and out-of-range column
+ numbers. The numbers are still interpreted as physical column
+ numbers, though, for backward compatibility. This patch replaces
+ Joe Conway's patch of 2010-02-03, which handled only some aspects of
+ the problem.
+</p>
+
+<p>
+- Fix dblink_build_sql_insert() and related functions to handle
+ dropped columns correctly. In passing, get rid of some dead logic
+ in the underlying get_sql_insert() etc functions --- there is no
+ caller that will pass null value-arrays to them. Per bug report
+ from Robert Voinea.
+</p>
+
+<p>
+- Change the interpretation of the primary_key_attnums parameter of
+ dblink_build_sql_insert() and related functions. Now the column
+ numbers are treated as logical not physical column numbers. This
+ will provide saner behavior in the presence of dropped columns;
+ furthermore, if we ever get around to allowing rearrangement of
+ logical column ordering, the original definition would become nearly
+ untenable from a usability standpoint. Per recent discussion of
+ dblink's handling of dropped columns. Not back-patched for fear of
+ breaking existing applications.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/libpq.sgml, fix typo, init => int, per KOIZUMI
+ Satoru.
+</p>
+
+<p>
+- Don't allow walsender to send WAL data until it's been safely
+ fsync'd on the master. Otherwise a subsequent crash could cause the
+ master to lose WAL that has already been applied on the slave,
+ resulting in the slave being out of sync and soon corrupt. Per
+ recent discussion and an example from Robert Haas. Fujii Masao.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/copy.sgml, add missing close brackets in
+ old-style COPY syntax diagram. Spotted by Evan Carroll.
+</p>
+
+<p>
+- In pgsql/contrib/pg_archivecleanup/pg_archivecleanup.c, clean up
+ pg_archivecleanup's error and logging output: put newlines in sane
+ places, make messages follow project's message style guidelines.
+ Also, avoid closedir(NULL). Fujii Masao and Tom Lane
+</p>
+
+<p>
+- In pgsql/src/backend/access/transam/xlog.c, make
+ RemoveOldXlogFiles's debug printout match style used elsewhere: log
+ and seg aren't an XLogRecPtr and shouldn't be printed like one.
+ Fujii Masao.
+</p>
+
+<p>
+- Clean up some randomness associated with trace_recovery_messages:
+ don't put the variable declaration in the middle of a bunch of
+ externs, and do use extern where it should be used.
+</p>
+
+<p>
+- Fix mishandling of whole-row Vars referencing a view or sub-select.
+ If such a Var appeared within a nested sub-select, we failed to
+ translate it correctly during pullup of the view, because the
+ recursive call to replace_rte_variables_mutator was looking for the
+ wrong sublevels_up value. Bug was introduced during the addition of
+ the PlaceHolderVar mechanism. Per bug #5514 from Marcos Castedo.
+</p>
+
+<p>
+Andrew Dunstan committed:
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/Mkvcbuild.pm, unbreak MSVC builds for
+ pg_archivecleanup by linking with libpgport.
+</p>
+
+<p>
+- Remove perl symbol table additions for plperl functions, and mention
+ of it in the release notes, as it is not apparently providing
+ anything useful.
+</p>
+
+<p>
+Robert Haas committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/analyze.sgml, document new 9.0 behavior of
+ ANALYZE on inheritance hierarchies. In particular, note that
+ autovacuum does not yet understand that it might need to vacuum
+ inheritance parents as a result of changes to the child tables.
+</p>
+
+<p>
+- Remove hstore's text[] => text[] operator. This is not yet in any
+ released version, so we still have the option to backtrack.
+ Instead, document hstore(text[], text[]). Per discussion.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/func.sgml, document that receive location can
+ rewind if replication restarts. Fujii Masao, with some further
+ wordsmithing by me.
+</p>
+
+<p>
+Peter Eisentraut committed:
+</p>
+
+<p>
+- Refactor sprintf calls with computed format strings into multiple
+ calls with constant format strings, so that the compiler can more
+ easily check the formats for correctness.
+</p>
+
+<p>
+- Add notes that CREATE/DROP CONVERSION is similar to CREATE/DROP
+ TRANSLATION in the SQL standard.
+</p>
+
+<h2>Rejected Patches (for now)</h2>
+<p>
+No one was disappointed this week :-)
+</p>
+
+<h2>Pending Patches</h2>
+<p>
+Robert Haas sent in a patch to implement --quote-all-identifiers for
+pg_dump and pg_dumpall, per discussion.
+</p>
+
+<p>
+KaiGai Kohei sent in two revisions of a patch to add a security hook
+to InitPostgres().
+</p>
+
+<p>
+KaiGai Kohei sent in a patch to rework DML permissions checks.
+</p>
+
+<p>
+KaiGai Kohei sent in a patch to add makeRangeTblEntry into
+makefuncs.c.
+</p>
+
+<p>
+KaiGai Kohei sent in a patch to modify the ExecutorCheckPerms() hook.
+</p>
+
+<p>
+Fujii Masao sent in a patch to fix a condition where the server
+crashes during streaming replication.
+</p>
+
+<p>
+Dimitri Fontaine sent in a patch to add a pg_archive_bypass command.
+</p>
+
+<p>
+Robert Haas sent in another patch for get_whatever_oid.
+</p>
+
+<p>
+Mike Lewis sent in another revision of the patch to enhance
+performance in array utility functions.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in a patch to reorganize GUC categories.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in a patch to implement foreign tables for
+SQL/MED.
+</p>
+
+<p>
+Robert Haas sent in a patch to turn => into & for hstore.
+</p>
+
+<p>
+Florian Pflug sent in a patch to show individual statement latencies
+in pgbench output.
+</p>
+
+<p>
+Zoltan Boszormenyi sent in a patch to fix a performance problem in
+ECPG.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in an update revision of the patch for
+table partitioning syntax.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in a patch to add a view to pg_catalog for
+walsender activity.
+</p>
+