La Commitfest n°4 est lancée. Commencez à relire ces patchs ! https://commitfest.postgresql.org/action/commitfest_view?id=13

La PGCon 2012 sera tenue à l'Université d'Ottawa, les 17 et 18 mai 2012. Elle sera précédée par deux jours de tutoriels les 15 & 16 mai 2012 : http://www.pgcon.org/2012/

Offres d'emplois autour de PostgreSQL en janvier

PostgreSQL Local

  • La cinquième conférence annuelle "Prague PostgreSQL Developers Day", organisée pas le CSPUG (PUG Tchèque & Slovaque), aura lieu le 9 février 2012 à Prague. L'appel à conférenciers est lancé. Merci d'envoyer vos propositions, incluant le sujet, une estimation de la durée et vos coordonnées à l'adresse info CHEZ p2d2 POINT cz.

PostgreSQL dans les média

PostgreSQL Weekly News / les nouvelles hebdomadaires vous sont offertes cette semaine par David Fetter. Traduction par l'équipe PostgreSQLFr sous licence CC BY-NC-SA.

Proposez vos articles ou annonces avant dimanche 15:00 (heure du Pacifique). Merci de les envoyer en anglais à david (a) fetter.org, en allemand à pwn (a) pgug.de, en italien à pwn (a) itpug.org et en espagnol à pwn (a) arpug.com.ar.

