User: Password:
Subscribe / Log in / New account

[ANNOUNCE] == PostgreSQL Weekly News - May 08 2011 ==

From:  David Fetter <>
To:  PostgreSQL Announce <>
Subject:  [ANNOUNCE] == PostgreSQL Weekly News - May 08 2011 ==
Date:  Sun, 8 May 2011 22:10:36 -0700
Message-ID:  <>
Archive-link:  Article

== PostgreSQL Weekly News - May 08 2011 ==

PostgreSQL 9.1 beta 1 is out.  Test!

AustinPUG will meet on May 11 at 7 p.m in Austin, Texas, USA.  Free
Pizza!  To get fed, RSVP to <austinpug AT postgresql DOT org>.

CHAR(11), the PostgreSQL Conference on Clustering, High Availability
and Replication is now open for online registration and bookings.
July 11-12 2011 in Cambridge, UK.

PostgreSQL Confernece West (#PgWest) will be held September 27th-30th,
2011 at the San Jose Convention center in San Jose, California, USA.

== PostgreSQL Product News ==

pgbuildfarm client 4.5 released.

pgpool-II 3.1.0 alpha2, a connection pooler and more, released.

== PostgreSQL Jobs for May ==

== PostgreSQL Local ==

PGCon will be May 19-20, 2011 at the University of Ottawa, preceded by
two days of tutorials on May 17-18.

PG Session 2, on PostGIS, will be held on June 23rd in Paris.  The CfP
is open!

PostgreSQL Conference Europe 2011 will be held on October 18-21 in

pgbr will be in Sao Paulo, Brazil November 3-4, 2011.

== PostgreSQL in the News ==

Planet PostgreSQL:

PostgreSQL Weekly News is brought to you this week by David Fetter

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to, German language
to, Italian language to  Spanish language

== Reviews ==

== Applied Patches ==

Tom Lane pushed:

- Improve aset.c's space management in contexts with small
  maxBlockSize.  The previous coding would allow requests up to half
  of maxBlockSize to be treated as "chunks", but when that actually
  did happen, we'd waste nearly half of the space in the malloc block
  containing the chunk, if no smaller requests came along to fill it.
  Avoid this scenario by limiting the maximum size of a chunk to 1/8th
  maxBlockSize, so that we can waste no more than 1/8th of the
  allocated space.  This will not change the behavior at all for the
  default context size parameters (with large maxBlockSize), but it
  will change the behavior when using ALLOCSET_SMALL_MAXSIZE.  In
  particular, there's no longer a need for spell.c to be overly
  concerned about the request size parameters it uses, so remove a
  rather unhelpful comment about that.  Merlin Moncure, per an idea of
  Tom Lane's

- Fix pull_up_sublinks' failure to handle nested pull-up
  opportunities.  After finding an EXISTS or ANY sub-select that can
  be converted to a semi-join or anti-join, we should recurse into the
  body of the sub-select.  This allows cases such as
  EXISTS-within-EXISTS to be optimized properly.  The original coding
  would leave the lower sub-select as a SubLink, which is no better
  and often worse than what we can do with a join.  Per example from
  Wayne Conrad.  Back-patch to 8.4.  There is a related issue in older
  versions' handling of pull_up_IN_clauses, but they're lame enough
  anyway about the whole area that it seems not worth the extra work
  to try to fix.

- Include unary plus in the Operator Precedence table.  Per gripe from
  Grzegorz Szpetkowski.  Also, change the subsection heading from
  "Lexical Precedence" (which is a contradiction in terms) to
  "Operator Precedence".

- Remove precedence labeling of keywords TRUE, FALSE, UNKNOWN, and
  ZONE.  These were labeled with precedences just to avoid attaching
  explicit precedences to the productions in which they were the last
  terminal symbol.  Since a terminal symbol precedence marking can
  affect many other things too, it seems like better practice to
  attach precedence labels to the productions, and not mark the
  terminal symbols.  Ideally we'd also remove the precedence attached
  to NULL_P, but it turns out that we are actually depending on that
  having a precedence higher than POSTFIXOP, else we get a
  shift/reduce conflict for postfix operators in b_expr.  (Which more
  or less proves my point about these markings having a high risk of
  unexpected consequences.)  For the moment, move NULL_P into the set
  of keywords grouped with IDENT, so that at least it will act
  similarly to non-keywords; and document the interaction.

- Move RegisterPredicateLockingXid() call to a safer place.  The SSI
  patch inserted a call of RegisterPredicateLockingXid into
  GetNewTransactionId, which was a bad idea on a couple of grounds.
  First, it's not necessary to hold XidGenLock while manipulating that
  shared memory, and doing so is bad because XidGenLock is a
  high-contention lock that should be held for as short a time as
  possible.  (Not to mention that it adds an entirely unnecessary
  deadlock hazard, since we must take SerializableXactHashLock as
  well.)  Second, the specific place where it was put was between
  extending CLOG and advancing nextXid, which could result in
  unpleasant behavior in case of a failure there.  Pull the call out
  to AssignTransactionId, which is much safer and arguably better from
  a modularity standpoint too.  There is more work to do to clean up
  the failure-before-advancing-nextXid issue, but that is a separate
  change that will need to be back-patched.  So for the moment I just
  want to make GetNewTransactionId look the same as it did in prior

- Fix some portability issues in isolation regression test driver.
  Remove random system #includes in favor of using postgres_fe.h.
  (The alternative to that is letting this module grow its own
  configuration testing ability...) Also fix the "make clean" target
  to actually clean things up.  Per local testing.

Peter Eisentraut pushed:

- Small cleanup of spacing in verbatim DocBook elements

- Fix alignment of --help output.  Tabs replaced by spaces.

- Message style cleanup

- Remove redundant port number check.  pg_basebackup doesn't need to
  police the format of port numbers.  libpq already does that.

- Link some tables into the surrounding text by their id

- Improve pg_archivecleanup and pg_standby --help output.  For
  consistency with other tools, put the options before further usage
  information.  In pg_standby, remove the supposedly deprecated -l
  option from the given example invocation.

- Improve formatting of pg_upgrade --help output.

- Improve compiler string shown in version().  With some compilers
  such as Clang and ICC emulating GCC, using a version string of the
  form "GCC $version" can be quite misleading.  Also, a great while
  ago, the version output from gcc --version started including the
  string "gcc", so it is redundant to repeat that.  In order to
  support ancient GCC versions, we now prefix the result with "GCC "
  only if the version output does not start with a letter.

Alvaro Herrera pushed:

- Update some ALTER USER cross-references to ALTER ROLE.  Greg Smith

- Add ID attribute to some sect2's missing it.  David Fetter

- Update obsolete mention of Sequoia, now known as Tungsten.  Per Greg

- Improve description of read/write traffic scalability.  Greg Smith,
  after a suggestion of James Bruce

Bruce Momjian pushed:

- Improve style of Perl script.

- Adjust pg_upgrade FATAL error messages to have consistent newlines.
  Also adjust some error message capitalization for consistency.

- Check that the pg_upgrade user specified is a super-user.  Also
  report the error message when the post-pg_ctl connection fails.  Per
  private bug report from EnterpriseDB.

- In pg_upgrade, report non-super-user username in error message.

- Add missing documention connecting word.

- Add xreflabels to /contrib manuals so links appear correct.  Also
  update README.links to explain xref properly.

- Add C comment why client encoding can be set in pg_upgrade.

- Add C comment about the fact that the autovacuum limit can go
  backwards by 3, but that is it OK.

Magnus Hagander pushed:

- Clarify error message when attempting to create index on foreign
  table.  Instead of just saying "is not a table", specifically state
  that indexes aren't supported on *foreign* tables.

- Unbreak the regression tests from my previous commit

Robert Haas pushed:

- Fix typos in SECURITY LABEL documentation.  KaiGai Kohei

- Add comment about memory reordering to PredicateLockTupleRowVersionLink.
  Dan Ports, per head-scratching from Simon Riggs and myself.

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Gabriele Bartolini sent in another revision of the patch to smooth
replication during VACUUM FULL.

Joe Conway sent in a patch to fix clog redos under high load.

Johann 'Myrkraverk' Oskarsson sent in a patch to fix an issue on
mingw-w64 where the PGDLLEXPORT macro is blank.

Alvaro Herrera updated the "preferred types" patch to HEAD.

Jaime Casanova sent in a patch to add an xlogversion column to
IDENTIFY_SYSTEM.  This is one of the infrastructure pieces which will
make on-line upgrades possible.

Hitoshi Harada sent in a patch to allow the optimizer to pull up
aggregate subqueries.

Bruce Momjian sent in patches to adjust the comments on system tables.

Magnus Hagander sent in a patch to fix the error for attempting to
index a foreign table.

Tom Lane sent in a patch to fix a some suprising precedence in
PostgreSQL's SQL grammar.

Dan Ports sent in two revisions of a patch to fix a race condition in
SSI's ChecTargetForConflictsIn.

Peter Geoghegan sent in a WIP patch to help save energy by waking up
less frequently.

Merlin Moncure sent in another revision of the patch to fix an issue
between the visibility map and hint bits.

Robert Haas sent in another revision of the patch to make visibility
maps more crash-safe.

Josh Kupershmidt sent in a patch to clean up psql's decribe.c.

Andrew Dunstan sent in another revision of the patch to fix an issue
where invalid characters were allowed in XML.

Greg Smith sent in a patch exemplifying the idea of moving some
contrib modules to being default, but still using the EXTENSION

---------------------------(end of broadcast)---------------------------
-To unsubscribe from this list, send an email to:


(Log in to post comments)

Copyright © 2011, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds