PostgreSQL Weekly News December 26, 2010
authorDavid Fetter <david@fetter.org>
Mon, 27 Dec 2010 05:14:19 +0000 (05:14 +0000)
committerDavid Fetter <david@fetter.org>
Mon, 27 Dec 2010 05:14:19 +0000 (05:14 +0000)
git-svn-id: file:///Users/dpage/pgweb/svn-repo/trunk@2792 8f5c7a92-453e-0410-a47f-ad33c8a6b003

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

index f6a7c08f5fda8f321028a24211d53c5dfd91b576..fcd383f7ab532da7817b2da65040cec0d9534eee 100644 (file)
 <description></description>
 <language>en</language>
 
+<item>
+<title>PostgreSQL Weekly News December 26th 2010</title>
+<description>
+Happy Boxing Day from the PostgreSQL Weekly News!
+
+
+</description>
+<guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20101226</guid>
+<pubDate>Sun, 26 Dec 2010 00:00:00 PST</pubDate>
+</item>
 <item>
 <title>PostgreSQL Weekly News December 19th 2010</title>
 <description>
@@ -116,17 +126,5 @@ New Survey: What do you think of Hot Standby / Streaming Replication?
 <guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20101024</guid>
 <pubDate>Sun, 24 Oct 2010 00:00:00 PST</pubDate>
 </item>
-<item>
-<title>PostgreSQL Weekly News October 17th 2010</title>
-<description>
-PDXPUG presents Aurynn Shaw on Postgres and Node.js.  Thursday,
-October 21, 2010, 7-9pm at FreeGeek in Portland, Oregon.
-&#x3C;a href=&#x22;http://pugs.postgresql.org/node/1650&#x22;&#x3E;http://pugs.postgresql.org/node/1650&#x3C;/a&#x3E;
-
-
-</description>
-<guid isPermaLink="true">http://www.postgresql.org/community/weeklynews/pwn20101017</guid>
-<pubDate>Sun, 17 Oct 2010 00:00:00 PST</pubDate>
-</item>
 </channel>
 </rss>
\ No newline at end of file
index 1d7b1a9df03c470382cc4ce37855e3e2a4322c66..ed10d3178cfe44c9348caf61415e1a2cb0894087 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">pgsql-announce@postgresql.org</a> mailing list.</p>
 
 <ul>
+    <li><a href="/community/weeklynews/pwn20101226">December 26th 2010</a></li>
     <li><a href="/community/weeklynews/pwn20101219">December 19th 2010</a></li>
     <li><a href="/community/weeklynews/pwn20101212">December 12th 2010</a></li>
     <li><a href="/community/weeklynews/pwn20101205">December 5th 2010</a></li>
