Mises à jour correctives 9.4.4, 9.3.9, 9.2.13, 9.1.18 et 9.0.22 publiées. Déployez ! http://www.postgresql.org/docs/current/static/release.html

La classe d'administration de PostgreSQL de Consistent State aura lieu à Dallas (Texas, USA) du 21 au 24 septembre 2015 : http://www.consistentstate.com/store/p8/PostgreSQL_Admin_Class%3B_Dallas.html

Gianni Ciolli fera l'une des présentations introductives à la Dynamic Languages Conference du 20 juin à Manchester (Royaume-Uni) : http://www.dynamiclanguages.co.uk/

Les nouveautés des produits dérivés

Offres d'emplois autour de PostgreSQL en juin

PostgreSQL Local

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. La version originale se trouve à l'adresse suivante : http://www.postgresql.org/message-id/20150614224208.GA22327@fetter.org

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.

Correctifs appliqués

Peter Eisentraut pushed:

Andrew Dunstan pushed:

  • Desupport jsonb subscript deletion on objects. Supporting deletion of JSON pairs within jsonb objects using an array-style integer subscript allowed for surprising outcomes. This was mostly due to the implementation-defined ordering of pairs within objects for jsonb. It also seems desirable to make jsonb integer subscript deletion consistent with the 9.4 era general purpose integer subscripting operator for jsonb (although that operator returns NULL when an object is encountered, while we prefer here to throw an error). Peter Geoghegan, following discussion on -hackers. http://git.postgresql.org/pg/commitdiff/b81c7b4098f52e64df89efe1461ba00a54649a10
  • Clarify documentation of jsonb - text. Peter Geoghegan http://git.postgresql.org/pg/commitdiff/94d6727dbe61117addd9c24eea28440a2151ccf4
  • Rename jsonb - text[] operator to #- to avoid ambiguity. Following recent discussion on -hackers. The underlying function is also renamed to jsonb_delete_path. The regression tests now don't need ugly type casts to avoid the ambiguity, so they are also removed. Catalog version bumped. http://git.postgresql.org/pg/commitdiff/908e234733574545866045c7d5f93d4dd50ef66d
  • Fix "path" infrastructure bug affecting jsonb_set(). jsonb_set() and other clients of the setPathArray() utility function could get spurious results when an array integer subscript is provided that is not within the range of int. To fix, ensure that the value returned by strtol() within setPathArray() is within the range of int; when it isn't, assume an invalid input in line with existing, similar cases. The path-orientated operators that appeared in PostgreSQL 9.3 and 9.4 do not call setPathArray(), and already independently take this precaution, so no change there. Peter Geoghegan http://git.postgresql.org/pg/commitdiff/2271d002d5c305441398e8f7a295f18ec3c132a9

Andres Freund pushed:

  • Allow HotStandbyActiveInReplay() to be called in single user mode. HotStandbyActiveInReplay, introduced in 061b079f, only allowed WAL replay to happen in the startup process, missing the single user case. This buglet is fairly harmless as it only causes problems when single user mode in an assertion enabled build is used to replay a btree vacuum record. Backpatch to 9.2. 061b079f was backpatched further, but the assertion was not. http://git.postgresql.org/pg/commitdiff/d1b958218ac183d0e88348341ff6ba31397086ad

