PostgreSQL Weekly News August 15, 2010
authorDavid Fetter <[email protected]>
Mon, 16 Aug 2010 04:53:28 +0000 (04:53 +0000)
committerDavid Fetter <[email protected]>
Mon, 16 Aug 2010 04:53:28 +0000 (04:53 +0000)
git-svn-id: file:///Users/dpage/pgweb/svn-repo/trunk@2712 8f5c7a92-453e-0410-a47f-ad33c8a6b003

portal/files/weeklynews.xml
portal/template/en/community/weeklynews.html
portal/template/en/community/weeklynews/pwn20100815.html [new file with mode: 0644]

index 998f115ecfbdee4ad3f0d1c1a71aa92627c4013e..369594599ca9fe973243bba9382abaec1be79627 100644 (file)
 <description></description>
 <language>en</language>
 
+<item>
+<title>PostgreSQL Weekly News August 15th 2010</title>
+<description>
+The Call for Papers for West is open until September 5, 2010.  Details at:
+&#x3C;a href=&#x22;http://www.postgresqlconference.org/&#x22;&#x3E;http://www.postgresqlconference.org/&#x3C;/a&#x3E;
+
+
+</description>
+<guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20100815</guid>
+<pubDate>Sun, 15 Aug 2010 00:00:00 PST</pubDate>
+</item>
 <item>
 <title>PostgreSQL Weekly News August 8th 2010</title>
 <description>
@@ -115,16 +126,5 @@ about &#x22;High Availability of business databases with PostgreSQL&#x22;
 <guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20100606</guid>
 <pubDate>Sun, 06 Jun 2010 00:00:00 PST</pubDate>
 </item>
-<item>
-<title>PostgreSQL Weekly News May 31st 2010</title>
-<description>
-PostgreSQL EU Board election results are in.
-&#x3C;a href=&#x22;http://blog.hagander.net/archives/169-PostgreSQL-Europe-election-results.html&#x22;&#x3E;http://blog.hagander.net/archives/169-PostgreSQL-Europe-election-results.html&#x3C;/a&#x3E;
-
-
-</description>
-<guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20100531</guid>
-<pubDate>Mon, 31 May 2010 00:00:00 PST</pubDate>
-</item>
 </channel>
 </rss>
\ No newline at end of file
index 88db05b82a233a5c0c4b4f8cfae67fef4d3fc7e4..49b4c1ccaf81badd816a671c3065de32a711c590 100644 (file)
@@ -9,6 +9,7 @@ Weekly News
 <p>To receive the Weekly News in your inbox, please subscribe to the <a href="/community/lists/subscribe">[email protected]</a> mailing list.</p>
 
 <ul>
+    <li><a href="/community/weeklynews/pwn20100815">August 15th 2010</a></li>
     <li><a href="/community/weeklynews/pwn20100808">August 8th 2010</a></li>
     <li><a href="/community/weeklynews/pwn20100801">August 1st 2010</a></li>
     <li><a href="/community/weeklynews/pwn20100725">July 25th 2010</a></li>
