Correction de bug avec les versions 9.2.2, 9.1.7, 9.0.11 et 8.4.15. Mettez à jour dès que possible ! http://www.postgresql.org/about/news/1430/

PGDG offre maintenant un dépôt pour les paquets .deb (Debian/Ubuntu) : https://wiki.postgresql.org/wiki/Apt

PGCon 2013 aura lieu les 23 & 24 mai 2013 à l'Université d'Ottawa. L'appel à conférenciers est lancé : http://www.pgcon.org/2013/

La PostgreSQL Session est programmée pour le 28 mars 2013 à Paris. L'appel à conférenciers est lancé : http://www.postgresql-sessions.org/en/5/

Les nouveautés des produits dérivés

PostgreSQL Local

  • La conférence PGDay du FOSDEM sera tenue juste avant l'ouverture du meeting, le 1er février à Bruxelles, Belgique. Les appels à conférenciers, pour cette conférence et pour le cursus PostgreSQL du FOSDEM, sont lancés : http://fosdem2013.pgconf.eu/callforpapers/
  • Le PGDay 2013 de New-York City aura lieu le 22 mars. La date limite de candidature des conférenciers est fixée au 7 janvier 2013, midi (heure de New-York). Envois à l'adresse papers AT nycpug DOT org : http://pgday.nycpug.org/speakers

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

Heikki Linnakangas a poussé :

Simon Riggs a poussé :

Andrew Dunstan a poussé :

Tom Lane a poussé :

  • Fix documentation of path(polygon) function. Obviously, this returns type "path", but somebody made a copy-and-pasteo long ago. Dagfinn Ilmari Mannsåker http://git.postgresql.org/pg/commitdiff/bdd5d410b7926cd135e3fa8ce31b3849e133ebe1
  • Update release notes for 9.2.2, 9.1.7, 9.0.11, 8.4.15, 8.3.22. http://git.postgresql.org/pg/commitdiff/7510bec607741a6d9de1ff7ecb0b34c7d3f2815f
  • Attempt to un-break Windows builds with USE_LDAP. The buildfarm shows this case is entirely broken, and I'm betting the reason is lack of any include file. http://git.postgresql.org/pg/commitdiff/cdf498c5d76915954cb5d5c6097eb67eb94560c8
  • Ensure recovery pause feature doesn't pause unless users can connect. If we're not in hot standby mode, then there's no way for users to connect to reset the recoveryPause flag, so we shouldn't pause. The code was aware of this but the test to see if pausing was safe was seriously inadequate: it wasn't paying attention to reachedConsistency, and besides what it was testing was that we could legally enter hot standby, not that we have done so. Get rid of that in favor of checking LocalHotStandbyActive, which because of the coding in CheckRecoveryConsistency is tantamount to checking that we have told the postmaster to enter hot standby. Also, move the recoveryPausesHere() call that reacts to asynchronous recoveryPause requests so that it's not in the middle of application of a WAL record. I put it next to the recoveryStopsHere() call --- in future those are going to need to interact significantly, so this seems like a good waystation. Also, don't bother trying to read another WAL record if we've already decided not to continue recovery. This was no big deal when the code was written originally, but now that reading a record might entail actions like fetching an archive file, it seems a bit silly to do it like that. Per report from Jeff Janes and subsequent discussion. The pause feature needs quite a lot more work, but this gets rid of some indisputable bugs, and seems safe enough to back-patch. http://git.postgresql.org/pg/commitdiff/af4aba2f05de46d8f619b75582f8741dc0afbbe0
  • Fix intermittent crash in DROP INDEX CONCURRENTLY. When deleteOneObject closes and reopens the pg_depend relation, we must see to it that the relcache pointer held by the calling function (typically performMultipleDeletions) is updated. Usually the relcache entry is retained so that the pointer value doesn't change, which is why the problem had escaped notice ... but after a cache flush event there's no guarantee that the same memory will be reassigned. To fix, change the recursive functions' APIs so that we pass around a "Relation *" not just "Relation". Per investigation of occasional buildfarm failures. This is trivial to reproduce with -DCLOBBER_CACHE_ALWAYS, which points up the sad lack of any buildfarm member running that way on a regular basis. http://git.postgresql.org/pg/commitdiff/e31d524867130d3c54b8d5f4c5ed59e2fcd07867
  • Improve pl/pgsql to support composite-type expressions in RETURN. For some reason lost in the mists of prehistory, RETURN was only coded to allow a simple reference to a composite variable when the function's return type is composite. Allow an expression instead, while preserving the efficiency of the original code path in the case where the expression is indeed just a composite variable's name. Likewise for RETURN NEXT. As is true in various other places, the supplied expression must yield exactly the number and data types of the required columns. There was some discussion of relaxing that for pl/pgsql, but no consensus yet, so this patch doesn't address that. Asif Rehman, reviewed by Pavel Stehule http://git.postgresql.org/pg/commitdiff/31a891857a128828d47d93c63e041f3b69cbab70
  • Support automatically-updatable views. This patch makes "simple" views automatically updatable, without the need to create either INSTEAD OF triggers or INSTEAD rules. "Simple" views are those classified as updatable according to SQL-92 rules. The rewriter transforms INSERT/UPDATE/DELETE commands on such views directly into an equivalent command on the underlying table, which will generally have noticeably better performance than is possible with either triggers or user-written rules. A view that has INSTEAD OF triggers or INSTEAD rules continues to operate the same as before. For the moment, security_barrier views are not considered simple. Also, we do not support WITH CHECK OPTION. These features may be added in future. Dean Rasheed, reviewed by Amit Kapila http://git.postgresql.org/pg/commitdiff/a99c42f291421572aef2b0a9360294c7d89b8bc7
  • Fix assorted bugs in privileges-for-types patch. Commit 729205571e81b4767efc42ad7beb53663e08d1ff added privileges on data types, but there were a number of oversights. The implementation of default privileges for types missed a few places, and pg_dump was utterly innocent of the whole concept. Per bug #7741 from Nathan Alden, and subsequent wider investigation. http://git.postgresql.org/pg/commitdiff/b46c92112bf5afb2476d951b9817ebd8daa7b753