Fujii Masao pushed:

  • Refactor WAL segment copying code. * Remove unused argument "dstfname" and related code from XLogFileCopy(). * Previously XLogFileCopy() returned a pstrdup'd string so that InstallXLogFileSegment() used it later. Since the pstrdup'd string was never free'd, there could be a risk of memory leak. It was almost harmless because the startup process exited just after calling XLogFileCopy(), it existed. This commit changes XLogFileCopy() so that it directly calls InstallXLogFileSegment() and doesn't call pstrdup() at all. Which fixes that memory leak problem. * Extend InstallXLogFileSegment() so that the caller can specify the log level. Which allows us to emit an error when InstallXLogFileSegment() fails a disk file access like link() and rename(). Previously it was always logged with LOG level and additionally needed to be logged with ERROR when we wanted to treat it as an error. Michael Paquier http://git.postgresql.org/pg/commitdiff/7abc68597436da1475b4d9b08f4fa9f3c5ed6185
  • Fix typo in comment. David Rowley http://git.postgresql.org/pg/commitdiff/ea9c4c1e4a7a9b602d867dcb02e07ef1fe51f6ec
  • Fix some issues in pg_rewind. * Remove invalid option character "N" from the third argument (valid option string) of getopt_long(). * Use pg_free() or pfree() to free the memory allocated by pg_malloc() or palloc() instead of always using free(). * Assume problem is no disk space if write() fails but doesn't set errno. * Fix several typos. Patch by me. Review by Michael Paquier. http://git.postgresql.org/pg/commitdiff/966c37fdb5ed9b87f3e91eace4dbbed7909f6769
  • Clean up useless mention of RMGRDESCSOURCES in pg_rewind Makefile. RMGRDESCSOURCES is defined and used only in pg_xlogdump Makefile, but pg_rewind Makefile mentioned it as extra files to remove in "make clean". This patch removes that useless mention from pg_rewind Makefile. Michael Paquier http://git.postgresql.org/pg/commitdiff/cd3cff4778e011c584e1481a6803dec5d4756a6e
  • Fix alphabetization in catalogs.sgml. System catalogs and views should be listed alphabetically in catalog.sgml, but only pg_file_settings view not. This patch also fixes typos in pg_file_settings comments. http://git.postgresql.org/pg/commitdiff/091c02a958fd0ae02b96492d9728efe8526385e6
  • Make postmaster restart archiver soon after it dies, even during recovery. After the archiver dies, postmaster tries to start a new one immediately. But previously this could happen only while server was running normally even though archiving was enabled always (i.e., archive_mode was set to always). So the archiver running during recovery could not restart soon after it died. This is an oversight in commit ffd3774. This commit changes reaper(), postmaster's signal handler to cleanup after a child process dies, so that it tries to a new archiver even during recovery if necessary. Patch by me. Review by Alvaro Herrera. http://git.postgresql.org/pg/commitdiff/b5fe62038f49f92c4a4f189c7cdacf3739effcdc

Ãlvaro Herrera pushed:

Tom Lane pushed:

  • First-draft release notes for 9.4.4, 9.3.9, 9.2.13, 9.1.18, 9.0.22. http://git.postgresql.org/pg/commitdiff/21187cfc7dfd82461db9119377a76366c00d27c3
  • Report more information if pg_perm_setlocale() fails at startup. We don't know why a few Windows users have seen this fail, but the taciturnity of the error message certainly isn't helping debug it. Let's at least find out which LC category isn't working. http://git.postgresql.org/pg/commitdiff/f6e9cbfd9153958226b27e31d658e7b64351c71f
  • Release notes for 9.4.4, 9.3.9, 9.2.13, 9.1.18, 9.0.22. http://git.postgresql.org/pg/commitdiff/b94085920b016e64ee40a0f6c50199889565cc56
  • Improve error message and hint for ALTER COLUMN TYPE can't-cast failure. We already tried to improve this once, but the "improved" text was rather off-target if you had provided a USING clause. Also, it seems helpful to provide the exact text of a suggested USING clause, so users can just copy-and-paste it when needed. Per complaint from Keith Rarick and a suggestion from Merlin Moncure. Back-patch to 9.2 where the current wording was adopted. http://git.postgresql.org/pg/commitdiff/b00982344a73d9cb626430dd17a6da84c15c9980
  • Fix failure to cover scalar-vs-rowtype cases in exec_stmt_return(). In commit 9e3ad1aac52454569393a947c06be0d301749362 I modified plpgsql to use exec_stmt_return's simple-variables fast path in more cases. However, I overlooked that there are really two different return conventions in use here, depending on whether estate->retistuple is true, and the existing fast-path code had only bothered to handle one of them. So trying to return a scalar in a function returning composite, or vice versa, could lead to unexpected error messages (typically "cache lookup failed for type 0") or to a null-pointer-dereference crash. In the DTYPE_VAR case, we can just throw error if retistuple is true, corresponding to what happens in the general-expression code path that was being used previously. (Perhaps someday both of these code paths should attempt a coercion, but today is not that day.) In the REC and ROW cases, just hand the problem to exec_eval_datum() when not retistuple. Also clean up the ROW coding slightly so it looks more like exec_eval_datum(). The previous commit also caused exec_stmt_return_next() to be used in more cases, but that code seems to be OK as-is. Per off-list report from Serge Rielau. This bug is new in 9.5 so no need to back-patch. http://git.postgresql.org/pg/commitdiff/ae58f1430abb4b0c309c40b377f91bf9d080334b