(lien vers l'article original)

Correctifs appliqués

Magnus Hagander a poussé :

Robert Haas a poussé :

Peter Eisentraut a poussé :

Tom Lane a poussé :

  • Fix one-byte buffer overrun in contrib/test_parser. The original coding examined the next character before verifying that there *is* a next character. In the worst case with the input buffer right up against the end of memory, this would result in a segfault. Problem spotted by Paul Guyot; this commit extends his patch to fix an additional case. In addition, make the code a tad more readable by not overloading the usage of *tlen. http://git.postgresql.org/pg/commitdiff/89b3c6cc8b560f7f46a6a25b270aed5330c09a0e
  • Tweak duplicate-index-column regression test to avoid locale sensitivity. The originally-chosen test case gives different results in es_EC locale because of unusual rule for sorting strings beginning with "LL". Adjust the comparison value to avoid that, while hopefully not introducing new locale dependencies elsewhere. Per report from Jaime Casanova. http://git.postgresql.org/pg/commitdiff/de5a08c59de39df07599723cb212ae8297903f48
  • Fix CLUSTER/VACUUM FULL for toast values owned by recently-updated rows. In commit 7b0d0e9356963d5c3e4d329a917f5fbb82a2ef05, I made CLUSTER and VACUUM FULL try to preserve toast value OIDs from the original toast table to the new one. However, if we have to copy both live and recently-dead versions of a row that has a toasted column, those versions may well reference the same toast value with the same OID. The patch then led to duplicate-key failures as we tried to insert the toast value twice with the same OID. (The previous behavior was not very desirable either, since it would have silently inserted the same value twice with different OIDs. That wastes space, but what's worse is that the toast values inserted for already-dead heap rows would not be reclaimed by subsequent ordinary VACUUMs, since they go into the new toast table marked live not deleted.) To fix, check if the copied OID already exists in the new toast table, and if so, assume that it stores the desired value. This is reasonably safe since the only case where we will copy an OID from a previous toast pointer is when toast_insert_or_update was given that toast pointer and so we just pulled the data from the old table; if we got two different values that way then we have big problems anyway. We do have to assume that no other backend is inserting items into the new toast table concurrently, but that's surely safe for CLUSTER and VACUUM FULL. Per bug #6393 from Maxim Boguk. Back-patch to 9.0, same as the previous patch. http://git.postgresql.org/pg/commitdiff/21b446dd0927f8f2a187d9461a0d3f11db836f77

Heikki Linnakangas a poussé :

Alvaro Herrera a poussé :

Simon Riggs a poussé :

Andrew Dunstan a poussé :

Correctifs rejetés (à ce jour)

  • Pas de déception cette semaine :-)

Correctifs en attente

  • Peter Eisentraut sent in a patch to make variable-length pg_catalog fields invisible in pg_* C structs.
  • Joel Jacobson sent in two revisions of a patch to create call graphs for UDF function calls inside PostgreSQL.
  • Joachim Wieland sent in a patch to allow master databases to send NOTIFYs to replicas.
  • Robert Haas and Andrew Dunstan traded patches to add JSON types and associated infrastructure.
  • Ryan Kelly and Heikki Linnakangas traded patches to allow breaking out of hung connection attempts in libpq.
  • KaiGai Kohei sent in a patch to add a new GUC: sepgsql.client_label, which allows a client process to switch its privileges into another one, as long as the system security policy allows this transition.
  • KaiGai Kohei sent a patch to add OAT_DROP object access hook around the permission checks of object deletion.
  • David Fetter sent in a patch by Dan Scales to add double-write, which among other things gets durability guarantees without the same overhead as full_page_writes.
  • Robert Haas sent in a patch intended to ensure checkpoint writeback via sync_file_range where this call is available.
  • Simon Riggs sent in another revision of the patch to allow logging messages for archive recovery progress.
  • Peter Eisentraut sent in a patch to add .colnames() and .coltypes() methods to PL/PythonU.
  • Peter Eisentraut sent in a patch to make psql's tab completion preserve the case the completion was started in rather than unconditionally upper-casing keywords.
  • Peter Eisentraut sent in a patch to add a command ALTER TABLE ... RENAME CONSTRAINT.
  • Thomas Munro sent in a patch to rename sequences automatically in cases where this makes sense.
  • Scott Mead sent in another revision of the patch to allow introspecting "IDLE IN TRANSACTION" situations.
  • Noah Misch sent in another revision of the patch to collect frequency statistics for arrays.
  • Simon Riggs sent in another revision of the patch to remove CLOG contention caused by dirty CLOG LRU.
  • Kevin Grittner and Tom Lane traded patches to fix bug #6123 http://archives.postgresql.org/pgsql-bugs/2011-07/msg00138.php
  • Robert Haas sent in a patch to measure spinning.
  • Simon Riggs sent in a patch to simulate CLOG contention.
  • Simon Riggs sent in a patch to add a new -x option for pgbench which executes the given command once after connection of each session.
  • Simon Riggs sent in a patch to ensure that the correct code, ERRCODE_READ_ONLY_SQL_TRANSACTION, be sent in all remaining cases for illegal actions on a standby.
  • Fujii Masao sent in a patch to add a "write" replication mode for synchronous replication.
  • Fujii Masao sent in another revision of the patch to allow taking an online base backup from a standby.
  • Dimitri Fontaine sent in another revision of the patch to add triggers on commands.
  • Robert Haas sent in a patch to fix an issue where concurrent CREATE TABLE/DROP SCHEMA can leave inconsistent leftovers.
  • Greg Smith sent in a patch to speed up dblink by creating and using a new libpq tuple storage system.
  • Fujii Masao sent in a patch intended to correct an issue where replay_location indicates an incorrect location.
  • Robert Haas sent in a patch which shows Heap Fetches in EXPLAIN for index-only scans.
  • Tomas Vondra sent in another revision of the patch to allow EXPLAIN ANALYZE with rows but not timing information.
  • Alvaro Herrera sent in another revision of the patch to add foreign key locks.
  • Marco Nenciarini sent in another revision of the patch to make it possible to enforce arrays of foreign keys.
  • Peter Eisentraut sent in a patch to implement specific -A (auth) options for initdb, namely --auth-local and --auth-host.
  • Heikki Linnakangas sent in another revision of the patch to move work outside WALInsertLock.
  • Peter Eisentraut sent in a patch to allow GUC control of the location of server-side SSL files.
  • Peter Eisentraut sent in a patch to allow using the NUL byte as a field or record separator in psql output.
  • Noah Misch sent in a patch to make psql's filename completion work with filenames that contain one or more spaces.
  • Noah Misch sent in a patch to fix several infelicities in psql's handling of COPY.
  • Matthew Draper sent in a patch to allow SQL language functions to reference parameters by name. And there was much rejoicing!
  • Peter Eisentraut sent in a patch to clean up a lot of warnings in assert-free builds.
  • Jaime Casanova sent in a patch to add a pg_stats_recovery view.
  • Ants Aasma sent in another revision of the patch to add timing of buffer I/O requests.
  • Peter Eisentraut sent in a patch to change the exit() calls in libraries to abort()s.
  • Simon Riggs sent in a patch to enable keepalive on quiet systems that are replicating.
  • Jaime Casanova sent in a patch which adds checks to pg_basebackup to ensure that the system-set number of fields is actually there.
  • Greg Smith sent in a patch to add a GUC which rate-limits VACUUMs in kB/sec.
  • Simon Riggs sent in a patch to change the walrestore process so it asynchronously executes restore_command while recovery continues working.
  • Joachim Wieland sent in another revision of the patch to parallelize pg_dump.
  • Kevin Grittner sent in another revision of the patch to add a function which shows trigger depth.
  • Peter Geoghegan sent in another revision of the patch to allow group commit.
  • Jeff Janes sent in a patch to calculate memory for sorts more precisely and use it more efficiently.
  • Kevin Grittner sent in another revision of the patch to generalize trigger functionality for any operation after each row of any table with a primary key. This is called trigger_change_notification.