Skip site navigation (1) Skip section navigation (2)

== PostgreSQL Weekly News - June 12 2011 ==

From: David Fetter <david(at)fetter(dot)org>
To: PostgreSQL Announce <pgsql-announce(at)postgresql(dot)org>
Subject: == PostgreSQL Weekly News - June 12 2011 ==
Date: 2011-06-13 06:12:48
Message-ID: 20110613061248.GH7197@fetter.org (view raw or flat)
Thread:
Lists: pgsql-announce
== PostgreSQL Weekly News - June 12 2011 ==

NYCPUG presents "Data Storage at foursqare" June 22, 2011 6:30PM at
Spotify.  RSVP and details below.
http://www.nycpug.org/events/21300271/

PostgreSQL Conference West will be at the San Jose Convention Center,
in San Jose, CA from September 27th - 30th, 2011.
https://www.postgresqlconference.org/talk_types

PostgreSQL Conference Europe 2011 will be held on Ocober 18-21 in the
Casa 400 Hotel in Amsterdam, The Netherlands.  It will cover topics
for PostgreSQL users, developers and contributors, as well as decision
and policy makers. For more information about the conference, please
see the website at:
http://2011.pgconf.eu/

PG-Day Denver 2011 will be held on Saturday, September 17th, 2011 at
the Auraria Campus near downtown Denver, Colorado.
http://pgday.consistentstate.com/

== PostgreSQL Product News ==

pgreplay 1.0.0, a statement log replayer for PostgreSQL, released.
http://pgreplay.projects.postgresql.org/

Devart LinqConnect 2.50 and Developer 3.50 released.
http://www.devart.com/linqconnect/

Pyrseas 0.2.1, a toolkit for PostgreSQL version control, released on
PGXN.
http://pgxn.org/dist/pyrseas/

== PostgreSQL Jobs for June ==

http://archives.postgresql.org/pgsql-jobs/2011-06/threads.php

== PostgreSQL Local ==

PG Session 2, on PostGIS, will be held on June 23rd in Paris.  The CfP
is open!
http://www.postgresql-sessions.org/en/2/

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.
http://www.char11.org/

PostgreSQL Conference China 2011 will be held in Guangzhou July
15-16, 2011.
http://wiki.postgresql.org/wiki/Pgconchina2011

PDXPUG is hosting PgDay on Sunday, July 24, 2011, one day before
OSCON, in Portland, Oregon, USA.  Details here:
http://pugs.postgresql.org/node/1663

Postgres Open 2011, a conference focused on disruption of the database
industry through PostgreSQL, will take place September 14-16, 2011 in
Chicago, Illinois at the Westin Michigan Avenue hotel.
http://postgresopen.org

