== PostgreSQL Weekly News - May 22 2011 == The first Commitfest of the 9.2 cycle will start June 15, 2011, but you don't have to wait until then to review a patch. http://commitfest.postgresql.org/ PostgreSQL Magazine #00 is out. You can download it, view it online or buy a print copy at http://pgmag.org/ And don't forget to send feedback at contact AT pgmag DOT org ! 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 Product News == Pyrseas 0.2.0, a toolkit for PostgreSQL version control, released on PGXN. http://pgxn.org/dist/pyrseas/ pg_matlab, a module which allows the execution of MATLAB code inside PostgreSQL, released. http://www.cybertec.at/en/postgresql_products/pg_matlab-matlab-postgresql-integration == PostgreSQL Jobs for May == http://archives.postgresql.org/pgsql-jobs/2011-05/threads.php == PostgreSQL Local == PG Session 2, on PostGIS, will be held on June 23rd in Paris. The program is available at 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 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/ == 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: - Add required psqldir setting for isolation checks. http://git.postgresql.org/pg/commitdiff/df15d11cb596fa69d7ffb27cf0b7b070c03ab381 - Quote isolationtester command name so Windows will not think dot is the command. http://git.postgresql.org/pg/commitdiff/78b66cff72d6f337a685355f7ccede1c518681b5 - Use the right psql for isolation tests. http://git.postgresql.org/pg/commitdiff/b08ddf8c761cd596c4664dde1125f38a8757756f - Remove spurious underscore in name of isolation tester on MSVC. http://git.postgresql.org/pg/commitdiff/a9b6519606a4a95ae8052f8414841d02bcfe4582 Bruce Momjian pushed: - Allow pg_upgrade to honor libpq environment variables. Add 'local' checks for PGHOST and PGHOSTADDR. http://git.postgresql.org/pg/commitdiff/6c19bd96bc5139fabace94c5a0a5624fd9d8e986 - Add pg_upgrade check to make sure the user has full access permission in the current directory; if not, throw an error. http://git.postgresql.org/pg/commitdiff/bda27e502fe9a3e9c54f065e4bc1315c3f2a57d7 - Remove redundant privilege doc sentences. http://git.postgresql.org/pg/commitdiff/8a849cdee4dff3406a405e83e9504ebc52bbcfaa - Update pg_upgrade directory check error message. http://git.postgresql.org/pg/commitdiff/e728701fb496ace7fa21fcce5c0ef7fc4c0ec78c - Fix pg_upgrade build problem on Windows when using X_OK access permission check on the current directory. http://git.postgresql.org/pg/commitdiff/6fbf4e0e7c0839c33ed2d63f3c64abdc049f6d1b - Improve pg_upgrade X_OK comment. http://git.postgresql.org/pg/commitdiff/92ff91501846bd0343eea726d9ca83464cda07af - Improve pg_upgrade error reporting if the bin or data directories do not exist or are not directories. http://git.postgresql.org/pg/commitdiff/772a5f1e5b343d07e907ef7f36fa36d190d55912 - In pg_upgrade, clean up handling of invalid directory specification by checking the stat() errno value more strictly. http://git.postgresql.org/pg/commitdiff/1f35944607f1ede7dbb1dc3283d955b96f04ea5e Tom Lane pushed: - Fix pg_dump's handling of extension-member casts and languages. pg_dump has some heuristic rules for whether to dump casts and procedural languages, since it's not all that easy to distinguish built-in ones from user-defined ones. However, we should not apply those rules to objects that belong to an extension, but just use the perfectly well-defined rules for what to do with extension member objects. Otherwise we might mistakenly lose extension member objects during a binary upgrade (which is the only time that we'd want to dump extension members). http://git.postgresql.org/pg/commitdiff/b3bc63efbc258874b06586aa7548fce37f3581e1 - Make plpgsql provide the typmods for its variables to the main parser. Historically we didn't do this, even though we had the information, because plpgsql passed its Params via SPI APIs that only include type OIDs not typmods. Now that plpgsql uses parser callbacks to create Params, it's easy to insert the right typmod. This should generally result in lower surprise factors, because a plpgsql variable that is declared with a typmod will now work more like a table column with the same typmod. In particular it's the "right" way to fix bug #6020, in which plpgsql's attempt to return an anonymous record type is defeated by stricter record-type matching checks that were added in 9.0. However, it's not impossible that this could result in subtle behavioral changes that could break somebody's existing plpgsql code, so I'm afraid to back-patch this change into released branches. In those branches we'll have to lobotomize the record-type checks instead. http://git.postgresql.org/pg/commitdiff/219dfae4e1b0ca7cbc0b2f0f7740e01657964c07 Peter Eisentraut pushed: - /contrib/foo -> contrib/foo Since contrib is a relative directory specification, a leading slash is inappropriate. http://git.postgresql.org/pg/commitdiff/0ee391b77a8aef3835a39ecc4856a9ab79936f56 - Spell checking and markup refinement http://git.postgresql.org/pg/commitdiff/c13dc6402b6e99af9a8b7794e44d62deecafc745 - Remove obsolete comment http://git.postgresql.org/pg/commitdiff/4a6a5c86db7362993a13b32bb0c02c956d94ff13 - Consistent spacing for lengthy error messages. Also, we removed the display of the current value of max_connections/MaxBackends from some messages earlier, because it was confusing, so do that in the remaining one as well. http://git.postgresql.org/pg/commitdiff/bb46d42859f62d5fbe8a8b55690643cba65e106c - Rename pg_dump --no-security-label to --no-security-labels Other similar options also use the plural form. http://git.postgresql.org/pg/commitdiff/c8e0c321194c985a13e7c7e4d3110ac032517350 - Fix untranslatable assembly of libpq connection failure message. Even though this only affects the insertion of a parenthesized word, it's unwise to assume that parentheses can pass through untranslated. And in any case, the new version is clearer in the code and for translators. http://git.postgresql.org/pg/commitdiff/fcd4575905608a6dd0868bd6ab99f3e06a743152 - Update config.guess and config.sub http://git.postgresql.org/pg/commitdiff/8d8954938094744ef4cab9d6f45f8e9e8abeb58f - Message style improvements http://git.postgresql.org/pg/commitdiff/bcf63a51e3dbf7cdb70af03ed13e6984dee41ec0 - Message improvement http://git.postgresql.org/pg/commitdiff/8932e2810034c43daa07c6da914a4c5ba46f6bd6 - Clarify the documentation of the --with-ossp-uuid option http://git.postgresql.org/pg/commitdiff/51ad1784ccf9c2a72238a50a314771e34721f1d3 - Put documentation of backslash commands back in alphabetical order http://git.postgresql.org/pg/commitdiff/7920d033d8b580f00ede0628ee0b1c3a3f3c6b43 - Message style improvements http://git.postgresql.org/pg/commitdiff/fae625e7b9824ec64f770904108089ff4fbcf093 - Put lists in sensible order http://git.postgresql.org/pg/commitdiff/60497722ac6d69d8ff82fe328b0a128e73433bec Heikki Linnakangas pushed: - Replace strdup() with pstrdup(), to avoid leaking memory. It's been like this since the seg module was introduced, so backpatch to 8.2 which is the oldest supported version. http://git.postgresql.org/pg/commitdiff/ea896da394cbb0fb32a4b41065ea04b81c4b03f6 - In binary-upgrade mode, dump dropped attributes of composite types. Noah Misch http://git.postgresql.org/pg/commitdiff/27c7875d95cf629e3f344ba91d1f8a1a936ed043 - Reset per-tuple memory context between every row in a scan node, even when there's no quals or projections. Currently this only matters for foreign scans, as none of the other scan nodes litter the per-tuple memory context when there's no quals or projections. http://git.postgresql.org/pg/commitdiff/0319da638f337cae66a4649581dc1f33d5079e1a - Pull up isReset flag from AllocSetContext to MemoryContext struct. This avoids the overhead of one function call when calling MemoryContextReset(), and it seems like the isReset optimization would be applicable to any new memory context we might invent in the future anyway. This buys back the overhead I just added in previous patch to always call MemoryContextReset() in ExecScan, even when there's no quals or projections. http://git.postgresql.org/pg/commitdiff/30e98a7e6e4869a7d6b3748ac9770bb8d69a8b26 Alvaro Herrera pushed: - Fix declaration of $_TD in "strict" trigger functions. This was broken in commit ef19dc6d39dd2490ff61489da55d95d6941140bf by the Bunce/Hunsaker/Dunstan team, which moved the declaration from plperl_create_sub to plperl_call_perl_trigger_func. This doesn't actually work because the validator code would not find the variable declared; and even if you manage to get past the validator, it still doesn't work because get_sv("_TD", GV_ADD) doesn't have the expected effect. The only reason this got beyond testing is that it only fails in strict mode. We need to declare it as a global just like %_SHARED; it is simpler than trying to actually do what the patch initially intended, and is said to have the same performance benefit. As a more serious issue, fix $_TD not being properly local()ized, meaning nested trigger functions would clobber $_TD. Alex Hunsaker, per test report from Greg Mullane http://git.postgresql.org/pg/commitdiff/6b449d9051651d3accfdce73e21cfd5e3d0e09a3 Robert Haas pushed: - Fix race condition in CheckTargetForConflictsIn. Dan Ports http://git.postgresql.org/pg/commitdiff/74aaa2136d13d613ffcea3171781d2e0c65a2e10 Magnus Hagander pushed: - Add example for replication in pg_hba.conf. Selena Deckelmann http://git.postgresql.org/pg/commitdiff/a937b07121d8ab51ba6fb44618254ec13cdcdfa0 == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == Jaime Casanova sent in another revision of the patch to add a new column to IDENTIFY_SYSTEM. Greg Smith sent in another revision of the patch to analyze cache. Leonardo Francalanci sent in two revisions of a patch to reduce the size of xl_xact_commit. Greg Smith sent in a patch to move some debugging/rescue contrib modules into core. Dean Rasheed sent in two revisions of a patch to enable support for hashing arrays. Josh Kupershmidt sent in a patch to add a constraint names to the \dd (show descriptions) in psql. Selena Deckelmann sent in three revisions of a patch to document replication setup in pg_hba.conf. Gregory Stark sent in a patch to add an option to psql's \dt which sorts columns alphabetically. Gurjeet Singh sent in another revision of the patch to add \ir (include relative) to psql. Robert Haas sent in a patch to drastically slim down the parser in order to test the effect on query speed. Fabien Coelho sent in a patch which adds AS EXPLICIT to CREATE CAST. Noah Misch sent in another patch to fix some infelicities in array handling. Pavel Stehule sent in a WIP patch implementing an enhanced GET DIAGNOSTICS statement in PL/pgsql. KaiGai Kohei sent in a patch adding relking handling to foreign tables in the sepgsql context.