<p><strong>Nouvelles hebdomadaires de PostgreSQL - 15 mai 2011</strong></p> <p>La "PgCon China" 2011 aura lieu &agrave; Guangzhou (Canton) les 15 &amp; 16 juillet 2011&nbsp;: <a target="_blank" href="http://wiki.postgresql.org/wiki/Pgconchina2011">http://wiki.postgresql.org/wiki/Pgconchina2011</a></p> <p>Nouveau sondage&nbsp;: sur quel nuage utilisez-vous PostgreSQL&nbsp;? <a target="_blank" href="http://www.postgresql.org/community">http://www.postgresql.org/community</a></p> <p>Le NYCPUG se retrouvera pour "Comparer PostgreSQL et MySQL" le 25 mai &agrave; 18h30, au 50 W 23<sup>&egrave;me</sup> rue, New-York, &Eacute;tats-Unis&amp;nbps;: <a target="_blank" href="http://www.meetup.com/postgresql-3/events/17846041/">http://www.meetup.com/postgresql-3/events/17846041/</a></p> <p>Le PDXPUG se chargera d'accueillir le PgDay, dimanche 24 juillet 2011, la veille de l'OSCON &agrave; Portland dans l'Oregon (&Eacute;tats-Unis). Plus de d&eacute;tails sur&nbsp;: <a target="_blank" href="http://pugs.postgresql.org/node/1663">http://pugs.postgresql.org/node/1663</a></p> <p><strong>Les nouveaut&eacute;s des produits d&eacute;riv&eacute;s</strong></p> <ul> <li>DBD::Pg 2.18.1, le driver Perl pour PostgreSQL&nbsp;: <a target="_blank" href="http://search.cpan.org/~turnstep/DBD-Pg-2.18.1/">http://search.cpan.org/~turnstep/DBD-Pg-2.18.1/</a></li> <li>tail_n_mail 1.19.0, un utilitaire de surveillance des logs de PostgreSQL&nbsp;: <a target="_blank" href="http://bucardo.org/wiki/Tail_n_mail">http://bucardo.org/wiki/Tail_n_mail</a></li> <li>Bucardo 4.4.4, un syst&egrave;me de r&eacute;plication multi-ma&icirc;tres pour Pg&nbsp;: <a target="_blank" href="http://bucardo.org/wiki/Bucardo">http://bucardo.org/wiki/Bucardo</a></li> <li>boxinfo 1.3.3, un programme de rassemblement d'informations sur les serveurs&nbsp;: <a target="_blank" href="http://bucardo.org/wiki/Boxinfo">http://bucardo.org/wiki/Boxinfo</a></li> <li>MicroOLAP Database Designer 1.8.0-RC pour PostgreSQL&nbsp;: <a target="_blank" href="http://microolap.com/products/database/postgresql-designer/">http://microolap.com/products/database/postgresql-designer/</a></li> <li>Les utilitaires PaGoDump et PaGoRestore 9.0.4 GUI pour Windows&nbsp;: <a target="_blank" href="http://microolap.com/products/database/pagodump">http://microolap.com/products/database/pagodump</a></li> <li>psqlODBC 09.00.0300, un driver ODBC pour PostgreSQL&nbsp;: <a target="_blank" href="http://psqlodbc.projects.postgresql.org/release.html">http://psqlodbc.projects.postgresql.org/release.html</a></li> <li>SQL/PSM, une impl&eacute;mentation de la partie homonyme du standard SQL&nbsp;: <a target="_blank" href="https://github.com/okbob/plpsm0">https://github.com/okbob/plpsm0</a></li> </ul> <p><strong>Offres d'emplois autour de PostgreSQL en mai</strong></p> <ul> <li>Internationales&nbsp;: <a target="_blank" href="http://archives.postgresql.org/pgsql-jobs/2011-05/threads.php">http://archives.postgresql.org/pgsql-jobs/2011-05/threads.php</a>;</li> <li>Francophones&nbsp;: <a target="_blank" href="http://forums.postgresql.fr/viewforum.php?id=4">http://forums.postgresql.fr/viewforum.php?id=4</a>.</li> </ul> <p><strong>PostgreSQL Local</strong></p> <ul> <li>PGCon aura lieu les 19 &amp; 20 mai 2011 &agrave; l'Universit&eacute; d'Ottawa, pr&eacute;c&eacute;d&eacute; par deux jours de tutoriels les 17 &amp; 18 mai&nbsp;: <a target="_blank" href="http://www.pgcon.org/2011/">http://www.pgcon.org/2011/</a></li> <li>La PG Session 2, sur PostGIS, se tiendra &agrave; Paris le 23 juin. Appel &agrave; conf&eacute;renciers&nbsp;: <a target="_blank" href="http://www.postgresql-sessions.org/en/2/">http://www.postgresql-sessions.org/en/2/</a></li> <li>CHAR(11), la conf&eacute;rence PostgreSQL sur le <em>clustering</em>, la haute disponibilit&eacute; et la r&eacute;plication accepte &agrave; pr&eacute;sent les inscriptions et r&eacute;servations. Dates&nbsp;: 11 &amp; 12 juillet 2011 &agrave; Cambridge, Royaume-Uni&nbsp;: <a target="_blank" href="http://www.char11.org/">http://www.char11.org/</a></li> <li>PostgreSQL Confernece West (#PgWest) will be held September 27th-30th, 2011 at the San Jose Convention center in San Jose, California, USA. <a target="_blank" href="http://www.postgresqlconference.org">http://www.postgresqlconference.org</a></li> <li>La "<em>PostgreSQL Conference Europe 2011</em>" se tiendra &agrave; Amsterdam, du 18 au 21 octobre&nbsp;: <a target="_blank" href="http://2011.pgconf.eu/">http://2011.pgconf.eu/</a></li> <li>pgbr aura lieu &agrave; S&atilde;o Paulo (Br&eacute;sil) les 3 &amp; 4 novembre 2011&nbsp;: <a target="_blank" href="http://pgbr.postgresql.org.br/">http://pgbr.postgresql.org.br/</a></li> </ul> <p><strong>PostgreSQL dans les m&eacute;dia</strong></p> <ul> <li>Planet PostgreSQL&nbsp;: <a target="_blank" href="http://planet.postgresql.org/">http://planet.postgresql.org/</a></li> <li>Planet PostgreSQLFr&nbsp;: <a target="_blank" href="http://planete.postgresql.fr/">http://planete.postgresql.fr/</a></li> </ul> <p><i>PostgreSQL Weekly News / les nouvelles hebdomadaires vous sont offertes cette semaine par David Fetter. Traduction par l'&eacute;quipe PostgreSQLFr sous licence CC BY-NC-SA.</i></p> <p><i>Proposez vos articles ou annonces avant dimanche 15:00 (heure du Pacifique). Merci de les envoyer en anglais &agrave; david (a) fetter.org, en allemand &agrave; pwn (a) pgug.de, en italien &agrave; pwn (a) itpug.org et en espagnol &agrave; pwn (a) arpug.com.ar.</i></p> <p>(<a target="_blank" href="http://www.postgresql.org/community/weeklynews/pwn20110515">lien vers l'article original</a>)</p> <p><strong>Correctifs appliqu&eacute;s</strong></p> <p>Bruce Momjian a pouss&eacute;&nbsp;:</p> <ul> <li>In pg_upgrade, add status message about superuser check. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/78318d63d7613ca9fe2206c717c7ccb400038db6">http://git.postgresql.org/pg/commitdiff/78318d63d7613ca9fe2206c717c7ccb400038db6</a></li> <li>Update documentation to state there is three-value logic, not three-value boolean logic. Backpatch to 9.0.X since we just got another bug report about this today. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/832c095d686e89f6390e0ff3e91b4c8015c2c3f7">http://git.postgresql.org/pg/commitdiff/832c095d686e89f6390e0ff3e91b4c8015c2c3f7</a></li> <li>Documentation cleanup for the possible values of the datatype 'boolean'. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/a9cc9df021f43a8ecda0924236d22a004baa7d13">http://git.postgresql.org/pg/commitdiff/a9cc9df021f43a8ecda0924236d22a004baa7d13</a></li> <li>In pg_upgrade, remove suggestion of setting pg_hba.conf to 'trust', now that we report the libpq connection failure string. Per suggestion from Robert Haas. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/5059cf6ebf36bc9731b8394a1d2c9dba6cb50a3c">http://git.postgresql.org/pg/commitdiff/5059cf6ebf36bc9731b8394a1d2c9dba6cb50a3c</a></li> <li>For create/dropdb, only connect once to the server since we now have a shared description table for pg_database comments. Also update comments about database name selection. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/7ff7711919287a93f348023d77f9611633c9627c">http://git.postgresql.org/pg/commitdiff/7ff7711919287a93f348023d77f9611633c9627c</a></li> <li>Mention "backslash" escape processing change in 9.1 release notes. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/64cc297dc9875a6feb3a310038707b6119b775ca">http://git.postgresql.org/pg/commitdiff/64cc297dc9875a6feb3a310038707b6119b775ca</a></li> </ul> <p>Tom Lane a pouss&eacute;&nbsp;:</p> <ul> <li>Remove "make check" target in src/test/isolation/Makefile. This doesn't work as expected because the isolationtester program requires libpq to already be installed. While it works when you've already installed libpq, having to already have done "make install" defeats most of the point of a check with a temp installation. And there are weird corner cases if the dynamic linker picks up an old libpq.so from system library directories. Remove the target (or more precisely, make it print a helpful message) so people don't expect the case to work. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/7886cc73ad12fb9b5a729b6c8152f11a309f5d65">http://git.postgresql.org/pg/commitdiff/7886cc73ad12fb9b5a729b6c8152f11a309f5d65</a></li> <li>Be more wary in initdb's creation of platform-dependent collations. Discard any collation aliases that match the built-in pg_collation entries (ie, "default", "C", "POSIX"). Such aliases would be refused by a CREATE COLLATION command, but since initdb is injecting them via a simple INSERT, it has to make the corresponding check for itself. Per Martin Pitt's report of funny behavior in a machine that had a bogus "C.UTF-8" locale. Also, use E'' syntax for the output of escape_quotes, as per its header comment. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/853c1750f91feaa6a72b29ae683c955ab6f4df70">http://git.postgresql.org/pg/commitdiff/853c1750f91feaa6a72b29ae683c955ab6f4df70</a></li> <li>Adjust documentation with respect to "unknown" timezone setting. The recent cleanup of GUC assign hooks got rid of the kludge of using "unknown" as a magic value for timezone and log_timezone. But I forgot to update the documentation to match, as noted by Martin Pitt. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/1453cd8f82139a3e751c617dc6635f7b1c7abe14">http://git.postgresql.org/pg/commitdiff/1453cd8f82139a3e751c617dc6635f7b1c7abe14</a></li> <li>Prevent datebsearch() from crashing on base == NULL &amp;&amp; nel == 0. Normally nel == 0 works okay because the initial value of "last" will be less than "base"; but if "base" is zero then the calculation wraps around and we have a very large (unsigned) value for "last", so that the loop can be entered and we get a SIGSEGV on a bogus pointer. This is certainly the proximate cause of the recent reports of Windows builds crashing on 'infinity'::timestamp --- evidently, they're either not setting an active timezonetktbl, or setting an empty one. It's not yet clear to me why it's only happening on Windows and not happening on any buildfarm member. But even if that's due to some bug elsewhere, it seems wise for this function to not choke on the powerup values of timezonetktbl/sztimezonetktbl. I also changed the copy of this code in ecpglib, although I am not sure whether it's exposed to a similar hazard. Per report and stack trace from Richard Broersma. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/2e82d0b396473b595a30f68b37b8dfd41c37dff8">http://git.postgresql.org/pg/commitdiff/2e82d0b396473b595a30f68b37b8dfd41c37dff8</a></li> <li>Be more explicit about the meaning of the change in standard_conforming_strings. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/ea964a451e51a32b71d004d261874adb1e135066">http://git.postgresql.org/pg/commitdiff/ea964a451e51a32b71d004d261874adb1e135066</a></li> <li>Clean up parsing of CREATE TRIGGER's argument list. Use ColLabel in place of ColId, so that reserved words are accepted as if they were not reserved. Also, remove BCONST and XCONST, which were never documented as allowed. Allowing those exposes to users an implementation detail, namely the format in which the lexer outputs such constants, that seems unwise to expose. No documentation change needed, since this just makes the code act more like you'd expect from reading the CREATE TRIGGER man page. Per complaint from Szymon Guz and subsequent discussion. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/6fc6686b48bc569b05ce711d18cf964498b217f2">http://git.postgresql.org/pg/commitdiff/6fc6686b48bc569b05ce711d18cf964498b217f2</a></li> <li>Split PGC_S_DEFAULT into two values, for true boot_val vs computed default. Failure to distinguish these cases is the real cause behind the recent reports of Windows builds crashing on 'infinity'::timestamp, which was directly due to failure to establish a value of timezone_abbreviations in postmaster child processes. The postmaster had the desired value, but write_one_nondefault_variable() didn't transmit it to backends. To fix that, invent a new value PGC_S_DYNAMIC_DEFAULT, and be sure to use that or PGC_S_ENV_VAR (as appropriate) for "default" settings that are computed during initialization. (We need both because there's at least one variable that could receive a value from either source.) This commit also fixes ProcessConfigFile's failure to restore the correct default value for certain GUC variables if they are set in postgresql.conf and then removed/commented out of the file. We have to recompute and reinstall the value for any GUC variable that could have received a value from PGC_S_DYNAMIC_DEFAULT or PGC_S_ENV_VAR sources, and there were a number of oversights. (That whole thing is a crock that needs to be redesigned, but not today.) However, I intentionally didn't make it work "exactly right" for the cases of timezone and log_timezone. The exactly right behavior would involve running select_default_timezone, which we'd have to do independently in each postgres process, causing the whole database to become entirely unresponsive for as much as several seconds. That didn't seem like a good idea, especially since the variable's removal from postgresql.conf might be just an accidental edit. Instead the behavior is to adopt the previously active setting as if it were default. Note that this patch creates an ABI break for extensions that use any of the PGC_S_XXX constants; they'll need to be recompiled. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/e05b866447899211a0c2df31bf0671faac4fc3e5">http://git.postgresql.org/pg/commitdiff/e05b866447899211a0c2df31bf0671faac4fc3e5</a></li> <li>Fix write-past-buffer-end in ldapServiceLookup(). The code to assemble ldap_get_values_len's output into a single string wrote the terminating null one byte past where it should. Fix that, and make some other cosmetic adjustments to make the code a trifle more readable and more in line with usual Postgres coding style. Also, free the "result" string when done with it, to avoid a permanent memory leak. Bug report and patch by Laurenz Albe, cosmetic adjustments by me. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/8d0df2048f8c0663b41440eeaf73e8859c922e28">http://git.postgresql.org/pg/commitdiff/8d0df2048f8c0663b41440eeaf73e8859c922e28</a></li> </ul> <p>Peter Eisentraut a pouss&eacute;&nbsp;:</p> <ul> <li>Put options in more alphabetical order <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/94a8fde403d229ccd9c667722ab3af72278f994d">http://git.postgresql.org/pg/commitdiff/94a8fde403d229ccd9c667722ab3af72278f994d</a></li> <li>Add bug report line to pg_upgrade --help output <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/4c78846cb3a0f7017ad96d4513f79b1401fba12b">http://git.postgresql.org/pg/commitdiff/4c78846cb3a0f7017ad96d4513f79b1401fba12b</a></li> <li>Put pg_test_fsync --help and --version output in line with conventions. Foremost, it should go to stdout. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/3a8dcd9a1f9bbe36478995b22de40967c0610149">http://git.postgresql.org/pg/commitdiff/3a8dcd9a1f9bbe36478995b22de40967c0610149</a></li> <li>Add some punctuation <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/87631ac98df2e32cac22ddee7b9c37813ff3b161">http://git.postgresql.org/pg/commitdiff/87631ac98df2e32cac22ddee7b9c37813ff3b161</a></li> <li>Format pg_upgrade --version in line with conventions <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/00fad9f6fef8ed166b183ad45a9bd863d965d81c">http://git.postgresql.org/pg/commitdiff/00fad9f6fef8ed166b183ad45a9bd863d965d81c</a></li> </ul> <p>Heikki Linnakangas a pouss&eacute;&nbsp;:</p> <ul> <li>Shut down WAL receiver if it's still running at end of recovery. We used to just check that it's not running and PANIC if it was, but that can rightfully happen if recovery stops at recovery target. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/a0c8514149de92d48a8cf0f1a1458486851980a4">http://git.postgresql.org/pg/commitdiff/a0c8514149de92d48a8cf0f1a1458486851980a4</a></li> </ul> <p>Alvaro Herrera a pouss&eacute;&nbsp;:</p> <ul> <li>Fix assorted typos <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/c6eb5740b3c352fb10bf61bb4465332ae6b28ab1">http://git.postgresql.org/pg/commitdiff/c6eb5740b3c352fb10bf61bb4465332ae6b28ab1</a></li> </ul> <p>Robert Haas a pouss&eacute;&nbsp;:</p> <ul> <li>Kill stray "not". <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/c5ab8425be07f6a866ce84dc03f87d6924421e72">http://git.postgresql.org/pg/commitdiff/c5ab8425be07f6a866ce84dc03f87d6924421e72</a></li> <li>More cleanup of FOREIGN TABLE permissions handling. This commit fixes psql, pg_dump, and the information schema to be consistent with the backend changes which I made as part of commit be90032e0d1cf473bdd99aee94218218f59f29f1, and also includes a related documentation tweak. Shigeru Hanada, with slight adjustment. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/9bb6d9795253bb521f81c626fea49a704a369ca9">http://git.postgresql.org/pg/commitdiff/9bb6d9795253bb521f81c626fea49a704a369ca9</a></li> </ul> <p>Andrew Dunstan a pouss&eacute;&nbsp;:</p> <ul> <li>Build and run isolation test programs under MSVC. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/840826e36cd40e63a3af05d9b41dc65250bc7a7a">http://git.postgresql.org/pg/commitdiff/840826e36cd40e63a3af05d9b41dc65250bc7a7a</a></li> <li>Add missing check function lookup. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/20bacc9560b29b33b6cad4e53c6a77e6c8a71c5d">http://git.postgresql.org/pg/commitdiff/20bacc9560b29b33b6cad4e53c6a77e6c8a71c5d</a></li> <li>Fix bad macro call noticed by MSVC compiler. <a target="_blank" href="http://git.postgresql.org/pg/commitdiff/ec645ef346d2de2fb889f6b8a8d2fc70a4ea4971">http://git.postgresql.org/pg/commitdiff/ec645ef346d2de2fb889f6b8a8d2fc70a4ea4971</a></li> </ul> <p><strong>Correctifs rejet&eacute;s (&agrave; ce jour)</strong></p> <ul> <li>Pas de d&eacute;ception cette semaine&nbsp;:-)</li> </ul> <p><strong>Correctifs en attente</strong></p> <ul> <li>KaiGai Kohei sent in a patch to implement SECURITY LABELs on shared database objects.</li> <li>Merlin Moncure sent in two more revisions of the hint bit cache patch.</li> <li>Shigeru HANADA sent in a patch to fix some infelicities in foreign table handling.</li> <li>Fujii Masao sent in a patch to fix an issue that arose in the attempt to time-delay standbys.</li> <li>Peter Geoghegan sent in a PoC patch demonstrating the named pipe trick on Windows.</li> <li>Robert Haas sent in another revision of the patch to make visibility maps crash-safe.</li> <li>Yeb Havinga sent in a patch to allow domains over composite types.</li> <li>Bruce Momjian sent in two revisions of a patch to decouple pg_upgrade's behavior from environment variables.</li> <li>Peter Geoghegan sent in an updated version of the patch to detect and alert on the death of the postmaster.</li> <li>Tom Lane sent in a WIP patch to refactor the Param typmod in PL/pgsql.</li> <li>Alexey Klyukin sent in a patch to fix a concurrency issue with ALTER ROLE SET...</li> <li>Alexey Klyukin sent in another revision of the patch to make a validator for configuration files.</li> <li>Jaime Casanova sent in a patch to improve the interaction of DOMAINs with CASTing.</li> </ul>