Bruce Momjian pushed:

Kevin Grittner pushed:

Michael Meskes pushed:

Correctifs rejetés (à ce jour)

No one was disappointed this week :-)

Correctifs en attente

Michael Paquier sent in two more revisions of a patch to fix some memory leaks in pg_dump, initdb and pg_upgrade.

Abhijit Menon-Sen sent in another revision of a patch to skip files in pg_log during basebackup.

Thomas Munro sent in two revisions of a patch to fix bogus truncation errors.

Dean Rasheed sent in a patch to fix an incompatibility between RLS and WHERE CURRENT OF.

Michael Paquier sent in a patch to restrict visibility of SSL information in pg_stat_ssl.

Andres Freund sent in a patch to improve multixact emergency autovacuum logic.

Jeevan Chalke sent in a patch to remove dead code in Create/RenameRole() after RoleSpec changes related to CURRENT/SESSION_USER.

Jeevan Chalke sent in another revision of a patch to add \ev and \sv (edit- and show-view) functionality to psql.

Michael Paquier sent in a patch to expand the use of xlog_internal.h's macros.

Alexander Shulgin sent in a patch to fix a problem where logical decoding sendtime update was always set to zero.

Gurjeet Singh sent in three revisions of a patch to initialize restart_lsn when the replication slot is created.

Peter Geoghegan sent in a patch to refactor speculative insertion with unique indexes.

Amit Kapila sent in another revision of a patch to remove only symlinks during recovery.

Etsuro Fujita sent in a patch to fix some comments in table inheritance.

Etsuro Fujita sent in a patch to fix a typo in comment in setrefs.c.

Jan Wieck sent in a patch to change some of the s_lock parameters with the aim of improving performance on modern NUMA machines.

Kaigai Kouhei sent in another revision of a patch to implement custom-join children.

Kaigai Kouhei sent in a patch to fix an issue where DBT-3 with SF=20 failed.

Naoya Anzai sent in a patch to make finding the backend PID a shortcut, \bid.

Andrew Dunstan sent in a patch to add json_count_array().

Peter Geoghegan sent in a patch to remove dead code for jsonb subscript deletion.

Peter Geoghegan sent in a patch to fully remove heap_formtuple() and friends.

Pavel Stehule sent in a patch to lower the log level for success in (un)registering background workers from LOG to DEBUG1.

Petr Jelínek sent in a patch to add tab completion for TABLESAMPLE to psql.

Dean Rasheed sent in a patch to add documentation for CREATE FUNCTION .. LEAKPROOF.

Ãlvaro Herrera sent in a patch to add a pg_get_multixact_range() function.

Petr Jelinek send in a flock of patches which: splits out pg_resetxlog into some reusable pieces and the calls to same, adds pg_resetsysid utility which changes the system id to newly generated one, adds -s option to pg_resetxlog to change the system id to the one specified, and adds fall-back implementation of the two functions based on very slightly modified code from OpenBSD.

Jeff Davis sent in another revision of a patch to implement memory accounting by tracking memory usage (at the block level) for all memory contexts.