--- /dev/null
+<!-- BEGIN page_title_block -->
+Weekly News - March 07 2010
+<!-- END page_title_block -->
+
+<h1>PostgreSQL Weekly News - March 07 2010</h1>
+
+<p>
+Bug fix updates for PostgreSQL 7.4 through 8.4 will be out soon. Get
+ready to upgrade!
+</p>
+
+<p>
+The San Francisco PostgreSQL Users' Group will be having a Test Fest
+Saturday April 3, 11am to 6pm. There will be live video. Help make
+this a world-wide event!
+<a href="http://wiki.postgresql.org/wiki/SFPUG_Beta_Test_Day">http://wiki.postgresql.org/wiki/SFPUG_Beta_Test_Day</a>
+</p>
+
+<h2>PostgreSQL Product News</h2>
+<p>
+MicroOLAP Database Designer 1.2.10 for PostgreSQL released.
+<a href="http://microolap.com/products/database/postgresql-designer/">http://microolap.com/products/database/postgresql-designer/</a>
+</p>
+
+<p>
+The PGCon 2010 Schedule is now available.
+<a href="http://www.pgcon.org/2010/schedule/">http://www.pgcon.org/2010/schedule/</a>
+</p>
+
+<p>
+PostgreSQLfr will have a booth at SolutionsLinux 2010 in Paris,
+France March 16-18, 2010. Volunteers, please contact Stephane
+Schildknecht at sas AT postgresql DOT fr, or the general PostgreSQLfr
+address at bureau AT postgresql DOT fr. More information on the
+conference at:
+<a href="http://www.solutionslinux.fr">http://www.solutionslinux.fr</a>
+</p>
+
+<h2>PostgreSQL 9.0 Feature of the Week</h2>
+<p>
+EXPLAIN output can be formatted as XML, JSON, and YAML, making machine
+parsing much simpler. The traditional text format is still the
+default format.
+</p>
+
+<h2>PostgreSQL Local</h2>
+<p>
+BWPUG will be meeting in Falls Church, VA, USA on March 10, 2010 at
+6:30pm.
+<a href="http://www.xzilla.net/blog/2010/Feb/BWPUG-March-10th,-Falls-Church-take-two..html">http://www.xzilla.net/blog/2010/Feb/BWPUG-March-10th,-Falls-Church-take-two..html</a>
+</p>
+
+<p>
+The German Language PostgreSQL User Group has a booth at Chemnitz Linuxdays
+2010 on March 13 and 14, 2010 in Chemnitz, Germany. Andreas (ads)
+Scherbaum will be giving a talk on PostgreSQL 9.0 and a workshop on
+tuning PostgreSQL.
+<a href="http://andreas.scherbaum.la/blog/archives/652-PostgreSQL-stand-at-Chemnitz-Linux-Days-2010.html">http://andreas.scherbaum.la/blog/archives/652-PostgreSQL-stand-at-Chemnitz-Linux-Days-2010.html</a>
+<a href="http://chemnitzer.linux-tage.de/2010/vortraege/plan.html">http://chemnitzer.linux-tage.de/2010/vortraege/plan.html</a>
+</p>
+
+<p>
+JDCon East will take place March 25-28, 2010 in Philadelphia, PA, USA.
+<a href="http://www.postgresqlconference.org/2010/east">http://www.postgresqlconference.org/2010/east</a>
+</p>
+
+<p>
+Linuxfest Northwest 2010 will take place in Bellingham, Washington,
+USA on April 24 and 25. Session, Booth and Sponsorship are available.
+<a href="http://linuxfestnorthwest.org/">http://linuxfestnorthwest.org/</a>
+</p>
+
+<p>
+Andreas (ads) Scherbaum will be teaching a "PostgreSQL for Corporate
+Use" course at the adult education center in Magdeburg, Germany May
+3-7, 2010. Details below:
+<a href="http://andreas.scherbaum.la/blog/archives/650-PostgreSQL-Schulung-als-Bildungsurlaub-03.-07.05.2010-in-Magdeburg.html">http://andreas.scherbaum.la/blog/archives/650-PostgreSQL-Schulung-als-Bildungsurlaub-03.-07.05.2010-in-Magdeburg.html</a>
+</p>
+
+<p>
+PgCon 2010 will be held May 20-21 2010 in Ottawa with tutorials before
+on the 18th and 19th.
+<a href="http://www.pgcon.org/2010/registration.php">http://www.pgcon.org/2010/registration.php</a>
+</p>
+
+<p>
+The CfP for OSBridge is open! OSBridge will be June 1-4, 2010 in
+Portland, Oregon.
+<a href="http://opensourcebridge.org/events/2010/proposals/">http://opensourcebridge.org/events/2010/proposals/</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>
+
+<p>
+
+== PostgreSQL in the News ==
+</p>
+
+<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.
+</p>
+
+<h2>Applied Patches</h2>
+<p>
+Tom Lane committed:
+</p>
+
+<p>
+- Back-patch today's memory management fixups in contrib/xml2. Prior
+ to 8.3, these changes are not critical for compatibility with core
+ Postgres, since core had no libxml2 calls then. However there is
+ still a risk if contrib/xml2 is used along with libxml2
+ functionality in Perl or other loadable modules. So back-patch to
+ all versions. Also back-patch addition of regression tests. I'm
+ not sure how many of the cases are interesting without the
+ interaction with core xml code, but a silly regression test is still
+ better than none at all.
+</p>
+
+<p>
+- Remove xmlCleanupParser calls from contrib/xml2. These are
+ unnecessary and probably dangerous. I don't see any immediate risk
+ situations in the core XML support or contrib/xml2 itself, but there
+ could be issues with external uses of libxml2, and in any case it's
+ an accident waiting to happen.
+</p>
+
+<p>
+- In pgsql/src/port/copydir.c, buildfarm still unhappy, so I'll bet
+ it's EACCES not EPERM.
+</p>
+
+<p>
+- Fix contrib/xml2 so regression test still works when it's built
+ without libxslt. This involves modifying the module to have a
+ stable ABI, that is, the xslt_process() function still exists even
+ without libxslt. It throws a runtime error if called, but doesn't
+ prevent executing the CREATE FUNCTION call. This is a good thing
+ anyway to simplify cross-version upgrades.
+</p>
+
+<p>
+- In pgsql/src/pl/plpgsql/src/gram.y, cause plpgsql to throw an error
+ if "INTO rowtype_var" is followed by a comma. Per bug #5352, this
+ helps to provide a useful error message if the user tries to do
+ something presently unsupported, namely use a rowtype variable as a
+ member of a multiple-item INTO list.
+</p>
+
+<p>
+- In pgsql/src/pl/plpgsql/src/gram.y, instead of trying (and failing)
+ to allow <<label>> at the end of a DECLARE section, throw an error
+ message saying explicitly that the label must go before DECLARE.
+ Per investigation of a recent pgsql-novice question, this code did
+ not work as intended in any modern PG version, maybe not ever.
+ Allowing such a thing would only create ambiguity anyway, so it
+ seems better to remove it than fix it.
+</p>
+
+<p>
+- Export xml.c's libxml-error-handling support so that contrib/xml2
+ can use it too, instead of duplicating the functionality (badly). I
+ renamed xml_init to pg_xml_init, because the former seemed just a
+ bit too generic to be safe as a global symbol. I considered
+ likewise renaming xml_ereport to pg_xml_ereport, but felt that the
+ reference to ereport probably made it sufficiently PG-centric
+ already.
+</p>
+
+<p>
+- Make contrib/xml2 use core xml.c's error handler, when available
+ (that is, in versions >= 8.3). The core code is more robust and
+ efficient than what was there before, and this also reduces risks
+ involved in swapping different libxml error handler settings.
+ Before 8.3, there is still some risk of problems if add-on modules
+ such as Perl invoke libxml without setting their own error handler.
+ Given the lack of reports I'm not sure there's a risk in practice,
+ so I didn't take the step of actually duplicating the core code into
+ older contrib/xml2 branches. Instead I just tweaked the existing
+ code to ensure it didn't leave a dangling pointer to short-lived
+ memory when throwing an error.
+</p>
+
+<p>
+- Fix a couple of places that would loop forever if attempts to read a
+ stdio file set ferror() but never set feof(). This is known to be
+ the case for recent glibc when trying to read a directory as a file,
+ and might be true for other platforms/cases too. Per report from Ed
+ L. (There is more that we ought to do about his report, but this is
+ one easily identifiable issue.)
+</p>
+
+<p>
+- In pgsql/src/backend/libpq/hba.c, when reading pg_hba.conf and
+ similar files, do not treat @file as an inclusion unless (1) the @
+ isn't quoted and (2) the filename isn't empty. This guards against
+ unexpectedly treating usernames or other strings in "flat files" as
+ inclusion requests, as seen in a recent trouble report from Ed L.
+ The empty-filename case would be guaranteed to misbehave anyway,
+ because our subsequent path-munging behavior results in trying to
+ read the directory containing the current input file. I think this
+ might finally explain the report at
+ <a href="http://archives.postgresql.org/pgsql-bugs/2004-05/msg00132.php">http://archives.postgresql.org/pgsql-bugs/2004-05/msg00132.php</a> of a
+ crash after printing "authentication file token too long, skipping",
+ since I was able to duplicate that message (though not a crash) on a
+ platform where stdio doesn't refuse to read directories. We never
+ got far in investigating that problem, but now I'm suspicious that
+ the trigger condition was an @ in the flat password file.
+ Back-patch to all active branches since the problem can be
+ demonstrated in all branches except HEAD. The test case, creating a
+ user named "@", doesn't cause a problem in HEAD since we got rid of
+ the flat password file. Nonetheless it seems like a good idea to
+ not consider quoted @ as a file inclusion spec, so I changed HEAD
+ too.
+</p>
+
+<p>
+- In pgsql/src/backend/catalog/aclchk.c, fix warning messages in
+ restrict_and_check_grant() to include the column name when warning
+ about column-level privileges. This is more useful than before and
+ makes the apparent duplication complained of by Piyush Newe not so
+ duplicate. Also fix lack of quote marks in a related message text.
+ Back-patch to 8.4, where column-level privileges were introduced.
+ Stephen Frost
+</p>
+
+<p>
+- Update time zone data files to tzdata release 2010c: DST law changes
+ in Bangladesh, Mexico, Paraguay.
+</p>
+
+<p>
+Magnus Hagander committed:
+</p>
+
+<p>
+- In pgsql/src/backend/libpq/hba.c, it's clearly now pointless to do
+ backwards compatible parsing of this, since we released a version
+ without it, so remove the comment that says we might want to do
+ that.
+</p>
+
+<p>
+- Add --psqlrc=FILENAME parameter to psql, to process an explicitly
+ named file instead of ~/.psqlrc on startup.
+</p>
+
+<p>
+- Revert patch for --psqlrc=FILENAME in psql.
+</p>
+
+<p>
+Heikki Linnakangas committed:
+</p>
+
+<p>
+- Fix numericlocale psql option when used with a null string and latex
+ and troff formats; a null string must not be formatted as a numeric.
+ The more exotic formats latex and troff also incorrectly formatted
+ all strings as numerics when numericlocale was on. Backpatch to 8.1
+ where numericlocale option was added. This fixes bug #5355 reported
+ by Andy Lester.
+</p>
+
+<p>
+- In pgsql/src/bin/psql/print.c, fix translation of strings in psql \d
+ output (translation in headers worked, but not in cells).
+</p>
+
+<p>
+- Fix pg_dump of ACLs of foreign servers. The command to grant/revoke
+ privileges of foreign servers is "GRANT ... ON *FOREIGN* SERVER
+ ...".
+</p>
+
+<p>
+- In pgsql/src/backend/parser/parse_coerce.c, fix IsBinaryCoercible to
+ not confuse a cast using in/out functions with binary compatibility.
+ Backpatch to 8.4 where INOUT casts were introduced.
+</p>
+
+<p>
+Andrew Dunstan committed:
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/Solution.pm, add XSLT defines for MSVC
+ builds.
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/Solution.pm, backpatch MSVC build fix for
+ XSLT.
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/vcregress.pl, do not run regression tests
+ for contrib/xml2 on MSVC unless building with XML.
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/Solution.pm, add missing library and include
+ dir for XSLT in MSVC builds.
+</p>
+
+<p>
+- In pgsql/src/tools/msvc/Solution.pm, make iconv work like other
+ optional libraries for MSVC.
+</p>
+
+<p>
+Peter Eisentraut committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/keywords.sgml, update keywords list for 9.0.
+</p>
+
+<p>
+Bruce Momjian committed:
+</p>
+
+<p>
+- Document the effect of max_standby_delay on increasing the delay of
+ data from master to slave, and discourage its use during
+ slave/master keep-xid-alive connections.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/config.sgml, adjust max_standby_delay
+ documentation to be clearer, and mention that two adjacent
+ long-running queries have much less than max_standby_delay before
+ query cancel is possible.
+</p>
+
+<p>
+- In pgsql/src/backend/utils/adt/xml.c, pgindent run on xml.c in 8.3
+ branch, per request from Tom Lane.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/create_function.sgml, restructure CREATE
+ FUNCTION "NOTES" section to be shorter; move items into proper
+ sections, per suggestion from Tom Lane.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/create_function.sgml, fix SGML markup.
+</p>
+
+<p>
+- Document that "Q" is ignored by to_date and to_timestamp. Add C
+ comment about the behavior. Document that quotes in to_date,
+ to_timestamp, to_number skip input characters.
+</p>
+
+<p>
+- In pgsql/src/bin/pg_dump/pg_dump.c, add C comment about DDL changes
+ possibly causing pg_dump errors.
+</p>
+
+<p>
+Michael Meskes committed:
+</p>
+
+<p>
+- In case the connection magically disappears libecpg only returns an
+ internal error sqlstate. This change makes it return a correct
+ value.
+</p>
+
+<h2>Rejected Patches (for now)</h2>
+<p>
+No one was disappointed this week :-)
+</p>
+
+<h2>Pending Patches</h2>
+<p>
+Magnus Hagander sent in a patch to fix a crash issue with psql and GSS
+auth.
+</p>
+
+<p>
+Bruce Momjian sent in another revision of a patch to fix some issues
+with to_char() on Windows.
+</p>
+
+<p>
+Fujii Masao sent in three more patches to help fix corner cases in
+streaming replication with pg_xlogfile_name().
+</p>
+
+<p>
+Fujii Masao sent in a patch to mandate setting either restore_command
+or primary_conninfo in recovery.conf.
+</p>
+
+<p>
+Fujii Masao sent in a patch to correct recovery.conf.sample for
+streaming replication.
+</p>
+
+<p>
+KaiGai Kohei sent in a patch to disallow renaming columns in sequence
+"tables."
+</p>
+
+<p>
+Bruce Momjian sent in three patches fixing to_timestamp() behavior
+with 'Q'.
+</p>
+
+<p>
+KaiGai Kohei sent in a patch factoring out duplicate code in
+CreateOpFamily() and DefineOpFamily().
+</p>
+
+<p>
+Tim Bunce sent in a patch to fix a core dump in PL/Perl installcheck
+with bleadperl.
+</p>
+
+<p>
+Bruce Momjian sent in three revisions of a patch to fix the exit code
+form psql -1 when it encounters a violation of a deferred foreign key
+constraint.
+
+</p>
+