PostgreSQL Conference West (#PgWest) will be held September 27th-30th,
2011 at the San Jose Convention center in San Jose, California, USA.
http://www.postgresqlconference.org

PostgreSQL Conference Europe 2011 will be held on October 18-21 in
Amsterdam.
http://2011.pgconf.eu/

pgbr will be in Sao Paulo, Brazil November 3-4, 2011.
http://pgbr.postgresql.org.br/

PGConf.DE 2011 is the German-speaking PostgreSQL Conference and will
take place on November 11th in the Rheinisches Industriemuseum in
Oberhausen, Germany.  Call for Papers is open.
http://2011.pgconf.de/

== PostgreSQL in the News ==

Planet PostgreSQL: http://planet.postgresql.org/

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 david(at)fetter(dot)org, German language
to pwn(at)pgug(dot)de, Italian language to pwn(at)itpug(dot)org(dot)  Spanish language
to pwn(at)arpug(dot)com(dot)ar(dot)

== Reviews ==

== Applied Patches ==

Andrew Dunstan pushed:

- Allow building with perl 5.14.  Patch from Alex Hunsaker.
  http://git.postgresql.org/pg/commitdiff/ccd69b888641441b2332dc928ada1390dd0c318a

Tom Lane pushed:

- Fix rewriter to cope (more or less) with CTEs in the query being
  rewritten.  Since the original implementation of CTEs only allowed
  them in SELECT queries, the rule rewriter did not expect to find any
  CTEs in statements being rewritten by ON INSERT/UPDATE/DELETE rules.
  We had dealt with this to some extent but the code was still several
  bricks shy of a load, as illustrated in bug #6051 from
  Jehan-Guillaume de Rorthais.  In particular, we have to be able to
  copy CTEs from the original query's cteList into that of a rule
  action, in case the rule action references the CTE (which it pretty
  much always will).  This also implies we were doing things in the
  wrong order in RewriteQuery: we have to recursively rewrite the CTE
  queries before expanding the main query, so that we have the
  rewritten queries available to copy.  There are unpleasant
  limitations yet to resolve here, but at least we now throw
  understandable FEATURE_NOT_SUPPORTED errors for them instead of just
  failing with bizarre implementation-dependent errors.  In
  particular, we can't handle propagating the same CTE into multiple
  post-rewrite queries (because then the CTE would be evaluated
  multiple times), and we can't cope with conflicts between CTE names
  in the original query and in the rule actions.
  http://git.postgresql.org/pg/commitdiff/fc1286d3cb92adad2eae69924bead12cfeea5cc6

- Allow domains over arrays to match ANYARRAY parameters again.  This
  use-case was broken in commit
  529cb267a6843a6a8190c86b75d091771d99d6a9 of 2010-10-21, in which I
  commented "For the moment, we just forbid such matching.  We might
  later wish to insert an automatic downcast to the underlying array
  type, but such a change should also change matching of domains to
  ANYELEMENT for consistency".  We still lack consensus about what to
  do with ANYELEMENT; but not matching ANYARRAY is a clear loss of
  functionality compared to prior releases, so let's go ahead and make
  that happen.  Per complaint from Regina Obe and extensive subsequent
  discussion.
  http://git.postgresql.org/pg/commitdiff/b7e8feb33e5d948c66720643fe32cfb06980c3d1

- Make citext's equality and hashing functions collation-insensitive.
  This is an ugly hack to get around the fact that significant parts
  of the core backend assume they don't need to worry about passing
  collation to equality and hashing functions.  That's true for the
  core string datatypes, but citext should ideally have equality
  behavior that depends on the specified collation's LC_CTYPE.
  However, there's no chance of fixing the core before 9.2, so we'll
  have to live with this compromise arrangement for now.  Per bug
  #6053 from Regina Obe.  The code changes in this commit should be
  reverted in full once the core code is up to speed, but be careful
  about reverting the docs changes: I fixed a number of obsolete
  statements while at it.
  http://git.postgresql.org/pg/commitdiff/3ebc061c18fcf9447977d232280793e27baf71ff

- Update 9.1 release notes to reflect commits through today.  Also do
  some desultory copy-editing on the notes.
  http://git.postgresql.org/pg/commitdiff/e9c9a920680595b7726148852e19deeb1f7b98a5

- Tag 9.1beta2.
  http://git.postgresql.org/pg/commitdiff/829ae4bf830e14bda649a153f7d179681e2ad094

- Work around gcc 4.6.0 bug that breaks WAL replay.  ReadRecord's
  habit of using both direct references to tmpRecPtr and references to
  *RecPtr (which is pointing at tmpRecPtr) triggers an optimization
  bug in gcc 4.6.0, which apparently has forgotten about aliasing
  rules.  Avoid the compiler bug, and make the code more readable to
  boot, by getting rid of the direct references.  Improve the comments
  while at it.  Back-patch to all supported versions, in case they get
  built with 4.6.0.  Tom Lane, with some cosmetic suggestions from
  Alex Hunsaker
  http://git.postgresql.org/pg/commitdiff/c2ba0121c73b7461331104a46d140156e847572a

- Stamp HEAD as 9.2devel.
  http://git.postgresql.org/pg/commitdiff/c9627922115a56cfd1bc966b62108efba581662c

Heikki Linnakangas pushed:

- Make ascii-art in comments pgindent-safe, and some other formatting
  changes.  Kevin Grittner
  http://git.postgresql.org/pg/commitdiff/a31ff707a27b3ed4a1c082c131194995efbbce4b

- Make DDL operations play nicely with Serializable Snapshot
  Isolation.  Truncating or dropping a table is treated like deletion
  of all tuples, and check for conflicts accordingly. If a table is
  clustered or rewritten by ALTER TABLE, all predicate locks on the
  heap are promoted to relation-level locks, because the tuple or page
  ids of any existing tuples will change and won't be valid after
  rewriting the table. Arguably ALTER TABLE should be treated like a
  mass-UPDATE of every row, but if you e.g change the datatype of a
  column, you could also argue that it's just a change to the physical
  layout, not a logical change. Reindexing promotes all locks on the
  index to relation-level lock on the heap.  Kevin Grittner, with a
  lot of cosmetic changes by me.
  http://git.postgresql.org/pg/commitdiff/8f9622bbb3c02b06176760c3ca2d33c5b5f629a7

- Mark the SLRU page as dirty when setting an entry in pg_serial. In
  the passing, fix an incorrect comment.
  http://git.postgresql.org/pg/commitdiff/5234161ac10350e009874e4872935a6133d8f0fc

- Fix the truncation logic of the OldSerXid SLRU mechanism.  We can't
  pass SimpleLruTruncate() a page number that's "in the future",
  because it will issue a warning and refuse to truncate anything.
  Instead, we leave behind the latest segment.  If the slru is not
  needed before XID wrap-around, the segment will appear as new again,
  and not be cleaned up until it gets old enough again.  That's a bit
  unpleasant, but better than not cleaning up anything.  Also, fix
  broken calculation to check and warn if the span of the OldSerXid
  SLRU is getting too large to fit in the 64k SLRU pages that we have
  available.  It was not XID wraparound aware.  Kevin Grittner and me.
  http://git.postgresql.org/pg/commitdiff/e1c26ab853dc4b816d2eb4c99b948fb099c0e243

- Small comment fixes and enhancements.
  http://git.postgresql.org/pg/commitdiff/c79c570bd8fbd6f074b8c186dfb08a9f4e3907e0

- Fix locking while setting flags in MySerializableXact.  Even if a
  flag is modified only by the backend owning the transaction, it's
  not safe to modify it without a lock. Another backend might be
  setting or clearing a different flag in the flags field
  concurrently, and that operation might be lost because setting or
  clearing a bit in a word is not atomic.  Make did-write flag a
  simple backend-private boolean variable, because it was only set or
  tested in the owning backend (except when committing a prepared
  transaction, but it's not worthwhile to optimize for the case of a
  read-only prepared transaction). This also eliminates the need to
  add locking where that flag is set.  Also, set the did-write flag
  when doing DDL operations like DROP TABLE or TRUNCATE -- that was
  missed earlier.
  http://git.postgresql.org/pg/commitdiff/cb2d158c5808c72cbd12cbffe0b7f5dbe830760b

- Remove now-unnecessary casts.  Kevin Grittner.
  http://git.postgresql.org/pg/commitdiff/13000b44d6069743db98ec753763d882b9a0beaf

Alvaro Herrera pushed:

- Revert psql bits to display NOT VALID for FKs.  These are superseded
  BY pg_get_constraintdef's ability to display the same when
  appropriate, which is a better place to do it anyway.
  http://git.postgresql.org/pg/commitdiff/135a507991c8ea9eca201cc084294a689ca24ba9

- Use "transient" files for blind writes.  "Blind writes" are a
  mechanism to push buffers down to disk when evicting them; since
  they may belong to different databases than the one a backend is
  connected to, the backend does not necessarily have a relation to
  link them to, and thus no way to blow them away.  We were keeping
  those files open indefinitely, which would cause a problem if the
  underlying table was deleted, because the operating system would not
  be able to reclaim the disk space used by those files.  To fix, have
  bufmgr mark such files as transient to smgr; the lower layer is
  allowed to close the file descriptor when the current transaction
  ends.  We must be careful to have any other access of the file to
  remove the transient markings, to prevent unnecessary expensive
  system calls when evicting buffers belonging to our own database
  (which files we're likely to require again soon.)
  http://git.postgresql.org/pg/commitdiff/54d9e8c6c19cbefa8fb42ed3442a0a5327590ed3

- Revert "Use 'transient' files for blind writes." This reverts commit
  54d9e8c6c19cbefa8fb42ed3442a0a5327590ed3, which caused a failure on
  the buildfarm.  Not a good thing to have just before a beta release.
  http://git.postgresql.org/pg/commitdiff/9261557eb1e19cf691f6f2cd9bd4d55fd8603a48

- Use a constant sprintf format to silence compiler warning
  http://git.postgresql.org/pg/commitdiff/3d114b63b253605eb60055c910aa2e55c98d5ed2

- Use "transient" files for blind writes, take 2.  "Blind writes" are
  a mechanism to push buffers down to disk when evicting them; since
  they may belong to different databases than the one a backend is
  connected to, the backend does not necessarily have a relation to
  link them to, and thus no way to blow them away.  We were keeping
  those files open indefinitely, which would cause a problem if the
  underlying table was deleted, because the operating system would not
  be able to reclaim the disk space used by those files.  To fix, have
  bufmgr mark such files as transient to smgr; the lower layer is
  allowed to close the file descriptor when the current transaction
  ends.  We must be careful to have any other access of the file to
  remove the transient markings, to prevent unnecessary expensive
  system calls when evicting buffers belonging to our own database
  (which files we're likely to require again soon.) This commit fixes
  a bug in the previous one, which neglected to cleanly handle the LRU
  ring that fd.c uses to manage open files, and caused an unacceptable
  failure just before beta2 and was thus reverted.
  http://git.postgresql.org/pg/commitdiff/fba105b1099f4f5fa7283bb17cba6fed2baa8d0c

- Add comment about pg_ctl stop
  http://git.postgresql.org/pg/commitdiff/d69149ed71cc4f073f222f11f702a20a6d279e0c

Robert Haas pushed:

- Complain politely about access temp/unlogged tables during recovery.
  This has never been supported, but we previously let md.c issue the
  complaint for us at whatever point we tried to examine the backing
  file.  Now we print a nicer error message.  Per bug #6041, reported
  by Emanuel, and extensive discussion with Tom Lane over where to put
  the check.
  http://git.postgresql.org/pg/commitdiff/16925c1e1fa236e4d7d6c8b571890e7c777f75d7

- Tab completion improvements for COMMENT.  These pertain to object
  types introduced in PostgreSQL 9.1, so back-patch.  Josh
  Kupershmidt, with some kibitzing by me.
  http://git.postgresql.org/pg/commitdiff/c878cbe158b6cc20fe5dc65481885f3b2758f432

- Code cleanup for InitProcGlobal.  The old code creates three
  separate arrays when only one is needed, using two different shmem
  allocation functions for no obvious reason.  It also strangely
  splits up the initialization of AuxilaryProcs between the top and
  bottom of the function to no evident purpose.  Review by Tom Lane.
  http://git.postgresql.org/pg/commitdiff/47ebcecc3ef862c6ad961539638123af63407ac9

- Corrections to ALTER FOREIGN TABLE documentation.  Shigeru Hanada,
  with a minor grammar correction.
  http://git.postgresql.org/pg/commitdiff/5fe241c5f91b3bb0c9ef4d80d402dd83812de3e6

Peter Eisentraut pushed:

- Reorder pg_ctl promote after pg_ctl status.  Since
  start/stop/restart/reload/status is a kind of standard command set,
  it seems odd to insert the special-purpose "promote" in between the
  closely related "restart" and "reload".  So put it after "status" in
  code and documentation.  Put the documentation of the -U option in
  some sensible place.  Rewrite the synopsis sentence in help and
  documentation to make it less of a growing mouthful.
  http://git.postgresql.org/pg/commitdiff/1bcdd66315fa1239793134e8284afc272f5975c3

- Fix documentation of information_schema.element_types.  The
  documentation of the columns collection_type_identifier and
  dtd_identifier was wrong.  This effectively reverts commits
  8e1ccad51901e83916dae297cd9afa450957a36c and
  57352df66d3a0885899d39c04c067e63c7c0ba30 and updates the name
  array_type_identifier (the name in SQL:1999) to
  collection_type_identifier.  closes bug #5926
  http://git.postgresql.org/pg/commitdiff/7d43ae6713223164be017be6e866868d1d7a8430

- Translation updates for 9.1beta2
  http://git.postgresql.org/pg/commitdiff/74b1d29dd186c4ea51ba1eff06aebd1faeb5dfcd

Magnus Hagander pushed:

- Add gitignore for mingw/cygwin build outputs.  Noted by Radosław
  Smogura
  http://git.postgresql.org/pg/commitdiff/1710752a50a37c965c964e362635d9ba3a333dcf

- Support silent mode for service registrations on win32.  Using -s
  when registering a service will now suppress the application
  eventlog entries stating that the service is starting and started.
  MauMau
  http://git.postgresql.org/pg/commitdiff/7e6ec04d964b03e836c3c19b5601e889b6634f05

- Use the correct eventlog severity for error
  http://git.postgresql.org/pg/commitdiff/3db963d760f93ac4b695b0c4a1e22231d30cb370

Bruce Momjian pushed:

- Update typedef list for upcoming pgindent run.
  http://git.postgresql.org/pg/commitdiff/adf43b2b36ca3d7f988933990051c74a4bd0d6f8

- Pgindent run before 9.1 beta2.
  http://git.postgresql.org/pg/commitdiff/6560407c7db2c7e32926a46f5fb52175ac10d9e5

- Ecpg doc cleanups, as reported by Marc Cousin.
  http://git.postgresql.org/pg/commitdiff/43958a028037edca1ed786147dc7bacf62d4f85b

- Mention "pg_ctl stop" in pgindent README instructions.
  http://git.postgresql.org/pg/commitdiff/bb8f0c4b4863d697264cc6f295f50627b15a6608

- Add C comment mentioning pg_stat_activity.procpid should have been
  called 'pid'.
  http://git.postgresql.org/pg/commitdiff/a4bebdd92624e018108c2610fc3f2c1584b6c687

== Rejected Patches (for now) ==

Marti Raudsepp's patch to add "GROUP BY *."  Not wanted.

== Pending Patches ==

KaiGai Kohei sent in two patches to help with the "leaky view"
issue.

Robert Haas sent in two more revisions of the patch to add a fast path
locking mechanism, which greatly speeds up the read-only case.

Cyan Ogilvie sent in a patch to document how PostgreSQL hashes
passwords.

Simon Riggs sent in a patch to reduce contention for WALInsertLock.

Robert Haas sent in a patch to refactor heap_hot_search_buffer() so
that index_getnext() can use it by suitably modifying index_getnext().

Mike Pultz sent in two more revisions of a patch to add serial2 (based
on int2).

Brar Piening and Josh Kupershmidt traded tests and patches for the
serial2 type.

Brar Piening sent in a patch to add Visual Studio 2010/Windows SDK 7.1
support for building PostgreSQL.

Simon Riggs sent in a WIP patch to improve performance by locking
tables less frequently.

Kevin Grittner and Dan Ports traded patches to fix some corner cases
in SSI.

Alvaro Herrera sent in two revisions of a patch to fix an issue where
the postmaster was holding unlinked files for pg_largeobject table.

Kevin Grittner sent in a patch to fix an issue with SSI and page-level
locks.

Radoslaw Smogura sent in a patch to add a new .gitignore for some
cygwin files.

Pavel Stehule sent in a patch to make more details available for error
reporting and use same.

Florian Pflug sent in two more revisions of the patch to remove a
corner case error where XML in the database could result in
unrestorable dumps.

Greg Smith sent in another revision of the patch to consolidate pieces
which used to be in contrib/ into core because they tend to be needed
in emergencies, when installing new software might not be an option.

Hitoshi Harada sent in a patch to allow the planner to create a
NestLoop with parameterized aggregate subquery, similar to the
IndexScan pattern.  This reduces unneeded aggregation.

KaiGai Kohei sent in a patch which adds a cache mechanism for SELinux
access control decisions to contrib/sepgsql.

Florian Pflug sent in another revision of the patch to fix an issue
where XPATH doesn't always return a scalar value when it should.

Florian Pflug reviewed and sent in another revision of the patch to
add TG_DEPTH.

Noah Misch sent in a patch to make the deadlock timeout PGC_SUSET.

Noah Misch sent in two revisions of a patch to identify and not
perform no-op length coercions.

Alexander Korotkov sent in another revision of the patch to collect
statistics on array columns.

Noah Misch sent in a patch to make relation_openrv atomic with respect
to DDL.

Robert Haas sent in a patch that applies over the "reducing the
overhead of frequent table locks" (fastlock-v3) patch and allows
heavyweight VXID locks to spring into existence only when someone
wants to wait on them.


pgsql-announce by date

Next:From: Andreas 'ads' ScherbaumDate: 2011-06-13 12:24:47
Subject: German-speaking PostgreSQL Conference - Call for Papers/Sponsors
Previous:From: Joe AbbateDate: 2011-06-07 20:56:57
Subject: Pyrseas 0.2.1 is now available

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group