diff --git a/portal/template/en/community/weeklynews/pwn20101226.html b/portal/template/en/community/weeklynews/pwn20101226.html
new file mode 100644 (file)
index 0000000..0dfcad4
--- /dev/null
@@ -0,0 +1,423 @@
+<!-- BEGIN page_title_block -->
+Weekly News - December 26 2010
+<!-- END page_title_block -->
+
+<h1>PostgreSQL Weekly News - December 26 2010</h1>
+
+<p>
+Happy Boxing Day from the PostgreSQL Weekly News!
+</p>
+
+<h2>PostgreSQL Product News</h2>
+<p>
+psycopg2 2.3.2 a Python connector for PostgreSQL, released.
+<a href="http://initd.org/psycopg/">http://initd.org/psycopg/</a>
+</p>
+
+<h2>PostgreSQL Jobs for December</h2>
+<p>
+<a href="http://archives.postgresql.org/pgsql-jobs/2010-12/threads.php">http://archives.postgresql.org/pgsql-jobs/2010-12/threads.php</a>
+</p>
+
+<h2>PostgreSQL Local</h2>
+<p>
+FOSDEM is one of the biggest Free and Open Source event held annually
+in Brussels, Belgium, on February 5-6, 2011, and attended by around
+4000 people.  Send in your proposal to fosdem AT postgresql DOT eu.
+<a href="http://andreas.scherbaum.la/blog/archives/749-PostgreSQLFOSDEM-2011-Call-for-talks.html">http://andreas.scherbaum.la/blog/archives/749-PostgreSQLFOSDEM-2011-Call-for-talks.html</a>
+</p>
+
+<p>
+The Call for Papers for the fourth annual Prague PostgreSQL
+Developers' Day is open.  It will be held February 10, 2011 at Charles
+University in Prague.
+<a href="http://archives.postgresql.org/pgsql-announce/2010-12/msg00009.php">http://archives.postgresql.org/pgsql-announce/2010-12/msg00009.php</a>
+</p>
+
+<p>
+The PostgreSQLFr Call for Projects has begun.  Projects must target
+PostgreSQL and the French-speaking community.  Mail appel-projets-2010
+AT postgresql DOT fr.
+<a href="http://www.postgresql.fr/appel_a_projets_2010:call_for_projects">http://www.postgresql.fr/appel_a_projets_2010:call_for_projects</a>
+</p>
+
+<p>
+PGDay is scheduled at this year's Southern California Linux Exposition
+(SCALE) held in the LAX Hilton Hotel in the city of Los Angeles,
+California, on Friday February 25th, 2011.  Post your talk submission
+to pgday-submissions AT googlegroups DOT com.
+</p>
+
+<p>
+PostgreSQL Conference East 2011: NYC March 22nd - 25th
+<a href="http://www.postgresqlconference.org">http://www.postgresqlconference.org</a>
+</p>
+
+<p>
+PGCon will be May 19-20, 2011 at the University of Ottawa, preceded by
+two days of tutorials on May 17-18.  The Call for Papers is open!
+<a href="http://www.pgcon.org/2011/">http://www.pgcon.org/2011/</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>Reviews</h2>
+<h2>Applied Patches</h2>
+<p>
+Alvaro Herrera pushed:
+</p>
+
+<p>
+- Fix typo.  Jaime Casanova.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=f9e9763b62df5415a60f30b441a73b381599e760">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=f9e9763b62df5415a60f30b441a73b381599e760</a>
+</p>
+
+<p>
+Robert Haas pushed:
+</p>
+
+<p>
+- Allow transactions that don't write WAL to commit asynchronously.
+  This case can arise if a transaction has written data, but only to
+  temporary tables.  Loss of the commit record in case of a crash
+  won't matter, because the temporary tables will be lost anyway.
+  Reviewed by Heikki Linnakangas and Simon Riggs.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=f6a0863e3cb72763490ceca2c558d5ef2dddd5f2">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=f6a0863e3cb72763490ceca2c558d5ef2dddd5f2</a>
+</p>
+
+<p>
+- Work around unfortunate getppid() behavior on BSD-ish systems.  On
+  MacOS X, and apparently also on other BSD-derived systems, attaching
+  a debugger causes getppid() to return the pid of the debugging
+  process rather than the actual parent PID.  As a result, debugging
+  the autovacuum launcher, startup process, or WAL sender on such
+  systems causes it to exit, because the previous coding of
+  PostmasterIsAlive() detects postmaster death by testing whether
+  getppid() == PostmasterPid.  Work around that behavior by checking
+  the return value of getppid() more carefully.  If it's
+  PostmasterPid, the postmaster must be alive; if it's 1, assume the
+  postmaster is dead.  If it's any other value, assume we've been
+  debugged and fall through to the less-reliable kill() test.  Review
+  by Tom Lane.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=24ecde7742cd4d7c781e6890b07571fff42b25dc">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=24ecde7742cd4d7c781e6890b07571fff42b25dc</a>
+</p>
+
+<p>
+- Fix typos.  Andreas Karlsson.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=c5160b7eecf97a357375960b02a30317474334a3">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=c5160b7eecf97a357375960b02a30317474334a3</a>
+</p>
+
+<p>
+- Use memcmp() rather than strncmp() when shorter string length is
+  known.  It appears that this will be faster for all but the shortest
+  strings; at least one some platforms, memcmp() can use
+  word-at-a-time comparisons.  Noah Misch, somewhat pared down.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=32ba2b516066688ff56e6d62a7ff4a01c88f5700">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=32ba2b516066688ff56e6d62a7ff4a01c88f5700</a>
+</p>
+
+<p>
+- Typo fix.  Noted by Thom Brown.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=2a0f13a765befefc2658d3729f3e174b7c252125">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=2a0f13a765befefc2658d3729f3e174b7c252125</a>
+</p>
+
+<p>
+- Document pg_dump(all) --no-security-label instead of --security-label.
+  The former is the option actually supported by these commands.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=a1b0035949da09bb0f19d2d9c2d54ca54ca55752">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=a1b0035949da09bb0f19d2d9c2d54ca54ca55752</a>
+</p>
+
+<p>
+- Correct spelling: longjump() -> longjmp().
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=4ec92b05e640b0991ba67d41cbb097200200fe70">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=4ec92b05e640b0991ba67d41cbb097200200fe70</a>
+</p>
+
+<p>
+- Add foreign data wrapper error code values for SQL/MED.  Extracted
+  from a much larger patch by Shigeru Hanada.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=85cff3ce7f360d139d87aee836d75a6202fee066">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=85cff3ce7f360d139d87aee836d75a6202fee066</a>
+</p>
+
+<p>
+- Corrections to patch adding SQL/MED error codes.  My previous
+  commit, 85cff3ce7f360d139d87aee836d75a6202fee066 on 2010-12-25,
+  failed to update errcodes.sgml or plerrcodes.h.  This patch corrects
+  that oversight, per a gripe from Tom Lane, and also corrects a
+  typographical error.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=63676ebff402050f6b0b347188f5e857474da9e1">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=63676ebff402050f6b0b347188f5e857474da9e1</a>
+</p>
+
+<p>
+Magnus Hagander pushed:
+</p>
+
+<p>
+- Add PQlibVersion() function to libpq.  This function is like the
+  PQserverVersion() function except it returns the version of libpq,
+  making it possible for a client program or driver to determine which
+  version of libpq is in use at runtime, and not just at link time.
+  Suggested by Harald Armin Massa and several others.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=de9a4c27fefcc0d104bc9c97f4a93a49a25bf66d">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=de9a4c27fefcc0d104bc9c97f4a93a49a25bf66d</a>
+</p>
+
+<p>
+Bruce Momjian pushed:
+</p>
+
+<p>
+- Wording improvements for pg_ctl manual page.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=28d5c565ced893366d010e6754a9fad6d0a40364">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=28d5c565ced893366d010e6754a9fad6d0a40364</a>
+</p>
+
+<p>
+- Document that BBU's do not allow partial page writes to be safely
+  turned off unless they guarantee that all writes to the BBU arrive
+  in 8kB chunks.  Per discussion with Greg Smith
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=7a1ca8977fd109a86b540444f71f24bd2f38ea43">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=7a1ca8977fd109a86b540444f71f24bd2f38ea43</a>
+</p>
+
+<p>
+- Improve "pg_ctl -w start" server detection by writing the postmaster
+  port and socket directory into postmaster.pid, and have pg_ctl read
+  from that file, for use by PQping().
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=075354ad1bc0496c30dbd4dafb0f88a4d3e54cbc">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=075354ad1bc0496c30dbd4dafb0f88a4d3e54cbc</a>
+</p>
+
+<p>
+- Backpatch to 9.0 a doc mention that a BBU does not prevent partial
+  page writes.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=c47458529533bc88e34778818a4ce7d5c309d7a8">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=c47458529533bc88e34778818a4ce7d5c309d7a8</a>
+</p>
+
+<p>
+- Remove quotes from boolean recovery.conf.sample parameters, now that
+  the quotes are not required.  This now matches postgresql.conf's
+  specification of booleans.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=5000472112da91023bf468e57bb8ce9217426ed7">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=5000472112da91023bf468e57bb8ce9217426ed7</a>
+</p>
+
+<p>
+Heikki Linnakangas pushed:
+</p>
+
+<p>
+- Rewrite the GiST insertion logic so that we don't need the
+  post-recovery cleanup stage to finish incomplete inserts or splits
+  anymore.  There was two reasons for the cleanup step: 1. When a new
+  tuple was inserted to a leaf page, the downlink in the parent needed
+  to be updated to contain (i.e. to be consistent with) the new key.
+  Updating the parent in turn might require recursively updating the
+  parent of the parent.  We now handle that by updating the parent
+  while traversing down the tree, so that when we insert the leaf
+  tuple, all the parents are already consistent with the new key, and
+  the tree is consistent at every step.  2. When a page is split, we
+  need to insert the downlink for the new right page(s), and update
+  the downlink for the original page to not include keys that moved to
+  the right page(s).  We now handle that by setting a new flag,
+  F_FOLLOW_RIGHT, on the non-rightmost pages in the split.  When that
+  flag is set, scans always follow the rightlink, regardless of the
+  NSN mechanism used to detect concurrent page splits.  That way the
+  tree is consistent right after split, even though the downlink is
+  still missing.  This is very similar to the way B-tree splits are
+  handled.  When the downlink is inserted in the parent, the flag is
+  cleared.  To keep the insertion algorithm simple, when an insertion
+  sees an incomplete split, indicated by the F_FOLLOW_RIGHT flag, it
+  finishes the split before doing anything else.  These changes allow
+  removing the whole "invalid tuple" mechanism, but I retained the
+  scan code to still follow invalid tuples correctly.  While we don't
+  create any such tuples anymore, we want to handle them gracefully in
+  case you pg_upgrade a GiST index that has them.  If we encounter any
+  on an insert, though, we just throw an error saying that you need to
+  REINDEX.  The issue that got me into doing this is that if you did a
+  checkpoint while an insert or split was in progress, and the
+  checkpoint finishes quickly so that there is no WAL record related
+  to the insert between RedoRecPtr and the checkpoint record, recovery
+  from that checkpoint would not know to finish the incomplete insert.
+  IOW, we have the same issue we solved with the rm_safe_restartpoint
+  mechanism during normal operation too.  It's highly unlikely to
+  happen in practice, and this fix is far too large to backpatch, so
+  we're just going to live with in previous versions, but this
+  refactoring fixes it going forward.  With this patch, you don't get
+  the annoying 'index "FOO" needs VACUUM or REINDEX to finish crash
+  recovery' notices anymore if you crash at an unfortunate moment.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=9de3aa65f01fb51cbc725e8508ea233e4e92c46c">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=9de3aa65f01fb51cbc725e8508ea233e4e92c46c</a>
+</p>
+
+<p>
+Michael Meskes pushed:
+</p>
+
+<p>
+- Added rule to ecpg lexer to accept "Unicode surrogate pair in
+  extended quoted string". This is not really needed because the
+  string gets copied to the output untranslated anyway, but by adding
+  this rule the lexer stays in sync with the backend lexer.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=727a5a1620dd9f84036f8094f99a6ea494143bef">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=727a5a1620dd9f84036f8094f99a6ea494143bef</a>
+</p>
+
+<p>
+Peter Eisentraut pushed:
+</p>
+
+<p>
+- Move the documentation of --no-security-label to a more sensible
+  place.  The order on the pg_dump/pg_dumpall man pages is not very
+  strict, but surely putting it under connection options was wrong.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=4b1742a192a60b9c063fd7e93f5aed7a697bece1">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=4b1742a192a60b9c063fd7e93f5aed7a697bece1</a>
+</p>
+
+<p>
+- Release notes for 9.1alpha3.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=b2fd345ab9ef5857ff42e6d81d57a0f15247b430">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=b2fd345ab9ef5857ff42e6d81d57a0f15247b430</a>
+</p>
+
+<p>
+- Fix grammar.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=79a9decdd33c9662c0722ef1d49d8aa951739da4">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=79a9decdd33c9662c0722ef1d49d8aa951739da4</a>
+</p>
+
+<p>
+Andrew Dunstan pushed:
+</p>
+
+<p>
+- Allow vpath builds and regression tests to succeed on Mingw.
+  Backpatch to release 8.4 - earlier releases would require more
+  changes and it's not worth the trouble.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=04ee0db6b287a1ff41b55cc440769a1dddc318a7">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=04ee0db6b287a1ff41b55cc440769a1dddc318a7</a>
+</p>
+
+<p>
+- Only build in crashdump support on Windows if there's a working
+  dbghelp.h.
+  <a href="http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=a534728afb7341e1ddf2df16196ed501eaa378c2">http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=a534728afb7341e1ddf2df16196ed501eaa378c2</a>
+</p>
+
+<h2>Rejected Patches (for now)</h2>
+<p>
+No one was disappointed this week :-)
+</p>
+
+<h2>Pending Patches</h2>
+<p>
+Magnus Hagander sent in another revision of the patch to allow
+querying the version of libpq.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in another revision of the patch to export some
+of the functions COPY uses.  This will help, among other things, the
+SQL/MED file-based operations.
+</p>
+
+<p>
+Dimitri Fontaine sent in two more revisions of the patch to add
+extensions.
+</p>
+
+<p>
+Andrew Dunstan sent in a patch to allow a vpath build to be used on
+MingW.
+</p>
+
+<p>
+Noah Misch sent in a patch to change strncmp to memcmp when we know
+the shorter length.  In the tests he ran, this resulted in a 13% speed
+boost.
+</p>
+
+<p>
+Noah Misch sent in a patch based on the above patch to check lengths
+texteq, textne, byteaeq and byteane before detoasting, as unequal
+lengths imply inequality without further elaboration.
+</p>
+
+<p>
+Alvaro Herrera sent in a patch atop Dimitri Fontaine's extension
+patch.
+</p>
+
+<p>
+Sushant Sinha sent in a patch to fix an off-by-one error in
+ts_rank_cd.
+</p>
+
+<p>
+Shigeru HANADA sent in another revision of the file_fdw patch for
+SQL/MED.
+</p>
+
+<p>
+Merlin Moncure sent in a patch which makes the existence of hint bits
+a compile time option.
+</p>
+
+<p>
+Alex Hunsaker sent in another revision of the patch to fix an issue
+with PL/PerlU's handling of utf8.
+</p>
+
+<p>
+Fujii Masao sent in two more revisions of a patch to fix a bug in
+SignalSomeChildren.
+</p>
+
+<p>
+Bruce Momjian sent in a patch to add the port number and optionally
+socket directory location to postmaster.pid, and modify pg_ctl to use
+that information.
+</p>
+
+<p>
+Jan Urbanski sent in a flock of patches to refactor PL/PythonU.
+</p>
+
+<p>
+Tomas Vondra sent in another revisions of the patch to allow people to
+see the timestamp at which stats were reset by database if any table,
+index or function's statistics have been reset.
+</p>
+
+<p>
+Magnus Hagander sent in a patch to change walsender to require a
+special privilege for replication.
+</p>
+
+<p>
+KaiGai Kohei sent in SE-PostgreSQL as a contrib module.
+</p>
+
+<p>
+Shigeru HANADA sent in another revision of the patch to make file_fdw
+work.
+</p>
+
+<p>
+Robert Haas sent in another revision of the patch to add unlogged
+tables.
+</p>
+
+<p>
+Kevin Grittner sent in a patch to address issues with long-running
+transactions in SERIALIZABLE isolation mode.
+</p>
+
+<p>
+ITAGAKI Takahiro sent in another revision of the patch to add SQL
+standard MULTISETs.
+
+</p>
+