Bruce Momjian a poussé :

Peter Eisentraut a poussé :

Michael Meskes a poussé :

Alvaro Herrera a poussé :

  • Update comment at top of index_create. I neglected to update it in commit f4c4335. Michael Paquier http://git.postgresql.org/pg/commitdiff/5e15cdb2ae7da5c1f9d8ca2ad970b98ca1cc4947
  • Background worker processes. Background workers are postmaster subprocesses that run arbitrary user-specified code. They can request shared memory access as well as backend database connections; or they can just use plain libpq frontend database connections. Modules listed in shared_preload_libraries can register background workers in their _PG_init() function; this is early enough that it's not necessary to provide an extra GUC option, because the necessary extra resources can be allocated early on. Modules can install more than one bgworker, if necessary. Care is taken that these extra processes do not interfere with other postmaster tasks: only one such process is started on each ServerLoop iteration. This means a large number of them could be waiting to be started up and postmaster is still able to quickly service external connection requests. Also, shutdown sequence should not be impacted by a worker process that's reasonably well behaved (i.e. promptly responds to termination signals.) The current implementation lets worker processes specify their start time, i.e. at what point in the server startup process they are to be started: right after postmaster start (in which case they mustn't ask for shared memory access), when consistent state has been reached (useful during recovery in a HOT standby server), or when recovery has terminated (i.e. when normal backends are allowed). In case of a bgworker crash, actions to take depend on registration data: if shared memory was requested, then all other connections are taken down (as well as other bgworkers), just like it were a regular backend crashing. The bgworker itself is restarted, too, within a configurable timeframe (which can be configured to be never). More features to add to this framework can be imagined without much effort, and have been discussed, but this seems good enough as a useful unit already. An elementary sample module is supplied. Author: Álvaro Herrera. This patch is loosely based on prior patches submitted by KaiGai Kohei, and unsubmitted code by Simon Riggs. Reviewed by: KaiGai Kohei, Markus Wanner, Andres Freund, Heikki Linnakangas, Simon Riggs, Amit Kapila http://git.postgresql.org/pg/commitdiff/da07a1e856511dca59cbb1357616e26baa64428e

Correctifs rejetés (à ce jour)

  • Pas de déception cette semaine :-)

Correctifs en attente

  • Erik Rijkers sent in tests for the regexp search optimizations.
  • Andrew Dunstan sent in a patch to make it possible for old versions of make to work when creating separate databases for contrib modules during "make check"
  • Dimitri Fontaine sent in two more revisions of a patch to implement CREATE EXTENSION default_full_version.
  • Michael Paquier sent in a patch to fix a missing argument to UpdateIndexRelation().
  • KaiGai Kohei sent in two more revisions of a patch to implement writeable foreign tables.
  • Amit Kapila sent in two more revisions of a patch to compute the max LSN of data pages.
  • Andres Freund sent in a patch to fix an infelicity in LDAP URLs.
  • Pavan Deolasee sent in a patch to help in Hot Standby conflict resolution handling.
  • Alexander Korotkov and Tomas Vondra traded new revisions of patches to store additional information in GIN indexes.
  • Jeff Davis sent in another revision of a patch to add page checksums.
  • Phil Sorber sent in two more revisions of a patch to create a pg_ping utility.
  • Jeff Davis sent in another revision of a patch to remove PD_ALL_VISIBLE.
  • Dimitri Fontaine sent in another revision of a patch to enable dumping an extension's script.
  • Pavan Deolasee sent in a patch to help fix an infelicity in pg_dump with respect to its read-only mode.
  • Pavan Deolasee sent in two revisions of a patch to make VACUUM more efficient.
  • Shigeru HANADA and Tomas Vondra traded patches to optimize dropping multiple tables in a single transaction.
  • Amit Kapila sent in another revision of a patch to improve performance by reducing WAL traffic for update operations.
  • Bruce Momjian sent in two more revisions of a patch to fix a pg_upgrade issue when it runs into invalid indexes.
  • Pavan Deolasee sent in some optimizations in lazy_scan_heap.
  • Dan Farina sent in two revisions of a patch sketching out a hook into the logging collector.
  • Tomas Vondra sent in another revision of a patch to change pgbench by aggregating info written into log.
  • Tomas Vondra sent in another revision of a patch to allow trimming the log message output.
  • Jan Wieck sent in another revision of a patch to fix an infelicity in autovacuum.
  • Tomas Vondra sent in another revision of a patch to add new statistics for WAL dirty buffer writes.
  • KaiGai Kohei sent in another revision of a patch to create OAT_POST_ALTER object access hooks.
  • Michael Paquier sent in two more revisions of a patch to add REINDEX CONCURRENTLY.