diff --git a/portal/template/en/community/weeklynews/pwn20100815.html b/portal/template/en/community/weeklynews/pwn20100815.html
new file mode 100644 (file)
index 0000000..436e68f
--- /dev/null
@@ -0,0 +1,432 @@
+<!-- BEGIN page_title_block -->
+Weekly News - August 15 2010
+<!-- END page_title_block -->
+
+<h1>PostgreSQL Weekly News - August 15 2010</h1>
+
+<h2>PostgreSQL Product News</h2>
+<p>
+Npgsql 2.0.10, a .NET data provider for PostgreSQL, released.
+<a href="http://www.npgsql.org">http://www.npgsql.org</a>
+</p>
+
+<h2>PostgreSQL Local</h2>
+<p>
+FrOSCon 2010 will take place in St. Augustin, Germany on August 21-22,
+2010. The German PostgreSQL User Group got his own devroom and some
+interesting talks. More info:
+<a href="http://psoos.blogspot.com/2010/08/postgresql-at-froscon-2010.html">http://psoos.blogspot.com/2010/08/postgresql-at-froscon-2010.html</a>
+</p>
+
+<p>
+The Call for Papers for West is open until September 5, 2010.  Details at:
+<a href="http://www.postgresqlconference.org/">http://www.postgresqlconference.org/</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 [email protected], German language
+to [email protected], Italian language to [email protected].  Spanish language
+</p>
+
+<h2>Applied Patches</h2>
+<p>
+Tom Lane committed:
+</p>
+
+<p>
+- Modify the handling of RAISE without parameters so that the error it
+  throws can be caught in the same places that could catch an ordinary
+  RAISE ERROR in the same location.  The previous coding insisted on
+  throwing the error from the block containing the active exception
+  handler; which is arguably more surprising, and definitely unlike
+  Oracle's behavior.  Not back-patching, since this is a pretty
+  obscure corner case.  The risk of breaking somebody's code in a
+  minor version update seems to outweigh any possible benefit.  Piyush
+  Newe, reviewed by David Fetter.
+</p>
+
+<p>
+- Fix incorrect logic in plpgsql for cleanup after evaluation of
+  non-simple expressions.  We need to deal with this when handling
+  subscripts in an array assignment, and also when catching an
+  exception.  In an Assert-enabled build these omissions led to Assert
+  failures, but I think in a normal build the only consequence would
+  be short-term memory leakage; which may explain why this wasn't
+  reported from the field long ago.  Back-patch to all supported
+  versions.  7.4 doesn't have exceptions, but otherwise these bugs go
+  all the way back.  Heikki Linnakangas and Tom Lane.
+</p>
+
+<p>
+- Add three-parameter forms of array_to_string and string_to_array, to
+  allow better handling of NULL elements within the arrays.  The third
+  parameter is a string that should be used to represent a NULL
+  element, or should be translated into a NULL element, respectively.
+  If the third parameter is NULL it behaves the same as the
+  two-parameter form.  There are two incompatible changes in the
+  behavior of the two-parameter form of string_to_array.  First, it
+  will return an empty (zero-element) array rather than NULL when the
+  input string is of zero length.  Second, if the field separator is
+  NULL, the function splits the string into individual characters,
+  rather than returning NULL as before.  These two changes make this
+  form fully compatible with the behavior of the new three-parameter
+  form.  Pavel Stehule, reviewed by Brendan Jurd.
+</p>
+
+<p>
+- Remove the arbitrary (and undocumented) limit on the number of
+  parameter=value pairs that can be handled by xslt_process().  There
+  is much else to do here, but this patch seems useful in its own
+  right for as long as this code survives.  Pavel Stehule, reviewed by
+  Mike Fowler.
+</p>
+
+<p>
+- Extend psql's \e and \ef commands so that a line number can be
+  specified, and the editor's cursor will be initially placed on that
+  line.  In \e the lines are counted with respect to the query buffer,
+  while in \ef they are counted with line 1 = first line of function
+  body.  These choices are useful for positioning the cursor on the
+  line of a previously-reported error.  To avoid assumptions about
+  what switch the user's editor takes for this purpose, invent a new
+  psql variable EDITOR_LINENUMBER_SWITCH with (at present) no default
+  value.  One incompatibility from previous behavior is that "\e 1234"
+  will now take "1234" as a line number not a file name.  There are at
+  least two ways to select a numerically-named file if you really want
+  to.  Pavel Stehule, reviewed by Jan Urbanski, with further editing
+  by Robert Haas and Tom Lane.
+</p>
+
+<p>
+- Add the ability to compute per-statement latencies (ie, average
+  execution times) to pgbench.  Florian Pflug, reviewed by Greg Smith.
+</p>
+
+<p>
+- In pgsql/contrib/pgbench/pgbench.c, get rid of a bunch of dubious
+  error handling code in pgbench by just erroring out immediately on
+  any out-of-memory condition.  It's rather pointless to imagine that
+  pgbench will be able to continue usefully after a malloc failure,
+  and in any case there were a number of unchecked mallocs.
+</p>
+
+<p>
+- Fix pg_restore to complain if any arguments remain after parsing the
+  switches and input file name, per bug #5617 from Leo Shklovskii.
+  Rearrange the corresponding code in pg_dump and pg_dumpall so that
+  all three programs handle this in a consistent, straightforward
+  fashion.  Back-patch to 9.0, but no further.  Although this is
+  certainly a bug, it's possible that people have scripts that will be
+  broken by the added error check, so it seems better not to change
+  the behavior in stable branches.
+</p>
+
+<p>
+- Fix Assert failure in PushOverrideSearchPath when trying to restore
+  a search path that specifies useTemp, but there is no active temp
+  schema in the current session.  (This can happen if the path was
+  saved during a transaction that created a temp schema and was later
+  rolled back.)  For existing callers it's sufficient to ignore the
+  useTemp flag in this case, though we might later want to offer an
+  option to create a fresh temp schema.  So far as I can tell this is
+  just an Assert failure: in a non-assert build, the code would push a
+  zero onto the new search path, which is useless but not very
+  harmful.  Per bug report from Heikki.  Back-patch to 8.3; prior
+  versions don't have this code.
+</p>
+
+<p>
+- Add xml_is_well_formed, xml_is_well_formed_document,
+  xml_is_well_formed_content functions to the core XML code.  Per
+  discussion, the former depends on XMLOPTION while the others do not.
+  These supersede a version previously offered by contrib/xml2.  Mike
+  Fowler, reviewed by Pavel Stehule.
+</p>
+
+<p>
+- Minor #include cleanup.  I just noticed that libpq's pqsignal.h was
+  violating our general inclusion style guidelines by explicitly
+  including postgres_fe.h.  Remove that, and put it in pqsignal.c
+  where it belongs.
+</p>
+
+<p>
+- In pgsql/src/bin/psql/help.c, clean up failure to use ClosePager()
+  where appropriate.  Also prevent possible repeat opening of pager in
+  helpSQL().
+</p>
+
+<p>
+- In pgsql/src/include/storage/backendid.h, myBackendId now needs to
+  be PGDLLIMPORT, so that contrib modules can access it on Windows.
+  Per buildfarm.
+</p>
+
+<p>
+- Add a \sf (show function) command to psql, for those times when you
+  need to look at a function but don't wish to fire up an editor.
+  Pavel Stehule, reviewed by Jan Urbanski
+</p>
+
+<p>
+- Fix \ef and \sf to not fail on functions with nonnull probin.
+  Update comment about them in pg_get_functiondef.
+</p>
+
+<p>
+- In pgsql/src/backend/optimizer/util/clauses.c, fix planner to make a
+  reasonable assumption about the amount of memory space used by
+  array_agg(), string_agg(), and similar aggregate functions that use
+  "internal" as their transition datatype.  The previous coding
+  thought this took *no* extra space, since "internal" is
+  pass-by-value; but actually these aggregates typically consume a
+  great deal of space.  Per bug #5608 from Itagaki Takahiro, and fix
+  suggestion from Hitoshi Harada.  Back-patch to 8.4, where array_agg
+  was introduced.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/pgbench.sgml, avoid unnecessary use of TPS
+  acronym.  Robert Haas, per gripe from Erik Rijkers.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/pgarchivecleanup.sgml, improve
+  pgarchivecleanup documentation, per comments from Satoshi Nagayasu.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/func.sgml, clarify bit numbering in
+  get_bit/set_bit etc.  Per gripe from Zoltan Boszormenyi.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/backup.sgml, assorted improvements to
+  backup/restore documentation, per Thom Brown.
+</p>
+
+<p>
+- In pgsql/src/bin/psql/mbprint.c, fix psql's copy of utf2ucs() to
+  match the backend's copy exactly; in particular, propagate a fix in
+  the test to see whether a UTF8 character has length 4 bytes.  This
+  is likely of little real-world consequence because 5-or-more-byte
+  UTF8 sequences are not supported by Postgres nor seen anywhere in
+  the wild, but still we may as well get it right.  Problem found by
+  Joseph Adams.  Bug is aboriginal, so back-patch all the way.
+</p>
+
+<p>
+Robert Haas committed:
+</p>
+
+<p>
+- In the libpq docs, provide stable target anchors for libpq
+  functions.  Daniele Varrazzo.
+</p>
+
+<p>
+- Use double quotes rather than double quotes for libpq target
+  anchors.  Per observation from Tom Lane that the previous patch to
+  these files was not consistent with what is done elsewhere in the
+  docs.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ecpg.sgml, fix incorrect errno definitions in
+  ECPG manual.  ecpgerrno.h hasn't materially changed since PostgreSQL
+  7.4, so this has been wrong for a very long time.  Back-patch all
+  the way.  Satoshi Nagayasu.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ecpg.sgml, fix one more incorrect errno
+  definition in the ECPG manual.  Again, back-patch all the way to
+  7.4.
+</p>
+
+<p>
+- Correct sundry errors in Hot Standby-related comments.  Fujii Masao.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/syntax.sgml, reorder docs on lexical structure
+  slightly for clarity.  Thom Brown.
+</p>
+
+<p>
+- In pgsql/src/backend/access/transam/xact.c, make RecordTransactionCommit()
+  respect wal_level.  Since the only purpose of WAL-logging
+  SharedInvalidationMessages is to support Hot Standby operation, they
+  needn't be included when wal_level < hot_standby.  Back-patch to
+  9.0.  Review by Heikki Linnakanagas and Fujii Masao.
+</p>
+
+<p>
+- Include the backend ID in the relpath of temporary relations.  This
+  allows us to reliably remove all leftover temporary relation files
+  on cluster startup without reference to system catalogs or WAL;
+  therefore, we no longer include temporary relations in
+  XLOG_XACT_COMMIT and XLOG_XACT_ABORT WAL records.  Since these
+  changes require including a backend ID in each SharedInvalSmgrMsg,
+  the size of the SharedInvalidationMessage.id field has been reduced
+  from two bytes to one, and the maximum number of connections has
+  been reduced from INT_MAX / 4 to 2^23-1.  It would be possible to
+  remove these restrictions by increasing the size of
+  SharedInvalidationMessage by 4 bytes, but right now that doesn't
+  seem like a good trade-off.  Review by Jaime Casanova and Tom Lane.
+</p>
+
+<p>
+- Fix assorted dtrace breakage caused by patch to include backend IDs
+  in temp relpaths.  Per buildfarm.
+</p>
+
+<p>
+- Further dtrace adjustments for the backend-IDs-in-relpath patch.
+  Update the documentation, and back out a few ill-considered changes
+  whose folly I failed to realize for failure to read the
+  documentation.
+</p>
+
+<p>
+- Add doc link and additional index reference to pgcrypto.  Kevin
+  Grittner, with markup adjustments.
+</p>
+
+<p>
+- In pgsql/src/backend/storage/lmgr/lmgr.c, make LockDatabaseObject()
+  AcceptInvalidationMessages().  This is appropriate for the same
+  reasons we already do it in LockSharedObject(): things might have
+  changed while we were waiting for the lock.  There doesn't seem to
+  be a live bug here at the moment, but that's mostly because it isn't
+  currently used for very much.
+</p>
+
+<p>
+Bruce Momjian committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/ref/explain.sgml, add EXPLAIN documentation
+  example.  Gabrielle Roth.  Backpatch to 9.0.X.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/syntax.sgml, properly lowercase identifiers,
+  uppercase keywords, in doc examples.
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/syntax.sgml, back out syntax case changes ---
+  seems they were intentional.
+</p>
+
+<p>
+Peter Eisentraut committed:
+</p>
+
+<p>
+- In pgsql/doc/src/sgml/datatype.sgml, <example> is a floating
+  element, so it's use is inappropriate when the surrounding text
+  refers to the example inline.
+</p>
+
+<p>
+- Add some links to tables in the docs.
+</p>
+
+<p>
+Heikki Linnakangas committed:
+</p>
+
+<p>
+- In pgsql/src/backend/utils/adt/arrayfuncs.c, the sanity check added
+  to array_recv() wa a bit too tight; we must continue to accept an
+  empty array with dimension information.  array_send() can output
+  such arrays.  Per report from Vladimir Shakhov.
+</p>
+
+<h2>Rejected Patches (for now)</h2>
+<p>
+No one was disappointed this week :-)
+</p>
+
+<h2>Pending Patches</h2>
+<p>
+Erik Rijkers sent in a doc patch for pgbench defining TPS to mean
+"transactions per second."
+</p>
+
+<p>
+Kris Jurka sent in another revision of the patch to fix COPY IN.
+</p>
+
+<p>
+Peter Eisentraut sent in a patch to allow specifying hosts by name in
+pg_hba.conf.
+</p>
+
+<p>
+Pavel Stehule sent in another revision of the GROUPING SETS patch.
+</p>
+
+<p>
+Robert Haas sent in a patch to reduce the size of the id for
+SharedInvalidationMessages to one byte.
+</p>
+
+<p>
+Boxuan Zhai sent in four more revisions of the MERGE patch, and Heikki
+Linnakangas responded with a cleaned-up one.
+</p>
+
+<p>
+Joseph Adams sent in two more WIP patches to add the JSON type, the
+second adding it as a core type rather than the previous contrib.
+</p>
+
+<p>
+Fujii Masao sent in a patch to align the docs and code for
+trace_recovery_messages.
+</p>
+
+<p>
+Greg Smith sent in another revision of the patch to add individual
+statement latencies to pgbench.
+</p>
+
+<p>
+Joseph Adams sent in a patch to fix utf8-to-unicode.
+</p>
+
+<p>
+Joseph Adams sent in some general utility functions for, among other
+things, enum handling in C stored procedures.
+</p>
+
+<p>
+Zoltan Boszormenyi sent in a WIP patch to add replication to the SQL
+syntax.
+</p>
+
+<p>
+Dean Rasheed sent in another WIP patch to implement triggers on views.
+</p>
+
+<p>
+Robert Haas sent in another revision of the patch to refactor
+comment.c.
+
+</p>
+