Par SAS le 17/10/2006 - 11:25
== PostgreSQL Weekly News - October 15 2006 ==
PostgreSQL 8.1.5, 8.0.9, 7.4.14 et 7.3.16 sortiront très bientôt. Soyez prêts à upgrader ! (NDT: c'est fait à ce jour)
== Nouveaux produits autour de PostgreSQL ==
Sortie de pgpool-HA 1.0.0. pgpool-HA combine pgpool et heartbeat :
http://pgfoundry.org/projects/pgpool/
Sortie de SQL Manager 3.7 pour PostgreSQL :
http://www.sqlmanager.net/en/products/postgresql/
Sortie de PostGIS 1.1.5. Mettez Ă jour !
http://postgis.refractions.net/
Sortie de DBI-Link 2.0beta1. Testez !
http://pgfoundry.org/projects/dbi-link/
Sortie de pgAdmin III v1.6 Beta 3
http://www.pgadmin.org/download/
Sortie de Glom 1.1.6
http://www.glom.org/
L'équipe de développement de Npgsql est fière d'annoncer la sortie de Npgsql 1.0 GA :
http://pgfoundry.org/projects/npgsql/
Sortie de PGCluster-1.3.1rc6 et PGCluster-1.5.0rc8.
http://pgfoundry.org/projects/pgcluster/
== PostgreSQL Local ==
PostgreSQL aura un stand dans le village associatif de Linuxworld UK (http://www.linuxworldexpo.co.uk/) les 25 et 26 octobre. Contactez uk@postgresql.org si vous ĂŞtes volontaires pour y participer ou si vous voulez plus d'informations.
== L'actualité de PostgreSQL ==
Planet PostgreSQL: http://www.planetpostgresql.org/
General Bits, Archives et nouveaux articles occasionnels: http://www.varlena.com/GeneralBits/
PostgreSQL Weekly News vous est présenté par David Fetter, Dave Page et Josh Berkus.
Adaptation française de Jean-Paul Argudo et Stéphane Schildknecht.
== Patches appliqués ==
Tom Lane a ajouté les patches suivants :
- Ajustements sur plperl pour s'assurer que toutes les chaînes de caractères et autres hash keys passées à Perl sont marquées UTF8 lorsque l'encodage de la base de données est UTF8. Cela devrait permettre d'éviter des inconsistences comme celle présentée dans le bug #2683 par Vitali Stupin.
- Revue du code pour le patch --no-data-for-failed-tables. Plutôt que de supprimer une des structure de données du programme, utilisation de la possibilité d'exclure sélectivement des items de la TOC par leur ID. Un peu plus de code, mais un peu moins de problèmes de maintenance dans le futur.
- Revue de code et de documentation pour le patch "ALTER TABLE INHERIT/NO INHERIT"
- Estampillage des versions 8.1.5, 8.0.9, 7.4.14 et 7.3.16
- Synchro 8.1 pg_config.h.in avec la sortie attendue du autoheader (on dirait que quelqu'un l'a fait manuellement la dernière fois...)
- Mise à jour des release notes pour la correction au sujet des fonctions SQL vs les déclencheurs
- Erreurs corrigées sur l'état après-déclencheur lorsqu'une fonction SQL retourne plusieurs tuples --- si la requête provoquait des évènements déclenchés entre les les tuples, ceux-ci étaient déclenchés au mauvais moment. Il résultait alors un comportement très bizarre. Patch créé grâce au rapport de bug de Merlin Moncure.
- Utilisation de Min() à la place de min() dans l'algorithme de qsort, pour plus de consistance et pour éviter des warnings de redéfinition de macro sur certaines plates-formes. Patch corrigé grâce à une plainte de Hiroshi Saito.
- Suppression d'un appel maladroit et inconsidéré de free(), grâce au report de bug de Chander Ganesan. Non, je me moque de savoir que Coverity considère cela comme une fuite de mémoire. Le code nécessaire pour gérer cela n'en vaut vraiment pas la peine.
- Quelques copiés/collés sur les release notes des versions antérieures
- Correction d'une vérification incorrecte sur un litéral inconnu dans ANYARRAY. Il est correct de permettre un foçage d'une donnée de type inconnue dans ANY ou ANYELEMENT, puisqu'il est d'un type de donnée probablement connu, cependant ce n'est pas un type de données de type tableau. Cela peut provoquer un crash du backend, mais je pense que ça ne peut pas être exploitable comme une faille de sécurité. Selon le rapport de Michael Fuhr.
- CREATE TABLE ... LIKE ... devrait marquer les colonnes qu'il créée avec un attislocal = true, puisqu'elles ne sont pas vraiment héritées mais plutôt copiées de la table originale.
- Correction de la commande \d de psql pour qu'elle se comporte correctement lorsque le | est utilisé dans une regexp. Avant cela, on utilisait par exemple '^foo|bar$' qui est faux puisque les marqueurs ^ et $ sont interprétés comme des alternatives ; on traduit désormais '^(foo|bar)$' pour avoir le comportement attendu. C'est identique au bug précédement trouvé dans un escape() similaire. Déjà corrigé dans HEAD, il ne s'agit que d'un back-port de ce patch.
- Révision de la recherche de motifs dans psql, d'après une discussion. La règle est à présent de traiter d'abord tous les modificateurs d'inclusion, puis tous les modificateurs d'exclusion, ainsi le comportement est indépendant de l'ordre des modificateurs. L'utilisation de -T ne provoque pas la suppression des objets qui ne sont pas des tables. A présent les motifs sont interprétés de la même façon que la commande \d dans psql, plutôt que des expressions rationelles pures. Cela permet par exemple -t schema.tab de faire ce qu'il aurait du faire depuis longtemps. On autorise aussi le switch --blobs afin de faire quelque chose d'utile, c'est à dire, rajouter à nouveau les blobs dans un dump où ils étaient précédement supprimés.
- Amélioration de la description des règles de la recherche par motif dans la commande \d de psql (et bientôt de pg_dump)
- Déplacement de processNamePattern dans dumputils.c en vue de l'utiliser dans pg_dump et dans psql. Puisque psql utilise déjà dumputils.c, alors qu'il n'y a aucun code partagé par ailleurs, cela paraît la solution la plus simple. Correction sur les motifs utilisant le | des regexp en ajoutant des parenthèses (il s'agit toujours du bug trouvé précédemment dans la fonction similar_escape()). Cela devrait être backporté aussi.
Bruce Momjian a commité les patches suivants :
- Mise à jour des FAQ. C'est un tout petit patch cosmétique qui ajoute le canal IRC brésilien à la liste des canaux IRC, fixe une typo dans la question sur les OID et corrige le nom du projet PGCluster.
- Les mises Ă jour de Jun Kuwamura Ă la FAQ en japonais.
- Les patches de Hiroshi Saito qui corrigent la compilation de test_fsync sur la plate-forme MinGW(win32).
- Ajout d'un TODO: Rajouter une notification si CREATE TABLE ... ON COMMIT { DELETE ROWS | DROP } est reçu en dehors d'une transaction de plusieurs instructions.
- Mise Ă jour du commentaire de de la section documentation dans pg_hba.conf de Quinn Weaver.
- Les correctifs d'Hiroshi Saito sur le comilateur MSVC/BCC Win32.
- Restauration de l'entrée dans la FAQ HP concernant les problèmes du script de régression, puisque dans les versions 8.1.X, le test de régression est toujours composé d'un script. Correctif pour les seules versions 8.1.X.
- Ajout d'un item Ă la checklist de release « Copier la FAQ de HEAD vers la dernière branche »
- Correction des FAQ pour les versions 8.1.X.
- Mise à jour de la FAQ pour la dernière version 8.1.5.
- Mise à jour de libpq.rc pour les versions 7.3.16 et 7.4.14. Les versions plus récentes utilisent libpq.rc.in, déjà mise à jour.
- Estampillage des versions 7.3.16, 7.4.14, 8.0.9 et 8.1.5.
- Mise Ă jour des release notes des versions 7.3.16, 7.4.14, 8.0.9 et 8.1.5.
Peter Eisentraut a commité :
- Rendre le code de unknown-option-warning plus portable. echo -n n'est pas portable, pas plus que "|" ou "\|" ne figurent dans les expressions rationnelles de base.
- Nettoyage de la FAQ_Solaris.
Teodor Sigaev a commité :
- Dans contrib/hstore, les fonctions 'isexists' et 'isdefined' ont été renommées respectivement en 'exist' et 'defined'. Les anciens noms restent pour des raisons de compatibilité, mais ne se trouvent plus dans la documentation.
Neil Conway a commité :
- Plusieurs améliorations incrémentales et correctifs de la documentation sur l'archivage en continu (Continuous Archiving). Il reste beaucoup de travail éditorial.
- Le patch de Laurenz Albe concernant l'installation de la documentation qui ajoute quelques liens Ă la documentation concernant LDAP vers la discussion sur l'option de configuration "--with-ldap".
Teodor Sigaev a commité :
- Un correctif de l'endormissement infini et de l'impossibilité d'envoi sous Win32.
== Correctifs refusés (à ce jour) ==
Pas de déception cette semaine. :-)
== Correctifs en attente ==
Michael Glaesman a soumis un correctif de documentation pour CREATE CONSTRAINT TRIGGER.
Stephen Frost a soumis un correctif qui ajoute l'aggrégat array_accum() comme fonction interne. Cela permet de bénéficier des optimisations de vitesse dans les fonctions de traitement des tableaux.
Hiroshi Saito a soumis un correctif comparant les temps de fsync sur les descripteurs write() et non-write().