[Trad] [svn:pgfr] r1389 - in traduc/branches/bv747/manuel: . ref
admin at listes.postgresql.fr
admin at listes.postgresql.fr
Mar 8 Sep 10:33:39 CEST 2009
Author: gleu
Date: 2009-09-08 10:33:39 +0200 (Tue, 08 Sep 2009)
New Revision: 1389
Added:
traduc/branches/bv747/manuel/release-7.4.sgml
traduc/branches/bv747/manuel/release-old.sgml
Modified:
traduc/branches/bv747/manuel/filelist.sgml
traduc/branches/bv747/manuel/ref/psql-ref.sgml
traduc/branches/bv747/manuel/release.sgml
traduc/branches/bv747/manuel/version.sgml
Log:
Mise ?\195?\160 jour pour la version 7.4.26.
Modified: traduc/branches/bv747/manuel/filelist.sgml
===================================================================
--- traduc/branches/bv747/manuel/filelist.sgml 2009-09-08 07:51:34 UTC (rev 1388)
+++ traduc/branches/bv747/manuel/filelist.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -94,7 +94,10 @@
<!entity errcodes SYSTEM "errcodes.sgml">
<!entity features SYSTEM "features.sgml">
<!entity keywords SYSTEM "keywords.sgml">
+
<!entity release SYSTEM "release.sgml">
+<!entity release-7.4 SYSTEM "release-7.4.sgml">
+<!entity release-old SYSTEM "release-old.sgml">
<!entity features-supported SYSTEM "features-supported.sgml">
<!entity features-unsupported SYSTEM "features-unsupported.sgml">
Modified: traduc/branches/bv747/manuel/ref/psql-ref.sgml
===================================================================
--- traduc/branches/bv747/manuel/ref/psql-ref.sgml 2009-09-08 07:51:34 UTC (rev 1388)
+++ traduc/branches/bv747/manuel/ref/psql-ref.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -235,6 +235,18 @@
</varlistentry>
<varlistentry>
+ <term><option>-n</></term>
+ <term><option>--no-readline</></term>
+ <listitem>
+ <para>
+ N'utilise pas readline pour l'édition de ligne et n'utilise pas
+ l'historique. Ceci est utile quand on veut désactiver la gestion de la
+ tabulation pour l'action copie/colle.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><option>-o <replaceable
class="parameter">nomfichier</replaceable></></term>
<term><option>--output <replaceable
Added: traduc/branches/bv747/manuel/release-7.4.sgml
===================================================================
--- traduc/branches/bv747/manuel/release-7.4.sgml (rev 0)
+++ traduc/branches/bv747/manuel/release-7.4.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -0,0 +1,4456 @@
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release-7.4.sgml,v 1.1.10.3 2009-09-03 22:14:41 tgl Exp $ -->
+<!-- See header comment in release.sgml about typical markup -->
+
+ <sect1 id="release-7-4-26">
+ <title>Release 7.4.26</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2009-09-09</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 7.4.25.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration to Version 7.4.26</title>
+
+ <para>
+ A dump/restore is not required for those running 7.4.X.
+ However, if you have any hash indexes on <type>interval</> columns,
+ you must <command>REINDEX</> them after updating to 7.4.26.
+ Also, if you are upgrading from a version earlier than 7.4.11,
+ see the release notes for 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Disallow <command>RESET ROLE</> and <command>RESET SESSION
+ AUTHORIZATION</> inside security-definer functions (Tom, Heikki)
+ </para>
+
+ <para>
+ This covers a case that was missed in the previous patch that
+ disallowed <command>SET ROLE</> and <command>SET SESSION
+ AUTHORIZATION</> inside security-definer functions.
+ (See CVE-2007-6600)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix handling of sub-SELECTs appearing in the arguments of
+ an outer-level aggregate function (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix hash calculation for data type <type>interval</> (Tom)
+ </para>
+
+ <para>
+ This corrects wrong results for hash joins on interval values.
+ It also changes the contents of hash indexes on interval columns.
+ If you have any such indexes, you must <command>REINDEX</> them
+ after updating.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix overflow for <literal>INTERVAL '<replaceable>x</> ms'</literal>
+ when <replaceable>x</> is more than 2 million and integer
+ datetimes are in use (Alex Hunsaker)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix calculation of distance between a point and a line segment (Tom)
+ </para>
+
+ <para>
+ This led to incorrect results from a number of geometric operators.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <type>money</> data type to work in locales where currency
+ amounts have no fractional digits, e.g. Japan (Itagaki Takahiro)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Properly round datetime input like
+ <literal>00:12:57.9999999999999999999999999999</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix poor choice of page split point in GiST R-tree operator classes
+ (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix portability issues in plperl initialization (Andrew Dunstan)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve robustness of <application>libpq</>'s code to recover
+ from errors during <command>COPY FROM STDIN</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid including conflicting readline and editline header files
+ when both libraries are installed (Zdenek Kotala)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-25">
+ <title>Version 7.4.25</title>
+
+ <note>
+ <title>Date de version</title>
+ <simpara>2009-03-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient des corrections de la version 7.4.24.
+ Pour plus d'informations sur les nouvelles fonctionnalités de la
+ version majeure 7.4, voir <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.25</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Correction de crashs suite à des récursions erronées dûes à l'échec d'une
+ conversion d'encodage (Tom)
+ </para>
+
+ <para>
+ Cette modification étend les corrections réalisées lors des deux
+ précédentes versions mineures pour les même scénarios. Les corrections
+ déjà réalisées étaient ciblées sur les problèmes rencontrés, mais nous
+ nous apercevons maintenant que <emphasis>toute</emphasis> erreur renvoyée
+ par une fonction de conversion d'encodage pouvait entraîner une récursion
+ infinie pour indiquer l'erreur. La solution est donc de désactiver toute
+ traduction et conversion d'encodage. Le message d'erreur est renvoyé en
+ ASCII simple si nous découvrons que nous sommes dans une situation
+ susceptible d'entraîner une récursion infinie.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ N'autorise plus <command>CREATE CONVERSION</> avec les mauvais encodages
+ pour la fonction de conversion spécifiée (Heikki)
+ </para>
+
+ <para>
+ Ceci permet de prévenir un scénario possible pour un échec de conversion
+ d'encodage. Le changement précédent permet de se protéger contre les
+ autres échecs du même type.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un crash lorsque <function>to_char()</> a pour argument des
+ codes de format inappropriés pour la donnée en argument (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout de <literal>MUST</> (Mauritius Island Summer Time) dans la liste
+ par défaut des abréviations connues de fuseau horaire (Xavier Bugaud)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-24">
+ <title>Version 7.4.24</title>
+
+ <note>
+ <title>Date de version</title>
+ <simpara>2009-02-02</simpara>
+ </note>
+
+ <para>
+ Cette version contient des corrections de la version 7.4.23.
+ Pour plus d'informations sur les nouvelles fonctionnalités de la
+ version majeure 7.4, voir <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.24</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changements</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Amélioration de la gestion des URL dans la fonction
+ <function>headline()</function> (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration de la gestion des lignes trop longues dans la fonction
+ <function>headline()</function> (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Empêche des échecs ou des mauvaises conversions avec Assert si une
+ conversion d'encodage est créé avec la mauvaise fonction de conversion
+ pour la paire spécifiée des encodages (Tom, Heikki)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Évite un verrou inutile des petites tables dans <command>VACUUM</>
+ (Heikki)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de variables non initialisées dans la fonction
+ <function>get_covers()</function> de <filename>contrib/tsearch2</filename>
+ (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue dans la gestion de <function>to_char()</function>
+ pour les codes de format <literal>TH</literal> (Andreas Scherbaum)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Toute la documentation référence maintenant <literal>pgsql-bugs</literal>
+ et/ou <literal>pgsql-hackers</literal>, au lieu des listes obsolètes comme
+ <literal>pgsql-ports</literal> et <literal>pgsql-patches</literal> (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-23">
+ <title>Version 7.4.23</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2008-11-03</simpara>
+ </note>
+
+ <para>
+ Cette version contient des corrections de la version 7.4.22.
+ Pour plus d'informations sur les nouvelles fonctionnalités de la
+ version majeure 7.4, voir <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.23</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Correction d'un crash du serveur lorsque l'encodage client ne peut pas
+ représenter une version convertie du message d'erreur (Tom)
+ </para>
+
+ <para>
+ Nous avons déjà corrigé des problèmes identiques dans le passé, mais le
+ problème est toujours d'actualité si le message <quote>le caratère n'a
+ pas d'équivalent</> ne peut pas être converti. La correction revient à
+ désactiver la transformation et à renvoyer le message d'erreur en ASCII
+ brut quand nous détectons cette situation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de la génération du résumé (« headline ») par tsearch2 quand
+ l'élément de la requête correspond au premier mot d'un texte (Sushant
+ Sinha)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de l'affichage de secondes fractionnées dans des valeurs
+ d'intervalle lors de l'utilisation d'un style de date non ISO dans une
+ construction ayant utilisé l'option <option>--enable-integer-datetimes</>
+ (Ron Mayer)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ S'assure que <function>SPI_getvalue</> et <function>SPI_getbinval</>
+ fonctionnent correctement lorsque la ligne et le descripteur de ligne
+ passés ont un nombre de colonnes différent (Tom)
+ </para>
+
+ <para>
+ Cette situation est normale quand une table se voit ajouter ou supprimer
+ des colonnes, mais ces deux fonctions ne le géraient pas correctement.
+ La seule conséquence probable est l'envoi d'un message d'erreur erroné.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de l'analyse de <command>CREATE USER</> par <application>ecpg</>
+ (Michael)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-22">
+ <title>Release 7.4.22</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2008-09-22</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 7.4.21.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4"/>.
+ </para>
+
+ <sect2>
+ <title>Migration to Version 7.4.22</title>
+
+ <para>
+ A dump/restore is not required for those running 7.4.X.
+ However, if you are upgrading from a version earlier than 7.4.11,
+ see the release notes for 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix datetime input functions to correctly detect integer overflow when
+ running on a 64-bit platform (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve performance of writing very long log messages to syslog (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
+ ON</> query (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix planner to estimate that <literal>GROUP BY</> expressions yielding
+ boolean results always result in two groups, regardless of the
+ expressions' contents (Tom)
+ </para>
+
+ <para>
+ This is very substantially more accurate than the regular <literal>GROUP
+ BY</literal> estimate for certain boolean tests like <replaceable>col</replaceable>
+ <literal>IS NULL</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <application>pg_dump</application> and <application>pg_restore</application>'s
+ error reporting after failure to send a SQL command (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-21">
+ <title>Release 7.4.21</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2008-06-12</simpara>
+ </note>
+
+ <para>
+ This release contains one serious bug fix over 7.4.20.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration to Version 7.4.21</title>
+
+ <para>
+ A dump/restore is not required for those running 7.4.X.
+ However, if you are upgrading from a version earlier than 7.4.11,
+ see the release notes for 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Make <function>pg_get_ruledef()</> parenthesize negative constants (Tom)
+ </para>
+
+ <para>
+ Before this fix, a negative constant in a view or rule might be dumped
+ as, say, <literal>-42::integer</>, which is subtly incorrect: it should
+ be <literal>(-42)::integer</> due to operator precedence rules.
+ Usually this would make little difference, but it could interact with
+ another recent patch to cause
+ <productname>PostgreSQL</> to reject what had been a valid
+ <command>SELECT DISTINCT</> view query. Since this could result in
+ <application>pg_dump</> output failing to reload, it is being treated
+ as a high-priority fix. The only released versions in which dump
+ output is actually incorrect are 8.3.1 and 8.2.7.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-20">
+ <title>Release 7.4.20</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>never released</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 7.4.19.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration to Version 7.4.20</title>
+
+ <para>
+ A dump/restore is not required for those running 7.4.X.
+ However, if you are upgrading from a version earlier than 7.4.11,
+ see the release notes for 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix conversions between ISO-8859-5 and other encodings to handle
+ Cyrillic <quote>Yo</quote> characters (<literal>e</literal> and <literal>E</literal> with
+ two dots) (Sergey Burladyan)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix a few datatype input functions
+ that were allowing unused bytes in their results to contain
+ uninitialized, unpredictable values (Tom)
+ </para>
+
+ <para>
+ This could lead to failures in which two apparently identical literal
+ values were not seen as equal, resulting in the parser complaining
+ about unmatched <literal>ORDER BY</literal> and <literal>DISTINCT</literal>
+ expressions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix a corner case in regular-expression substring matching
+ (<literal>substring(<replaceable>string</replaceable> from
+ <replaceable>pattern</replaceable>)</literal>) (Tom)
+ </para>
+
+ <para>
+ The problem occurs when there is a match to the pattern overall but
+ the user has specified a parenthesized subexpression and that
+ subexpression hasn't got a match. An example is
+ <literal>substring('foo' from 'foo(bar)?')</literal>.
+ This should return NULL, since <literal>(bar)</literal> isn't matched, but
+ it was mistakenly returning the whole-pattern match instead (ie,
+ <literal>foo</literal>).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect result from <application>ecpg</application>'s
+ <function>PGTYPEStimestamp_sub()</function> function (Michael)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <literal>DatumGetBool</literal> macro to not fail with <application>gcc</application>
+ 4.3 (Tom)
+ </para>
+
+ <para>
+ This problem affects <quote>old style</quote> (V0) C functions that
+ return boolean. The fix is already in 8.3, but the need to
+ back-patch it was not realized at the time.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix longstanding <command>LISTEN</command>/<command>NOTIFY</command>
+ race condition (Tom)
+ </para>
+
+ <para>
+ In rare cases a session that had just executed a
+ <command>LISTEN</command> might not get a notification, even though
+ one would be expected because the concurrent transaction executing
+ <command>NOTIFY</command> was observed to commit later.
+ </para>
+
+ <para>
+ A side effect of the fix is that a transaction that has executed
+ a not-yet-committed <command>LISTEN</command> command will not see any
+ row in <structname>pg_listener</structname> for the <command>LISTEN</command>,
+ should it choose to look; formerly it would have. This behavior
+ was never documented one way or the other, but it is possible that
+ some applications depend on the old behavior.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix display of constant expressions in <literal>ORDER BY</literal>
+ and <literal>GROUP BY</literal> (Tom)
+ </para>
+
+ <para>
+ An explictly casted constant would be shown incorrectly. This could
+ for example lead to corruption of a view definition during
+ dump and reload.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>libpq</application> to handle NOTICE messages correctly
+ during COPY OUT (Tom)
+ </para>
+
+ <para>
+ This failure has only been observed to occur when a user-defined
+ datatype's output routine issues a NOTICE, but there is no
+ guarantee it couldn't happen due to other causes.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-19">
+ <title>Version 7.4.19</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2008-01-07</simpara>
+ </note>
+
+ <para>
+ Cette version contient divers correctifs de la version 7.4.18,
+ et inclut des corrections pour des failles de sécurité importantes.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.19</title>
+
+ <para>
+ Les utilisateurs des versions 7.4.X n'ont pas besoin d'effectuer d'une
+ étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour à partir
+ d'une version précédant la 7.4.11, voir les notes de version de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Empêche les fonctions d'index de s'exécuter avec les droits de
+ l'utilisateur exécutant <command>VACUUM</command>,
+ <command>ANALYZE</command>, etc (Tom)
+ </para>
+
+ <para>
+ Les fonctions utilisées dans les expressions d'index et dans les index
+ partiels sont évaluées quand une nouvelle entrée est faite dans la table.
+ Depuis longtemps, ceci est un risque, un cheval de Troie pouvant être
+ exécuté si une personne modifie une table appartenant à un utilisateur
+ à qui on ne peut faire confiance (Notez ques les triggers, valeurs par
+ défaut, contraintes de vérification, etc posent le même type de risque.)
+ Mais les fonctions utilisées dans des index sont un danger supplémentaire
+ car ils seront exécutés par des opérations de maintenance périodiques
+ comme un <command>VACUUM FULL</command>, opérations généralement
+ exécutées par des super-utilisateurs. Donc, un utilisateur cherchant à
+ gagner accès au système peut exécuter du code avec des droits de
+ super-utilisateur en ajoutant une définition d'index avec un code de
+ cheval de Troie, puis attendre la prochaine exécution des opérations de
+ maintenance. La correction s'arrange pour que les opérations standards de
+ maintenance (ceci incluant <command>VACUUM</command>,
+ <command>ANALYZE</command>, <command>REINDEX</command> et
+ <command>CLUSTER</command>) s'exécutent en tant que propriétaire de la
+ table plutôt qu'en tant qu'appelent, en utilisant le même mécanisme de
+ bascule de droits utilisé dans les fonctions <literal>SECURITY
+ DEFINER</literal>. Pour empêcher un coutournement de cette mesure de
+ sécurité, l'exécution de <command>SET SESSION AUTHORIZATION</command>
+ et <command>SET ROLE</command> est maintenant interdit dans un contexte
+ <literal>SECURITY DEFINER</literal>. (CVE-2007-6600)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Réparation de bogues relatifs aux expressions rationnelles (Tom, Will
+ Drewry)
+ </para>
+
+ <para>
+ Des motifs d'expressions rationnelles conçus très précisément pourraient
+ causer des arrêts brutaux, des boucles infinies (ou presque) et/ou une
+ consommation massive de mémoire. Tout ceci représente un risque de
+ déni de service pour les applications qui acceptent des motifs de
+ recherche via des expressions rationnelles à partir de sources indignes
+ de confiance. (CVE-2007-4769, CVE-2007-4772, CVE-2007-6067)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Oblige l'utilisation de l'authentification par mot de passe pour les
+ utilisateurs standards de <filename>/contrib/dblink</filename>, c'est
+ une mesure de sécurité (Joe)
+ </para>
+
+ <para>
+ La correction apparue dans 8.2.5 était incomplète, car il ne corrigeait
+ la faille que pour certaines fonctions <filename>dblink</filename>.
+ (CVE-2007-6601, CVE-2007-3278)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un échec du planificateur dans certaines cas de
+ <literal>WHERE false AND var IN (SELECT ...)</literal> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un arrêt brutal potentiel dans
+ <function>translate()</function> lors de l'utilisation d'un encodage
+ multi-octets de la base (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de PL/Python pour ne pas causer un arrêt brutal sur des
+ messages d'exception longs (Alvaro)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Corrections de l'analyseur <application>ecpg</application> (Michael)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction pour que <function>crosstab()</function>, du module
+ <filename>contrib/tablefunc</filename>, gère les rowid NULL comme catégorie (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction des routines d'affichage de <type>tsvector</type> et
+ <type>tsquery</type> pour échapper correctement les antislashs (Teodor,
+ Bruce)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un arrêt brutal de <function>to_tsvector()</function> sur
+ les très grosses chaînes en entrée (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nécessite l'utilisation d'une version spécifique
+ d'<productname>Autoconf</productname> lors de la re-génération du script
+ <command>configure</command> (Peter)
+ </para>
+
+ <para>
+ Ceci affecte seulement les développeurs et les créateurs de package.
+ La modification a pour but d'empêcher l'utilisation accidentelle de
+ combinaisons non testées des versions d'<productname>Autoconf</productname>
+ et de <productname>PostgreSQL</productname>. Vous pouvez supprimer la
+ vérification de la version si vous voulez vraiment utiliser une version
+ différente d'<productname>Autoconf</productname>, mais c'est de votre
+ responsabilité.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-18">
+ <title>Version 7.4.18</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-09-17</simpara>
+ </note>
+
+ <para>
+ Cette version contient divers correctifs de la version 7.4.17.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.18</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Empêche une corruption de l'index quand une transaction insère des lignes
+ puis annule tout juste avant la fin d'un <command>VACUUM</command> en
+ parallèle sur la même table (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+ correctement (Tom) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
+ est corrigée (Tom) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ le plantage lorsque la journalisation de
+ <varname>log_min_error_statement</varname> n'a plus de mémoire
+ disponible est corrigé (Tom) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>CLUSTER</command> ne plante
+ plus en tentant de travailler sur les tables temporaires d'autres
+ sessions (Alvaro) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ les utilisateurs dépourvus de droit superutilisateur qui utilisent
+ <filename>/contrib/dblink</filename> ne peuvent utiliser que
+ l'authentification par mot de passe, pour des raisons de sécurité
+ (Joe).
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-17">
+ <title>Version 7.4.17</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-04-23</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.16, dont la
+ correction d'une faille de sécurité.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.17</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Supporte le placement explicite du schéma des tables temporaires dans
+ <varname>search_path</>, et désactive sa recherche pour les fonctions
+ et opérateurs (Tom)
+ </para>
+ <para>
+ Ceci est nécessaire pour autoriser une fonction en mode security-definer
+ à configurer une valeur sécurisée de <varname>search_path</>. Sans cela,
+ un utilisateur SQL sans droit peut utiliser des objets temporaires pour
+ exécuter du code avec une fonction possédant les droits du créateur de
+ la fonction (CVE-2007-2138). Voir <command>CREATE FUNCTION</> pour plus
+ d'informations.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</> (Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue pouvant corrompre des données dans la façon
+ dont <command>VACUUM FULL</> gère les chaînes <command>UPDATE</>
+ (Tom, Pavan Deolasee)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un PANIC lors de l'élargissement d'un index haché
+ (bug introduit en 7.4.15) (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-16">
+ <title>Version 7.4.16</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.15, dont la
+ correction d'une faille de sécurité.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration to version 7.4.16</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Suppression d'une faille de sécurité qui permet à des utilisateurs
+ connectés de lire la mémoire du serveur (backend)
+ (Tom)
+ </para>
+ <para>
+ Cette vulnérabilité implique de modifier le type de données de la
+ colonne d'une table utilisée dans une fonction SQL (CVE-2007-0555).
+ Cette erreur peut être facilement exploitée pour causer un arrêt brutal
+ du serveur et pourrait être utilisée, en principe, pour lire un contenu
+ de la base, contenu que l'utilisateur ne devrait pas pouvoir accéder.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue rare où la séparation de page d'un index btree
+ pourrait échouer à cause du choix d'un point de séparation infaisable.
+ (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration de la sécurité du traitement de caractères multi-octets pour
+ les séquences UTF8 de plus de trois octets (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-15">
+ <title>Version 7.4.15</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-01-08</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.14.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.15</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Amélioration de la gestion de <function>getaddrinfo()</function> sur AIX
+ (Tom)
+ </para>
+
+ <para>
+ Ceci corrige un problème lors du lancement, entre autres, du récupérateur
+ de statistiques.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction des erreurs <quote>failed to re-find parent key</quote> du
+ <command>VACUUM</command> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Corrections de bogues affectant les index hash de plusieurs Go (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de l'erreur lors de la construction d'un
+ <literal>ARRAY[]</literal> contenant plusieurs éléments vides (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <function>to_number()</function> et <function>to_char(numeric)</function>
+ sont maintenant <literal>STABLE</literal>, et non plus
+ <literal>IMMUTABLE</literal>, pour les nouvelles installations
+ (<application>initdb</application> nécessaire) (Tom)
+ </para>
+
+ <para>
+ Ceci a été modifié car <literal>lc_numeric</literal> peut modifier la
+ sortie de ces fonctions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration de l'utilisation des expressions rationnelles qui utilisent
+ des parenthèses (Tom)
+ </para>
+
+ <para>
+ Ceci améliore aussi les performances de l'<literal>\d</literal> de
+ <application>psql</application>.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-14">
+ <title>Version 7.4.14</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-10-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.13.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.14</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction d'un <quote>core dump</quote> quand un litéral sans
+ type est pris pour un ANYARRAY</para></listitem>
+<listitem><para>Correction de <function>string_to_array()</> pour gérer des
+ correspondances se surchargeant pour la chaîne de séparation</para>
+<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</>.
+</para></listitem>
+<listitem><para>Correction de quelques cas rares dans la correspondance de modèles
+ pour les commandes <literal>\d</literal> de <application>psql</application> </para></listitem>
+<listitem><para>Correction de bogues corrompant les index dans /contrib/ltree
+ (Teodor)</para></listitem>
+<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
+<listitem><para>Adjustement des tests de regression suite aux modifications
+ récentes des lois de l'US DST</para> </listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-13">
+ <title>Version 7.4.13</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-05-23</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.12 incluant des
+ correctifs pour des problèmes de sécurité extrêmement sérieux.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.13</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+
+ <para>
+ Assurer une sécurité complète contre les attaques par injection SQL décrites
+ dans CVE-2006-2313 et CVE-2006-2314 peuvent demander des modifications dans
+ le code de l'application. Si vous avez des applications embarquant des
+ chaînes non sûres dans des commandes SQL, vous devriez les examiner aussi
+ rapidement que possible pour vous assurer qu'elles utilisent les techniques
+ d'échappement recommandées. Dans la plupart des cas, les applications
+ devraient utiliser des sous-routines fournies par des bibliothèques ou des
+ pilotes (comme <function>PQescapeStringConn()</> de <application>libpq</>)
+ pour réaliser l'échappement des chaînes plutôt que de se fier à un code
+ <foreignphrase>ad hoc</>.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Modification du serveur pour qu'il rejette les caractères
+multi-octets mal codés dans tous les cas (Tatsuo, Tom)</para>
+<para>Bien que <productname>PostgreSQL</> va dans cette direction depuis un
+certain temps, les vérifications sont maintenant appliquées uniformément à
+tous les codages et toutes les entrées de texte. Ce sont maintenant des
+erreurs, et non plus des messages d'avertissement. Ce changement sert à se
+défendre contre les attaques à base d'injection SQL du type décrit dans
+CVE-2006-2313.
+</para></listitem>
+
+<listitem><para>Rejette des utilisations non sûres de <literal>\'</> dans les
+chaînes</para>
+<para>En tant que défense côté serveur contre les attaques de type injection
+SQL décrit dans CVE-2006-2314, le serveur accepte maintenant seulement
+<literal>''</> et plus <literal>\'</> comme représentation d'un guillemet simple
+ASCII dans des chaînes SQL. Par défaut, <literal>\'</> est rejetté seulement
+quand <varname>client_encoding</> est configuré avec un codage client seul
+(SJIS, BIG5, GBK, GB18030 ou UHC), qui est le scénario dans lequel l'injection
+SQL est possible. Un nouveau paramètre de configuration
+<varname>backslash_quote</> est disponible pour ajuster ce comportement si
+nécessaire. Notez qu'une sécurité complète contre
+CVE-2006-2314 pourrait nécessiter des modifications du côté client ; le but
+de <varname>backslash_quote</> est en partie de rendre évident que les clients
+non sécurisés sont non sécurisés.
+</para></listitem>
+
+<listitem><para>Modification des routines d'échappement de texte de
+<application>libpq</> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</> pour les
+problèmes de sécurité décrits dans CVE-2006-2313 et CVE-2006-2314. Les
+applications qui utilisent les connections concurrentes multiples de
+<productname>PostgreSQL</> devraient migrer vers <function>PQescapeStringConn()</>
+et <function>PQescapeByteaConn()</> pour s'assurer que l'échappement est
+réalisé correctement pour les paramétrages utilisés dans chaque connexion de
+base de données. Les applications qui font des échappements de chaînes
+<quote>à la main</> devraient être modifiées pour se fier à aux routines de la
+bibliothèques à la place.
+</para></listitem>
+
+<listitem><para>Correction de quelques fonctions de conversion de codage</para>
+<para><function>win1251_to_iso</>, <function>alt_to_iso</>,
+<function>euc_tw_to_big5</>, <function>euc_tw_to_mic</>,
+<function>mic_to_euc_tw</> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de
+<literal>\'</> dans les chaînes (Bruce, Jan)</para></listitem>
+
+<listitem><para>Correction d'un bogue qui a quelque fois empêché des parcours
+d'index OR de ramener les lignes adéquates</para></listitem>
+
+<listitem><para>Correction d'un replay WAL pour le cas où un index btree a été
+tronqué</para></listitem>
+
+<listitem><para>Correction de <literal>SIMILAR TO</> pour les modèles impliquant
+<literal>|</> (Tom)</para></listitem>
+
+<listitem><para>Correction du serveur pour qu'il utilise les paramètres
+personnalisés DH SSL correctement (Michael Fuhr)</para></listitem>
+
+<listitem><para>Correction de Bonjour pour les Intel Macs (Ashley Clark)</para></listitem>
+
+<listitem><para>Correction de quelques pertes mémoires mineures</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-12">
+ <title>Version 7.4.12</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-02-14</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.11.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.12</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
+SESSION AUTHORIZATION</> (CVE-2006-0553)</para>
+<para>Un utilisateur non privilégié pourrait faire arrêter brutalement le
+processus serveur, résultant en un déni de service momentané pour les autres
+utilisateurs si le serveur a été compilé en activant les assertions (ce qui
+n'est pas la valeur par défaut).
+Merci à Akio Ishida pour nous avoir rapporté ce problème.
+</para></listitem>
+
+<listitem><para>Correction d'un bogue avec la logique de visibilité des
+lignes dans les lignes insérées soi-même (Tom)</para>
+<para>Dans des circonstances rares, une ligne insérée par la commande en cours
+pourrait déjà être vue comme valide alors qu'elle ne le devrait pas. Corrige
+un bogue ajoutée dans les versions 7.4.9 et 7.3.11.
+</para></listitem>
+
+<listitem><para>Correction d'une condition qui pourrait amener une erreur de type
+<quote>le fichier existe déjà</> lors de la création d'un fichier pg_clog
+(Tom)</para></listitem>
+
+<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</> pour
+les paramètres <literal>UNKNOWN</> dans les instructions préparées
+(Neil)</para></listitem>
+
+<listitem><para>Correction pour permettre la restauration de sauvegardes qui
+avaient des références croisées de schémas pour les opérateurs personnalisés
+(Tom)</para></listitem>
+
+<listitem><para>Correction de portabilité pour tester la présence de
+<function>finite</> et <function>isinf</> lors du configure (Tom)</para></listitem>
+
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-11">
+ <title>Version 7.4.11</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-01-09</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la version 7.4.10.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.11</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
+ De plus, vous aurez sûrement besoin de lancer la commande
+ <command>REINDEX</> sur les index des colonnes de type texte après la
+ mise à jour si vous êtes affectés par les problèmes de locale ou de
+ <application>plperl</> décrits ci-dessous.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction des messages Describe au niveau protocole lancés
+de l'extérieur d'une transaction ou à partir d'une transaction échouée
+(Tom)</para></listitem>
+
+<listitem><para>Correction de la comparaison de chaînes de caractères pour les
+locales qui considèrent des combinaisons différentes de caractères comme égales,
+comme le hongrois (Tom)</para>
+<para>Ceci pourrait nécessiter l'exécution de la commande <command>REINDEX</>
+pour corriger les index existants sur des colonnes de type texte.</para></listitem>
+
+<listitem><para>Configuration des variables d'environnement de la locale lors
+du démarrage de postmaster pour s'assurer que <application>plperl</> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</>. Sous ces conditions, toute
+utilisation de <application>plperl</> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</> pour corriger des
+index existant sur des colonnes de type texte si cela vous arrivait.
+</para></listitem>
+
+<listitem><para>Correction d'un ancien bogue dans strpos() et dans le gestion
+des expressions rationnelles de certains ensembles de caractères asiatiques
+rarement utilisés (Tatsuo)
+</para></listitem>
+
+<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</>,
+qui l'empêchait d'utiliser l'espace disponible des grains de sel (salt) pour les
+algorithmes MD5 et XDES (Marko Kreen, Solar Designer)</para>
+<para>Les grains de sel ne sont pas affectés pour Blowfish et le DES
+standard.</para></listitem>
+
+<listitem><para>Correction de <filename>/contrib/dblink</> pour renvoyer une
+erreur plutôt que de s'arrêter brutalement quand le nombre de colonnes spécifié
+est différent de ce qui est réellement renvoyé par la requête (Joe)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-10">
+ <title>Version 7.4.10</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-12-12</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections sur la 7.4.9.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.10</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un cas extrême dans la gestion des traces des
+transactions</para>
+<para>Il existait une petite possibilité pour laquelle une opération
+d'entrée/sortie pouvait être initiée pour la mauvaise page, amenant à un
+échec Assert ou à une corruption de données.</para>
+</listitem>
+
+<listitem><para>Empêche un échec si le client envoie un message de protocole
+Bind quand la transaction en cours est déjà annulée</para></listitem>
+
+<listitem><para>Corrections sur <filename>/contrib/ltree</> (Teodor)</para></listitem>
+
+<listitem><para>Corrections de compilation sur AIX et HPUX (Tom)</para></listitem>
+
+<listitem><para>Correction d'une vieille erreur sur les jointures externes</para>
+<para>Ce bogue a quelque fois causé une fausse erreur <quote>RIGHT JOIN is
+only supported with merge-joinable join conditions</>.</para></listitem>
+
+<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</>
+quand une table a été supprimée</para></listitem>
+
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-9">
+ <title>Version 7.4.9</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-10-04</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.4.8.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration à partir de la version 7.4.9</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+ <listitem><para>Correction d'une erreur qui permettait au <command>VACUUM</>
+ de supprimer les chaînes <literal>ctid</> trop tôt, et ajout de
+ vérification supplémentaire dans le code qui suit les liens
+ <literal>ctid</></para>
+ <para>Ceci corrige un vieux problème qui pourrait causer des arrêt
+ brutaux dans de rares circonstances.</para></listitem>
+ <listitem><para>Correction de <type>CHAR()</> pour ajouter le nom
+ d'espaces spécifié lors de l'utilisation d'un ensemble de caractères
+ multi-octets (Yoshiyuki Asaba)</para>
+ <para>Dans les versions précédentes, l'ajout pour <type>CHAR()</> était
+ incorrect car il ajoutait seulement le nombre d'octets spécifiés sans
+ prendre en considération la façon dont les caractères étaient stockés.
+ </para></listitem>
+ <listitem><para>Correction du sens du test pour les transactions
+ en lecture seule dans <command>COPY</></para>
+ <para>Le code empêchait <command>COPY TO</> alors qu'il aurait dû interdire
+ <command>COPY FROM</>.</para></listitem>
+ <listitem><para>Correction du problème de planification avec les clauses
+ ON des jointures externes qui référencent seulement la relation du côté
+ interne</para></listitem>
+ <listitem><para>Autres corrections sur les cas particuliers du <literal>x
+ FULL JOIN y ON true</></para></listitem>
+ <listitem><para>Rend <function>array_in</> et <function>array_recv</> plus
+ paranoïaque sur la validation de leur paramètre OID</para></listitem>
+ <listitem><para>Correction des lignes manquantes dans les requêtes
+ du type <literal>UPDATE a=... WHERE a...</> avec un index GiST sur la
+ colonne <literal>a</></para></listitem>
+ <listitem><para>Amélioration de la stabilité de l'analyse des valeurs du
+ type datetime</para></listitem>
+ <listitem><para>Amélioration de la vérification pour les pages WAL
+ partiellement écrites</para></listitem>
+ <listitem><para>Amélioration de la solidité de la gestion des signaux
+ lorsque SSL est activé</para></listitem>
+ <listitem><para>Empêche l'ouverture de plus de <literal>max_files_per_process</>
+ fichiers lors du démarrage de postmaster</para></listitem>
+ <listitem><para>Plusieurs corrections de perte mémoire</para></listitem>
+ <listitem><para>Quelques améliorations sur la portabilité</para></listitem>
+ <listitem><para>Correction de PL/PgSQL pour gérer correctement
+ <literal>var := var</> quand la variable est passée par
+ référence</para></listitem>
+ <listitem><para>Mise à jour de <filename>contrib/tsearch2</> pour utiliser
+ le code Snowball actuel</para></listitem>
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-8">
+ <title>Version 7.4.8</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-05-09</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections sur la 7.4.7, dont des
+ correctifs sur des trous de sécurité.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.8</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, c'est une façon possible de gérer deux problèmes
+ de sécurité significatifs, qui ont été trouvé dans le contenu initial des
+ catalogues systèmes des versions 7.4.X. Une séquence
+ sauvegarde/initdb/restauration utilisant le initdb de la 7.4.8 corrigera
+ automatiquement ces problèmes.
+ </para>
+
+ <para>
+ Le problème de sécurité le plus important est que les fonctions de conversion
+ du codage des ensembles de caractères peuvent être appelées à partir de
+ commandes SQL par des utilisateurs non pribilégiés alors que les fonctions
+ n'ont pas été conçues pour un tel usage et ne sont pas sécurisées contre
+ des choix rusés des arguments. Le correctif implique de modifier la liste
+ déclarée des arguments de ces fonctions pour qu'elles ne soient plus
+ appelées à partir des commandes SQL. (Ceci n'affecte pas leur utilisation
+ normale par la machinerie de conversion du codage.)
+ </para>
+
+ <para>
+ Le problème le moins important est que le module <filename>contrib/tsearch2</>
+ crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</>
+ alors qu'elles n'acceptent pas les arguments <type>internal</>. Ceci casse
+ la sûreté des types pour toutes les fonctions utilisant des arguments
+ <type>internal</>.
+ </para>
+
+ <para>
+ Il est fortement recommandé que toutes les installations corrigent ces
+ erreurs, soit par un initdb soit en suivant les procédures de réparation
+ données ci-dessous. Les erreurs permettent au moins à des utilisateurs
+ non privilégiés de la base de données d'arrêter brutalement leur
+ processus serveur et pourraient permettre à des utilisateurs non privilégiés
+ de gagner les privilèges d'un superutilisateur.
+ </para>
+
+ <para>
+ Si vous souhaitez ne pas lancer d'initdb, exécutez la procédure suivante à
+ la place en tant que superutilisateur de la base de données :
+
+<programlisting>
+BEGIN;
+UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
+WHERE pronamespace = 11 AND pronargs = 5
+ AND proargtypes[2] = 'cstring'::regtype;
+-- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
+-- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
+COMMIT;
+</programlisting>
+
+ Ensuite, si vous avez installé <filename>contrib/tsearch2</>, faites
+
+<programlisting>
+BEGIN;
+UPDATE pg_proc SET proargtypes[0] = 'internal'::regtype
+WHERE oid IN (
+ 'dex_init(text)'::regprocedure,
+ 'snb_en_init(text)'::regprocedure,
+ 'snb_ru_init(text)'::regprocedure,
+ 'spell_init(text)'::regprocedure,
+ 'syn_init(text)'::regprocedure
+);
+-- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
+-- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
+COMMIT;
+</programlisting>
+
+ Si cette commande échoue avec un message comme <quote>function
+ "dex_init(text)" does not exist</>, alors soit <filename>tsearch2</>
+ n'est pas installé dans cette base de données, soit vous l'avez déjà mise
+ à jour.
+ </para>
+
+ <para>
+ Les procédures ci-dessus doivent être exécutées pour <emphasis>chaque</>
+ base de données d'une installation, ceci incluant <literal>template1</>
+ et devant idéalement inclure aussi <literal>template0</>. Si vous ne
+ corrigez pas les bases de données modèles, alors toute base de données
+ créée par la suite contiendra les mêmes erreurs. <literal>template1</> peut
+ être corrigé de la même façon que les autres bases de données alors que
+ <literal>template0</> requiert des étapes supplémentaires. Tout d'abord,
+ à partir de n'importe quel base de données
+<programlisting>
+UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
+</programlisting>
+ Ensuite, connectez-vous à <literal>template0</> et effectuez les opérations
+ de réparation. Faites
+<programlisting>
+-- gelez de nouveau template0:
+VACUUM FREEZE;
+-- et protégez-contre toute nouvelle modification :
+UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
+</programlisting>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+<itemizedlist>
+<listitem><para>Modification de la signature de la fonction de codage pour
+empêcher toute mauvaise utilisation</para></listitem>
+<listitem><para>Modification de <filename>contrib/tsearch2</> pour éviter une
+utilisation non sécurisée des résultats <type>INTERNAL</> de la fonction</para></listitem>
+<listitem><para>Réparation d'une ancienne condition qui permettait à une
+transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
+UPDATE) légèrement plus tôt que dans les autres buts</para>
+<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
+incohérences apparents des données et visibles brièvement par les applications.
+</para></listitem>
+<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
+</para>
+<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
+tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
+faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
+d'Assert.
+</para></listitem>
+<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
+ZONE</></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
+sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise à
+jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
+</para></listitem>
+<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
+type <type>TIME WITH TIME ZONE</></para></listitem>
+<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
+négatives dans les valeurs <type>INTERVAL</></para>
+<para>Cette erreur est seulement survenue quand l'option de configuration
+<literal>--enable-integer-datetimes</> avait été utilisée.
+</para></listitem>
+<listitem><para>S'assure que les opérations effectuées pendant l'arrêt du serveur
+sont comptées par le collecteur de statistiques</para>
+<para>Ceci doit avoir résolu les rapports concernant <application>pg_autovacuum</>,
+comme quoi il ne lançait pas assez fréquemment VACUUM sur les catalogues
+systèmes — il n'a pas été question de suppressions des catalogues causées
+par la suppression de tables temporaires lors de l'arrêt du serveur.
+</para></listitem>
+<listitem><para>Vérification supplémentaires de dépassement de tampon dans
+plpgsql (Neil)</para></listitem>
+<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
+noms des déclencheurs contenant <literal>%</> (Neil)</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
+constructions d'OpenSSL (Marko Kreen)</para></listitem>
+<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</>
+</para></listitem>
+<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
+<type>RECORD</></para></listitem>
+<listitem><para>Empêche <function>to_char(interval)</> d'arrêter brutalement le
+serveur (dump core) pour les formats relatifs au mois</para></listitem>
+<listitem><para>Empêche un arrêt brutal sur <literal>COALESCE(NULL,NULL)</></para></listitem>
+<listitem><para>Correction de <function>array_map</> pour appeler correctement
+les fonctions PL</para></listitem>
+<listitem><para>Correction de la vérification des droits dans <command>ALTER
+DATABASE RENAME</></para></listitem>
+<listitem><para>Correction de <command>ALTER LANGUAGE RENAME</></para></listitem>
+<listitem><para>Make <function>RemoveFromWaitQueue</> clean up after itself</para>
+<para>Ceci corrige une erreur de gestion du verrour qui pourrait seulement être
+visible si une transaction a été dégagée de l'attente d'un verrour (typiquement
+dans le cas d'une requête annulée) et que le détenteur du verrou le relâche
+dans une fenêtre très petite.
+</para></listitem>
+<listitem><para>Correction d'un problème avec un paramètre non typé apparaissant dans
+<command>INSERT ... SELECT</></para></listitem>
+<listitem><para>Correction d'un échec de <command>CLUSTER</> après
+<command>ALTER TABLE SET WITHOUT OIDS</></para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-7">
+ <title>Version 7.4.7</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-01-31</simpara>
+ </note>
+
+ <para>
+ Cette version contient une variété de corrections de la version 7.4.6,
+ incluant des correctifs de sécurité.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.4.7</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ 7.4.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Interdit <command>LOAD</> aux utilisateurs standards</para>
+<para>
+Sur les plateformes qui exécuteront automatiquement les fonctions
+d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
+les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
+un code arbitraire par le serveur. Merci à NGS Software pour cette
+information.</para></listitem>
+<listitem><para>Vérifie que le créateur d'une fonction d'agrégat a le droit
+d'exécuter les fonctions de transition spécifiées</para>
+<para>
+Ce problème rendait possible le contournement de l'interdiction du droit
+EXECUTE sur une fonction.</para></listitem>
+<listitem><para>Correction de problèmes de sécurité et de problèmes sur
+les 64 bits dans contrib/intagg</para></listitem>
+<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
+dans contrib (Kris Jurka)</para></listitem>
+<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
+plpgsql dispose trop de paramètres (Neil)</para></listitem>
+<listitem><para>Correction d'erreurs de plannification pour les jointures
+complètes et externes à droite</para>
+<para>
+Le résultat de la jointure était faussement supposé trié de la même façon que
+l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
+mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
+mauvaises réponses.
+</para></listitem>
+<listitem><para>Correction de plperl pour les guillemets dans les
+champs</para></listitem>
+<listitem><para>Correction de l'affichage des intervalles négatifs pour les
+styles de date SQL et GERMAN</para></listitem>
+<listitem><para>Fait que age(timestamptz) calcule à partir du fuseau horaire
+et non pas de GMT</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-6">
+ <title>Sortie 7.4.6</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-10-22</simpara>
+ </note>
+
+ <para>
+ Cette version contient plusieurs correctifs de la version 7.4.5.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.6</title>
+
+ <para>
+ Une sauvegarde restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
+d'astuce sur disque</para>
+<para>
+Sous quelques rares circonstances, ceci pourrait mener à des échecs
+<quote>could not access transaction status</>, qui se qualifient comme bogue
+pouvant entraîner des pertes de données.
+</para></listitem>
+<listitem><para>Assurance que la jointure externe hachée ne manque pas de
+lignes</para>
+<para>
+Les jointures gauches très importantes pourraient échouer à afficher les lignes
+du côté gauche sans correspondance en donnant seulement la distribution droite
+des données.
+</para></listitem>
+<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
+root</para>
+<para>
+Ceci est fait pour évacuer tout risque de problèmes de sécurité.
+</para></listitem>
+<listitem><para>Évite l'utilisation de fichiers temporaires dans
+<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
+<para>
+Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
+d'importance car il n'y a aucune raison pour que les utilisateurs autres que
+les développeurs utilisent ce script de toute façon.
+</para></listitem>
+<listitem><para>Empêche l'arrêt forcé du moteur à partir de la ré-émission
+du résultat de la commande précédente</para>
+<para>
+Dans de rares cas, un client pourrait penser que sa dernière commande a réussi
+alors qu'elle a réellement été annulée par l'arrêt forcé de la base de données.
+</para></listitem>
+<listitem><para>Réparation d'un bogue dans
+<function>pg_stat_get_backend_idset</function></para>
+<para>
+Cela pouvait amener un mauvais comportement dans quelques vues de statistiques
+du système.
+</para></listitem>
+<listitem><para>Correction d'une petite perte mémoire dans
+postmaster</para></listitem>
+<listitem><para>Correction du bogue <quote>expected both swapped tables to have
+TOAST tables</></para>
+<para>
+Ceci pouvait arriver dans les cas tels que CLUSTER après ALTER TABLE DROP
+COLUMN.
+</para></listitem>
+<listitem><para>Empêche <literal>pg_ctl restart</> d'ajouter <literal>-D</>
+plusieurs fois</para></listitem>
+<listitem><para>Correction du problème de valeurs NULL dans les index
+GiST</para></listitem>
+<listitem><para><literal>::</> n'est plus interprété comme une variable dans
+une instruction de préparation ECPG</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-5">
+ <title>Sortie 7.4.5</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-08-18</simpara>
+ </note>
+
+ <para>
+ Cette version contient la correction d'un bogue sérieux de la version 7.4.4.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.5</title>
+
+ <para>
+ Une sauvegarde restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'un arrêt brutal possible lors d'insertions
+concurrentes dans l'index B-tree</para>
+<para>
+Ce correctif s'occupe d'un cas ras dans les insertions concurrentes dans un
+index B-tree, pouvant résulter en un PANIC du serveur. Aucun dommage permanent
+ne devrait en résulter mais cela vaut néanmoins une pré-version. Ce bogue
+n'existe pas dans les versions antérieures 7.4.
+</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-4">
+ <title>Sortie 7.4.4</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-08-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques correctifs sur la 7.4.3.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.4</title>
+
+ <para>
+ Une sauvegarde restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Empêche une perte possible de transactions validées lors d'un
+arrêt brutal</para>
+<para>
+À cause d'un verrouillage insuffisant entre la validation des transactions et
+des points de vérification, il était possible pour les transactions validées
+juste avant le point de vérification perdu, complètement ou partiellement, le
+plus récent après un arrêt brutal de la base de données et un redémarrage. Ceci
+est un bogue sérieux qui existait depuis <productname>PostgreSQL</productname>
+7.1.</para></listitem>
+<listitem><para>Vérification de la restriction HAVING avant d'évaluer une liste
+de résultat d'un plan d'agrégat</para></listitem>
+<listitem><para>Évite un arrêt brutal lorsque l'identifiant de l'utilisateur
+courant est supprimé</para></listitem>
+<listitem><para>Correction des tableaux croisés hachés pour les tableaux sans
+ligne (Joe)</para></listitem>
+<listitem><para>Force la mise à jour du cache après renommage d'une colonne dans
+une clé étrangère</para></listitem>
+<listitem><para>L'affichage propre des requêtes UNION
+fonctionne correctement</para></listitem>
+<listitem><para>Fait que psql gère les retours chariot <literal>\r\n</>
+proprement dans COPY IN</para></listitem>
+<listitem><para><application>pg_dump</> gèrait les ACL avec des options grant
+non correctement</para></listitem>
+<listitem><para>Correction du support des threads pour OS X et
+Solaris</para></listitem>
+<listitem><para>Mise à jour du pilote JDBC (construction 215) avec différents
+correctifs</para></listitem>
+<listitem><para>Corrections pour ECPG</para></listitem>
+<listitem><para>Corrections des traductions (contributeurs
+variés)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-3">
+ <title>Sortie 7.4.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-06-14</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques correctifs pour la 7.4.2.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.3</title>
+
+ <para>
+ Une sauvegarde restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction de pertes mémoire temporaires lors de l'utilisation
+d'agrégats non hachés (Tom)</para></listitem>
+<listitem><para>Correctifs pour ECPG, incluant quelques-uns pour la
+compatibilité avec Informix (Michael)</para></listitem>
+<listitem><para>Corrections pour compiler avec l'activation des threads, en
+particulier pour Solaris (Bruce)</para></listitem>
+<listitem><para>Correction d'une erreur dans la fin de COPY IN lors de
+l'utilisation de l'ancien protocole réseau (ljb)</para></listitem>
+<listitem><para>Plusieurs corrections importantes dans pg_autovacuum, incluant
+des correctifs pour les grosses tables, les OID non signés, la stabilité, les
+tables temporaires et le mode de débogage (Matthew T.
+O'Connor)</para></listitem>
+<listitem><para>Correction d'un problème lors de la lecture de sauvegardes au
+format tar sur NetBSD et BSD/OS (Bruce)</para></listitem>
+<listitem><para>Quelques corrections sur JDBC</para></listitem>
+<listitem><para>Correction de ALTER SEQUENCE RESTART lorsque last_value vaut la
+valeur de réinitialisation (Tom)</para></listitem>
+<listitem><para>Réparation de l'échec après recalcul des sous-sélections
+imbriquées (Tom)</para></listitem>
+<listitem><para>Correction de problèmes avec les expressions non constantes dans
+LIMIT/OFFSET</para></listitem>
+<listitem><para>Support de FULL JOIN sans clause de jointure, tels que X FULL
+JOIN Y ON TRUE (Tom)</para></listitem>
+<listitem><para>Correction d'un autre bogue sur les tables sans colonnes
+(Tom)</para></listitem>
+<listitem><para>Amélioration de la gestion des identifiants non qualifiés dans
+les clauses GROUP BY des sous-sélections (Tom)</para>
+<para>
+Les alias de liste de sélection à l'intérieur de sous-sélections prendront
+maintenant la précédence sur les noms des niveaux de requêtes externes.
+</para></listitem>
+<listitem><para>Ne génère pas de <quote>NATURAL CROSS JOIN</> lors de la
+décompilation de règles (Tom)</para></listitem>
+<listitem><para>Ajout de vérification pour la taille de champ invalide dans le
+COPY binaire (Tom)</para>
+<para>
+Ceci corrige une faille de sécurité difficile à exploiter.
+</para></listitem>
+<listitem><para>Évite les conflits de verrouillage entre
+<command>ANALYZE</command> et
+<command>LISTEN</command>/<command>NOTIFY</command></para></listitem>
+<listitem><para>Nombreuses mises à jour de traduction (plusieurs
+contributeurs)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-2">
+ <title>Sortie 7.4.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-03-08</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques correctifs pour la 7.4.1.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.2</title>
+
+ <para>
+ Une sauvegarde restauration n'est pas requise pour ceux utilisant une
+ version 7.4.X. Néanmoins, c'est la méthode conseillé car plus simple pour
+ l'incorporation de la correction sur deux erreurs trouvées dans le contenu
+ initial des catalogues systèmes de la 7.4. Une séquence
+ sauvegarde/initdb/restauration utilisant l'initdb de la 7.4.2 corrigera
+ automatiquement ces problèmes.
+ </para>
+
+ <para>
+ La plus sévère des deux erreurs est que le type de données
+ <type>anyarray</> a un mauvais label d'alignement ; ceci est un
+ problème parce que le catalogue système <structname>pg_statistic</> utilise
+ des colonnes <type>anyarray</>. Ce mauvais label peut causer des mauvaises
+ estimations du planificateur et même des arrêts brutaux lorsque des
+ requêtes de planification impliquent des clauses <literal>WHERE</> sur des
+ colonnes doublement alignées doubles (telles que <type>float8</> et
+ <type>timestamp</>). Il est fortement recommandé que toutes les
+ installations réparent cette erreur, soit par initdb soit en suivant la
+ procédure de réparation manuelle donnée ci-dessous.
+ </para>
+
+ <para>
+ L'erreur moindre est que la vue système <structname>pg_settings</> devrait
+ être marquée comme ayant un accès public en mise à jour pour permettre
+ l'utilisation de <literal>UPDATE pg_settings</> comme substitut pour
+ <command>SET</>. Ceci peut être corrigé soit par initdb soit manuellement
+ mais il n'est pas nécessaire de le corriger sauf si vous voulez utiliser
+ <literal>UPDATE pg_settings</>.
+ </para>
+
+ <para>
+ Si vous ne souhaitez pas lancer un initdb, la procédure suivante corrigera
+ <structname>pg_statistic</>. En tant que superutilisateur de la base de
+ données, faites :
+
+<programlisting>
+-- efface les anciennes données de pg_statistic :
+DELETE FROM pg_statistic;
+VACUUM pg_statistic;
+-- ceci devrait mettre à jour 1 ligne :
+UPDATE pg_type SET typalign = 'd' WHERE oid = 2277;
+-- ceci devrait mettre à jour 6 lignes :
+UPDATE pg_attribute SET attalign = 'd' WHERE atttypid = 2277;
+--
+-- À ce moment, vous DEVEZ lancer un nouveau moteur pour éviter un arrêt brutal
+--
+-- repopulate pg_statistic:
+ANALYZE;
+</programlisting>
+
+ Ceci peut se faire sur une base de données en réel mais attention au fait
+ que tous les serveurs de la base de données modifiée doivent être relancés
+ avant qu'il ne soit sain de repeupler <structname>pg_statistic</>.
+ </para>
+
+ <para>
+ Pour corriger l'erreur <structname>pg_settings</>, faites simplement :
+<programlisting>
+GRANT SELECT, UPDATE ON pg_settings TO PUBLIC;
+</programlisting>
+ </para>
+
+ <para>
+ Les procédures ci-dessus doivent être exécutées dans <emphasis>chaque</>
+ base de données d'une installation, ceci incluant <literal>template1</>, et
+ idéalement <literal>template0</>. Si vous ne corrigez pas les bases de
+ données modèles, alors toute nouvelle base de données contiendra les mêmes
+ erreurs. <literal>template1</> peut être corrigé de la même façon que toute
+ autre base de données, mais corriger <literal>template0</> requiert
+ quelques étapes supplémentaires. Tout d'abord, à partir de n'importe quelle
+ session de base de données
+<programlisting>
+UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
+</programlisting>
+ nsuite, connectez-vous à <literal>template0</> et exécutez les
+ procédures de réparation suivante. Enfin, faites
+<programlisting>
+-- re-gèle template0:
+VACUUM FREEZE;
+-- et la protège contre toute modifications futures :
+UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
+</programlisting>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<para>
+ La version 7.4.2 incorpore toutes les corrections de la version 7.3.6,
+ ainsi que les suivantes :
+</para>
+
+<itemizedlist>
+<listitem><para>Correction du bogue d'alignement de
+<structname>pg_statistics</> qui pouvait provoquer un arrêt brutal de
+l'optimiseur</para>
+<para>Voir ci-dessus pour les détails sur ce problème.</para></listitem>
+<listitem><para>Autorise les utilisateurs standards à mettre à jour
+<structname>pg_settings</></para></listitem>
+<listitem><para>Correction de quelques bogues de l'optimiseur, la plupart
+amenant des erreurs <quote>variable not found in subplan target lists</>
+errors (NdT : variable non trouvée dans les listes cibles
+du sous-plan</para></listitem>
+<listitem><para>Évite les échecs dû au manque de mémoire lors du la
+ncement de plusieurs gros parcours d'index</para></listitem>
+<listitem><para>Correction d'un problème multioctets pouvant amener des erreurs
+du type <quote>out of memory</> (manque de mémoire) lors d'une opération
+<command>COPY IN</></para></listitem>
+<listitem><para>Correction de problèmes avec <command>SELECT INTO</> /
+<command>CREATE TABLE AS</> à partir de tables sans OID</para></listitem>
+<listitem><para>Correction de problèmes avec les tests de régression
+<filename>alter_table</> lors de tests en parallèle</para></listitem>
+<listitem><para>Correction de problèmes survenant à la limite du nombre de
+fichiers ouverts, notamment sur OS X
+(Tom)</para></listitem>
+<listitem><para>Correction partielle pour les problèmes de la locale
+turque</para>
+<para>initdb réussira maintenant avec la locale turque, mais il reste quelques
+inconvénients associés avec le problème <literal>i/I</>.</para></listitem>
+<listitem><para>Fait que pg_dump initialise le codage du client lors d'une
+restauration</para></listitem>
+<listitem><para>Plusieurs autres corrections de pg_dump</para></listitem>
+<listitem><para>Autorise ecpg à utiliser de nouveau des mots clés C comme noms
+de colonnes (Michael)</para></listitem>
+<listitem><para>Ajout de <literal>WHENEVER NOT_FOUND</> à ecpg pour
+<literal>SELECT/INSERT/UPDATE/DELETE</> (Michael)</para></listitem>
+<listitem><para>Correction d'un arrêt brutal d'ecpg pour les requêtes appelant
+des fonctions renvoyant des ensembles (Michael)</para></listitem>
+<listitem><para>Plusieurs autres corrections d'ecpg (Michael)</para></listitem>
+<listitem><para>Corrections pour le compilateur Borland</para></listitem>
+<listitem><para>Amélioration de la construction avec les threads
+(Bruce)</para></listitem>
+<listitem><para>Plusieurs autres corrections pour la
+construction</para></listitem>
+<listitem><para>Plusieurs corrections sur JDBC</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-1">
+ <title>Sortie 7.4.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-12-22</simpara>
+ </note>
+
+ <para>
+ Cette version contient plusieurs correctifs de la 7.4.
+ For information about new features in the 7.4 major release, see
+ <xref linkend="release-7-4">.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.4.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
+ ceux utilisant la version 7.4.
+ </para>
+
+ <para>
+ Si vous voulez installer les correctifs dans le schéma d'information, vous
+ avez besoin de le recharger dans la base de données. Ceci est accompli soit
+ en initialisant un nouveau groupe de bases avec <command>initdb</command>
+ soit en lançant la séquence suivante de commandes SQL dans chaque base de
+ données (incluant idéalement <literal>template1</literal>) en tant que
+ superutilisateur avec <application>psql</application>, après installation
+ de la nouvelle version :
+<programlisting>
+DROP SCHEMA information_schema CASCADE;
+\i /usr/local/pgsql/share/information_schema.sql
+</programlisting>
+ Substituez votre chemin d'installation dans la deuxième commande.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction d'un bogue dans l'analyse de <command>CREATE
+SCHEMA</command> avec ECPG (Michael)</para></listitem>
+<listitem><para>Correction d'une erreur de compilation quand
+<option>--enable-thread-safety</option> et <option>--with-perl</option> sont
+utilisés ensemble (Peter)</para></listitem>
+<listitem><para>Correction des sous-requêtes utilisant des jointures de
+découpage (Tom)</para>
+<para>
+ Certaines sous-requêtes qui utilisaient des jointures de découpage pouvaient
+ s'arrêter brutalement à cause de structures mal partagées.
+</para></listitem>
+<listitem><para>Correction d'un problème de compactage de la carte des espaces
+libres (Tom)</para>
+<para>
+ Ceci corrige un bogue où le compactage de la carte des espaces libres
+ pouvait entraîner un arrêt du serveur de la base de données.
+</para>
+</listitem>
+<listitem><para>Correction pour la construction de libpq à partir du compilateur
+Borland (Bruce)</para></listitem>
+<listitem><para>Correction de <function>netmask()</function> et de
+<function>hostmask()</function> pour renvoyer le masklen de longueur maximale
+(Tom)</para>
+<para>
+ Correction de ces fonctions pour renvoyer des valeurs cohérentes avec les
+ versions pre-7.4..
+</para>
+</listitem>
+<listitem><para>Plusieurs corrections de
+<filename>contrib/pg_autovacuum</filename></para>
+<para>
+ Les correctifs incluent une mauvaise initialisation des variables, un
+ vacuum manquant après un <command>TRUNCATE</command> et un dépassement du
+ calcul de durée pour les vacuums longs.
+</para>
+</listitem>
+<listitem><para>Autorise la compilation de <filename>contrib/cube</filename>
+sous Cygwin (Jason Tishler)</para></listitem>
+<listitem><para>Correction de l'utilisation par Solaris du fichier mot de passe
+lorsqu'aucun mot de passe n'est défini (Tom)</para>
+<para>
+ Correction de l'arrêt brutal sur Solaris causé par l'utilisation de tout
+ type d'authentification par mot de passe lorsqu'aucun mot de passe n'est
+ défini.
+</para>
+</listitem>
+<listitem><para>Correction de JDBC pour les problèmes de threads, autres
+corrections</para></listitem>
+<listitem><para>Correction sur les recherches dans les index <type>bytea</type>
+(Joe)</para></listitem>
+<listitem><para>Correction du schéma d'information pour les types de données bit
+(Peter)</para></listitem>
+<listitem><para>Force zero_damaged_pages à être actif lors de la récupération
+à partir des WAL</para></listitem>
+<listitem><para>Empêche quelques cas obscures de <quote>variable not in
+subplan target lists</quote></para></listitem>
+<listitem><para>Rend <function>PQescapeBytea</function> et
+<function>byteaout</function> cohérent l'un avec l'autre (Joe)</para></listitem>
+<listitem><para>Échappe la sortie <type>bytea</type> pour les octets > 0x7e
+(Joe)</para>
+<para>
+ Si plusieurs codages clients sont utilisés pour la sortie et
+ l'entrée <type>bytea</type>, il est possible de corrompre les valeurs
+ <type>bytea</type> en modifiant les codages. Cette correction échappe tous les
+ octets qui pourraient être affectés.
+</para>
+</listitem>
+<listitem><para>Ajout des appels manquants à <function>SPI_finish()</function>
+à la fonction <function>get_tuple_of_interest()</function> de dblink
+(Joe)</para></listitem>
+<listitem><para>Nouvelle FAQ tchèque</para></listitem>
+<listitem><para>Correction de la vue du schéma d'informations
+<literal>constraint_column_usage</literal> pour les clés étrangères
+(Peter)</para></listitem>
+<listitem><para>Corrections sur ECPG (Michael)</para></listitem>
+<listitem><para>Correction d'un bogue avec plusieurs sous-requêtes
+<literal>IN</literal> et des jointures dans les sous-requêtes
+(Tom)</para></listitem>
+<listitem><para>Autorise le fonctionnement de <literal>COUNT('x')</literal>
+(Tom)</para></listitem>
+<listitem><para>Installation des fichiers d'inclusion d'ECPG pour la
+compatibilité Informix dans un répertoire séparé (Peter)</para>
+<para>
+ Certains noms des fichiers d'inclusion d'ECPG pour la compatibilité Informix
+ entrent en conflit avec les fichiers d'inclusion du système d'exploitation.
+ En les installant dans leur propre répertoire, les conflits de noms ont été
+ réduits.
+</para>
+</listitem>
+<listitem><para>Correction d'une perte mémoire sur SSL (Neil)</para>
+<para>
+ Cette version corrige un bogue de la 7.4 où SSL ne libérait pas toute la
+ mémoire qu'il avait alloué.
+</para>
+</listitem>
+<listitem><para>Empêche l'utilisation du nom de service par
+<filename>pg_service.conf</filename> comme nom de la base par défaut
+(Bruce)</para></listitem>
+<listitem><para>Correction de l'authentification locale par ident sur FreeBSD
+(Tom)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4">
+ <title>Sortie 7.4</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-11-17</simpara>
+ </note>
+
+ <sect2>
+ <title>Aperçu</title>
+
+ <para>
+ Modifications majeures dans cette version :
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>
+ Les sous-requêtes <literal>IN</literal>/<literal>NOT IN</literal> sont
+maintenant bien plus efficaces
+ </term>
+
+ <listitem>
+ <para>
+ Dans les versions précédentes, les sous-requêtes
+<literal>IN</literal>/<literal>NOT IN</literal> ont été jointes par la requête
+supérieure en parcourant séquentiellement la sous-requête pour trouver une
+correspondance. Le code de la 7.4 utilise les mêmes techniques sophistiquées
+utilisées par les jointures ordinaires et est donc bien plus rapide. Un
+<literal>IN</literal> sera maintenant aussi rapide ou plus rapide que la
+sous-requête <literal>EXISTS</literal> équivalente ; ceci inverse
+l'information conventionnelle qui s'appliquait aux versions précédentes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Amélioration du traitement du <literal>GROUP BY</literal> en utilisant
+les <quote>hash buckets</quote>
+ </term>
+
+ <listitem>
+ <para>
+ Dans les précédentes versions, les lignes à grouper étaient d'abord
+triées. Le code de la 7.4 traite le <literal>GROUP BY</literal> sans tri en
+accumulant les résultats dans une table de découpage avec une entrée par
+groupe. Néanmoins, il utilisera toujours la technique du tri si la table de
+découpage est estimée trop importante pour être contenue dans
+<varname>sort_mem</>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Nouvelle fonctionnalité de jointure par découpage sur des clés
+multiples
+ </term>
+
+ <listitem>
+ <para>
+ Dans les précédentes versions, les jointures par découpage pouvaient
+uniquement survenir sur des clés uniques. Cette version ajoute les jointures
+par découpage sur plusieurs colonnes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Les requêtes utilisant la syntaxe <literal>JOIN</literal> explicite sont
+maintenant mieux optimisées
+ </term>
+
+ <listitem>
+ <para>
+ Les précédentes versions évaluaient les requêtes en utilisant
+uniquement la syntaxe <literal>JOIN</literal> explicite dans l'ordre
+fournie par la syntaxe. La version 7.4 autorise l'optimisation complète de
+ces requêtes, ce qui signifie que l'optimiseur considère tous les ordres
+possibles de jointure et choisit le plus efficace. Néanmoins, les
+jointures externes doivent toujours suivre l'ordre déclaré.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Code des expressions rationnelles plus rapide et plus puissant
+ </term>
+
+ <listitem>
+ <para>
+ Le module entier des expressions rationnelles a été remplacé avec une
+nouvelle version de Henry Spencer, écrit originellement pour Tcl. Le code
+améliore énormément les performances et supporte plusieurs types d'expressions
+rationnelles.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Fonctions en ligne pour les fonctions SQL simples
+ </term>
+
+ <listitem>
+ <para>
+ Les fonctions SQL simples peuvent maintenant être en ligne en incluant
+le SQL dans la requête principale. Ceci améliore les performances en éliminant
+la surcharge par appel. Ceci signifie que les fonctions SQL simples se
+comportent maintenant comme des macros.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Support complet des connexions IPv6 et des données de type adresse IPv6
+ </term>
+
+ <listitem>
+ <para>
+ Les versions précédentes autorisaient seulement les connexions IPv4 et
+les types de données IP supportaient seulement les adresses IPv4. Cette version
+ajoute le support complet de IPv6 dans ces deux domaines.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Amélioration majeure dans les performances et la fiabilité de SSL
+ </term>
+
+ <listitem>
+ <para>
+ Plusieurs personnes très au courant de l'API SSL ont revu notre code
+SSL pour améliorer la négotiation de clé SSL et la récupération en cas d'erreur.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Le <quote>free space map</quote> réutilise efficacement les
+pages d'index, et quelques autres améliorations des espaces libres
+ </term>
+
+ <listitem>
+ <para>
+ Dans les précédentes versions, les pages d'index B-tree qui étaient
+laissées vides à cause de lignes supprimées pouvaient seulement être
+ré-utilisées par les lignes de valeurs d'index similaires aux lignes
+originellement indexées sur cette page. Avec la version 7.4,
+<command>VACUUM</command> enregistre les pages d'index vide et permet leur
+ré-utilisation pour toute ligne d'index future.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Schéma d'information au standard SQL
+ </term>
+
+ <listitem>
+ <para>
+ Le schéma d'information fournit une façon standardisée et stable
+d'accéder aux informations sur les objets du schéma définis dans une base de
+données.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Les curseurs se conforment mieux au standard SQL
+ </term>
+
+ <listitem>
+ <para>
+ Les commandes <command>FETCH</command> et
+ <command>MOVE</command> ont été revues pour mieux se conformer au
+ standard SQL.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Les curseurs peuvent exister en dehors des transactions
+ </term>
+
+ <listitem>
+ <para>
+ Ces curseurs sont aussi appelés des curseurs détenables.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Nouveau protocole client/serveur
+ </term>
+
+ <listitem>
+ <para>
+ Le nouveau protocole ajoute des codes d'erreur, plus d'informations sur
+le statut, un démarrage plus rapide, un meilleur support des transmissions de
+données binaires, des valeurs de paramètres séparées à partir des commandes
+SQL, des instructions préparées disponibles au niveau du protocole et une
+récupération plus propre pour les échecs lors d'un <command>COPY</command>.
+L'ancien protocole est toujours supporté par le serveur et les clients.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Les applications <application>libpq</application> et
+ <application>ECPG</application> sont maintenant totalement compatibles
+ avec les threads
+ </term>
+
+ <listitem>
+ <para>
+ Alors que les précédentes versions de <application>libpq</application>
+supportaient déjà les threads, cette version améliore la compatibilité en
+corrigeant certains codes, non compatibles, utilisés lors du lancement de
+la connexion à la base de données. L'option
+<option>--enable-thread-safety</option> de <command>configure</command> doit
+être utilisé pour activer cette fonctionnalité.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Nouvelle version de l'indexage complet de texte
+ </term>
+
+ <listitem>
+ <para>
+ Une nouvelle suite d'indexage complet de texte est disponible dans
+ <filename>contrib/tsearch2</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Nouvel outil autovacuum
+ </term>
+
+ <listitem>
+ <para>
+ Le nouvel outil autovacuum dans
+ <filename>contrib/autovacuum</filename> surveille les tables de
+statistiques de la base de données sur les activités
+<command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
+et lance automatiquement un <command>VACUUM</command> quand cela est nécessaire.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ La gestion des tableaux a été améliorée et déplacée dans le cœur du
+serveur
+ </term>
+
+ <listitem>
+ <para>
+ Beaucoup de limitations des tableaux ont été supprimées et les tableaux
+se comportent beaucoup plus comme des types de données complètement supportés.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ </sect2>
+
+ <sect2>
+ <title>Migration vers la version 7.4</title>
+
+ <para>
+ Une sauvegarde/restauration grâce à <application>pg_dump</application> est
+ requise pour ceux souhaitant migrer leurs données d'une version précédente.
+ </para>
+
+ <para>
+ Observez les incompatibilités suivantes :
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Le paramétrage autocommit, côté serveur, a été supprimé et réimplémenté
+dans les applications clients et dans les langages. L'autocommit posait
+beaucoup trop de problèmes avec les langages et applications qui voulaient
+contrôler leur propre comportement de validation automatique, donc celui-ci a
+été supprimé du serveur et ajouté aux API clientes individuelles si appropriées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Le contenu des messages d'erreur a un peu changé dans cette version. Un
+effort significatif a été fourni pour rendre ces messages plus consistants et
+plus orientés vers l'utilisateur. Si vos applications essaient de détecter des
+conditions d'erreur en analysant le message d'erreur, vous êtes fortement
+encouragé à utiliser le nouveau code d'erreur à la place.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les jointures internes utilisant la syntaxe <literal>JOIN</literal>
+explicite pourraient se comporter différemment parce qu'elles sont mieux
+optimisées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Un certain nombre de paramètres de configuration serveur ont été
+renommés pour plus de clarté, principalement ceux liés aux traces.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>FETCH 0</literal> ou <literal>MOVE 0</literal> ne font
+maintenant plus rien. Dans les précédentes versions, <literal>FETCH 0</literal>
+récupérerait toutes les lignes restantes et <literal>MOVE 0</literal> se
+déplacerait à la fin du curseur.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>FETCH</command> and <command>MOVE</command> renvoient
+maintenant le nombre réel de lignes récupérées/déplacées ou 0 si au début ou à
+la fin du curseur. Les versions précédentes renverraient le nombre de lignes
+passé à la commande, pas le nombre de lignes réellement récupérées ou déplacées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>COPY</command> traite maintenant les fichiers processus
+qui utilisent les séquences retour chariot ou retour chariot/fin de ligne. Les
+retours chariots ou fin de ligne littérals ne sont plus acceptés dans les
+données ; utilisez à la place <literal>\r</literal> et
+<literal>\n</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les espaces suivants sont maintenant supprimés lors de la conversion du
+type <type>char(<replaceable>n</>)</type> aux types
+<type>varchar(<replaceable>n</>)</type> et <type>text</type>. C'est ce que la
+plupart des gens s'attendaient à voir arriver.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Le type de données <type>float(<replaceable>p</>)</type> mesure
+maintenant <replaceable>p</> en chiffres binaires, et non pas en chiffres
+décimals. Le nouveau comportement suit le standard SQL.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les valeurs de dates ambigues doivent correspondre à l'ordre spécifié
+par le paramétrage <varname>datestyle</varname>. Dans les précédentes versions,
+la spécification de la date <literal>10/20/03</> était interprétée comme une
+date d'octobre même si <varname>datestyle</> spécifiait la date en premier. La
+7.4 envoie une erreur si une spécification de date est invalide pour le
+paramétrage courant de <varname>datestyle</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les fonctions <function>oidrand</function>, <function>oidsrand</function>
+et <function>userfntest</function> ont été supprimées. Ces fonctions n'étaient
+plus utiles.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les littéraux de chaîne spécifiant des valeurs date/heure, tels que
+<literal>'now'</literal> ou <literal>'today'</literal>, ne fonctionneront plus
+comme attendus dans les expressions par défaut de colonnes ; ils ne
+ajouteront maintenant par défaut l'heure de création de la table par
+défaut, pas le moment de l'ajout. À la place, les fonctions <function>now()</>,
+<function>current_timestamp</> ou <function>current_date</function> devraient
+être utilisées.
+ </para>
+
+ <para>
+ Dans les précédentes versions, il y avait un code spécial pour que les
+chaînes telles que <literal>'now'</literal> soient interprétées au moment de
+l'<command>INSERT</> et non pas au moment de la création de la table mais ce
+contournement ne couvrait pas tous les cas. La version 7.4 requiert
+maintenant que les valeurs par défaut soient définies proprement en
+utilisant des fonctions comme <function>now()</> ou
+<function>current_timestamp</>. Elles fonctionneront dans toutes les situations.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Le signe dollar (<literal>$</>) n'est plus permis dans les noms
+d'opérateurs. À la place, cela peut être un caractère dans les identifiants, à
+condition qu'il ne soit pas le premier. Ceci a été fait pour améliorer la
+compatibilité avec les autres systèmes de bases de données et pour éviter les
+problèmes de syntaxe lorsque des emplacements de paramètres
+(<literal>$<replaceable>n</></>) sont écrits adjacents à ceux des opérateurs.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ Vous trouverez ci-dessous un détail des modifications entre la version 7.4
+et la précédente version majeure.
+ </para>
+
+ <sect3>
+ <title>Modifications des opérations du serveur</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Autorisation des connexions IPv6 au serveur (Nigel Kukard, Johan Jordaan,
+ Bruce, Tom, Kurt Roeckx, Andrew Dunstan)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de SSL pour gérer les erreurs proprement (Nathan Mueller)
+ </para>
+ <para>
+ Dans les précédentes versions, certains rapports d'erreur de l'API SSL
+n'étaient pas gérés correctement. Cette version corrige ces problèmes.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration des performances et de la sécurité du protocole SSL (Sean
+Chittenden)
+ </para>
+ <para>
+ La renégotiation de clé SSL arrivait trop fréquemment, impliquant des
+performances SSL pauvres. De plus, la gestion de la clé initiale a été
+améliorée.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Affiche d'informations sur les verrous lorsqu'un blocage (deadlock) est
+détecté (Tom)
+ </para>
+ <para>
+ Ceci permet un débogage plus facile de ce type de situation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Mise à jour des heures de modification des socket s
+<filename>/tmp</filename> pour éviter leur suppression (Tom)
+ </para>
+ <para>
+ Ceci devrait aider à empêcher le nettoyage du répertoire
+<filename>/tmp</filename> par des scripts d'administration.
+ </para>
+ </listitem>
+
+ <listitem><para>Activation de PAM pour Mac OS X (Aaron
+Hillegass)</para></listitem>
+
+ <listitem>
+ <para>Index B-tree complètement compatibles avec les WAL (Tom)</para>
+ <para>
+ Dans les précédentes versions, dans certains cas rares, un arrêt brutal
+du serveur pouvait causer la corruption d'index B-tree. Cette version supprime
+ces quelques cas rares.
+ </para>
+ </listitem>
+
+ <listitem><para>Permet le compactage des index B-tree et la réutilisation
+des pages vides (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Corrige la recherche incohérente des index lors de la division de la
+première page racine (Tom)
+ </para>
+ <para>
+ Dans les précédentes versions, lorsqu'un index sur une page se divisait
+en deux pages, il y avait une brève période où une autre session de base de
+données pouvait ne pas voir une entrée d'index. Cette version corrige ce cas
+rare d'échecs.
+ </para>
+ </listitem>
+
+ <listitem><para>Améliore la logique d'allocation de l'espace libre
+(Tom)</para></listitem>
+
+ <listitem>
+ <para>Préserve les informations sur l'espace libre entre les différents
+redémarrages du serveur (Tom)</para>
+ <para>
+ Dans les précédentes versions, la carte de l'espace libre n'était pas
+sauvegardée quand le postmaster était arrêté, donc les serveurs nouvellement
+démarrés n'avaient pas d'informations sur l'espace libre. Cette version
+sauvegarde la carte de l'espace libre et la recharge quand le serveur est
+relancé.
+ </para>
+ </listitem>
+
+ <listitem><para>Ajoute le temps de lancement dans
+<literal>pg_stat_activity</literal>
+(Neil)</para></listitem>
+ <listitem><para>Nouveau code pour détecter les pages disque
+corrompues ; efface avec
+<varname>zero_damaged_pages</varname> (Tom)</para></listitem>
+ <listitem><para>Nouveau protocole client/serveur : plus rapide, plus
+de limite sur la longueur du nom de l'utilisateur, permet une sortie propre
+de la commande <command>COPY</command> (Tom)</para></listitem>
+ <listitem><para>Ajoute un statut de transaction, un ID de table, un ID
+de colonne au client/serveur protocol (Tom)</para></listitem>
+ <listitem><para>Ajoute des entrées/sorties binaires au protocole
+client/serveur (Tom)</para></listitem>
+ <listitem><para>Supprime le paramétrage serveur autocommit ; déplacez
+dans les applications clientes (Tom)</para></listitem>
+ <listitem><para>Changement des messages d'erreurs, codes d'erreurs et
+trois niveaux de détails d'erreurs (Tom, Joe, Peter)</para></listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Améliorations des performances</title>
+
+ <itemizedlist>
+ <listitem><para>Ajout du découpage pour les agrégats <literal>GROUP
+BY</literal> (Tom)</para></listitem>
+ <listitem><para>Jointures à boucles imbriquées plus intelligentes
+ sur les index multicolonnes (Tom)</para></listitem>
+ <listitem><para>Autorisation des jointures découpées à clés multiples
+(Tom)</para></listitem>
+ <listitem><para>Amélioration du <quote>constant folding</quote>
+(Tom)</para></listitem>
+ <listitem><para>Ajout de la capacité de mettre en ligne les fonctions SQL
+simples (Tom)</para></listitem>
+
+ <listitem>
+ <para>Réduction de l'utilisation de la mémoire pour les requêtes utilisant
+des fonctions complexes (Tom)</para>
+ <para>
+ Dans les précédentes versions, les fonctions renvoyant la mémoire allouée
+ne la libéraient pas tant que la requête n'était pas terminée. Cette version
+permet la libréation de la mémoire allouée par les fonctions lorsque l'appel de
+celle-ci se termine, réduisant la mémoire totale utilisée par les fonctions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Amélioration des performances de l'optimiseur GEQO (Tom)</para>
+ <para>
+ Cette version corrige quelques inefficacités dans la façon dont
+l'optimiseur GEQO gère les chemins de requête potentiels.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise la gestion des <literal>IN</>/<literal>NOT IN</> via des tables
+de découpages (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration des performances de <literal>NOT IN
+(<replaceable>subquery</>)</literal> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Permet que la plupart des sous-requêtes <literal>IN</literal> soient
+traitées comme des jointures (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les opérations de correspondance de modèles peuvent utiliser des
+ index quelque soit la locale (Peter)
+ </para>
+ <para>
+ Il n'existe aucune méthode pourque des locales non ASCII utilisent les
+ index standards pour des comparaisons <literal>LIKE</literal>. Cette
+ version ajoute un moyen de créer un index spécial pour
+ <literal>LIKE</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Permet au postmaster de précharger les bibliothèques en utilisant
+ <varname>preload_libraries</varname> (Joe)</para>
+ <para>
+ Pour les bibliothèques dynamiques requérant un long moment pour se
+ charger, cette option est disponible pour que la bibliothèque soit
+ pré-chargée par postmaster et héritée par toutes les sessions de la base
+ de données.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Améliore le calcul des coûts par l'optimiseur, particulièrement pour les
+ sous-requêtes (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Évite le tri lors la sous-requête <literal>ORDER BY</literal> correspond
+ à la requête de haut niveau (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Déduit que <literal>WHERE a.x = b.y AND b.y = 42</literal> signifie aussi
+ que <literal>a.x = 42</literal> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise les jointures de découpage (hash/merge) sur des jointures
+ complexes (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise les jointures de découpage sur un plus grand nombre de types
+ de données (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise l'optimisation des jointures internes explicites, désactivez avec
+ <varname>join_collapse_limit</varname> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajoute le paramètre <varname>from_collapse_limit</varname> pour contrôler
+ la conversion des sous-requêtes en jointures (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Utilise le code plus rapide et plus puissant des expressions rationnelles
+ provenant de Tcl (Henry Spencer, Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Utilise les ensembles de relation dans l'optimiseur (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Améliore le temps de lancement de la connexion (Tom)</para>
+ <para>
+ Le nouveau protocole client/serveur requiert moins de paquets réseau pour
+ commencer une session de la base de données.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Améliore les performances des déclencheurs/contraintes (Stephan)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Améliore la rapidité de <literal>col IN (const, const, const,
+ ...)</literal> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Corrige les index de découpage, qui pourraient être cassés dans de rares
+ cas (Tom)
+ </para>
+ </listitem>
+
+ <listitem><para>Améliore la concurrence et la rapidité des index de
+ découpage (Tom)</para>
+ <para>
+ Les versions précédentes souffraient d'une pauvre performance pour les
+index de découpage, particulièrement dans les situations avec de nombreux
+clients. Cette version corrige ceci. Le groupe de développement est intéressé
+par des rapports de comparaison entre les performances d'un index B-tree et
+d'un index de découpage.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Alignement des tampons partagés sur des limites sur 32 bits pour des
+ amélioration de la rapidité de copie (Manfred Spraul)</para>
+ <para>
+ Certains CPU réalisent des copies de données plus rapidement si les
+ adresses sont alignées sur 32 bits.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Type de données <type>numeric</type> réimplémenté pour de meilleurs
+ performances (Tom)</para>
+ <para>
+ <type>numeric</type> était auparavant stocké en base 100. Le nouveau code
+ utilise la base 10000 pour des performances significativement meilleures.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modification de la configuration du serveur</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Renommage du paramètre serveur <varname>server_min_messages</> et
+ <varname>log_min_messages</> (Bruce)</para>
+ <para>
+ Ceci a été fait pour que la plupart des paramètres contrôlant les
+ traces serveur commencent avec <literal>log_</>.
+ </para>
+ </listitem>
+
+ <listitem><para>Renommage de <varname>show_*_stats</> en
+ <varname>log_*_stats</> (Bruce)</para></listitem>
+ <listitem><para>Renommage de <varname>show_source_port</> en
+<varname>log_source_port</> (Bruce)</para></listitem>
+ <listitem><para>Renommage de <varname>hostname_lookup</> en
+<varname>log_hostname</> (Bruce)</para></listitem>
+
+ <listitem>
+ <para>Ajout de <varname>checkpoint_warning</> pour avertir en cas de
+ points de vérification trop fréquent (Bruce)</para>
+ <para>
+ Dans les versions précédentes, il était difficile de déterminer si un
+ point de vérification arrivait trop fréquemment. Cette fonctionnalité
+ ajoute un avertissement aux traces du serveur lorsqu'un nombre
+ excessif de points de vérification survient.
+ </para>
+ </listitem>
+
+ <listitem><para>Nouveaux paramètres du serveur en lecture seule con
+ cernant la localisation (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Modifie les messages des traces du serveur en <literal>DEBUG</> plutôt que
+ <literal>LOG</> (Bruce)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Empêche les variables de traces du serveur d'être désactivées par des
+ utilisateurs standards (Bruce)</para>
+ <para>
+ Ceci est une fonctionnalité de sécurité pour que les utilisateurs
+ standards ne puissent pas désactivés les traces activées par
+ l'administrateur.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <varname>log_min_messages</>/<varname>client_min_messages</> contrôle
+ maintenant la sortie <varname>debug_*</> (Bruce)
+ </para>
+ <para>
+ Ceci centralise les informations de déboguages du client de façon à
+ ce que toutes les sorties de déboguages puissent être envoyées soit au
+ client soit aux traces du serveur.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajoute le support du serveur Rendezvous de Mac OS X (Chris
+ Campbell)</para>
+ <para>
+ Ceci permet aux hôtes Mac OS X de chercher les serveurs
+ <productname>PostgreSQL</productname> disponibles sur le réseau.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajoute la possibilité d'afficher seulement les instructions lentes
+ en utilisant <varname>log_min_duration_statement</varname> (Christopher)
+ </para>
+ <para>
+ Ceci est une fonctionnalité de débogage souvent demandée qui permet aux
+ administrateurs de voir seulement les requêtes lentes dans les traces du
+ serveur.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise <filename>pg_hba.conf</filename> à accepter des masques
+ réseau au format CIDR (Andrew Dunstan)</para>
+ <para>
+ Ceci permet aux administrateurs d'assembler l'adresse IP de l'hôte et les
+ champs de masques dans un seul champ CIDR dans
+ <filename>pg_hba.conf</filename>.
+ </para>
+ </listitem>
+
+ <listitem><para>Nouveau paramètre <varname>is_superuser</varname> en
+ lecture seule (Tom)</para></listitem>
+
+ <listitem>
+ <para>Nouveau paramètre <varname>log_error_verbosity</varname> pour
+ contrôler le détail des erreurs (Tom)</para>
+ <para>
+ Ceci fonctionne avec la nouvelle version des rapports d'erreurs pour
+ fournir des informations supplémentaires comme des astuces, de noms de
+ fichiers et des numéros de lignes.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para><literal>postgres --describe-config</literal> affiche maintenant les
+ variables de configuration du serveur (Aizaz Ahmed, Peter)</para>
+ <para>
+ Cette option est utile pour les outils d'administration qui ont besoin de
+ connaître les noms des variables de coniguration et leur minimum, maximum,
+ valeur par défaut et descriptionss.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajoute de nouvelles colonnes dans <literal>pg_settings</literal> :
+ <literal>context</>, <literal>type</>, <literal>source</>,
+ <literal>min_val</>, <literal>max_val</> (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Par défaut, <varname>shared_buffers</> vaut 1000 et
+ <varname>max_connections</> 100 si possible (Tom)
+ </para>
+ <para>
+ Les anciennes versions avaient pour valeur par défaut 64 tampons
+ partagés pour que <productname>PostgreSQL</productname> puisse démarrer
+même sur de très vieux
+ systèmes. Cette version teste la mémoire partagée autorisée par la
+ plateforme et sélectionne des valeurs par défaut plus raisonnable si
+ possible. Bien sûr, les utilisateurs sont toujours encouragés à évaluer
+ leur charge de ressources en accord avec
+ <varname>shared_buffers</varname>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nouveau type d'enregistrement dans <filename>pg_hba.conf</filename>
+ <literal>hostnossl</> pour empêcher les connexions SSL (Jon
+ Jensen)
+ </para>
+ <para>
+ Dans les précédentes versions, il n'existait pas de moyens d'empêcher les
+ connexions SSL si le client et le serveur supportaient SSL. Cette option
+ le permet.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nouveau déplacement du paramètre <varname>geqo_random_seed</varname>
+ (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout du paramètre serveur <varname>regex_flavor</varname> pour contrôler
+ le traitement des expressions rationnelles (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <command>pg_ctl</command> gère mieux les ports non standards
+ (Greg)
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications sur les requêtes</title>
+
+ <itemizedlist>
+ <listitem><para>Nouveau schéma d'informations au standard SQL
+ (Peter)</para></listitem>
+ <listitem><para>Ajoute des transactions en lecture seule
+ (Peter)</para></listitem>
+ <listitem><para>Affichage du nom de la clé et de la valeur dans les
+ messages de violation de clé étrangère (Dmitry Tkach)</para></listitem>
+
+ <listitem>
+ <para>Permet aux utilisateurs de voir leur propre requêtes dans
+<literal>pg_stat_activity</literal> (Kevin Brown)</para>
+ <para>
+ Dans les versions précédentes, seul le superutilisateur pouvait voir les
+ chaînes de requêtes en utilisant <literal>pg_stat_activity</literal>.
+ Maintenant, les utilisateurs ordinaires peuvent voir leurs propres
+ requêtes.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Corrige les agrégats dans les sous-requêtes pour correspondre au
+ standard SQL (Tom)</para>
+ <para>
+ Le standard SQL indique qu'une fonction d'agrégat apparaissant dans une
+ sous-requête appartient à la requête externe si son argument contient
+ seulement des variables de la requête externe. Les versions précédentes de
+ <productname>PostgreSQL</productname> ne gèrent pas ce point correctement.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout d'une option pour empêcher l'ajout automatique de
+ tables référencées dans la requête (Nigel J. Andrews)</para>
+ <para>
+ Par défaut, les tables mentionnées dans la requête sont automatiquement
+ ajoutées dans la clause <literal>FROM</> s'ils n'y sont pas déjà. Ceci est
+ compatible avec le comportement historique de
+<productname>POSTGRES</productname>
+ mais est contraire
+ au standard SQL. Cette option permet de sélectionner un comportement
+ compatible avec le standard.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise <literal>UPDATE ... SET col = DEFAULT</literal> (Rod)</para>
+ <para>
+ Ceci permet à <command>UPDATE</command> d'initialiser une colonne à sa
+ valeur déclarée par défaut.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise l'utilisation d'expressions dans
+ <literal>LIMIT</>/<literal>OFFSET</>
+ (Tom)</para>
+ <para>
+ Dans les versions précédentes, <literal>LIMIT</>/<literal>OFFSET</>
+ pouvaient seulement être des constantes, pas des expressions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Implémentation de <literal>CREATE TABLE AS EXECUTE</literal> (Neil,
+ Peter)</para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Object Manipulation Changes</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Rend la grammaire de <command>CREATE SEQUENCE</command> plus
+ conforme à SQL:2003 (Neil)</para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout des déclencheurs au niveau instruction (Neil)</para>
+ <para>
+ Bien que ceci permet à un déclencheur d'être lancé à la fin d'une
+ instruction, il ne permet pas au déclencheur d'accéder à toutes les lignes
+ modifiées par l'instruction. Cette possibilité est planifiée pour une
+ future version.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout de contraintes de vérifications pour les domaines
+ (Rod)</para>
+ <para>
+ Ceci améliore grandement l'utilité des domaines en les permettant
+ d'utiliser les contraintes de vérification.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout d'<command>ALTER DOMAIN</command> (Rod)</para>
+ <para>
+ Ceci permet la manipulation de domaines existants.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Correction de plusieurs bogues pour les tables comprenant zéro
+ colonne (Tom)</para>
+ <para>
+ <productname>PostgreSQL</productname> supporte les tables sans colonne.
+ Ceci corrige plusieurs bogues survenant lors de l'utilisation de telles
+ tables.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Fait que <literal>ALTER TABLE ... ADD PRIMARY KEY</literal> ajoute
+ une contrainte non NULL (Rod)</para>
+ <para>
+ Dans les précédentes versions, <literal>ALTER TABLE ... ADD
+ PRIMARY</literal> aurait ajouter un index unique mais pas de contrainte
+ non NULL. Ceci est corrigé dans cette version.
+ </para>
+ </listitem>
+
+ <listitem><para>Ajout de <literal>ALTER TABLE ... WITHOUT OIDS</literal>
+ (Rod)</para>
+ <para>
+ Ceci permet de contrôler le fait qu'il y ait ou non une colonne OID pour
+ les nouvelles lignes. Ceci est surtout utile pour sauvegarder de l'espace
+ disque.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout de <literal>ALTER SEQUENCE</literal> pour modifier les valeurs
+ minimum, maximum, l'incrément, le cache et le cycle (Rod)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout de <literal>ALTER TABLE ... CLUSTER ON</literal> (Alvaro
+ Herrera)</para>
+ <para>
+ Cette commande est utilisée par <command>pg_dump</command> pour
+ enregistrer la colonne de groupement pour chaque table précédemment
+ groupée. Cette information est utilisée pour regrouper toutes les tables
+ précédemment groupées.
+ </para>
+ </listitem>
+
+ <listitem><para>Amélioration de la conversion automatique de type pour les
+ domaines (Rod, Tom)</para></listitem>
+ <listitem><para>Permet les signes dollar dans les identifiants sauf en
+ premier caractère (Tom)</para></listitem>
+ <listitem><para>Interdit les signes dollar dans les noms d'opérateur, pour
+ que <literal>x=$1</> fonctionne (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Autorise la copie du schéma de la table en utilisant <literal>LIKE
+ <replaceable>soustable</replaceable></literal>, aussi une fonctionnalité
+ SQL:2003 <literal>INCLUDING DEFAULTS</literal> (Rod)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout de la clause <literal>WITH GRANT OPTION</literal> pour
+ <command>GRANT</command> (Peter)
+ </para>
+ <para>
+ Ceci permet à <command>GRANT</command> de donner aux autres utilisateurs
+ la capacité de données des privilèges sur un objet.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications des commandes utilitaires</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Ajout de la clause <literal>ON COMMIT</literal> à <command>CREATE
+ TABLE</command> pour les tables temporaires (Gavin)</para>
+ <para>
+ Ceci permet à une table d'être supprimée ou d'avoir toutes ces lignes
+ supprimées lors de la validation d'une transaction.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Permet aux curseurs d'agir en dehors des transactions en utilisant
+ <literal>WITH HOLD</literal> (Neil)</para>
+ <para>
+ Dans les précédentes versions, les curseurs étaient supprimés à la fin de
+ la transaction qui les avait créé. Les curseurs peuvent maintenant être
+ créés avec l'option <literal>WITH HOLD</literal> qui leur permet de
+ continuer à être utilisé après que la transaction qui les a créé soit
+ validée.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para><literal>FETCH 0</literal> et <literal>MOVE 0 </literal> ne font
+ maintenant plus rien (Bruce)</para>
+ <para>
+ Dans les précédentes versions, <literal>FETCH 0</literal> récupérait
+ toutes les lignes restantes et <literal>MOVE 0</literal> se déplaçait à la
+ fin du curseur.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <command>FETCH</command> et <command>MOVE</command> renvoient le
+ nombre de lignes récupérées/déplacées ou zéro si au début ou à la fin du
+ curseur, suivant le standard SQL (Bruce)
+ </para>
+ <para>
+ Dans les versions précédentes, le nombre de lignes renvoyé par
+ <command>FETCH</command> et <command>MOVE</command> ne reflétaient pas
+ exactement le nombre de lignes traitées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Gestion propre de <literal>SCROLL</literal> avec les curseurs ou
+ renvoi d'une erreur (Neil)</para>
+ <para>
+ Permettre un accès aléatoire (à la fois en avant et en arrière) aux
+ différents types de requêtes ne peut pas se faire sans quelques travaux
+ supplémentaires. Si <literal>SCROLL</literal> est spécifié lors de la
+ création du curseur, ce travail supplémentaire a été réalisé. De plus, si
+ le curseur a été créé avec <literal>NO SCROLL</literal>, aucun accès
+ aléatoire ne sera autorisé.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Implémente les options compatibles SQL <literal>FIRST</>,
+ <literal>LAST</>, <literal>ABSOLUTE <replaceable>n</></>,
+ <literal>RELATIVE <replaceable>n</></> pour
+ <command>FETCH</command> et <command>MOVE</command> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise <command>EXPLAIN</command> sur <command>DECLARE
+ CURSOR</command> (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Permet à <command>CLUSTER</command> d'utiliser les index marqués
+ comme pré-groupés par défaut (Alvaro Herrera)</para>
+ </listitem>
+
+ <listitem>
+ <para>Permet à <command>CLUSTER</command> de grouper toutes les tables
+ (Alvaro Herrera)</para>
+ <para>
+ Ceci permet à toutes les tables précédemment groupées dans une base de
+ données d'être regroupées avec une seule commande.
+ </para>
+ </listitem>
+
+ <listitem><para>Empêche <command>CLUSTER</command> sur les index partiels
+ (Tom)</para></listitem>
+
+ <listitem><para>Autorise les retours à la ligne DOS et Mac dans les fichiers
+ <command>COPY</> (Bruce)</para></listitem>
+
+ <listitem>
+ <para>
+ Interdit les retours chariot comme valeur de données, les
+ antislash-retour-chariot et <literal>\r</> sont toujours autorisés (Bruce)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Modifications sur <command>COPY</> (binaire, <literal>\.</>)
+ (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Récupération propre après un échec de <command>COPY</command>
+ (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Empêche les possibles pertes de mémoire de <command>COPY</command>
+ (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Fait que <command>TRUNCATE</command> soit sain lors de transactions
+ (Rod)</para>
+ <para>
+ <command>TRUNCATE</command> peut maintenant être utilisé à l'intérieur
+ d'une transaction. Si la transaction est annulée, les modifications faites
+ par <command>TRUNCATE</command> sont automatiquement annulées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Permet la préparation et le lien de commandes utilitaires comme
+ <command>FETCH</command> et <command>EXPLAIN</command> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout de <command>EXPLAIN EXECUTE</command> (Neil)</para>
+ </listitem>
+
+ <listitem>
+ <para>Amélioration des performances de <command>VACUUM</command> sur les
+ index en réduisant le trafic des WAL (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Les index fonctionnels ont été généralisés en des index sur des
+ expressions (Tom)</para>
+ <para>
+ Dans les versions précédentes, les index fonctionnels supportaient
+ seulement une simple fonction appliquée à un ou plusieurs noms de
+ commandes. Cette version accepte tout type d'expression scalaire.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <command>SHOW TRANSACTION ISOLATION</command> corresponde à
+ l'entrée de <command>SET TRANSACTION ISOLATION</command>
+ (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Fait que <command>COMMENT ON DATABASE</command> sur les bases de
+ données non locales génère un message d'avertissement plutôt qu'une
+ erreur (Rod)</para>
+ <para>
+ Les commentaires de bases de données sont stockés dans les tables
+ locales de la base de données. Donc, les commentaires sur une base de
+ données doivent être stockés dans chaque base de données.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Améliore la fiabilité de <command>LISTEN</>/<command>NOTIFY</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Permet à <command>REINDEX</command> de réindexer fiablement les
+ index de catalogues système non partagés (Tom)</para>
+ <para>
+ Ceci permet aux tables système d'être réindexées sans avoir besoin d'une
+ session en solo, qui était nécessaire dans les versions précédentes. Les
+ seules tables qui requièrent maintenant une session solo sont les tables
+ système global <literal>pg_database</>, <literal>pg_shadow</> et
+ <literal>pg_group</>.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications sur les types de données et sur les fonctions</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Nouveau paramètre serveur <varname>extra_float_digits</varname> pour
+ contrôler la précision d'affichage des nombres à virgule glottante (Pedro
+ Ferreira, Tom)
+ </para>
+ <para>
+ Ceci contrôle la précision qui causait des problèmes lors des tests de
+ régression.
+ </para>
+ </listitem>
+
+ <listitem><para>Autorisation de <literal>+1300</literal> comme spécificateur
+ numérique de fuseau horaire, pour FJST (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Suppression des fonctions <function>oidrand</>, <function>oidsrand</> et
+ <function>userfntest</> rarement utilisées (Neil)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout de la fonction <function>md5()</> sur le serveur principal,
+ auparavant déjà dans <filename>contrib/pgcrypto</filename> (Joe)</para>
+ <para>
+ Une fonction MD5 était fréquemment demandée. Pour des possibilités
+ plus complexes de cryptage, utilisez
+ <filename>contrib/pgcrypto</filename>.
+ </para>
+ </listitem>
+
+ <listitem><para>Augmentation de l'étendue des données de
+ <type>timestamp</type> (John Cochran)</para></listitem>
+
+ <listitem>
+ <para>
+ Modification de <literal>EXTRACT(EPOCH FROM timestamp)</literal> pour que
+ <type>timestamp without time zone</type> soit supposé être dans le fuseau
+ local, et non pas en GMT (Tom)
+ </para>
+ </listitem>
+
+ <listitem><para>Récupération des divisions par zéro au cas où le système
+ d'exploitation ne le permet pas (Tom)</para></listitem>
+ <listitem><para>Modification du type de données <type>numeric</type>
+ interne en base 10000 (Tom)</para></listitem>
+ <listitem><para>Nouvelle fonction <function>hostmask()</function> (Greg
+ Wickham)</para></listitem>
+ <listitem><para>Corrections pour <function>to_char()</function> et
+ <function>to_timestamp()</function> (Karel)</para></listitem>
+
+ <listitem>
+ <para>
+ Permet aux fonctions de prendre tout type de données en argument et de
+ renvoyer aussi tout type, en utilisant <type>anyelement</type> et
+ <type>anyarray</type> (Joe)
+ </para>
+ <para>
+ Ceci permet la création de fonctions qui peuvent fonctionner avec tout
+ type de données.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les tableaux peuvent maintenant être spécifiés comme
+ <literal>ARRAY[1,2,3]</literal>,
+ <literal>ARRAY[['a','b'],['c','d']]</literal> ou
+ <literal>ARRAY[ARRAY[ARRAY[2]]]</literal> (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise une comparaison correcte des tableaux, ceci incluant le support
+ de <literal>ORDER BY</literal> et <literal>DISTINCT</literal> (Joe)
+ </para>
+ </listitem>
+
+ <listitem><para>Autorise les index sur les colonnes de type tableau
+ (Joe)</para></listitem>
+ <listitem><para>Autorise la concaténation de tableaux avec
+ <literal>||</literal> (Joe)</para></listitem>
+
+ <listitem>
+ <para>
+ Autorise la qualification <literal>WHERE</literal>
+ <literal><replaceable>expr</> <replaceable>op</> ANY/SOME/ALL
+ (<replaceable>array_expr</>)</literal> (Joe)
+ </para>
+ <para>
+ Ceci permet aux tableaux de se comporter comme une liste de valeurs dans
+ des requêtes comme <literal>SELECT * FROM tab WHERE col IN
+ (array_val)</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nouvelles fonctions de tableaux <function>array_append</>,
+ <function>array_cat</>, <function>array_lower</>,
+ <function>array_prepend</>, <function>array_to_string</>,
+ <function>array_upper</>, <function>string_to_array</> (Joe)
+ </para>
+ </listitem>
+
+ <listitem><para>Autorise l'utilisation de fonctions polymorphiques par les
+ agrégats définis par l'utilisateur (Joe)</para></listitem>
+ <listitem><para>Permet les affectations dans des tableaux vides
+ (Joe)</para></listitem>
+
+ <listitem>
+ <para>
+ Autorise 60 dans la partie secondes des champs de type <type>time</type>,
+ <type>timestamp</type> et <type>interval</type> (Tom)
+ </para>
+ <para>
+ Les valeurs à soixante secondes sont nécesssaires pour les <quote>leap
+ seconds</quote>.
+ </para>
+ </listitem>
+
+ <listitem><para>Permet au type de données <type>cidr</type> d'être converti
+ en <type>text</type> (Tom)</para></listitem>
+
+ <listitem><para>Interdit les noms de fuseaux horaires invalides dans SET
+ TIMEZONE (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Supprime les espaces à la fin lorsque une donnée de type
+ <type>char</type> est convertie en type <type>varchar</> ou <type>text</>
+ (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <type>float(<replaceable>p</>)</> mesure la précision
+ <replaceable>p</> en chiffres binaires, et non pas en chiffres décimaux
+ (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajoute le support IPv6 aux types de données <type>inet</type> et
+ <type>cidr</type> (Michael Graff)</para>
+ </listitem>
+
+ <listitem>
+ <para>Ajoute la fonction <function>family()</function> pour rapporter si
+ l'adresse fait partie de la famille IPv4 ou IPv6 (Michael Graff)</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <literal>SHOW datestyle</literal> génère une sortie similaire à
+ celle utilisée par <literal>SET datestyle</literal> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <literal>EXTRACT(TIMEZONE)</literal> et <literal>SET/SHOW
+ TIME ZONE</literal> suivent la convention SQL pour le signe des décalages
+ de zones horaires, c'est-à-dire que le positif est l'est à partir d'UTC
+ (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Correction de <literal>date_trunc('quarter', ...)</literal> (Böjthe
+Zoltán)</para>
+ <para>
+ Les anciennes versions renvoyaient une valeur incorrecte pour cet appel
+ de fonction.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Fait que <function>initcap()</function> soit plus compatible avec
+ Oracle (Mike Nolan)</para>
+ <para>
+ <function>initcap()</function> met en majuscule toute lettre après un
+ caractère non alphanumérique, plutôt qu'après un espace blanc.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise seulement l'ordre du champ <varname>datestyle</varname>
+ pour les valeurs de données ne faisant pas partie du format ISO-8601
+ (Greg)</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout de nouvelles valeurs pour <varname>datestyle</varname>,
+ <literal>MDY</>, <literal>DMY</> et <literal>YMD</> pour initialiser
+ l'ordre du champ en entrée ; honore <literal>US</> et
+ <literal>European</> pour une compatibilité ascendante (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les chaînes littérales comme <literal>'now'</literal> ou
+ <literal>'today'</literal> ne fonctionneront plus comme valeur par défaut
+ d'une colonne. À la place, utilisez des fonctions comme
+ <function>now()</function>, <function>current_timestamp</function>.
+ (modification requise pour les instructions préparées) (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Traitement de NaN comme plus important que tout autre valeur dans
+ <function>min()</>/<function>max()</> (Tom)</para>
+ <para>
+ NaN était déjà trié après les valeurs numériques ordinaires dans la
+ plupart des cas, mais <function>min()</> et <function>max()</> ne le
+ faisaient pas correctement.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Empêche l'intervalle de supprimer l'affichage de
+ <literal>:00</literal></para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nouvelles fonctions <function>pg_get_triggerdef(prettyprint)</function>
+ et <function>pg_constraint_is_visible() (Christopher)</function>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Permet la spécification de l'heure avec <literal>040506</> ou
+ <literal>0405</> (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ L'ordre de la date en entrée doit être <literal>YYYY-MM-DD</literal>
+ (avec une année sur quatre chiffres) ou correspondre à
+ <varname>datestyle</varname>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <function>pg_get_constraintdef</function> supporte les
+ contraintes uniques, de clés primaires et de vérification de contraintes
+ (Christopher)
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Server-Side Language Changes</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Empêche PL/pgSQL de s'arrêter brutalement lorsque <literal>RETURN
+ NEXT</literal> est utilisé avec une variable d'enregistrement ne
+ correspondant à aucune ligne (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que l'interface <function>spi_execute</function> de PL/Python gère
+ les valeurs NULL correctement (Andrew Bosma)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise la déclaration des variables de type composé dans PL/pgSQL
+ sans <literal>%ROWTYPE</literal> (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Corrige la fonction <function>_quote()</function> de PL/Python pour
+ gérer les gros entiers</para>
+ </listitem>
+
+ <listitem>
+ <para>Modification de PL/Python en langage sans confiance, maintenant
+ appelé <literal>plpythonu</literal> (Kevin Jacobs, Tom)</para>
+ <para>
+ Le langage Python ne support plus un environnement d'exécution restreint,
+ donc la version de confiant de PL/Python a été supprimée. Si cette
+ situation évolue, une version de PL/python pouvant être utilisé par des
+ utilisateurs ordinaires sera préparée.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise les fonctions polymorphiques dans PL/pgSQL (Joe, Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise les fonctions SQL polymorphiques (Joe)</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration du mécanisme de cache des fonctions compilées dans PL/pgSQL
+ avec un support complet du polymorphisme (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ajout du nouveau paramètre <literal>$0</> dans PL/pgSQL, représentant le
+ type de retour réel de la fonction (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise PL/Tcl et PL/Python à utiliser le même déclencheur sur des
+ tables multiples (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction de <function>spi_prepare</function> de PL/Tcl pour qu'il
+ accepte les noms de types qualifiés complètement dans la liste des types
+ des paramètres (Jan)
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications sur psql</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Ajout de <literal>\pset pager always</literal> pour utiliser en
+ permanence le pagineur (Greg)</para>
+ <para>
+ Ceci force l'utilisation du pagineur même si le nombre de lignes est plus
+ petit que la hauteur de l'écran. Ceci est valable pour les lignes de
+ données ne tenant pas sur une ligne de l'écran.
+ </para>
+ </listitem>
+
+ <listitem><para>Amélioration de la complétion par tabulation (Rod, Ross
+ Reedstrom, Ian Barwick)</para></listitem>
+ <listitem><para>Réordonnancement de l'aide <literal>\?</> en la groupant
+ (Harald Armin Massa, Bruce)</para></listitem>
+ <listitem><para>Ajout des commandes antislash pour liste les schémas,
+ fonctions de conversions et conversions (Christopher)</para></listitem>
+
+ <listitem>
+ <para>
+ <command>\encoding</> est modifié pour se baser sur le paramètre serveur
+ <varname>client_encoding</varname> (Tom)
+ </para>
+ <para>
+ Dans les versions précédentes, <command>\encoding</command> n'était pas
+ tenu au courant des changements de codage fait en utilisant <literal>SET
+ client_encoding</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Sauvegarde du tampon de l'éditeur dans l'historique de readline
+ (Ross)</para>
+ <para>
+ Lorsque <command>\e</> est utilisé pour éditer une requête, le résultat
+ est sauvegardé dans l'historique de readline pour récupération en
+ utilisant la flèche vers le haut.
+ </para>
+ </listitem>
+
+ <listitem><para>Amélioration de l'affichage de <command>\d</command>
+ (Christopher)</para></listitem>
+ <listitem><para>Amélioration du mode HTML pour être plus conforme au
+ standard (Greg)</para></listitem>
+
+ <listitem>
+ <para>Nouvelle fonction <command>\set AUTOCOMMIT off</command> (Tom)</para>
+ <para>
+ Ceci prend la place du paramètre serveur <varname>autocommit</varname>
+ qui a été supprimé.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Nouveau <command>\set VERBOSITY</command> pour contrôler le détail
+ des erreurs (Tom)</para>
+ <para>
+ Ceci contrôle le niveau du nouveau détail des rapports.
+ </para>
+ </listitem>
+
+ <listitem><para>Nouvelle invite de séquence d'échappement
+ <literal>%x</literal> pour afficher l'état de la transaction
+ (Tom)</para></listitem>
+ <listitem><para>Les options longues pour <application>psql</application>
+ sont maintenant disponibles sur toutes les plateformes</para></listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications de pg_dump</title>
+
+ <itemizedlist>
+ <listitem><para>Multiples corrections de pg_dump, incluant le format tar et
+ les gros objets</para></listitem>
+ <listitem><para>Autorise la sauvegarde de schémas spécifiques par pg_dump
+ (Neil)</para></listitem>
+
+ <listitem>
+ <para>Fait que pg_dump préserve les caractéristiques de stockage des
+ colonnes (Christopher)</para>
+ <para>
+ Ceci préserve l'information <literal>ALTER TABLE ... SET
+ STORAGE</literal>.
+ </para>
+ </listitem>
+
+ <listitem><para>Fait que pg_dump préserve les caractéristiques
+ <command>CLUSTER</command> (Christopher)</para></listitem>
+
+ <listitem>
+ <para>
+ Fait que pg_dumpall utilise <command>GRANT</>/<command>REVOKE</> pour
+ sauvegarder les droits au niveau de la base de données (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise pg_dumpall à supporter les options <option>-a</>,
+ <option>-s</>, <option>-x</> de pg_dump (Tom)
+ </para>
+ </listitem>
+
+ <listitem><para>Empêche pg_dump de mettre en minuscule les identifiants
+ spécifiés sur la ligne de commande (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Les options <option>--use-set-session-authorization</option> et
+ <option>--no-reconnect</option> de pg_dump ne font maintenant plus
+ rien, toutes les sauvegardes utilisent <command>SET SESSION
+ AUTHORIZATION</command>
+ </para>
+ <para>
+ pg_dump ne se reconnecte plus pour changer d'utilisateurs mais utilise à
+ la place <command>SET SESSION AUTHORIZATION</command>. Ceci réduira le
+ nombre de demandes de mot de passe lors des restaurations.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Les options longues pour <application>pg_dump</application> sont
+ maintenant disponibles sur toutes les plateformes</para>
+ <para>
+ <productname>PostgreSQL</productname> inclut maintenant ses propres
+ routines de traitement des options longues.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications de libpq</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Ajout de la fonction <function>PQfreemem</function> pour libérer la
+ mémoire de Windows, suggéré pour le <command>NOTIFY</command> (Bruce)
+ </para>
+ <para>
+ Windows requiert que la mémoire allouée dans une bibliothèque soit libérée
+ par une fonction de la même bibliothèque, donc <function>free()</function>
+ ne fonctionne pas pour libérer la mémoire allouée par libpq.
+ <function>PQfreemem</function> est la bonne façon de libérer la mémoire
+ libpq, spécialement sur Windows, et est aussi recommandée sur les autres
+ plateformes.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Fonctionnalité de service de document, et ajout d'un fichier
+ d'exemple (Bruce)</para>
+ <para>
+ Ceci permet aux clients de rechercher une information de connexion
+ dans un ficher central sur la machine client.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fait que <function>PQsetdbLogin</function> a les mêmes valeurs par défaut
+ que <function>PQconnectdb</function> (Tom)
+ </para>
+ </listitem>
+
+ <listitem><para>Autorise libpq à échouer proprement lorsque les ensembles de
+ résultats sont trop importants (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Amélioration de la performance de la fonction
+ <function>PQunescapeBytea</function> (Ben Lamb)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise une libpq totalement compatible avec les threads avec
+ l'option <option>--enable-thread-safety</option> de
+ <filename>configure</filename> (Lee Kindness, Philip Yarra)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise la fonction <function>pqInternalNotice</function> à accepter les
+ chaînes de format et leurs arguments au lieu d'un simple message
+ préformaté (Tom, Sean Chittenden)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Contrôle la négotiation SSL avec les valeurs <literal>sslmode</literal>
+ <literal>disable</literal>, <literal>allow</literal>,
+ <literal>prefer</literal> et <literal>require</literal> (Jon
+ Jensen)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise les nouveaux codes d'erreur et les niveaux de texte
+ (Tom)</para>
+ </listitem>
+
+ <listitem>
+ <para>Autorise l'accès à la table et la colonne sous-jacente du résultat
+ d'une requête (Tom)</para>
+ <para>
+ Ceci est utile pour les applications de création de requêtes qui veulent
+ connaître la table sous-jacente et les noms de colonnes spécifiées avec
+ un ensemble de résultats spécifique.
+ </para>
+ </listitem>
+
+ <listitem><para>Autorise l'accès au statut de la transaction en cours
+ (Tom)</para></listitem>
+ <listitem><para>Ajoute la capacité de passer des données binaires
+ directement au serveur (Tom)</para></listitem>
+
+ <listitem>
+ <para>
+ Ajout des fonctions <function>PQexecPrepared</function> et
+ <function>PQsendQueryPrepared</function> réalisant un
+ bind/execute des précédentes instructions préparées (Tom)
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modification de JDBC</title>
+
+ <itemizedlist>
+ <listitem><para>Autorise <function>setNull</function> sur des ensembles de
+ résultats en lecture/écriture</para></listitem>
+ <listitem><para>Autorise <function>executeBatch</function> sur une
+ instruction préparée (Barry)</para></listitem>
+ <listitem><para>Support des connexions SSL (Barry)</para></listitem>
+ <listitem><para>Gestion des noms de schéma dans les ensembles de résultats
+ (Paul Sorenson)</para></listitem>
+ <listitem><para>Ajout du support de refcursor (Nic
+ Ferrier)</para></listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Diverses modifications dans l'interface</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Empêche les possibles pertes de mémoire ou <quote>core dump</quote>
+ lors d'un arrêt de libpgtcl (Tom)</para>
+ </listitem>
+ <listitem>
+ <para>Ajout de la compatibilité Informix pour ECPG (Michael)</para>
+ <para>
+ Ceci permet à ECPG de traiter des programmes C embarqués qui étaient
+ écrit en utilisant certaines extensions Informix.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Ajout du type <type>decimal</type> à ECPG sur une longueur fixe, pour
+ Informix (Michael)</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Autorise les programmes SQL embarqués en mode compatible avec les threads
+ après utilisation de l'option <option>--enable-thread-safety</option> de
+ <filename>configure</filename> (Lee Kindness, Bruce)
+ </para>
+ <para>
+ Ceci permet à de nombreux threads d'accéder à la base de données en
+ même temps.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Déplacement du client Python PyGreSQL sur <ulink
+ url="http://www.pygresql.org"></ulink> (Marc)</para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications du code source</title>
+
+ <itemizedlist>
+ <listitem><para>Empêche le besoin de fichiers de résultats de
+régression séparés par plateforme (Tom)</para></listitem>
+ <listitem><para>Amélioration de la primitive de verrou sur PPC (Reinhard
+Max)</para></listitem>
+ <listitem><para>Nouvelle fonction <function>palloc0</function> pour allouer
+et effacer la mémoire (Bruce)</para></listitem>
+ <listitem><para>Correction du code de verrou pour le CPU s390x (64-bit)
+(Tom)</para></listitem>
+ <listitem><para>Autorise OpenBSD à utiliser les crédentiels ident locales
+(William Ahern)</para></listitem>
+ <listitem><para>Fait que les arbres de plans de requêtes sont en lecture
+seule pour l'exécuteur (Tom)</para></listitem>
+ <listitem><para>Ajout du script de démarrage pour Darwin (David
+Wheeler)</para></listitem>
+ <listitem><para>Permet à libpq de compiler avec le compilateur C++ de
+Borland (Lester Godwin, Karl Waclawek)</para></listitem>
+ <listitem><para>Utilisation de notre propre version de
+<function>getopt_long()</function> si nécessaire (Peter)</para></listitem>
+ <listitem><para>Convertion des scripts d'administration en C
+(Peter)</para></listitem>
+ <listitem><para>Bison >= 1.85 est maintenant requis pour construire la
+grammaire PostgreSQL, s'il s'agit d'une construction à partir du
+CVS</para></listitem>
+ <listitem><para>Assemblage de la documentation en un seul livre
+(Peter)</para></listitem>
+ <listitem><para>Ajout de fonctions compatibles Windows
+(Bruce)</para></listitem>
+ <listitem><para>Permet aux interfaces clients d'être compilées sous MinGW
+(Bruce)</para></listitem>
+ <listitem><para>Nouvelle fonction <function>ereport()</function> pour les
+rapports d'erreur (Tom)</para></listitem>
+ <listitem><para>Support du compilateur Intel sur Linux
+(Peter)</para></listitem>
+ <listitem><para>Amélioration des scripts de démarrage Linux (Slawomir
+Sudnik, Darko Prenosil)</para></listitem>
+ <listitem><para>Ajout du support pour AMD Opteron et Itanium (Jeffrey W.
+Baker, Bruce)</para></listitem>
+ <listitem>
+ <para>Suppression de l'option <option>--enable-recode</option> de
+<command>configure</command></para>
+ <para>
+ Ce n'était plus nécessaire maintenant que nous avons <command>CREATE
+CONVERSION</command>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>Génère une erreur de compilation si le code spinlock n'est pas trouvé
+(Bruce)</para>
+ <para>
+ Les plateformes sans code spinlock échoueront maintenant à la compilation
+plutôt que silencieusement lors de l'utilisation de sémaphores. Cet échec peut
+être désactivé avec une nouvelle option <command>configure</command>.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Modifications dans contrib</title>
+
+ <itemizedlist>
+ <listitem><para>Modification de la licence de dbmirror par celle de
+BSD</para></listitem>
+ <listitem><para>Amélioration de earthdistance (Bruno Wolff
+III)</para></listitem>
+ <listitem><para>Amélioration de la portabilité de pgcrypto (Marko
+Kreen)</para></listitem>
+ <listitem><para>Suppression du crash en xml (John Gray, Michael
+Richards)</para></listitem>
+ <listitem><para>Mise à jour d'oracle</para></listitem>
+ <listitem><para>Mise à jour de mysql</para></listitem>
+ <listitem><para>Mise à jour de cube (Bruno Wolff III)</para></listitem>
+ <listitem><para>Mise à jour d'earthdistance pour utiliser cube (Bruno Wolff
+III)</para></listitem>
+ <listitem><para>Mise à jour de btree_gist (Oleg)</para></listitem>
+ <listitem><para>Nouveau module de recherche en texte complet tsearch2 (Oleg,
+Teodor)</para></listitem>
+ <listitem><para>Ajout d'une fonction inter tableau basé sur le découpage
+dans tablefuncs (Joe)</para></listitem>
+ <listitem><para>Ajout d'une colonne serial pour trier les familles
+<function>connectby()</> dans tablefuncs (Nabil Sayegh,Joe)</para></listitem>
+ <listitem><para>Ajout des connexions nommées persistantes dans dblink
+(Shridhar Daithanka)</para></listitem>
+ <listitem><para>Le nouveau pg_autovacuum permet des
+<command>VACUUM</command> automatique (Matthew T. O'Connor)</para></listitem>
+ <listitem><para>Fait que pgbench honore les variables d'environnement
+<envar>PGHOST</>, <envar>PGPORT</>, <envar>PGUSER</> (Tatsuo)</para></listitem>
+ <listitem><para>Amélioration d'intarray (Teodor Sigaev)</para></listitem>
+ <listitem><para>Amélioration de pgstattuple (Rod)</para></listitem>
+ <listitem><para>Correction d'un bogue dans <function>metaphone()</function>
+(contrib fuzzystrmatch)</para></listitem>
+ <listitem><para>Amélioration d'adddepend (Rod)</para></listitem>
+ <listitem><para>Mise à jour de spi/timetravel (Böjthe
+Zoltán)</para></listitem>
+ <listitem><para>Correction de l'option <option>-s</> de dbase et
+amélioration de la gestion des non ASCII (Thomas Behr, Márcio
+Smiderle)</para></listitem>
+ <listitem><para>Suppression du module tableau car les fonctionnalités sont
+maintenant incluent par défaut (Joe)</para></listitem>
+ </itemizedlist>
+ </sect3>
+ </sect2>
+ </sect1>
Added: traduc/branches/bv747/manuel/release-old.sgml
===================================================================
--- traduc/branches/bv747/manuel/release-old.sgml (rev 0)
+++ traduc/branches/bv747/manuel/release-old.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -0,0 +1,7514 @@
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release-old.sgml,v 1.1.10.1 2009-05-02 20:18:21 tgl Exp $ -->
+<!-- See header comment in release.sgml about typical markup -->
+
+ <sect1 id="release-7-3-21">
+ <title>Version 7.3.21</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2008-01-07</simpara>
+ </note>
+
+ <para>
+ Cette version contient divers correctifs de la version 7.3.20,
+ et inclut des corrections pour des failles de sécurité importantes.
+ </para>
+
+ <para>
+ Ceci sera sûrement la dernière version <productname>PostgreSQL</productname>
+ dans la série 7.3.X. Les utilisateurs sont encouragés à mettre à jour bientôt.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.21</title>
+
+ <para>
+ Les utilisateurs des versions 7.3.X n'ont pas besoin d'effectuer d'une
+ étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour à partir
+ d'une version précédant la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Empêche les fonctions d'index de s'exécuter avec les droits de
+ l'utilisateur exécutant <command>VACUUM</command>,
+ <command>ANALYZE</command>, etc (Tom)
+ </para>
+
+ <para>
+ Les fonctions utilisées dans les expressions d'index et dans les index
+ partiels sont évaluées quand une nouvelle entrée est faite dans la table.
+ Depuis longtemps, ceci est un risque, un cheval de Troie pouvant être
+ exécuté si une personne modifie une table appartenant à un utilisateur
+ Ã qui on ne peut faire confiance (Notez ques les triggers, valeurs par
+ défaut, contraintes de vérification, etc posent le même type de risque.)
+ Mais les fonctions utilisées dans des index sont un danger supplémentaire
+ car ils seront exécutés par des opérations de maintenance périodiques
+ comme un <command>VACUUM FULL</command>, opérations généralement
+ exécutées par des super-utilisateurs. Donc, un utilisateur cherchant Ã
+ gagner accès au système peut exécuter du code avec des droits de
+ super-utilisateur en ajoutant une définition d'index avec un code de
+ cheval de Troie, puis attendre la prochaine exécution des opérations de
+ maintenance. La correction s'arrange pour que les opérations standards de
+ maintenance (ceci incluant <command>VACUUM</command>,
+ <command>ANALYZE</command>, <command>REINDEX</command> et
+ <command>CLUSTER</command>) s'exécutent en tant que propriétaire de la
+ table plutôt qu'en tant qu'appelent, en utilisant le même mécanisme de
+ bascule de droits utilisé dans les fonctions <literal>SECURITY
+ DEFINER</literal>. Pour empêcher un coutournement de cette mesure de
+ sécurité, l'exécution de <command>SET SESSION AUTHORIZATION</command>
+ et <command>SET ROLE</command> est maintenant interdit dans un contexte
+ <literal>SECURITY DEFINER</literal>. (CVE-2007-6600)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Oblige l'utilisation de l'authentification par mot de passe pour les
+ utilisateurs standards de <filename>/contrib/dblink</filename>, c'est
+ une mesure de sécurité (Joe)
+ </para>
+
+ <para>
+ La correction apparue dans 7.3.20 était incomplète, car il ne corrigeait
+ la faille que pour certaines fonctions <filename>dblink</filename>.
+ (CVE-2007-6601, CVE-2007-3278)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un arrêt brutal potentiel dans
+ <function>translate()</function> lors de l'utilisation d'un encodage
+ multi-octets de la base (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction pour que <function>crosstab()</function>, du module
+ <filename>contrib/tablefunc</filename>, gère les rowid NULL comme catégorie (Joe)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Nécessite l'utilisation d'une version spécifique
+ d'<productname>Autoconf</productname> lors de la re-génération du script
+ <command>configure</command> (Peter)
+ </para>
+
+ <para>
+ Ceci affecte seulement les développeurs et les créateurs de package.
+ La modification a pour but d'empêcher l'utilisation accidentelle de
+ combinaisons non testées des versions d'<productname>Autoconf</productname>
+ et de <productname>PostgreSQL</productname>. Vous pouvez supprimer la
+ vérification de la version si vous voulez vraiment utiliser une version
+ différente d'<productname>Autoconf</productname>, mais c'est de votre
+ responsabilité.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-20">
+ <title>Version 7.3.20</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-09-17</simpara>
+ </note>
+
+ <para>
+ Cette version contient divers correctifs de la version 7.3.19.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.20</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Empêche une corruption de l'index quand une transaction insère des lignes
+ puis annule tout juste avant la fin d'un <command>VACUUM</command> en
+ parallèle sur la même table (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+ correctement (Tom) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ le plantage lorsque la journalisation de
+ <varname>log_min_error_statement</varname> n'a plus de mémoire
+ disponible est corrigé (Tom) ;
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ les utilisateurs dépourvus de droit superutilisateur qui utilisent
+ <filename>/contrib/dblink</filename> ne peuvent utiliser que
+ l'authentification par mot de passe, pour des raisons de sécurité
+ (Joe).
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-19">
+ <title>Version 7.3.19</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-04-23</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.18, dont la
+ correction d'une faille de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.19</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Supporte le placement explicite du schéma des tables temporaires dans
+ <varname>search_path</>, et désactive sa recherche pour les fonctions
+ et opérateurs (Tom)
+ </para>
+ <para>
+ Ceci est nécessaire pour autoriser une fonction en mode security-definer
+ à configurer une valeur sécurisée de <varname>search_path</>. Sans cela,
+ un utilisateur SQL sans droit peut utiliser des objets temporaires pour
+ exécuter du code avec une fonction possédant les droits du créateur de
+ la fonction (CVE-2007-2138). Voir <command>CREATE FUNCTION</> pour plus
+ d'informations.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue pouvant corrompre des données dans la façon
+ dont <command>VACUUM FULL</> gère les chaînes <command>UPDATE</>
+ (Tom, Pavan Deolasee)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-18">
+ <title>Version 7.3.18</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.17, dont la
+ correction d'une faille de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.18</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Suppression d'une faille de sécurité qui permet à des utilisateurs
+ connectés de lire la mémoire du serveur (backend)
+ (Tom)
+ </para>
+ <para>
+ Cette vulnérabilité implique de modifier le type de données de la
+ colonne d'une table utilisée dans une fonction SQL (CVE-2007-0555).
+ Cette erreur peut être facilement exploitée pour causer un arrêt brutal
+ du serveur et pourrait être utilisée, en principe, pour lire un contenu
+ de la base, contenu que l'utilisateur ne devrait pas pouvoir accéder.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Correction d'un bogue rare où la séparation de page d'un index btree
+ pourrait échouer à cause du choix d'un point de séparation infaisable.
+ (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration de la sécurité du traitement de caractères multi-octets pour
+ les séquences UTF8 de plus de trois octets (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-17">
+ <title>Version 7.3.17</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2007-01-08</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.16.
+ </para>
+
+ <sect2>
+ <title>Migration to version 7.3.17</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ <function>to_number()</function> et <function>to_char(numeric)</function>
+ sont maintenant <literal>STABLE</literal>, et non plus
+ <literal>IMMUTABLE</literal>, pour les nouvelles installations
+ (<application>initdb</application> nécessaire) (Tom)
+ </para>
+
+ <para>
+ Ceci a été modifié car <literal>lc_numeric</literal> peut modifier la
+ sortie de ces fonctions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Amélioration de l'utilisation des expressions rationnelles qui utilisent
+ des parenthèses (Tom)
+ </para>
+
+ <para>
+ Ceci améliore aussi les performances de l'<literal>\d</literal> de
+ <application>psql</application>.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-16">
+ <title>Version 7.3.16</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-10-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.15.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.16</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modification</title>
+
+<itemizedlist>
+<listitem><para>Correction de quelques cas rares dans la correspondance de modèles
+ pour les commandes <literal>\d</literal> de <application>psql</application></para></listitem>
+<listitem><para>Correction de bogues corrompant les index dans /contrib/ltree
+ (Teodor)</para></listitem>
+<listitem><para>Correction provenant du code de spinlock, version 7.4, pour
+ améliorer les performances et le support des architectures 64 bits</para> </listitem>
+<listitem><para>Correction d'une fuite mémoire relative à SSL dans libpq</para> </listitem>
+<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
+<listitem><para>Adjustement des tests de regression suite aux modifications
+ récentes des lois de l'US DST</para> </listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-15">
+ <title>Version 7.3.15</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-05-23</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.14 incluant des
+ correctifs pour des problèmes de sécurité extrêmement sérieux.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.15</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+
+ <para>
+ Assurer une sécurité complète contre les attaques par injection SQL décrites
+ dans CVE-2006-2313 et CVE-2006-2314 peuvent demander des modifications dans
+ le code de l'application. Si vous avez des applications embarquant des
+ chaînes non sûres dans des commandes SQL, vous devriez les examiner aussi
+ rapidement que possible pour vous assurer qu'elles utilisent les techniques
+ d'échappement recommandées. Dans la plupart des cas, les applications
+ devraient utiliser des sous-routines fournies par des bibliothèques ou des
+ pilotes (comme <function>PQescapeStringConn()</> de <application>libpq</>)
+ pour réaliser l'échappement des chaînes plutôt que de se fier à un code
+ <foreignphrase>ad hoc</>.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Modification du serveur pour qu'il rejette les caractères
+multi-octets mal codés dans tous les cas (Tatsuo, Tom)</para>
+<para>Bien que <productname>PostgreSQL</> va dans cette direction depuis un
+certain temps, les vérifications sont maintenant appliquées uniformément Ã
+tous les codages et toutes les entrées de texte. Ce sont maintenant des
+erreurs, et non plus des messages d'avertissement. Ce changement sert à se
+défendre contre les attaques à base d'injection SQL du type décrit dans
+CVE-2006-2313.
+</para></listitem>
+
+<listitem><para>Rejette des utilisations non sûres de <literal>\'</> dans les
+chaînes</para>
+<para>En tant que défense côté serveur contre les attaques de type injection
+SQL décrit dans CVE-2006-2314, le serveur accepte maintenant seulement
+<literal>''</> et plus <literal>\'</> comme représentation d'un guillemet simple
+ASCII dans des chaînes SQL. Par défaut, <literal>\'</> est rejetté seulement
+quand <varname>client_encoding</> est configuré avec un codage client seul
+(SJIS, BIG5, GBK, GB18030 ou UHC), qui est le scénario dans lequel l'injection
+SQL est possible. Un nouveau paramètre de configuration
+<varname>backslash_quote</> est disponible pour ajuster ce comportement si
+nécessaire. Notez qu'une sécurité complète contre
+CVE-2006-2314 pourrait nécessiter des modifications du côté client ; le but
+de <varname>backslash_quote</> est en partie de rendre évident que les clients
+non sécurisés sont non sécurisés.
+</para></listitem>
+
+<listitem><para>Modification des routines d'échappement de texte de
+<application>libpq</> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</> pour les
+problèmes de sécurité décrits dans CVE-2006-2313 et CVE-2006-2314. Les
+applications qui utilisent les connections concurrentes multiples de
+<productname>PostgreSQL</> devraient migrer vers <function>PQescapeStringConn()</>
+et <function>PQescapeByteaConn()</> pour s'assurer que l'échappement est
+réalisé correctement pour les paramétrages utilisés dans chaque connexion de
+base de données. Les applications qui font des échappements de chaînes
+<quote>à la main</> devraient être modifiées pour se fier à aux routines de la
+bibliothèques à la place.
+</para></listitem>
+
+<listitem><para>Correction de quelques fonctions de conversion de codage</para>
+<para><function>win1251_to_iso</>, <function>alt_to_iso</>,
+<function>euc_tw_to_big5</>, <function>euc_tw_to_mic</>,
+<function>mic_to_euc_tw</> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de
+<literal>\'</> dans les chaînes (Bruce, Jan)</para></listitem>
+
+<listitem><para>Correction du serveur pour qu'il utilise les paramètres
+personnalisés DH SSL correctement (Michael Fuhr)</para></listitem>
+
+<listitem><para>Correction de quelques pertes mémoires mineures</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-14">
+ <title>Version 7.3.14</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-02-14</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la 7.3.13.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.14</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
+SESSION AUTHORIZATION</> (CVE-2006-0553)</para>
+<para>Un utilisateur non privilégié pourrait faire arrêter brutalement le
+processus serveur, résultant en un déni de service momentané pour les autres
+utilisateurs si le serveur a été compilé en activant les assertions (ce qui
+n'est pas la valeur par défaut).
+Merci à Akio Ishida pour nous avoir rapporté ce problème.
+</para></listitem>
+
+<listitem><para>Correction d'un bogue avec la logique de visibilité des
+lignes dans les lignes insérées soi-même (Tom)</para>
+<para>Dans des circonstances rares, une ligne insérée par la commande en cours
+pourrait déjà être vue comme valide alors qu'elle ne le devrait pas. Corrige
+un bogue ajoutée dans la version 7.3.11.
+</para></listitem>
+
+<listitem><para>Correction d'une condition qui pourrait amener une erreur de type
+<quote>le fichier existe déjà </> lors de la création d'un fichier pg_clog
+(Tom)</para></listitem>
+
+<listitem><para>Correction pour permettre la restauration de sauvegardes qui
+avaient des références croisées de schémas pour les opérateurs personnalisés
+(Tom)</para></listitem>
+
+<listitem><para>Correction de portabilité pour tester la présence de
+<function>finite</> et <function>isinf</> lors du configure (Tom)</para></listitem>
+
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-13">
+ <title>Version 7.3.13</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2006-01-09</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la version 7.3.12.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.13</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
+ De plus, vous aurez sûrement besoin de lancer la commande
+ <command>REINDEX</> sur les index des colonnes de type texte après la
+ mise à jour si vous êtes affectés par les problèmes de locale ou de
+ <application>plperl</> décrits ci-dessous.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction de la comparaison de chaînes de caractères pour les
+locales qui considèrent des combinaisons différentes de caractères comme égales,
+comme le hongrois (Tom)</para>
+<para>Ceci pourrait nécessiter l'exécution de la commande <command>REINDEX</>
+pour corriger les index existants sur des colonnes de type texte.</para></listitem>
+
+<listitem><para>Configuration des variables d'environnement de la locale lors
+du démarrage de postmaster pour s'assurer que <application>plperl</> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</>. Sous ces conditions, toute
+utilisation de <application>plperl</> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</> pour corriger des
+index existant sur des colonnes de type texte si cela vous arrivait.
+</para></listitem>
+
+<listitem><para>Correction d'un ancien bogue dans strpos() et dans le gestion
+des expressions rationnelles de certains ensembles de caractères asiatiques
+rarement utilisés (Tatsuo)
+</para></listitem>
+
+<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</>,
+qui l'empêchait d'utiliser l'espace disponible des grains de sel (salt) pour les
+algorithmes MD5 et XDES (Marko Kreen, Solar Designer)</para>
+<para>Les grains de sel ne sont pas affectés pour Blowfish et le DES
+standard.</para></listitem>
+
+<listitem><para>Correction de <filename>/contrib/dblink</> pour renvoyer une
+erreur plutôt que de s'arrêter brutalement quand le nombre de colonnes spécifié
+est différent de ce qui est réellement renvoyé par la requête (Joe)</para></listitem>
+
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-12">
+ <title>Version 7.3.12</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-12-12</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections sur la 7.3.11.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.12</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un cas extrême dans la gestion des traces des
+transactions</para>
+<para>Il existait une petite possibilité pour laquelle une opération
+d'entrée/sortie pouvait être initiée pour la mauvaise page, amenant à un
+échec Assert ou à une corruption de données.</para>
+</listitem>
+
+<listitem><para>Corrections sur <filename>/contrib/ltree</> (Teodor)</para></listitem>
+
+<listitem><para>Correction d'une vieille erreur sur les jointures externes</para>
+<para>Ce bogue a quelque fois causé une fausse erreur <quote>RIGHT JOIN is
+only supported with merge-joinable join conditions</>.</para></listitem>
+
+<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</>
+quand une table a été supprimée</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-11">
+ <title>Version 7.3.11</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-10-04</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques correctifs par rapport à la 7.3.10.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.11</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+ antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <itemizedlist>
+ <listitem><para>Correction d'une erreur qui permettait au <command>VACUUM</>
+ de supprimer les chaînes <literal>ctid</> trop tôt, et ajout de
+ vérification supplémentaire dans le code qui suit les liens
+ <literal>ctid</></para>
+ <para>Ceci corrige un vieux problème qui pourrait causer des arrêt
+ brutaux dans de rares circonstances.</para></listitem>
+ <listitem><para>Correction de <type>CHAR()</> pour ajouter le nom
+ d'espaces spécifié lors de l'utilisation d'un ensemble de caractères
+ multi-octets (Yoshiyuki Asaba)</para>
+ <para>Dans les versions précédentes, l'ajout pour <type>CHAR()</> était
+ incorrect car il ajoutait seulement le nombre d'octets spécifiés sans
+ prendre en considération la façon dont les caractères étaient stockés.
+ </para></listitem>
+ <listitem><para>Correction des lignes manquantes dans les requêtes
+ du type <literal>UPDATE a=... WHERE a...</> avec un index GiST sur la
+ colonne <literal>a</></para></listitem>
+ <listitem><para>Amélioration de la vérification pour les pages WAL
+ partiellement écrites</para></listitem>
+ <listitem><para>Amélioration de la solidité de la gestion des signaux
+ lorsque SSL est activé</para></listitem>
+ <listitem><para>Plusieurs corrections de perte mémoire</para></listitem>
+ <listitem><para>Quelques améliorations sur la portabilité</para></listitem>
+ <listitem><para>Correction de PL/PgSQL pour gérer correctement
+ <literal>var := var</> quand la variable est passée par
+ référence</para></listitem>
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-10">
+ <title>Version 7.3.10</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-05-09</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections sur la 7.3.9, dont des
+ correctifs sur des trous de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.10</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ version 7.3.X. Néanmoins, c'est une façon possible de gérer un problème
+ de sécurité significatif, qui a été trouvé dans le contenu initial des
+ catalogues systèmes des versions 7.3.X. Une séquence
+ sauvegarde/initdb/restauration utilisant le initdb de la 7.3.10 corrigera
+ automatiquement ces problèmes.
+ </para>
+
+ <para>
+ Le problème de sécurité le plus important est que les fonctions de conversion
+ du codage des ensembles de caractères peuvent être appelées à partir de
+ commandes SQL par des utilisateurs non pribilégiés alors que les fonctions
+ n'ont pas été conçues pour un tel usage et ne sont pas sécurisées contre
+ des choix rusés des arguments. Le correctif implique de modifier la liste
+ déclarée des arguments de ces fonctions pour qu'elles ne soient plus
+ appelées à partir des commandes SQL. (Ceci n'affecte pas leur utilisation
+ normale par la machinerie de conversion du codage.)
+ Il est fortement recommandé que toutes les installations corrigent ces
+ erreurs, soit par un initdb soit en suivant les procédures de réparation
+ données ci-dessous. Les erreurs permettent au moins à des utilisateurs
+ non privilégiés de la base de données d'arrêter brutalement leur
+ processus serveur et pourraient permettre à des utilisateurs non privilégiés
+ de gagner les privilèges d'un superutilisateur.
+ </para>
+
+
+ <para>
+ Si vous souhaitez ne pas lancer d'initdb, exécutez la procédure suivante Ã
+ la place en tant que superutilisateur de la base de données :
+
+<programlisting>
+BEGIN;
+UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
+WHERE pronamespace = 11 AND pronargs = 5
+ AND proargtypes[2] = 'cstring'::regtype;
+-- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
+-- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
+COMMIT;
+</programlisting>
+ </para>
+
+ <para>
+ Les procédures ci-dessus doivent être exécutées pour <emphasis>chaque</>
+ base de données d'une installation, ceci incluant <literal>template1</>
+ et devant idéalement inclure aussi <literal>template0</>. Si vous ne
+ corrigez pas les bases de données modèles, alors toute base de données
+ créée par la suite contiendra les mêmes erreurs. <literal>template1</> peut
+ être corrigé de la même façon que les autres bases de données alors que
+ <literal>template0</> requiert des étapes supplémentaires. Tout d'abord,
+ à partir de n'importe quel base de données
+<programlisting>
+UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
+</programlisting>
+ Ensuite, connectez-vous à <literal>template0</> et effectuez les opérations
+ de réparation. Faites
+<programlisting>
+-- gelez de nouveau template0 :
+VACUUM FREEZE;
+-- et protégez-contre toute nouvelle modification :
+UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
+</programlisting>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Modification de la signature de la fonction de codage pour
+empêcher toute mauvaise utilisation</para></listitem>
+<listitem><para>Réparation d'une ancienne condition qui permettait à une
+transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
+UPDATE) légèrement plus tôt que dans les autres buts</para>
+<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
+incohérences apparents des données et visibles brièvement par les applications.
+</para></listitem>
+<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
+</para>
+<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
+tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
+faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
+d'Assert.
+</para></listitem>
+<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
+ZONE</></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
+sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise Ã
+jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
+</para></listitem>
+<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
+type <type>TIME WITH TIME ZONE</></para></listitem>
+<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
+négatives dans les valeurs <type>INTERVAL</></para>
+<para>Cette erreur est seulement survenue quand l'option de configuration
+<literal>--enable-integer-datetimes</> avait été utilisée.
+</para></listitem>
+<listitem><para>Vérification supplémentaires de dépassement de tampon dans
+plpgsql (Neil)</para></listitem>
+<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
+noms des déclencheurs contenant <literal>%</> (Neil)</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
+constructions d'OpenSSL (Marko Kreen)</para></listitem>
+<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</>
+</para></listitem>
+<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
+<type>RECORD</></para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-9">
+ <title>Sortie 7.3.9</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-01-31</simpara>
+ </note>
+
+ <para>
+ Cette version contient une grande variété de correctifs pour la 7.3.8,
+ incluant certains spécifiques à des questions de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.9</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
+ version 7.3.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Interdit l'utilisation de <command>LOAD</> aux utilisateurs
+standards</para>
+<para>
+Sur les plateformes qui exécuteront automatiquement les fonctions
+d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
+les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
+un code arbitraire par le serveur. Merci à NGS Software pour cette
+information.</para></listitem>
+<listitem><para>Vérifie que le créateur d'une fonction d'agrégat a le droit
+d'exécuter les fonctions de transition spécifiées</para>
+<para>
+Ce problème rendait possible le contournement de l'interdiction du droit
+EXECUTE sur une fonction.</para></listitem>
+<listitem><para>Correction de problèmes de sécurité et de problèmes sur
+les 64 bits dans contrib/intagg</para></listitem>
+<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
+dans contrib (Kris Jurka)</para></listitem>
+<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
+plpgsql dispose trop de paramètres (Neil)</para></listitem>
+<listitem><para>Correction d'erreurs de plannification pour les jointures
+complètes et externes à droite</para>
+<para>
+Le résultat de la jointure était faussement supposé trié de la même façon que
+l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
+mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
+mauvaises réponses.
+</para></listitem>
+<listitem><para>Correction de plperl pour les guillemets dans les
+champs</para></listitem>
+<listitem><para>Correction de l'affichage des intervalles négatifs pour les
+styles de date SQL et GERMAN</para></listitem>
+<listitem><para>Fait que age(timestamptz) calcule à partir du fuseau horaire
+et non pas de GMT</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-8">
+ <title>Sortie 7.3.8</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-10-22</simpara>
+ </note>
+
+ <para>
+ Cette version contient plusieurs corrections pour la version 7.3.7.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.8</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
+ version 7.3.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
+d'astuce sur disque</para>
+<para>
+Sous quelques rares circonstances, ceci pourrait mener à des échecs
+<quote>could not access transaction status</>, qui se qualifient comme bogue
+pouvant entraîner des pertes de données.
+</para></listitem>
+<listitem><para>Assurance que la jointure externe hachée ne manque pas de
+lignes</para>
+<para>
+Les jointures gauches très importantes pourraient échouer à afficher les lignes
+du côté gauche sans correspondance en donnant seulement la distribution droite
+des données.
+</para></listitem>
+<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
+root</para>
+<para>
+Ceci est fait pour évacuer tout risque de problèmes de sécurité.
+</para></listitem>
+<listitem><para>Évite l'utilisation de fichiers temporaires dans
+<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
+<para>
+Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
+d'importance car il n'y a aucune raison pour que les utilisateurs autres que
+les développeurs utilisent ce script de toute façon.
+</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-7">
+ <title>Sortie 7.3.7</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-08-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient une correction critique de la version 7.3.6 et
+ quelques éléments mineurs.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.7</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
+ version 7.3.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Empêche une perte possible de transactions validées lors d'un
+arrêt brutal</para>
+<para>
+À cause d'un verrouillage insuffisant entre la validation des transactions et
+des points de vérification, il était possible pour les transactions validées
+juste avant le point de vérification perdu, complètement ou partiellement, le
+plus récent après un arrêt brutal de la base de données et un redémarrage. Ceci
+est un bogue sérieux qui existait depuis <productname>PostgreSQL</productname>
+7.1.</para></listitem>
+<listitem><para>Suppression du traitement de mots asymétriques dans tsearch
+(Teodor)</para></listitem>
+<listitem><para>Qualifie les noms de fonction proprement avec le schéma lors de
+la sauvegarde d'un CAST</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-6">
+ <title>Sortie 7.3.6</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-03-02</simpara>
+ </note>
+
+ <para>
+ Cette version contient plusieurs correction de la version 7.3.5.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.6</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
+ ceux qui utilisent une version 7.3.X.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Revert erroneous changes in rule permissions checking</para>
+<para>A patch applied in 7.3.3 to fix a corner case in rule permissions checks
+turns out to have disabled rule-related permissions checks in many
+not-so-corner cases. This would for example allow users to insert into views
+they weren't supposed to have permission to insert into. We have therefore
+reverted the 7.3.3 patch. The original bug will be fixed in 8.0.
+</para></listitem>
+<listitem><para>Repair incorrect order of operations in
+GetNewTransactionId()</para>
+<para>
+This bug could result in failure under out-of-disk-space conditions, including
+inability to restart even after disk space is freed.
+</para></listitem>
+<listitem><para>Ensure configure selects -fno-strict-aliasing even when
+an external value for CFLAGS is supplied</para>
+<para>
+On some platforms, building with -fstrict-aliasing causes bugs.
+</para></listitem>
+<listitem><para>Make pg_restore handle 64-bit off_t correctly</para>
+<para>
+This bug prevented proper restoration from archive files exceeding 4Gb.
+</para></listitem>
+<listitem><para>Make contrib/dblink not assume that local and remote type OIDs
+match (Joe)</para></listitem>
+<listitem><para>Quote connectby()'s start_with argument properly
+(Joe)</para></listitem>
+<listitem><para>Don't crash when a rowtype argument to a plpgsql function is
+NULL</para></listitem>
+<listitem><para>Avoid generating invalid character encoding sequences in
+corner cases when planning LIKE operations</para></listitem>
+<listitem><para>Ensure text_position() cannot scan past end of source string
+in multibyte cases (Korea PostgreSQL Users' Group)</para></listitem>
+<listitem><para>Fix index optimization and selectivity estimates for LIKE
+operations on bytea columns (Joe)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-5">
+ <title>Sortie 7.3.5</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-12-03</simpara>
+ </note>
+
+ <para>
+ Cette version dispose de quelques corrections de la version 7.3.4.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.5</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
+ ceux qui utilisent une version 7.3.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Force zero_damaged_pages to be on during recovery from
+WAL</para></listitem>
+<listitem><para>Prevent some obscure cases of <quote>variable not in subplan
+target lists</quote></para></listitem>
+<listitem><para>Force stats processes to detach from shared memory, ensuring
+cleaner shutdown</para></listitem>
+<listitem><para>Make PQescapeBytea and byteaout consistent with each other
+(Joe)</para></listitem>
+<listitem><para>Added missing SPI_finish() calls to dblink's
+get_tuple_of_interest() (Joe)</para></listitem>
+<listitem><para>Fix for possible foreign key violation when rule rewrites INSERT
+(Jan)</para></listitem>
+<listitem><para>Support qualified type names in PL/Tcl's spi_prepare command
+(Jan)</para></listitem>
+<listitem><para>Make pg_dump handle a procedural language handler located in
+pg_catalog</para></listitem>
+<listitem><para>Make pg_dump handle cases where a custom opclass is in another
+schema</para></listitem>
+<listitem><para>Make pg_dump dump binary-compatible casts correctly
+(Jan)</para></listitem>
+<listitem><para>Fix insertion of expressions containing subqueries into rule
+bodies</para></listitem>
+<listitem><para>Fix incorrect argument processing in clusterdb script (Anand
+Ranganathan)</para></listitem>
+<listitem><para>Fix problems with dropped columns in plpython
+triggers</para></listitem>
+<listitem><para>Repair problems with to_char() reading past end of its input
+string (Karel)</para></listitem>
+<listitem><para>Fix GB18030 mapping errors (Tatsuo)</para></listitem>
+<listitem><para>Fix several problems with SSL error handling and asynchronous
+SSL I/O</para></listitem>
+<listitem><para>Remove ability to bind a list of values to a single parameter in
+JDBC
+(prevents possible SQL-injection attacks)</para></listitem>
+<listitem><para>Fix some errors in HAVE_INT64_TIMESTAMP code
+paths</para></listitem>
+<listitem><para>Fix corner case for btree search in parallel with first root
+page split</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-3-4">
+ <title>Sortie 7.3.4</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-07-24</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.3.3.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.4</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux disposant d'une 7.3.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation des problèmes de conversion timestamp vers date avant
+2000</para></listitem>
+<listitem><para>Empêche la rare probabilité d'un échec de lancement du serveur
+(Tom)</para></listitem>
+<listitem><para>Correction de bogues dans la conversion interval vers time
+(Tom)</para></listitem>
+<listitem><para>Ajout des noms de contraintes dans quelques endroits de pg_dump
+(Rod)</para></listitem>
+<listitem><para>Amélioration des performances de fonctions avec beaucoup de
+paramètres (Tom)</para></listitem>
+<listitem><para>Correction du dépassement de tampon de to_ascii()
+(Tom)</para></listitem>
+<listitem><para>Empêche que la restauration des commentaires de la base de
+données envoie une erreur (Tom)</para></listitem>
+<listitem><para>Coutournement du strxfrm() bogué présent dans quelques
+versions de Solaris (Tom)</para></listitem>
+<listitem><para>Réalise un échappement propre des chaînes setObject() de
+jdbc pour améliorer la sécurité (Barry)</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-3-3">
+ <title>Sortie 7.3.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-05-22</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.3.2.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.3.3</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.3.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation de calculs quelque fois incorrect de StartUpID après
+un crash</para></listitem>
+<listitem><para>Évite des lenteurs avec un grand nombre de déclencheurs
+déferrés dans une transaction (Stephan)</para></listitem>
+<listitem><para>Ne verrouille pas la ligne référencée quand
+<command>UPDATE</command> ne modifie pas la valeur de la clé étrangère
+(Jan)</para></listitem>
+<listitem><para>Utilisation de <command>-fPIC</command>, et non pas
+<command>-fpic</command>, sur Sparc (Tom Callaway)</para></listitem>
+<listitem><para>Réparation du manque de connaissance des schémas dans
+contrib/reindexdb</para></listitem>
+<listitem><para>Correction d'une erreur dans contrib/intarray pour le tableau
+résultat à zéro élément (Teodor)</para></listitem>
+<listitem><para>S'assure que le script createuser quitte avec control-C
+(Oliver)</para></listitem>
+<listitem><para>Correction d'erreurs quand le type d'une colonne supprimée a
+lui-même été supprimé</para></listitem>
+<listitem><para><command>CHECKPOINT</command> ne cause pas de panique sur la
+base de données sur à un échec sur des étapes non critiques</para></listitem>
+<listitem><para>Accepte 60 dans les champs secondes des valeurs de type
+timestamp, time, interval</para></listitem>
+<listitem><para>Lancement d'une note, pas d'une erreur, si la précision de
+<type>TIMESTAMP</type>, <type> TIME</type> ou <type>INTERVAL</type> est trop
+large</para></listitem>
+<listitem><para>Correction de la fonction de convertion
+<function>abstime-to-time</function> (la correction n'est pas appliquée sauf si
+vous lancez <application>initdb</application>)</para></listitem>
+<listitem><para>Correction de l'entrée <application>pg_proc</application> pour
+<type>timestampt_izone</type> (le correctif n'est pas appliqué sauf si vous
+lancez <application>initdb</application>)</para></listitem>
+<listitem><para>Fait que <function>EXTRACT(EPOCH FROM timestamp without time
+zone)</function> traite l'entrée comme une heure locale</para></listitem>
+<listitem><para><command>'now'::timestamptz</command> donne la mauvaise
+réponse si le fuseau horaire a changé précédemment lors de la
+transaction</para></listitem>
+<listitem><para>Le <envar>HAVE_INT64_TIMESTAMP</envar> pour time with
+timezone surcharge son entrée</para></listitem>
+<listitem><para>Accepte <command>GLOBAL TEMP/TEMPORARY</command> comme synonyme
+de <command>TEMPORARY</command></para></listitem>
+<listitem><para>Évite un mauvais de la vérification des droits du schéma
+dans les déclencheurs de clés étrangères</para></listitem>
+<listitem><para>Correction de bogues dans les déclencheurs de clés étrangères
+pour l'action <command>SET DEFAULT</command></para></listitem>
+<listitem><para>Correction d'une mauvaise vérification de
+<quote>time-qual</quote> dans la récupération des lignes pour
+<command>UPDATE</command> et <command>DELETE</command>
+triggers</para></listitem>
+<listitem><para>Les clauses de clés étrangères étaient analysées mais
+ignorées dans <command>ALTER TABLE ADD COLUMN</command></para></listitem>
+<listitem><para>Correction du problème du script createlang dans les cas où la
+fonction de gestion existe déjà </para></listitem>
+<listitem><para>Correction du mauvais comportement pour les tables sans colonne
+dans <application>pg_dump</application>, COPY, ANALYZE, ainsi qu'Ã d'autres
+emplacements</para></listitem>
+<listitem><para>Correction du mauvais comportement dans
+<function>func_error()</function> sur les noms de types contenant
+'%'</para></listitem>
+<listitem><para>Correction du mauvais comportement de
+<function>replace()</function> sur les chaînes contenant '%'</para></listitem>
+<listitem><para>Échec lorsque des expressions rationnelles
+contiennent certains caractères multi-octets</para></listitem>
+<listitem><para>Tient bien compte des <command>NULL</command> dans plus de cas
+pour les estimations de taille de jointures</para></listitem>
+<listitem><para>Évite un conflit avec la définition du système de la fonction
+ou macro <function>isblank()</function></para></listitem>
+<listitem><para>Correction de l'échec pour la convertion de valeurs de type
+point en EUC_TW (Tatsuo)</para></listitem>
+<listitem><para>Correction d'une récupération d'une erreur à partir des appels
+<function>SSL_read</function>/<function>SSL_write</function></para></listitem>
+<listitem><para>Don't do early constant-folding of type coercion
+expressions</para></listitem>
+<listitem><para>Valide les champs des en-têtes de page immédiatement après
+les avoir lu dans chaque page</para></listitem>
+<listitem><para>Réparation d'une mauvaise vérification pour les variables non
+groupées dans des jointures non nommées</para></listitem>
+<listitem><para>Correction d'un dépassement de tampon dans
+<function>to_ascii</function> (Guido Notari)</para></listitem>
+<listitem><para>Corrections de contrib/ltree (Teodor)</para></listitem>
+<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>) dans la
+détections de verrous bloqués sur les machines où char est non
+signé</para></listitem>
+<listitem><para>Évite de se trouver sans tampons dans des parcours d'index
+multiples (bogue introduit dans la 7.3)</para></listitem>
+<listitem><para>Correction des fonctions d'estimation de la sélectivité du
+planficateur pour gérer correctement les domaines</para></listitem>
+<listitem><para>Corrige le bogue d'allocation mémoire de
+<application>dbmirror</application> (Steven Singer)</para></listitem>
+<listitem><para>Empêche les boucles infinies dans
+<function>ln(numeric)</function> Ã cause d'une erreur
+d'arrondi</para></listitem>
+<listitem><para><command>GROUP BY</command> en plein confusion s'il y a
+plusieurs éléments GROUP BY identiques</para></listitem>
+<listitem><para>Correction d'un mauvais plan lorsque des
+<command>UPDATE</command>/<command>DELETE</command> héritées référencent une
+autre table héritée</para></listitem>
+<listitem><para>Empêche le groupement sur des index incomplets (partiel ou
+stockant uniquement les non NULL)</para></listitem>
+<listitem><para>Demande d'arrêt du service au bon moment s'il arrive au
+moment du lancement</para></listitem>
+<listitem><para>Correction des liens gauches dans les index temporaires
+(pourrait faire oublier des entrées à des parcours inverses)</para></listitem>
+<listitem><para>Correction d'une gestion incorrecte du paramétrage
+client_encoding dans postgresql.conf (Tatsuo)</para></listitem>
+<listitem><para>Correction d'un échec pour répondre à <command>pg_ctl stop -m
+fast</command> une fois que Async_NotifyHandler est lancé</para></listitem>
+<listitem><para>Correction de SPI dans les cas où la règle contient plusieurs
+instructions du même type</para></listitem>
+<listitem><para>Correction d'un problème avec la vérification pour un mauvais
+type de droit d'accès dans la requête de la règle</para></listitem>
+<listitem><para>Correction d'un problème avec <command>EXCEPT</command> dans
+<command>CREATE RULE</command></para></listitem>
+<listitem><para>Empêche des problèmes lors de la suppression de tables
+temporaires avec les colonnes de type serial</para></listitem>
+<listitem><para>Correction de l'échec replace_vars_with_subplan_refs dans les
+vues complexes</para></listitem>
+<listitem><para>Correction de la lenteur des expressions rationnelles dans
+les codes à un seul octet (Tatsuo)</para></listitem>
+<listitem><para>Permet la qualification de noms de type dans <command>CREATE
+CAST</command> et <command> DROP CAST</command></para></listitem>
+<listitem><para>Accepte <function>SETOF type[]</function>, qui avait
+été écrit auparavant <function>SETOF _type</function></para></listitem>
+<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>)
+<application>pg_dump</application> dans certains cas pour les langages de
+procédures</para></listitem>
+<listitem><para>Force le style de date ISO dans la sortie
+<application>pg_dump</application> pour des raisons de portabilité
+(Oliver)</para></listitem>
+<listitem><para><application>pg_dump</application> échouait lors de la
+gestion d'une erreur renvoyée par <function>lo_read</function> (Oleg
+Drokin)</para></listitem>
+<listitem><para><application>pg_dumpall</application> échouait avec les
+groupes sans membres (Nick Eskelinen)</para></listitem>
+<listitem><para><application>pg_dumpall</application> échouait lors de la
+reconnaissance de l'option</para></listitem>
+<listitem><para>pg_restore échouait lors de la restauration des blobs si -X
+disable-triggers est spécifié</para></listitem>
+<listitem><para>Réparation de la perte mémoire entre fonctions dans
+plpgsql</para></listitem>
+<listitem><para>La commande <command>elog</command> de pltcl s'arrêtait
+brutalement si des mauvais paramètres étaient soumis (Ian
+Harding)</para></listitem>
+<listitem><para>plpython utilisait de mauvaises valeurs
+de <envar>atttypmod</envar> (Brad McLean)</para></listitem>
+<listitem><para>Correction d'une mauvaise mise entre guillemets des valeurs
+booléennes dans l'interface Python (D'Arcy)</para></listitem>
+<listitem><para>Ajout de la méthode <function>addDataType()</function> pour
+l'interface PGConnection de JDBC</para></listitem>
+<listitem><para>Correction de nombreux problèmes avec les ensembles de
+résultats en lecture/écriture pour JDBC (Shawn Green)</para></listitem>
+<listitem><para>Correction de nombreux problèmes avec DatabaseMetaData pour JDBC
+(Kris Jurka, Peter Royal)</para></listitem>
+<listitem><para>Correction d'un problème avec l'analyse des ACL de table dans
+JDBC</para></listitem>
+<listitem><para>Meilleur message d'erreur pour les problèmes de
+conversions des ensembles de caractères dans JDBC</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-3-2">
+ <title>Sortie 7.3.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-02-04</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.3.1.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.2</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.3.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Restauration de la création de la colonne OID dans CREATE
+TABLE AS / SELECT INTO</para></listitem>
+<listitem><para>Correction de l'arrêt brutal <application>pg_dump</> lors de la
+sauvegarde des vues possédant des commentaires</para></listitem>
+<listitem><para>Sauvegarde proprement les contraintes DEFERRABLE/INITIALLY
+DEFERRED</para></listitem>
+<listitem><para>Correction d'UPDATE lors la numérotation des colonnes de
+tables enfants diffère de celle du parent</para></listitem>
+<listitem><para>Augmentation de la valeur par défaut de
+max_fsm_relations</para></listitem>
+<listitem><para>Correction d'un problème lors de la récupération en sens inverse
+ddans un curseur pour une requête à une seule ligne</para></listitem>
+<listitem><para>Fait que la récupération (<quote>fetch</quote>) inverse
+fonctionne correctement avec le curseur sur une requête SELECT
+DISTINCT</para></listitem>
+<listitem><para>Correction des problèmes lors du chargement de fichiers
+<application>pg_dump</> contenant une utilisation de
+contrib/lo</para></listitem>
+<listitem><para>Correction d'un problème avec les noms utilisateurs entièrement
+en chiffres</para></listitem>
+<listitem><para>Correction d'une probable perte de mémoire et d'un arrêt brutal
+lors de la déconnexion de libpgtcl</para></listitem>
+<listitem><para>Fait que la commande spi_execute de plpython gère correctement
+les NULL (Andrew Bosma)</para></listitem>
+<listitem><para>Ajuste une erreur plpython rapportant que ses tests de
+régression ont encore réussi</para></listitem>
+<listitem><para>Fonctionne avec bison 1.875</para></listitem>
+<listitem><para>Bonne gestion des noms comprenant des majuscule et des minus
+cules dans %type de plpgsql (Neil)</para></listitem>
+<listitem><para>Corrige un arrêt brutal (<quote>core dump</quote>) dans pltcl
+lors de l'exécution d'une requête réécrite par une règle</para></listitem>
+<listitem><para>Réparation des dépassements d'indices de tableau (suivant le
+rapport de Yichen Xie)</para></listitem>
+<listitem><para>Réduction de MAX_TIME_PRECISION, passant de 13 à 10 dans le cas
+des nombres à virgule flottante</para></listitem>
+<listitem><para>Gère correctement la casse des noms de variables suivant la
+configuration de la base de données et de l'utilisateur</para></listitem>
+<listitem><para>Correction de l'arrêt brutal (<quote>coredump</quote>) dans
+RETURN NEXT de plpgsql lorsqu'un SELECT into record ne renvoie aucune
+ligne</para></listitem>
+<listitem><para>Correction d'une utilisation obsolète de pg_type.typprtlen dans
+l'interface client python</para></listitem>
+<listitem><para>Bonne gestions des secondes à fraction dans le type timestamp
+du pilote JDBC</para></listitem>
+<listitem><para>Amélioration des performances de getImportedKeys() dans
+JDBC</para></listitem>
+<listitem><para>Fait que les liens symboliques de la bibliothèque
+partagée fonctionnent en standard dans HPUX (Giles)</para></listitem>
+<listitem><para>Réparation d'un comportement d'arrondi inconsistent pour
+timestamp, time, interval</para></listitem>
+<listitem><para>Correction sur la négotiation SSL (Nathan
+Mueller)</para></listitem>
+<listitem><para>Fait que la fonctionnalité ~/.pgpass de libpq fonctionne
+lors de la connexion avec PQconnectDB</para></listitem>
+<listitem><para>Mise à jour de my2pg, ora2pg</para></listitem>
+<listitem><para>Mise à jour de traduction</para></listitem>
+<listitem><para>Ajout de conversions entre les types lo et oid dans
+contrib/lo</para></listitem>
+<listitem><para>Le code fastpath vérifie maintenant les droits d'appels de
+fonctions</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-3-1">
+ <title>Sortie 7.3.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-12-18</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.3.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.3.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.3. Néanmoins, il devrait être noté que la
+ principale bibliothèque d'interface de
+<productname>PostgreSQL</productname>,
+ libpq, a un nouveau numéro majeur de version pour cette sortie, ce qui
+ pourrait nécessiter la recompilation de code client dans certains cas.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>) de
+COPY TO lorsque le codage client/serveur ne correspond pas
+(Tom)</para></listitem>
+<listitem><para>Autorise <application>pg_dump</> Ã fonctionner avec les serveurs
+pré-7.2 (Philip)</para></listitem>
+<listitem><para>Corrections de contrib/adddepend (Tom)</para></listitem>
+<listitem><para>Correction d'un problème avec la suppression de paramétrages par
+utilisateur ou par base de données (Tom)</para></listitem>
+<listitem><para>Correction de contrib/vacuumlo (Tom)</para></listitem>
+<listitem><para>Autorise le cryptage 'password' même lorsque pg_shadow contient
+des mots de passe MD5 (Bruce)</para></listitem>
+<listitem><para>Correction de contrib/dbmirror (Steven Singer)</para></listitem>
+<listitem><para>Corrections sur l'optimiseur (Tom)</para></listitem>
+<listitem><para>Corrections de contrib/tsearch (Teodor Sigaev,
+Magnus)</para></listitem>
+<listitem><para>Permet aux noms de locale d'être saisis avec des majuscules et
+minuscules mélangées (Nicolai Tufar)</para></listitem>
+<listitem><para>Incrémente le numéro de version majeure de la bibliothèque libpq
+(Bruce)</para></listitem>
+<listitem><para>Corrections des rapports d'erreur de pg_hba.conf (Bruce,
+Neil)</para></listitem>
+<listitem><para>Ajout de SCO Openserver 5.0.4 comme plateforme supporté
+(Bruce)</para></listitem>
+<listitem><para>Empêche EXPLAIN d'arrêter brutalement le serveur
+(Tom)</para></listitem>
+<listitem><para>Corrections sur SSL (Nathan Mueller)</para></listitem>
+<listitem><para>Empêche la création de colonnes composites via ALTER TABLE
+(Tom)</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-3">
+ <title>Sortie 7.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-11-27</simpara>
+ </note>
+
+ <sect2>
+ <title>Aperçu</title>
+
+ <para>
+ Modifications majeures dans cette version :
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>Schémas</term>
+ <listitem>
+ <para>
+ Les schémas permettent aux utilisateurs de créer des objets dans des
+ espaces de noms séparés, donc deux personnes ou applications peuvent
+ avoir des tables de même nom. Il existe aussi un schéma public pour les
+ tables partagées. La création de table/index peut être restreinte en
+ supprimant les droits du le schéma public.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Suppression de colonne</term>
+ <listitem>
+ <para>
+ <productname>PostgreSQL</productname> supporte maintenant la
+ fonctionnalité <literal>ALTER TABLE
+ ... DROP COLUMN</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Fonctions de tables</term>
+ <listitem>
+ <para>
+ Les fonctions renvoyant plusieurs lignes et/ou plusieurs colonnes sont
+ maintenant plus facile à utiliser qu'auparavant. Vous pouvez appeler
+ une <quote>fonction de table</quote> dans la clause
+ <literal>FROM</literal> d'un <literal>SELECT</literal>, traitant sa
+ sortie comme une table. De plus, les fonctions
+ <application>PL/pgSQL</application> peuvent maintenant renvoyer des
+ ensembles.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Requêtes préparées</term>
+ <listitem>
+ <para>
+ <productname>PostgreSQL</productname> supporte maintenant les requêtes
+ préparées pour des performances améliorées.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Récupération des dépendances</term>
+ <listitem>
+ <para>
+ <productname>PostgreSQL</productname> enregistre maintenant les
+ dépendances de objets, ce qui
+ permet des améliorations dans de nombreux domaines. Les instructions
+ <command>DROP</command> prennent maintenant soit <literal>CASCADE</>
+ soit <literal>RESTRICT</> pour contrôler si les objets dépendant sont
+ aussi supprimés.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Droits</term>
+ <listitem>
+ <para>
+ Les fonctions et langages de procédures disposent maintenant de droits
+ et les fonctions peuvent être définies pour être exécutées suivant les
+ droits de leur créateur.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Internationalisation</term>
+ <listitem>
+ <para>
+ Le support du multioctet et des locales est maintenant activé en
+ permanence.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Traces</term>
+ <listitem>
+ <para>
+ Une variété d'options de traces a été améliorée.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Interfaces</term>
+ <listitem>
+ <para>
+ Un grand nombre d'interfaces a été déplacé dans <ulink
+ url="http://gborg.postgresql.org">http://gborg.postgresql.org</> où ils
+ peuvent être développés et mis à disposition indépendamment.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Fonctions/Identifieurs</term>
+ <listitem>
+ <para>
+ Par défaut, les fonctions prennent maintenant jusqu'à 32 paramètres et
+ les identifiants peuvent être d'une taille maximum de 63 octets. De
+ plus, <literal>OPAQUE</> est maintenant obsolète : il existe des
+ <quote>pseudo-types de données</> pour représenter chacune des
+ significations précédentes de <literal>OPAQUE</> dans l'argument et les
+ types de résultat de la fonction.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </sect2>
+
+ <sect2>
+ <title>Migration vers la version 7.3</title>
+
+ <para>
+ Une sauvegarde/restauration utilisant <application>pg_dump</> est requise
+ pour ceux souhaitant migrer leur données à partir d'une version
+ précédente. S i votre application examine les catalogues systèmes, des
+ modifications supplémentaires seront requises à cause de l'introduction des
+ schémas dans la version 7.3 ; pour plus d'informations, voir :
+ <ulink url="http://developer.postgresql.org/~momjian/upgrade_tips_7.3"></>.
+ </para>
+
+ <para>
+ Observez les incompatibilités suivantes :
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Les clients avant la 6.3 ne sont plus supportés.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <filename>pg_hba.conf</filename> a maintenant une colonne pour le nom
+ de l'utilisateur et pour des fonctionnalités supplémentaires. Les
+ fichiers existants doivent être ajustés.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Quelques paramètres de trace de <filename>postgresql.conf</filename> ont
+ été renommés.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <literal>LIMIT #,#</literal> a été désactivé ; utilisez
+ <literal>LIMIT # OFFSET #</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les instructions <command>INSERT</command> avec des listes de colonnes
+ doivent spécifier une valeur pour chaque colonne spécifiée. Par exemple,
+ <literal>INSERT INTO tab (col1, col2) VALUES ('val1')</literal> est
+ maintenant non valide. Il est toujours permis de fournir moins de
+ colonnes qu'attendu si l'<command>INSERT</command> n'a pas de liste de
+ colonnes.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les colonnes de type <type>serial</type> ne sont plus automatiquement
+ <literal>UNIQUE</> ; du coup, un index ne sera pas automatiquement
+ créé.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Une commande <command>SET</command> à l'intérieur d'une transaction est
+ maintenant annulée
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <command>COPY</command> ne considère plus que les colonnes de fin
+ manquantes doivent être NULL. Toutes les colonnes doivent être
+ spécifiées. (Néanmoins, vous pouvez avoir un effet similaire en
+ spécifiant une liste de colonnes dans la commande
+ <command>COPY</command>.)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Le type de données <type>timestamp</type> est maintenant équivalent Ã
+ <type>timestamp without time zone</type>, au lieu de
+ <type>timestamp with time zone</type>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les bases de données, avant la version 7.3 et chargées dans cette
+ version, n'auront pas les dépendances du nouvel objet pour les colonnes
+ de type <type>serial</type>, les contraintes uniques et les clés
+ étrangères. Voir le répertoire <filename>contrib/adddepend/</filename>
+ pour une description détaillée et un script qui ajoute ces dépendances.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Une chaîne vide (<literal>''</literal>) n'est plus permise comme entrée
+ dans un champ d'entier. Auparavant, c'était silencieusement interprété
+ comme 0.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <sect3>
+ <title>Opérations du serveur</title>
+<itemizedlist>
+<listitem><para>Ajout de la vue pg_locks pour afficher les verrous
+(Neil)</para></listitem>
+<listitem><para>Corrections de sécurité pour l'allocation en mémoire
+de la négotiation des mots de passe (Neil)</para></listitem>
+<listitem><para>Suppression du support pour le protocole version 0 FE/BE
+(<productname>PostgreSQL</productname> 6.2 et précédent) (Tom)</para></listitem>
+<listitem><para>Réservation des quelques derniers emplacements du serveur pour
+les superutilisateurs, ajout du paramètre superuser_reserved_connections pour
+contrôler ceci (Nigel J. Andrews)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Performance</title>
+<itemizedlist>
+<listitem><para>Amélioration du lancement en appelant localtime() seulement une
+fois (Tom)</para></listitem>
+<listitem><para>Mise en cache des informations du catalogue système dans
+des fichiers plats pour un lancement plus rapide (Tom)</para></listitem>
+<listitem><para>Amélioration du cache pour les informations des index
+(Tom)</para></listitem>
+<listitem><para>Améliorations de l'optimiseur (Tom, Fernando
+Nasser)</para></listitem>
+<listitem><para>Les caches catalog stockent maintenant les recherches échoués
+(Tom)</para></listitem>
+<listitem><para>Amélioration des fonctions de découpage (Neil)</para></listitem>
+<listitem><para>Amélioration de la performance de la mise en jeton des requêtes
+et de la gestion du réseau (Peter)</para></listitem>
+<listitem><para>Amélioration de la rapidité pour la restauration des objets
+larges (Mario Weilguni)</para></listitem>
+<listitem><para>Marquage des entrées d'index expirés lors de la première re
+chercher, sauvant ainsi quelques récupérations d'en-tête (Tom)</para></listitem>
+<listitem><para>Évite un remplissage de bitmap NULL excessif (Manfred
+Koizar)</para></listitem>
+<listitem><para>Ajout du qsort() pour Solaris sous licence BSD, pour les
+performances (Bruce)</para></listitem>
+<listitem><para>Réduction du coût par ligne des quatre octets (Manfred
+Koizar)</para></listitem>
+<listitem><para>Correction d'un bogue dans l'optimiseur GEQO (Neil
+Conway)</para></listitem>
+<listitem><para>Utiliser WITHOUT OID fait réellement gagner quatre octets par
+ligne (Manfred Koizar)</para></listitem>
+<listitem><para>Ajout de la variable default_statistics_target pour spécifier
+des cibles ANALYZE (Neil)</para></listitem>
+<listitem><para>Utilisation du tampon cache local pour les tables temporaires
+pour qu'il n'y ait pas de surcharge des WAL (Tom)</para></listitem>
+<listitem><para>Amélioration des performances de la carte des espaces libres sur
+de grandes tables (Stephen Marshall, Tom)</para></listitem>
+<listitem><para>Amélioration de la concurrence des écritures dans les WAL
+(Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Droits</title>
+<itemizedlist>
+<listitem><para>Ajout de droits sur les fonctions et langages de procédure
+(Peter)</para></listitem>
+<listitem><para>Ajout de OWNER Ã CREATE DATABASE pour que les superutilisateurs
+puissent créer des bases de données pour les utilisateurs non privilégiés (Gavin
+Sherry, Tom)</para></listitem>
+<listitem><para>Ajout des nouveaux bits de droits EXECUTE et USAGE
+(Tom)</para></listitem>
+<listitem><para>Ajout de SET SESSION AUTHORIZATION DEFAULT et RESET SESSION
+AUTHORIZATION (Tom)</para></listitem>
+<listitem><para>Permet que les fonctions soient exécutées avec les droits du
+propriétaire de la fonction (Peter)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Configuration du serveur</title>
+<itemizedlist>
+<listitem><para>Les messages de traces du serveur sont maintenant marqués avec
+LOG, et non pas DEBUG (Bruce)</para></listitem>
+<listitem><para>Ajout d'une colonne utilisateur à pg_hba.conf
+(Bruce)</para></listitem>
+<listitem><para>log_connections affiche deux lignes dans le journal des traces
+(Tom)</para></listitem>
+<listitem><para>Suppression de debug_level dans postgresql.conf, maintenant
+server_min_messages (Bruce)</para></listitem>
+<listitem><para>Nouvelle commande ALTER DATABASE/USER ... SET pour
+l'initialisation de la base de données par utilisateur (Peter)</para></listitem>
+<listitem><para>Nouveaux paramètres server_min_messages et client_min_messages
+pour contrôler quels messages sont envoyés au journal des traces du serveur ou
+aux applications clientes (Bruce)</para></listitem>
+<listitem><para>Permet à pg_hba.conf de spécifier des listes d'utilisateurs
+/bases de données séparées par des virgules, des noms de groupe avant le
+signe + en suffixe et des noms de fichiers avec un @ en préfixe
+(Bruce)</para></listitem>
+<listitem><para>Suppression de la capacité d'un deuxième fichier de mot
+ de passe et de l'outil pg_password (Bruce)</para></listitem>
+<listitem><para>Ajout d'une variable db_user_namespace pour les noms
+utilisateurs locaux à la base de données (Bruce)</para></listitem>
+<listitem><para>Amélioration de SSL (Bear Giles)</para></listitem>
+<listitem><para>Les mots de passe sont cryptés par défaut
+(Bruce)</para></listitem>
+<listitem><para>Autorise la réinitialisation de pg_statistics par l'appel de
+pg_stat_reset() (Christopher)</para></listitem>
+<listitem><para>Ajout du paramètre log_duration (Bruce)</para></listitem>
+<listitem><para>Renommage de debug_print_query en log_statement
+(Bruce)</para></listitem>
+<listitem><para>Renommage de show_query_stats en show_statement_stats
+(Bruce)</para></listitem>
+<listitem><para>Ajout de param log_min_error_statement pour afficher les
+commandes à tracer en cas d'erreur (Gavin)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Requêtes</title>
+<itemizedlist>
+<listitem><para>Les curseurs ne sont pas sensibles, ce qui signifie que
+leur contenu ne change pas (Tom)</para></listitem>
+<listitem><para>Désactivation de la syntaxe LIMIT #,# ; maintenant
+seul LIMIT # OFFSET # est supporté (Bruce)</para></listitem>
+<listitem><para>Augmentation de la taille de l'identifiant à 63 (Neil,
+Bruce)</para></listitem>
+<listitem><para>Corrections d'UNION pour assembler trois ou plus de trois
+colonnes de taille différente (Tom)</para></listitem>
+<listitem><para>Ajout du mot clé DEFAULT pour INSERT, par exemple INSERT ...
+(..., DEFAULT, ...) (Rod)</para></listitem>
+<listitem><para>Les vues peuvent avoir des valeurs par défaut en utilisant ALTER
+COLUMN ... SET DEFAULT (Neil)</para></listitem>
+<listitem><para>Échec en insertion (INSERT) des des listes de colonnes ne co
+rrespondant pas à toutes les valeurs de colonnes, par exemple INSERT INTO tab
+(col1, col2) VALUES ('val1');
+(Rod)</para></listitem>
+<listitem><para>Correction pour les alias de jointure (Tom)</para></listitem>
+<listitem><para>Correction des FULL OUTER JOIN (Tom)</para></listitem>
+<listitem><para>Amélioration des rapports d'identifiant invalide et
+d'emplacement (Tom, Gavin)</para></listitem>
+<listitem><para>Correction d'OPEN cursor(args) (Tom)</para></listitem>
+<listitem><para>Les 'ctid' peuvent être utilisées dans une vue et
+currtid(viewname) (Hiroshi)</para></listitem>
+<listitem><para>Correction pour CREATE TABLE AS avec UNION
+(Tom)</para></listitem>
+<listitem><para>Amélioration de la syntaxe SQL99 (Thomas)</para></listitem>
+<listitem><para>Ajout de la variable statement_timeout pour annuler des requêtes
+(Bruce)</para></listitem>
+<listitem><para>Autorisation des requêtes préparées avec PREPARE/EXECUTE
+(Neil)</para></listitem>
+<listitem><para>FOR UPDATE peut apparaître après LIMIT/OFFSET
+(Bruce)</para></listitem>
+<listitem><para>Ajout d'une variable autocommit (Tom, David Van
+Wie)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Manipulation d'objets</title>
+<itemizedlist>
+<listitem><para>Rend optionnel les signes d'égalité dans CREATE DATABASE (Gavin
+Sherry)</para></listitem>
+<listitem><para>Fait que ALTER TABLE OWNER change aussi le propriétaire de
+l'index (Neil)</para></listitem>
+<listitem><para>Le nouveau ALTER TABLE nomtable ALTER COLUMN nomcolonne SET
+STORAGE contrôle le stockage de TOAST, la compression (John
+Gray)</para></listitem>
+<listitem><para>Ajout du support du schéma, CREATE/DROP SCHEMA
+(Tom)</para></listitem>
+<listitem><para>Création d'un schéma pour les tables temporaires
+(Tom)</para></listitem>
+<listitem><para>Ajout de la variable search_path pour la recherche de schémas
+(Tom)</para></listitem>
+<listitem><para>Ajout de ALTER TABLE SET/DROP NOT NULL
+(Christopher)</para></listitem>
+<listitem><para>Nouveaux niveaux de volatilité CREATE FUNCTION
+(Tom)</para></listitem>
+<listitem><para>Rend les noms de règles uniques seulement par table
+(Tom)</para></listitem>
+<listitem><para>Ajout d'une clause 'ON tablename' Ã DROP RULE et Ã
+COMMENT ON RULE
+(Tom)</para></listitem>
+<listitem><para>Ajout de ALTER TRIGGER RENAME (Joe)</para></listitem>
+<listitem><para>Nouvelles fonctions current_schema() et current_schemas()
+(Tom)</para></listitem>
+<listitem><para>Autorise les fonctions à renvoyer plusieurs lignes (fonctions de
+table) (Joe)</para></listitem>
+<listitem><para>Rend WITH optionnel dans CREATE DATABASE pour rester
+consistant (Bruce)</para></listitem>
+<listitem><para>Ajout de la conservation des dépendances d'objets (Rod,
+Tom)</para></listitem>
+<listitem><para>Ajout de RESTRICT/CASCADE aux commandes DROP
+(Rod)</para></listitem>
+<listitem><para>Ajout de ALTER TABLE DROP pour les cas sans CHECK CONSTRAINT
+(Rod)</para></listitem>
+<listitem><para>Destruction automatique de la séquence lors du DROP d'une table
+avec SERIAL (Rod)</para></listitem>
+<listitem><para>Empêche la suppression d'une colonne si celle-ci est utilisée
+par une clé étrangère (Rod)</para></listitem>
+<listitem><para>Supprime automatiquement les contraintes/fonctions lorsqu'un
+objet est supprimé (Rod)</para></listitem>
+<listitem><para>Ajout de CREATE/DROP OPERATOR CLASS (Bill Studenmund,
+Tom)</para></listitem>
+<listitem><para>Ajout de ALTER TABLE DROP COLUMN (Christopher, Tom,
+Hiroshi)</para></listitem>
+<listitem><para>Empêche les colonnes héritées d'être supprimées ou renommées
+(Alvaro Herrera)</para></listitem>
+<listitem><para>Correction des contraintes de clés étrangères pour ne pas avoir
+d'erreurs sur les états intermédiaires de la base de données
+(Stephan)</para></listitem>
+<listitem><para>Propagation du renommage de colonne ou de table pour les
+contraintes de clés étrangères</para></listitem>
+<listitem><para>Ajout de CREATE OR REPLACE VIEW (Gavin, Neil,
+Tom)</para></listitem>
+<listitem><para>Ajout de CREATE OR REPLACE RULE (Gavin, Neil,
+Tom)</para></listitem>
+<listitem><para>Fait que les règles s'exécutent dans l'ordre alphabétique,
+renvoyant des valeurs plus prévisibles (Tom)</para></listitem>
+<listitem><para>Les déclencheurs sont maintenant lancés dans l'ordre
+alphabétique (Tom)</para></listitem>
+<listitem><para>Ajout de /contrib/adddepend pour gérer les dépendances d'objets
+pre-7.3 (Rod)</para></listitem>
+<listitem><para>Permet une meilleure conversion lors de l'insertion et de la
+mise à jour des valeurs (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Commandes utilitaires</title>
+<itemizedlist>
+<listitem><para>Fait que COPY TO affiche les retours chariots et retours à la
+ligne avec \r et \n (Tom)</para></listitem>
+<listitem><para>Permet à DELIMITER dans COPY FROM d'être propre sur huit bits
+(Tatsuo)</para></listitem>
+<listitem><para>Fait que <application>pg_dump</> utilise ALTER TABLE ADD PRIMARY
+KEY pour des raisons de performance (Neil)</para></listitem>
+<listitem><para>Désactivation des crochets dans les règles à plusieurs
+instructions (Bruce)</para></listitem>
+<listitem><para>Désactivation de l'appel du VACUUM à l'intérieur d'une fonction
+(Bruce)</para></listitem>
+<listitem><para>Autorise dropdb et d'autres scripts à utiliser des identifiants
+avec des espaces (Bruce)</para></listitem>
+<listitem><para>Restreint les modifications de commentaire de la base de données
+à la base de données courante</para></listitem>
+<listitem><para>Autorise les commentaires sur les opérateurs, indépendent de la
+fonction sous-jacente (Rod)</para></listitem>
+<listitem><para>Annule les commandes SET dans les transactions annulées
+(Tom)</para></listitem>
+<listitem><para>EXPLAIN s'affiche maintenant comme une requête
+(Tom)</para></listitem>
+<listitem><para>Affichage des expressions de condition et tri des clés dans
+EXPLAIN (Tom)</para></listitem>
+<listitem><para>Ajout de 'SET LOCAL var = valeur' pour initialiser
+les variables pour une seule transaction (Tom)</para></listitem>
+<listitem><para>Autorise le lancement d'ANALYZE dans une transaction
+(Bruce)</para></listitem>
+<listitem><para>Amélioration de la syntaxe de COPY en utilisant les nouvelles
+clauses WITH, conservant ainsi la compatibilité ascendante
+(Bruce)</para></listitem>
+<listitem><para>Correction de <application>pg_dump</> pour afficher de façon
+consistante les balises dans les sauvegardes non ASCII (Bruce)</para></listitem>
+<listitem><para>Fait que les contraintes de clés étrangères dans le fichier de
+sauvegarde (Rod)</para></listitem>
+<listitem><para>Ajout de COMMENT ON CONSTRAINT (Rod)</para></listitem>
+<listitem><para>Autorise COPY TO/FROM à spécifier les noms de colonnes (Brent
+Verner)</para></listitem>
+<listitem><para>Sauvegarde les contraintes UNIQUE et PRIMARY KEY comme
+ALTER TABLE (Rod)</para></listitem>
+<listitem><para>SHOW s'affiche comme le résultat d'une requête
+(Joe)</para></listitem>
+<listitem><para>Génération d'un échec sur les lignes courtes de COPY plutôt que
+de rajouter des NULL (Neil)</para></listitem>
+<listitem><para>Correction de CLUSTER pour préserver tous les attributs des
+tables (Alvaro Herrera)</para></listitem>
+<listitem><para>Nouvelle table pg_settings pour visualiser/modifier les
+paramétrages GUC (Joe)</para></listitem>
+<listitem><para>Ajout de la mise entre guillemets intelligente, amélioration
+sur la portabilité de la sortie de <application>pg_dump</>
+(Peter)</para></listitem>
+<listitem><para>Sauvegarde les colonnes serial comme SERIAL
+(Tom)</para></listitem>
+<listitem><para>Activation du support des gros fichiers, >2 Go pour
+<application>pg_dump</> (Peter, Philip Warner, Bruce)</para></listitem>
+<listitem><para>Interdit TRUNCATE sur les tables qui sont impliquées dans des
+contraintes référentielles (Rod)</para></listitem>
+<listitem><para>Fait que TRUNCATE tronque aussi automatiquement la table
+toast de la relation (Tom)</para></listitem>
+<listitem><para>Ajout de l'outil clusterdb qui groupera automatiquement
+une base de données entière en se basant sur les opérations CLUSTER précédentes
+(Alvaro Herrera)</para></listitem>
+<listitem><para>Revue de pg_dumpall (Peter)</para></listitem>
+<listitem><para>Autorise le REINDEX des tables TOAST (Tom)</para></listitem>
+<listitem><para>Implémentation de START TRANSACTION, suivant SQL99
+(Neil)</para></listitem>
+<listitem><para>Correction des rares corruptions d'index lorsqu'une division
+de page affecte la suppression en masse (Tom)</para></listitem>
+<listitem><para>Correction de l'héritage sur ALTER TABLE ... ADD COLUMN (Alvaro
+Herrera)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Types de données et fonctions</title>
+<itemizedlist>
+<listitem><para>Correction pour que factorial(0) renvoie 1
+(Bruce)</para></listitem>
+<listitem><para>Améliorations des types date/time/timezone
+(Thomas)</para></listitem>
+<listitem><para>Correction pour l'extraction d'un morceau de tableau
+(Tom)</para></listitem>
+<listitem><para>Correction de extract/date_part pour rapporter les bonnes
+microsecondes sur des valeurs de type timestamp (Tatsuo)</para></listitem>
+<listitem><para>Autorise text_substr() et bytea_substr() Ã lire des valeurs
+TOAST de façon plus efficace (John Gray)</para></listitem>
+<listitem><para>Ajout du support du domaine (Rod)</para></listitem>
+<listitem><para>Fait que WITHOUT TIME ZONE est la valeur par défaut des
+types de données TIMESTAMP et TIME data (Thomas)</para></listitem>
+<listitem><para>Autorise un autre schéma de stockage des entiers sur 64 bits
+pour les types date/time en utilisant --enable-integer-datetimes dans configure
+(Thomas)</para></listitem>
+<listitem><para>Fait que timezone(timestamptz) renvoie timestamp plutôt que
+string (Thomas)</para></listitem>
+<listitem><para>Autorise les secondes fractionnées dans les types date/time
+pour les dates datant de l'an 1 avant JC (Thomas)</para></listitem>
+<listitem><para>Limite les types de données timestamp à six places décimales
+pour la précision (Thomas)</para></listitem>
+<listitem><para>Modification des fonctions de conversion timezone de timetz() Ã
+timezone() (Thomas)</para></listitem>
+<listitem><para>Ajout des variables de configuration datestyle et timezone
+(Tom)</para></listitem>
+<listitem><para>Ajout d'OVERLAY(), qui autorise la substitution d'une
+sous-chaîne dans une chaîne (Thomas)</para></listitem>
+<listitem><para>Ajout de SIMILAR TO (Thomas, Tom)</para></listitem>
+<listitem><para>Ajout d'un SUBSTRING(chaîne FROM modele FOR
+échappement) utilisant les expressions rationnelles (Thomas)</para></listitem>
+<listitem><para>Ajout des fonctions LOCALTIME et LOCALTIMESTAMP
+(Thomas)</para></listitem>
+<listitem><para>Ajout des types composés nommés utilisant CREATE TYPE nomtype
+AS (column) (Joe)</para></listitem>
+<listitem><para>Autorise la définition d'un type composé dans la clause alias
+d'une table (Joe)</para></listitem>
+<listitem><para>Ajout d'une nouvelle API pour simplifier la création de
+fonctions de table en langage C (Joe)</para></listitem>
+<listitem><para>Supprime les parenthèses vides compatible ODBC des appels
+de fonctions SQL99 si elles ne sont pas compatibles avec le standard
+(Thomas)</para></listitem>
+<listitem><para>Le type de données macaddr accepte 12 chiffres hexadécimaux
+sans séparateurs (Mike Wyer)</para></listitem>
+<listitem><para>Ajout de CREATE/DROP CAST (Peter)</para></listitem>
+<listitem><para>Ajout de l'opérateur IS DISTINCT FROM (Thomas)</para></listitem>
+<listitem><para>Ajout de la fonction SQL99 TREAT(), synonyme de CAST()
+(Thomas)</para></listitem>
+<listitem><para>Ajout de pg_backend_pid() pour afficher le pid du serveur
+(Bruce)</para></listitem>
+<listitem><para>Ajout du prédicat IS OF / IS NOT OF (Thomas)</para></listitem>
+<listitem><para>Autorise les constantes de type chaîne de bits sans une
+longueur définie (Thomas)</para></listitem>
+<listitem><para>Autorise la conversion entre les entiers à huit octets et les
+chaînes de bit (Thomas)</para></listitem>
+<listitem><para>Implémente la conversion littérale en hexadécimale vers un
+littéral de type chaîne de bits (Thomas)</para></listitem>
+<listitem><para>Autorise l'apparition des fonctions de table dans la clause FROM
+(Joe)</para></listitem>
+<listitem><para>Augmente le nombre maximum de paramètres de fonctions à 32
+(Bruce)</para></listitem>
+<listitem><para>Ne crée plus automatiquement un index pour les colonnes SERIAL
+(Tom)</para></listitem>
+<listitem><para>Ajout de current_database() (Rod)</para></listitem>
+<listitem><para>Correction de cash_words() pour ne pas avoir de dépassement de
+tampons (Tom)</para></listitem>
+<listitem><para>Ajout des fonctions replace(), split_part(), to_hex()
+(Joe)</para></listitem>
+<listitem><para>Correction de LIKE pour bytea en argument du côté droit
+(Joe)</para></listitem>
+<listitem><para>Empêche les arrêt brutaux causés par SELECT cash_out(2)
+(Tom)</para></listitem>
+<listitem><para>Correction de to_char(1,'FM999.99') pour qu'elle renvoie un
+point (Karel)</para></listitem>
+<listitem><para>Correction des fonctions trigger/type/language renvoyant OPAQUE
+pour qu'elles renvoient un type correct (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Internationalisation</title>
+<itemizedlist>
+<listitem><para>Ajout de codages supplémentaires : Koréen
+(JOHAB), Thai (WIN874), Vietnamien (TCVN), Arabe (WIN1256), Chinois
+Simplifié (GBK), Koréen (UHC) (Eiji Tokuya)</para></listitem>
+<listitem><para>Activation par défaut du support de la locale
+(Peter)</para></listitem>
+<listitem><para>Ajout des variables locale (Peter)</para></listitem>
+<listitem><para>Échappement des octets >= 0x7f pour le multioctet dans
+PQescapeBytea/PQunescapeBytea (Tatsuo)</para></listitem>
+<listitem><para>Ajout de la prise en compte de la locale dans les classes de
+caractères des expressions rationnelles</para></listitem>
+<listitem><para>Activation par défaut du support multioctets
+(Tatsuo)</para></listitem>
+<listitem><para>Ajout du support multioctets GB18030 (Bill
+Huang)</para></listitem>
+<listitem><para>Ajout de CREATE/DROP CONVERSION, permettant les locales
+chargeables (Tatsuo, Kaori)</para></listitem>
+<listitem><para>Ajout de la table pg_conversion (Tatsuo)</para></listitem>
+<listitem><para>Ajout de la fonction SQL99 CONVERT() (Tatsuo)</para></listitem>
+<listitem><para>pg_dumpall, pg_controldata et pg_resetxlog sont maintenant au
+courant de la langue nationale (Peter)</para></listitem>
+<listitem><para>Nouvelles traductions et mises à jour</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Langages du côté serveur</title>
+<itemizedlist>
+<listitem><para>Autorise les fonctions récursives SQL (Peter)</para></listitem>
+<listitem><para>Modification de la construction de PL/Tcl pour utiliser le
+compilateur configuré et Makefile.shlib (Peter)</para></listitem>
+<listitem><para>Refonte de la variable FOUND PL/pgSQL pour être encore plus
+compatible avec Oracle (Neil, Tom)</para></listitem>
+<listitem><para>Autorise PL/pgSQL à gérer les identifiants entre guillemets
+(Tom)</para></listitem>
+<listitem><para>Autorisation des fonctions PL/pgSQL
+renvoyant des ensembles de résultats (Neil)</para></listitem>
+<listitem><para>PL/pgSQL connait les schémas (Joe)</para></listitem>
+<listitem><para>Suppression de quelques pertes mémoires (Nigel J. Andrews,
+Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>psql</title>
+<itemizedlist>
+<listitem><para>Ne met plus en minuscule les noms de bases de données indiqués
+avec \connect pour une compatibilité avec la 7.2.0 (Tom)</para></listitem>
+<listitem><para>Ajout de \timing pour chronométrer les requêtes utilisateur
+(Greg Sabino Mullane)</para></listitem>
+<listitem><para>Fait que \d affiche des informations sur les index (Greg Sabino
+Mullane)</para></listitem>
+<listitem><para>Le nouveau \dD affiche les domaines (Jonathan
+Eisler)</para></listitem>
+<listitem><para>Permet à psql d'afficher les règles sur les vues (Paul
+?)</para></listitem>
+<listitem><para>Correction pour la substitution des variables avec psql
+(Tom)</para></listitem>
+<listitem><para>Autorise l'affichage de la structure des tables temporaires avec
+\d (Tom)</para></listitem>
+<listitem><para>Autorise l'affichage les clés étrangères avec \d
+(Rod)</para></listitem>
+<listitem><para>Correction de \? pour honorer l'afficheur page par page avec
+\pset (Bruce)</para></listitem>
+<listitem><para>Fait que psql rapporte son numéro de version au lancement
+(Tom)</para></listitem>
+<listitem><para>Autorise la spécification des noms de colonnes avec \copy
+(Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>libpq</title>
+<itemizedlist>
+<listitem><para>Ajout de ~/.pgpass pour stocker la combinaison hôte
+/mot de passe de l'utilisateur (Alvaro Herrera)</para></listitem>
+<listitem><para>Ajout de la fonction PQunescapeBytea() Ã libpq (Patrick
+Welche)</para></listitem>
+<listitem><para>Correction pour l'envoi de grandes requêtes sur des connexions
+non bloquantes (Bernhard Herzog)</para></listitem>
+<listitem><para>Correction pour l'utilisation de timers par libpq sur Win9X
+(David Ford)</para></listitem>
+<listitem><para>Autorisation pour que le notify de libpq gère des serveurs avec
+des identifiants de longueurs différentes (Tom)</para></listitem>
+<listitem><para>Ajout de PQescapeString() et PQescapeBytea() dans libpq pour
+Windows (Bruce)</para></listitem>
+<listitem><para>Correction pour SSL avec les connexions non bloquantes (Jack
+Bates)</para></listitem>
+<listitem><para>Ajout d'un paramètre de déconnexion automatique au bout d'un
+certain temps sans activité (Denis A Ustimenko)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>JDBC</title>
+<itemizedlist>
+<listitem><para>JDBC se compile avec le JDK 1.4 (Dave)</para></listitem>
+<listitem><para>Ajout du support JDBC 3 (Barry)</para></listitem>
+<listitem><para>Autorise JDBC Ã configurer le niveau des traces en ajoutant
+?loglevel=X Ã l'URL de connexion (Barry)</para></listitem>
+<listitem><para>Ajout du message Driver.info() qui affiche le numéro de version
+(Barry)</para></listitem>
+<listitem><para>Ajout des ensembles de résultats en lecture/écriture (Raghu
+Nidagal, Dave)</para></listitem>
+<listitem><para>Ajout du support pour les instructions appellables (Paul
+Bethe)</para></listitem>
+<listitem><para>Ajout de la possibilité d'annulation d'une
+requête</para></listitem>
+<listitem><para>Ajout du rafraîchissement d'une ligne (Dave)</para></listitem>
+<listitem><para>Correction du cryptage MD5 pour gérer les serveurs multibyte
+(Jun Kawai)</para></listitem>
+<listitem><para>Ajout du support pour les instructions préparées
+(Barry)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Interfaces diverses</title>
+<itemizedlist>
+<listitem><para>Correction d'un bogue ECPG concernant les nombres en octal avec
+les guillemets simples (Michael)</para></listitem>
+<listitem><para>Déplacement de src/interfaces/libpgeasy dans
+http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
+<listitem><para>Amélioration de l'interface Python (Elliot Lee, Andrew
+Johnson, Greg Copeland)</para></listitem>
+<listitem><para>Ajout de l'événement de fermeture de la connexion dans libpgtcl
+(Gerhard Hintermayer)</para></listitem>
+<listitem><para>Déplacement de src/interfaces/libpq++ dans
+http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
+<listitem><para>Déplacement de src/interfaces/odbc dans
+http://gborg.postgresql.org (Marc)</para></listitem>
+<listitem><para>Déplacement de src/interfaces/libpgeasy dans
+http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
+<listitem><para>Déplacement de src/interfaces/perl5 dans
+http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
+<listitem><para>Suppression de src/bin/pgaccess des sources, maintenant sur
+http://www.pgaccess.org (Bruce)</para></listitem>
+<listitem><para>Ajout de la commande pg_on_connection_loss à libpgtcl (Gerhard
+Hintermayer, Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Code source</title>
+<itemizedlist>
+<listitem><para>Correction pour un make parallèle (Peter)</para></listitem>
+<listitem><para>Corrections spécifiques pour AIX lors de l'édition des liens
+avec Tcl (Andreas Zeugswetter)</para></listitem>
+<listitem><para>Permet à PL/Perl d'être construit avec Cygwin (Jason
+Tishler)</para></listitem>
+<listitem><para>Amélioration des compilations MIPS (Peter, Oliver
+Elphick)</para></listitem>
+<listitem><para>Requiert Autoconf version 2.53 (Peter)</para></listitem>
+<listitem><para>Requiert readline et zlib par défaut dans configure
+(Peter)</para></listitem>
+<listitem><para>Permet l'utilisation de <quote>Intimate Shared Memory</quote>
+(ISM) par Solaris pour des raisons de performances (Scott Brunza, P.J. Josh
+Rovero)</para></listitem>
+<listitem><para>Activation permanente de syslog dans la compilation, suppression
+de l'option --enable-syslog (Tatsuo)</para></listitem>
+<listitem><para>Activation permanente du multi-octets dans la compilation,
+suppression de l'option --enable-multibyte (Tatsuo)</para></listitem>
+<listitem><para>Activation permanente de la locale dans la compilation,
+suppression de l'option --enable-locale (Peter)</para></listitem>
+<listitem><para>Correction pour la création des DLL Win9x (Magnus
+Naeslund)</para></listitem>
+<listitem><para>Correction pour l'utilisation de link() par le code WAL sur
+Windows, BeOS (Jason Tishler)</para></listitem>
+<listitem><para>Ajout de sys/types.h à c.h, suppression à partir des fichiers
+principaux (Peter, Bruce)</para></listitem>
+<listitem><para>Correction d'un blocage sur les machines SMP sous AIX
+(Tomoyuki Niijima)</para></listitem>
+<listitem><para>Correction d'un autre blocage SMP sur AIX (Tomoyuki
+Niijima)</para></listitem>
+<listitem><para>Correction de la gestion de dates avant 1970 sur les nouvelles
+bibliothèques glibc (Tom)</para></listitem>
+<listitem><para>Correction du verrour sur les PowerPC SMP
+(Tom)</para></listitem>
+<listitem><para>Empêche gcc -ffast-math d'être utilisé (Peter,
+Tom)</para></listitem>
+<listitem><para>Bison >= 1.50 est maintenant requis pour les constructions
+développeur</para></listitem>
+<listitem><para>Le support Kerberos 5 se construit maintenant avec Heimdal
+(Peter)</para></listitem>
+<listitem><para>Ajout de l'appendice dans le guide utilisateur qui liste toutes
+les fonctionnalités SQL (Thomas)</para></listitem>
+<listitem><para>Amélioration de l'édition des liens des modules chargeables pour
+utiliser RTLD_NOW (Tom)</para></listitem>
+<listitem><para>Nouveaux niveaux d'erreurs WARNING, INFO, LOG, DEBUG[1-5]
+(Bruce)</para></listitem>
+<listitem><para>Le nouveau répertoire src/port contient les fonctions
+remplacées de la libc (Peter, Bruce)</para></listitem>
+<listitem><para>Nouveau catalogue système pg_namespace pour les schémas
+(Tom)</para></listitem>
+<listitem><para>Ajout de pg_class.relnamespace pour les schémas
+(Tom)</para></listitem>
+<listitem><para>Ajout de pg_type.typnamespace pour les schémas
+(Tom)</para></listitem>
+<listitem><para>Ajout de pg_proc.pronamespace pour les schémas
+(Tom)</para></listitem>
+<listitem><para>Restructuration des agrégats pour disposer des entrées de
+pg_proc (Tom)</para></listitem>
+<listitem><para>Les relations système ont maintenant leur propre espace de
+noms, le test pg_* n'est plus requis (Fernando Nasser)</para></listitem>
+<listitem><para>Renommage des noms d'index TOAST pour être *_index au lieu de
+*_idx (Neil)</para></listitem>
+<listitem><para>Ajout des espaces de noms pour les opérateurs et les classes
+d'opérateurs (Tom)</para></listitem>
+<listitem><para>Ajout de vérifications supplémentaires pour le fichier de
+contrôle du serveur (Thomas)</para></listitem>
+<listitem><para>Nouvelle FAQ polonaise (Marcin Mazurek)</para></listitem>
+<listitem><para>Ajout du support des sémaphores Posix (Tom)</para></listitem>
+<listitem><para>Document nécessaire pour reindex (Bruce)</para></listitem>
+<listitem><para>Renommage de quelques identifiants internes pour simplifier la
+compilation Windows (Jan, Katherine Ward)</para></listitem>
+<listitem><para>Ajout de documentation sur l'espace de disque
+(Bruce)</para></listitem>
+<listitem><para>Suppression de KSQO de GUC (Bruce)</para></listitem>
+<listitem><para>Correction d'une perte mémoire dans rtree (Kenneth
+Been)</para></listitem>
+<listitem><para>Modification de quelques messages d'erreur pour la cohérence
+(Bruce)</para></listitem>
+<listitem><para>Suppression des colonnes de tables système non utilisées
+(Peter)</para></listitem>
+<listitem><para>Colonnes système NOT NULL lorsqu'appropriées
+(Tom)</para></listitem>
+<listitem><para>Nettoyage de l'utilisation de sprintf à la place de
+snprintf() (Neil, Jukka Holappa)</para></listitem>
+<listitem><para>Suppression d'OPAQUE et création de sous-types spécifiques
+(Tom)</para></listitem>
+<listitem><para>Nettoyages de la gestion interne des tableaux (Joe,
+Tom)</para></listitem>
+<listitem><para>Interdiction de pg_atoi('') (Bruce)</para></listitem>
+<listitem><para>Suppression du paramètres wal_files car les fichiers WAL sont
+maintenant recyclés (Bruce)</para></listitem>
+<listitem><para>Ajout des numéros de version dans les pages d'en-tête
+(Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Contrib</title>
+<itemizedlist>
+<listitem><para>Autorise les tableaux d'inet dans /contrib/array
+(Neil)</para></listitem>
+<listitem><para>Corrections pour GiST (Teodor Sigaev, Neil)</para></listitem>
+<listitem><para>Mise à jour de /contrib/mysql</para></listitem>
+<listitem><para>Ajout de /contrib/dbsize pour afficher la taille des tables
+sans vacuum (Peter)</para></listitem>
+<listitem><para>Ajout de /contrib/intagg, routines d'agrégat des entiers
+(mlw)</para></listitem>
+<listitem><para>Amélioration de /contrib/oid2name (Neil,
+Bruce)</para></listitem>
+<listitem><para>Amélioration de /contrib/tsearch (Oleg, Teodor
+Sigaev)</para></listitem>
+<listitem><para>Nettoyage de /contrib/rserver (Alexey V.
+Borzov)</para></listitem>
+<listitem><para>Mise à jour de l'outil /contrib/oracle conversion (Gilles
+Darold)</para></listitem>
+<listitem><para>Mise à jour de /contrib/dblink (Joe)</para></listitem>
+<listitem><para>Amélioration des options supportées par /contrib/vacuumlo (Mario
+Weilguni)</para></listitem>
+<listitem><para>Amélioration de /contrib/intarray (Oleg, Teodor Sigaev, Andrey
+Oktyabrski)</para></listitem>
+<listitem><para>Ajout de l'outil /contrib/reindexdb (Shaun
+Thomas)</para></listitem>
+<listitem><para>Ajout de l'indexage dans /contrib/isbn_issn (Dan
+Weston)</para></listitem>
+<listitem><para>Ajout de /contrib/dbmirror (Steven Singer)</para></listitem>
+<listitem><para>Amélioration de /contrib/pgbench (Neil)</para></listitem>
+<listitem><para>Ajout des exemples de fonctions de table /contrib/tablefunc
+(Joe)</para></listitem>
+<listitem><para>Ajout du type de données pour les structures en arbre
+/contrib/ltree (Teodor Sigaev, Oleg Bartunov)</para></listitem>
+<listitem><para>Déplacement de /contrib/pg_controldata, pg_resetxlog dans
+le répertoire principal des sources (Bruce)</para></listitem>
+<listitem><para>Correction à /contrib/cube (Bruno Wolff)</para></listitem>
+<listitem><para>Amélioration de /contrib/fulltextindex
+(Christopher)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-2-8">
+ <title>Version 7.2.8</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-05-09</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections sur la 7.2.7, dont un
+ correctif sur un trou de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.8</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant la
+ version 7.2.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'une ancienne condition qui permettait à une
+transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
+UPDATE) légèrement plus tôt que dans les autres buts</para>
+<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
+incohérences apparents des données et visibles brièvement par les applications.
+</para></listitem>
+<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
+</para>
+<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
+tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
+faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
+d'Assert.
+</para></listitem>
+<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
+ZONE</></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
+sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise Ã
+jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
+</para></listitem>
+<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
+type <type>TIME WITH TIME ZONE</></para></listitem>
+<listitem><para>Vérification supplémentaires de dépassement de tampon dans
+plpgsql (Neil)</para></listitem>
+<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
+noms des index et déclencheurs contenant <literal>%</> (Neil)</para></listitem>
+<listitem><para>Empêche <function>to_char(interval)</> d'arrêter brutalement le
+serveur (dump core) pour les formats relatifs au mois</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
+constructions d'OpenSSL (Marko Kreen)</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-2-7">
+ <title>Sortie 7.2.7</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2005-01-31</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques correctifs de la version 7.2.6, certains
+ portant sur des problèmes de sécurité.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.7</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ 7.2.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Interdit <command>LOAD</> aux utilisateurs standards</para>
+<para>
+Sur les plateformes qui exécuteront automatiquement les fonctions
+d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
+les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
+un code arbitraire par le serveur. Merci à NGS Software pour cette
+information.</para></listitem>
+<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
+dans contrib (Kris Jurka)</para></listitem>
+<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
+plpgsql dispose trop de paramètres (Neil)</para></listitem>
+<listitem><para>Correction d'erreurs de plannification pour les jointures
+complètes et externes à droite</para>
+<para>
+Le résultat de la jointure était faussement supposé trié de la même façon que
+l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
+mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
+mauvaises réponses.
+</para></listitem>
+<listitem><para>Correction de l'affichage des intervalles négatifs pour les
+styles de date SQL et GERMAN</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-2-6">
+ <title>Sortie 7.2.6</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-10-22</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la version 7.2.5.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.2.6</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ 7.2.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
+d'astuce sur disque</para>
+<para>
+Sous quelques rares circonstances, ceci pourrait mener à des échecs
+<quote>could not access transaction status</>, qui se qualifient comme bogue
+pouvant entraîner des pertes de données.
+</para></listitem>
+<listitem><para>Assurance que la jointure externe hachée ne manque pas de
+lignes</para>
+<para>
+Les jointures gauches très importantes pourraient échouer à afficher les lignes
+du côté gauche sans correspondance en donnant seulement la distribution droite
+des données.
+</para></listitem>
+<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
+root</para>
+<para>
+Ceci est fait pour évacuer tout risque de problèmes de sécurité.
+</para></listitem>
+<listitem><para>Évite l'utilisation de fichiers temporaires dans
+<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
+<para>
+Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
+d'importance car il n'y a aucune raison pour que les utilisateurs autres que
+les développeurs utilisent ce script de toute façon.
+</para></listitem>
+<listitem><para>Mise à jour vers les nouvelles versions de
+Bison</para></listitem>
+</itemizedlist>
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-2-5">
+ <title>Sortie 7.2.5</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2004-08-16</simpara>
+ </note>
+
+ <para>
+ Cette version contient quelques corrections de la version 7.2.4.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.2.5</title>
+
+ <para>
+ Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+ 7.2.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Réparation d'un arrêt brutal possible lors d'insertions
+concurrentes dans l'index B-tree</para>
+<para>
+Ce correctif s'occupe d'un cas ras dans les insertions concurrentes dans un
+index B-tree, pouvant résulter en un PANIC du serveur. Aucun dommage permanent
+ne devrait en résulter mais cela vaut néanmoins une pré-version. Ce bogue
+n'existe pas dans les versions antérieures 7.1.
+</para></listitem>
+<listitem><para>Correction d'un cas particulier dans la recherche en parallèle
+dans des arbres balancés (btree) avec une page racine divisée</para></listitem>
+<listitem><para>Correction d'un dépassement de tampon dans
+<function>to_ascii</function> (Guido Notari)</para></listitem>
+<listitem><para>Correction d'un arrêt brutal lors de la détection d'un verrou
+mortel sur les machines dont le type char est non signé</para></listitem>
+<listitem><para>Correction d'un échec pour répondre à <command>pg_ctl stop -m
+fast</command> après le lancement d'un Async_NotifyHandler</para></listitem>
+<listitem><para>Correction de pertes mémoire dans pg_dump</para></listitem>
+<listitem><para>Évite les conflits avec la définition système de la fonction ou
+macro <function>isblank()</function></para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-2-4">
+ <title>Sortie 7.2.4</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2003-01-30</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.2.3,
+ incluant des correctifs pour empêcher des possibles pertes de données.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.4</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.2.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction de quelques cas supplémentaires d'erreurs <quote>No
+one parent tuple was found</quote> lors du VACUUM</para></listitem>
+<listitem><para>Empêche VACUUM d'être appelé à l'intérieur d'une fonction
+(Bruce)</para></listitem>
+<listitem><para>S'assure que les mises à jour de pg_clog sont synchronisées sur
+disque avant de marquer le point de vérification comme terminé</para></listitem>
+<listitem><para>Empêche le dépassement d'entier lors de grosses jointures
+de découpage</para></listitem>
+<listitem><para>Fait que les commandes GROUP fonctionnent lorsque
+pg_group.grolist est assez large pour être mis en
+<quote>TOAST</quote></para></listitem>
+<listitem><para>Correction d'erreurs dans les tables datetime ; quelques
+noms de fuseau horaire n'étaient pas reconnus</para></listitem>
+<listitem><para>Correction de quelques dépassements d'entier dans circle_poly(),
+path_encode(), path_add() (Neil)</para></listitem>
+<listitem><para>Réparation d'erreurs de logique dans lseg_eq(), lseg_ne(),
+lseg_center()</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-2-3">
+ <title>Sortie 7.2.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-10-01</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.2.2,
+ incluant des correctifs pour empêcher des possibles pertes de données.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.3</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.2.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Empêche la perte possible de traces de transaction compressées
+(Tom)</para></listitem>
+<listitem><para>Empêche les non superutilisateurs d'augmenter les informations
+de vacuum les plus récentes (Tom)</para></listitem>
+<listitem><para>Gestion des dates antérieures à 1970 dans les nouvelles
+versions de glibc (Tom)</para></listitem>
+<listitem><para>Correction de blocage possible lors de l'arrêt du
+serveur</para></listitem>
+<listitem><para>Empêche des blocages de spinlock sur les machines SMP PPC
+(Tomoyuki Niijima)</para></listitem>
+<listitem><para>Correction de <application>pg_dump</> pour sauvegarder
+correctement le FULL JOIN USING (Tom)</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-2-2">
+ <title>Sortie 7.2.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-08-23</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.2.1.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.2</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant version 7.2.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Autorise EXECUTE de "CREATE TABLE AS ... SELECT" en PL/pgSQL
+(Tom)</para></listitem>
+<listitem><para>Correction pour la réinitialisation de l'id des traces des
+transactions compressées (Tom)</para></listitem>
+<listitem><para>Correction de PQescapeBytea/PQunescapeBytea pour qu'ils gèrent
+les octets supérieurs à 0x7f (Tatsuo)</para></listitem>
+<listitem><para>Correction pour que l'arrêt brutal de psql et
+<application>pg_dump</> lors de l'appel d'options longues inexistantes
+(Tatsuo)</para></listitem>
+<listitem><para>Correction d'un arrêt brutal lors de l'appel d'opérateurs de
+géométriques (Tom)</para></listitem>
+<listitem><para>Autorise l'appel de OPEN cursor(args) (Tom)</para></listitem>
+<listitem><para>Correction de la construction de l'index rtree_gist
+(Teodor)</para></listitem>
+<listitem><para>Correction de la sauvegarde des agrégats définis par
+l'utilisateur (Tom)</para></listitem>
+<listitem><para>Corrections pour contrib/intarray (Oleg)</para></listitem>
+<listitem><para>Corrections des requêtes complexes UNION/EXCEPT/INTERSECT
+utilisant des parenthèses (Tom)</para></listitem>
+<listitem><para>Correction de pg_convert (Tatsuo)</para></listitem>
+<listitem><para>Correction pour l'arrêt brutal avec des chaînes DATA longues
+(Thomas, Neil)</para></listitem>
+<listitem><para>Corrections pour repeat(), lpad(), rpad() et les chaînes longues
+(Neil)</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-2-1">
+ <title>Sortie 7.2.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-03-21</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.2.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.2.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.2.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>S'assure que les compteurs de séquence ne reviennent pas en
+arrière après un arrêt brutal (Tom)</para></listitem>
+<listitem><para>Correction des touches pour la conversion kanji de pgaccess
+(Tatsuo)</para></listitem>
+<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
+<listitem><para>Amélioration des entrées/sorties (Tom)</para></listitem>
+<listitem><para>Nouvelle FAQ russe</para></listitem>
+<listitem><para>Correction de compilation pour le AuthBlockSig manquant
+(Heiko)</para></listitem>
+<listitem><para>Fuseaux horaires supplémentaires et correction des
+fuseaux horaires (Thomas)</para></listitem>
+<listitem><para>Permet à \connect dans psql de gérer les noms de base de
+données et d'utilisateurs possédant des minuscules et des majuscules
+(Tom)</para></listitem>
+<listitem><para>Renvoie le bon OID sur la complétion des commandes même a
+vec des règles ON INSERT (Tom)</para></listitem>
+<listitem><para>Autorise COPY FROM à utiliser des délimiteurs sur 8 bits
+(Tatsuo)</para></listitem>
+<listitem><para>Correction d'un bogue dans extract/date_part pour les
+millisecondes/microsecondes (Tatsuo)</para></listitem>
+<listitem><para>Amélioration de la gestion de plusieurs UNION avec différentes
+longueurs (Tom)</para></listitem>
+<listitem><para>Amélioration de contrib/btree_gist (Teodor
+Sigaev)</para></listitem>
+<listitem><para>Amélioration du dictionnaire de contrib/tsearch, voir
+README.tsearch pour une étape d'installation supplémentaire (Thomas T. Thai,
+Teodor Sigaev)</para></listitem>
+<listitem><para>Correction sur la gestion des indices de tableau
+(Tom)</para></listitem>
+<listitem><para>Autorise le lancement de EXECUTE sur "CREATE TABLE AS ...
+SELECT" en PL/pgSQL (Tom)</para></listitem>
+</itemizedlist>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-2">
+ <title>Sortie 7.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2002-02-04</simpara>
+ </note>
+
+ <sect2>
+ <title>Aperçu</title>
+
+ <para>
+ Cette version améliore <productname>PostgreSQL</> pour une utilisation avec
+ des applications gèrant de gros volumes.
+ </para>
+
+ <para>
+ Modifications majeures dans cette version :
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>VACUUM</term>
+ <listitem>
+ <para>
+ L'opération VACUUM ne verrouille plus les tables, permettant du coup
+ un accès à l'utilisateur normal pendant le vacuum. Une nouvelle commande
+ <command>VACUUM FULL</> fait le vacuum ancien style en verrouillant la
+ table et en diminuant la copie disque de la table.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Transactions</term>
+ <listitem>
+ <para>
+ Il n'y a plus de problèmes avec les installations dépassant quatre
+ milliards de transactions.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>OID</term>
+ <listitem>
+ <para>
+ Les OID sont maintenant optionnelles. Les utilisateurs peuvent maintenant
+ créer des tables sans OID dans le cas où l'utilisation d'OID est
+ excessif.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Optimiseur</term>
+ <listitem>
+ <para>
+ Le système calcule maintenant des statistiques de colonnes lors
+ d'<command>ANALYZE</>, permettant de meilleurs choix pour l'optimiseur.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Sécurité</term>
+ <listitem>
+ <para>
+ Une nouvelle option de cryptage MD5 permet un stockage plus sécurisé et
+ le transfert des mots de passe. Une nouvelle option d'authentification
+ par socket de domaine Unix est disponible sur les systèmes Linux et BSD.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Statistiques</term>
+ <listitem>
+ <para>
+ Les administrateurs peuvent utiliser le nouveau module de statistiques
+ d'accès aux tables pour obtenir des informations détaillées sur
+ l'utilisation des tables et index.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Internationalisation</term>
+ <listitem>
+ <para>
+ Les messages des programmes et des bibliothèques peuvent maintenant
+ être affichés dans plusieurs langues.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect2>
+
+ <sect2>
+ <title>Migration vers la version 7.2</title>
+
+ <para>
+ Une sauvegarde/restauration avec <command>pg_dump</command> est requis pour
+ ceux qui souhaitent migrer leur données d'une version précédente.
+ </para>
+
+ <para>
+ Observez les incompatibilités suivantes :
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ La sémantique de la commande <command>VACUUM</command> a changé dans
+ cette version. Vous devez mettre à jour vos procédures de maintenance en
+ adéquation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Dans cette version, les comparaisons utilisant <literal>= NULL</literal>
+ retourneront toujours faux (ou NULL, plus précisément). Les anciennes
+ versions transformaient automatiquement cette syntaxe en <literal>IS
+ NULL</literal>. L'ancien comportement peut être réactivé en utilisant un
+ paramètre de <filename>postgresql.conf</filename>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les fichiers de configuration <filename>pg_hba.conf</> et
+ <filename>pg_ident.conf</> sont maintenant rechargés après réception
+ d'un signal <systemitem>SIGHUP</>, pas avec chaque connexion.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ La fonction <filename>octet_length()</> renvoie maintenant la taille
+ des données non compressées.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ La valeur de type date/time <literal>'current'</literal> n'est plus
+ disponible. Vous aurez besoin de réécrire vos applications.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les fonctions <literal>timestamp()</literal>, <literal>time()</literal>
+ et <literal>interval()</literal> ne sont plus disponibles. À la place,
+ utilisez <literal>timestamp 'string'</literal> ou
+ <literal>CAST</literal>.
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <para>
+ La syntaxe <literal>SELECT ... LIMIT #,#</literal> sera supprimée dans la
+ prochaine version. Vous devez modifier vos requêtes pour utiliser des
+ clauses LIMIT et OFFSET séparées, c'est-à -dire <literal>LIMIT 10 OFFSET
+ 20</literal>.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <sect3>
+ <title>Server Operation</title>
+<itemizedlist>
+<listitem><para>Création de fichiers temporaires dans un répertoire séparé
+(Bruce)</para></listitem>
+<listitem><para>Suppression des fichiers temporaires orphelins au lancement de
+postmaster (Bruce)</para></listitem>
+<listitem><para>Ajout d'index uniques à quelques tables système
+(Tom)</para></listitem>
+<listitem><para>Réorganisation des opérateurs de tables système (Oleg Bartunov,
+Teodor Sigaev, Tom)</para></listitem>
+<listitem><para>Renommage de pg_log en pg_clog (Tom)</para></listitem>
+<listitem><para>Activation de SIGTERM, SIGQUIT pour tuer les serveurs
+(Jan)</para></listitem>
+<listitem><para>Suppression de la limite du nombre de serveurs au moment de la
+compilation (Tom)</para></listitem>
+<listitem><para>Meilleure nettoyage pour les échecs de ressources sémaphores
+(Tatsuo, Tom)</para></listitem>
+<listitem><para>Permet un meilleur retour au début des ID de transaction
+(Tom)</para></listitem>
+<listitem><para>Suppression des OID pour certaines tables système
+(Tom)</para></listitem>
+<listitem><para>Suppression de la vérification d'erreur "violation de
+la modification des données ayant lancé le déclencheur" (Tom)</para></listitem>
+<listitem><para>Création du portail SPI des plans préparés/sauvegardés
+(Jan)</para></listitem>
+<listitem><para>Les fonctions de colonnes SPI fonctionnent avec les colonnes
+systèmes (Tom)</para></listitem>
+<listitem><para>Amélioration de la compression des grandes valeurs
+(Tom)</para></listitem>
+<listitem><para>Collecteur de statistiques pour les accès aux tables et index
+(Jan)</para></listitem>
+<listitem><para>Tronque les noms de séquences très longs en une valeur
+raisonnable (Tom)</para></listitem>
+<listitem><para>Mesure les temps de transaction en millisecondes
+(Thomas)</para></listitem>
+<listitem><para>Correction des parcours séquentiels de TID
+(Hiroshi)</para></listitem>
+<listitem><para>L'ID du superutilisateur est maintenant fixé à 1 (Peter
+E)</para></listitem>
+<listitem><para>Nouvelle option "reload" de pg_ctl (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Performance</title>
+<itemizedlist>
+<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
+<listitem><para>Nouvelle statistique dans la colonne histogramme pour
+l'optimiseur (Tom)</para></listitem>
+<listitem><para>Réutilisation des fichiers de trace en pré-écriture
+(WAL) plutôt que de les annuler (Tom)</para></listitem>
+<listitem><para>Amélioration du cache (Tom)</para></listitem>
+<listitem><para>Amélioration de l'optimiseur avec IS NULL, IS NOT NULL
+(Tom)</para></listitem>
+<listitem><para>Amélioration du gestionnaire de verrous pour réduire le temps
+de conservation d'un verrou (Tom)</para></listitem>
+<listitem><para>Conservation des entrées relcache pour les fonctions de
+support d'accès par index (Tom)</para></listitem>
+<listitem><para>Permet une meilleure sélectivité avec NaN et les infinies dans
+NUMERIC (Tom)</para></listitem>
+<listitem><para>Amélioration des performances de R-tree (Kenneth
+Been)</para></listitem>
+<listitem><para>Division des B-tree plus efficace (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Droits</title>
+<itemizedlist>
+<listitem><para>Modification des droits UPDATE, DELETE pour qu'ils soient bien
+distincts (Peter E)</para></listitem>
+<listitem><para>Nouveaux droits REFERENCES, TRIGGER (Peter E)</para></listitem>
+<listitem><para>Autorise GRANT/REVOKE vers/Ã partir de plus d'un utilisateur
+Ã la fois (Peter E)</para></listitem>
+<listitem><para>Nouvelle fonction has_table_privilege() (Joe
+Conway)</para></listitem>
+<listitem><para>Autorise les utilisateurs standards à lancer un vacuum sur la
+base de données (Tom)</para></listitem>
+<listitem><para>Nouvelle commande SET SESSION AUTHORIZATION (Peter
+E)</para></listitem>
+<listitem><para>Correction d'un bogue dans les modifications de droits sur les
+tables nouvellement créées (Tom)</para></listitem>
+<listitem><para>Interdit l'accès de pg_statistic aux utilisateurs normaux,
+ajout de vues accessibles aux utilisateurs (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Authentification de l'utilisateur</title>
+<itemizedlist>
+<listitem><para>Lance un autre postmaster avant de réaliser l'authentification
+pour empêcher les blocages (Peter E)</para></listitem>
+<listitem><para>Ajout de l'authentification ident sur les sockets de domaine
+Unix pour Linux, *BSD (Helge Bahmann, Oliver Elphick, Teodor Sigaev,
+Bruce)</para></listitem>
+<listitem><para>Ajout d'une méthode d'authentification par mot de passe
+utilisant le cryptage MD5 (Bruce)</para></listitem>
+<listitem><para>Autorise le cryptage des mots de passe stockés utilisant MD5
+(Bruce)</para></listitem>
+<listitem><para>Authentification PAM (Dominic J. Eidson)</para></listitem>
+<listitem><para>Chargement de pg_hba.conf et pg_ident.conf uniquement au
+lancement et après un SIGHUP (Bruce)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Configuration du serveur</title>
+<itemizedlist>
+<listitem><para>Interprétation de quelques abréviations de fuseaux horaires en
+tant qu'australien plutôt qu'américain du nord, configurable à l'exécution
+(Bruce)</para></listitem>
+<listitem><para>Nouveau paramètre pour initialiser le niveau d'isolation par
+défaut d'une transaction (Peter E)</para></listitem>
+<listitem><para>Nouveau paramètre pour activer la conversion de "expr
+= NULL" en "expr IS NULL", désactivé par défaut (Peter E)</para></listitem>
+<listitem><para>Nouveau paramètre pour contrôler l'utilisation de la mémoire par
+VACUUM (Tom)</para></listitem>
+<listitem><para>Nouveau paramètre pour initialiser le délai autorisé pour
+terminer l'authentification du client (Tom)</para></listitem>
+<listitem><para>Nouveau paramètre pour configurer le nombre maximum de fichiers
+ouverts (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Requêtes</title>
+<itemizedlist>
+<listitem><para>Les instructions ajoutées par des règles INSERT s'exécutent
+maintenant après l'INSERT (Jan)</para></listitem>
+<listitem><para>Empêche les noms de relation mal formés dans la liste cible
+(Bruce)</para></listitem>
+<listitem><para>Les NULL sont maintenant triés après les valeurs normales dans
+un ORDER BY (Tom)</para></listitem>
+<listitem><para>Nouveaux tests booléens IS UNKNOWN, IS NOT UNKNOWN
+(Tom)</para></listitem>
+<listitem><para>Nouveau mode de verrou SHARE UPDATE EXCLUSIVE
+(Tom)</para></listitem>
+<listitem><para>Nouvelle commande EXPLAIN ANALYZE affichant les temps
+d'exécution et les nombres de lignes (Martijn van Oosterhout)</para></listitem>
+<listitem><para>Correction d'un problème avec LIMIT et les sous-requêtes
+(Tom)</para></listitem>
+<listitem><para>Correction de LIMIT, DISTINCT ON placés dans des sous-requêtes
+(Tom)</para></listitem>
+<listitem><para>Correction d'EXCEPT/INTERSECT imbriqués (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Manipulation de schémas</title>
+<itemizedlist>
+<listitem><para>Correction de SERIAL pour les tables temporaires
+(Bruce)</para></listitem>
+<listitem><para>Autorise les séquences temporaires (Bruce)</para></listitem>
+<listitem><para>Les séquences utilisent maintenant int8 en interne
+(Tom)</para></listitem>
+<listitem><para>Le nouveau SERIAL8 crée des colonnes int8 avec des séquences,
+par défaut il s'agit de séquences SERIAL4 (Tom)</para></listitem>
+<listitem><para>Rend les OID optionnel en utilisant WITHOUT OIDS
+(Tom)</para></listitem>
+<listitem><para>Ajout de la synatxe %TYPE pour CREATE TYPE (Ian Lance
+Taylor)</para></listitem>
+<listitem><para>Ajout de ALTER TABLE / DROP CONSTRAINT pour les contraintes
+CHECK (Christopher Kings-Lynne)</para></listitem>
+<listitem><para>Nouveau CREATE OR REPLACE FUNCTION pour modifier la fonction
+existante (préservant la fonction OID) (Gavin Sherry)</para></listitem>
+<listitem><para>Ajout d'ALTER TABLE / ADD [ UNIQUE | PRIMARY ] (Christopher
+Kings-Lynne)</para></listitem>
+<listitem><para>Autorise le renommage de colonne dans les vues</para></listitem>
+<listitem><para>Fait que ALTER TABLE / RENAME COLUMN met à jour les noms de
+colonnes des index (Brent Verner)</para></listitem>
+<listitem><para>Correction pour ALTER TABLE / ADD CONSTRAINT ... CHECK avec les
+tables héritées (Stephan Szabo)</para></listitem>
+<listitem><para>ALTER TABLE RENAME met à jour correctement les arguments du
+déclencheurs de clé étrangère (Brent Verner)</para></listitem>
+<listitem><para>DROP AGGREGATE et COMMENT ON AGGREGATE acceptent maintenant un
+aggtype (Tom)</para></listitem>
+<listitem><para>Ajout de la conversion automatique du type de données en retour
+pour les fonctions SQL (Tom)</para></listitem>
+<listitem><para>Permet aux index GiST de gérer les NULL et les index Ã
+plusieurs clés (Oleg Bartunov, Teodor Sigaev, Tom)</para></listitem>
+<listitem><para>Activation des index partiels (Martijn van
+Oosterhout)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Commandes outils</title>
+<itemizedlist>
+<listitem><para>Ajout de RESET ALL, SHOW ALL (Marko Kreen)</para></listitem>
+<listitem><para>CREATE/ALTER USER/GROUP accepte les options dans n'importe quel
+ordre (Vince)</para></listitem>
+<listitem><para>Ajout de la fonctionnalité LOCK A, B, C (Neil
+Padgett)</para></listitem>
+<listitem><para>Nouvelle option ENCRYPTED/UNENCRYPTED pour CREATE/ALTER
+USER (Bruce)</para></listitem>
+<listitem><para>Le nouveau VACUUM léger ne verrouille pas la table ;
+l'ancienne sémantique est disponible en tant que VACUUM FULL
+(Tom)</para></listitem>
+<listitem><para>Désactivation de COPY TO/FROM sur les vues
+(Bruce)</para></listitem>
+<listitem><para>La chaîne COPY DELIMITERS doit avoir exactement un caractère
+(Tom)</para></listitem>
+<listitem><para>Le message d'avertissement du VACUUM pour le nombre de
+lignes d'index plus petit que l'en-tête apparaît maintenant si approprié
+(Martijn van Oosterhout)</para></listitem>
+<listitem><para>Correction des vérifications de droits pour CREATE INDEX
+(Tom)</para></listitem>
+<listitem><para>Interdit l'utilisation inappropriée de CREATE/DROP
+INDEX/TRIGGER/VIEW (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Types de données et fonctions</title>
+<itemizedlist>
+<listitem><para>SUM(), AVG(), COUNT() utilisent maintenant int8 en interne pour
+des questions de rapidité (Tom)</para></listitem>
+<listitem><para>Ajout de convert(), convert2() (Tatsuo)</para></listitem>
+<listitem><para>Nouvelle fonction bit_length() (Peter E)</para></listitem>
+<listitem><para>Fait que le "n" dans CHAR(n)/VARCHAR(n) représente le
+nombre de lettres, pas le nombre d'octets (Tatsuo)</para></listitem>
+<listitem><para>CHAR(), VARCHAR() rejetent maintenant les chaînes trop
+longues (Peter E)</para></listitem>
+<listitem><para>BIT VARYING rejete maintenant les chaînes de bits trop
+longues (Peter E)</para></listitem>
+<listitem><para>BIT rejete maintenant les chaînes de bits ne correspondant pas Ã
+la taille déclarée (Peter E)</para></listitem>
+<listitem><para>Fonctions de conversions texte pour INET, CIDR (Alex
+Pilosov)</para></listitem>
+<listitem><para>Opérateurs << et <<= indexables pour INET, CIDR
+(Alex Pilosov)</para></listitem>
+<listitem><para>Bytea \### requiert maintenant un numéro valide à trois chiffres
+octals</para></listitem>
+<listitem><para>Amélioration des comparaisons de Bytea, supporte maintenant =,
+<>, >, >=, < et <=</para></listitem>
+<listitem><para>Bytea supporte maintenant les index B-tree</para></listitem>
+<listitem><para>Bytea supporte maintenant LIKE, LIKE...ESCAPE, NOT LIKE, NOT
+LIKE...ESCAPE</para></listitem>
+<listitem><para>Bytea supporte maintenant la concaténation</para></listitem>
+<listitem><para>Nouvelles fonctions bytea : position, substring, trim,
+btrim et length</para></listitem>
+<listitem><para>Nouveau mode de fonction pour encode(), "escaped", convertit
+les bytea échappés de façon minimale vers/à partir du texte</para></listitem>
+<listitem><para>Ajout de pg_database_encoding_max_length()
+(Tatsuo)</para></listitem>
+<listitem><para>Ajout de la fonction pg_client_encoding()
+(Tatsuo)</para></listitem>
+<listitem><para>now() renvoie l'heure avec une précision à la milliseconde
+(Thomas)</para></listitem>
+<listitem><para>Nouveau type de données TIMESTAMP WITHOUT TIMEZONE
+(Thomas)</para></listitem>
+<listitem><para>Ajout de la spécification ISO date/time avec "T",
+yyyy-mm-ddThh:mm:ss
+(Thomas)</para></listitem>
+<listitem><para>Nouvelles fonctions de comparaisons des xid/int
+(Hiroshi)</para></listitem>
+<listitem><para>Ajout de la précision vers les types de données TIME, TIMESTAMP
+et INTERVAL (Thomas)</para></listitem>
+<listitem><para>Modification de la ligique de coercion des types pour
+tenter en premier lieu les fonctions compatibles binairement
+(Tom)</para></listitem>
+<listitem><para>Nouvelle fonction encode() installée par défaut (Marko
+Kreen)</para></listitem>
+<listitem><para>Amélioration des fonctions de conversion to_*() (Karel
+Zak)</para></listitem>
+<listitem><para>Optimisation de LIKE/ILIKE lors de l'utilisation de codage
+sur un seul octet (Tatsuo)</para></listitem>
+<listitem><para>Nouvelles fonctions dans contrib/pgcrypto : crypt(),
+hmac(), encrypt(), gen_salt() (Marko Kreen)</para></listitem>
+<listitem><para>Bonne description de la fonction translate()
+(Bruce)</para></listitem>
+<listitem><para>Ajout de l'argument INTERVAL pour SET TIME ZONE
+(Thomas)</para></listitem>
+<listitem><para>Ajout de la syntaxe INTERVAL YEAR TO MONTH (etc.)
+(Thomas)</para></listitem>
+<listitem><para>Optimisation des fonctions length lors de l'utilisation de
+codage sur un seul octet (Tatsuo)</para></listitem>
+<listitem><para>Corrections de path_inter, path_distance, path_length,
+dist_ppath pour gérer les chemins fermés (Curtis Barrett, Tom)</para></listitem>
+<listitem><para>octet_length(text) renvoie maintenant une longueur non
+compressée (Tatsuo, Bruce)</para></listitem>
+<listitem><para>Gestion du nom complet "July" dans les littéraux date/time (Greg
+Sabino Mullane)</para></listitem>
+<listitem><para>Quelques appels de fonction datatype() sont maintenant évalués
+différemment</para></listitem>
+<listitem><para>Ajout du support pour les spécifications d'heure julienne
+et ISO (Thomas)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Internationalisation</title>
+<itemizedlist>
+<listitem><para>Support de la langue nationale dans psql,
+<application>pg_dump</>, libpq et le serveur (Peter E)</para></listitem>
+<listitem><para>Traductions des messages en chinois (simplifié, traditionnel),
+tchèque, français, allemand, hongrois, russe, suèdois (Peter E, Serguei A.
+Mokhov, Karel Zak, Weiping He, Zhenbang Wei, Kovacs Zoltan)</para></listitem>
+<listitem><para>Rend trim, ltrim, rtrim, btrim, lpad, rpad, translate
+conscient du multi-octets (Tatsuo)</para></listitem>
+<listitem><para>Ajout du support de LATIN5,6,7,8,9,10 (Tatsuo)</para></listitem>
+<listitem><para>Ajout du support de ISO 8859-5,6,7,8 (Tatsuo)</para></listitem>
+<listitem><para>Le bon LATIN5 signifie ISO-8859-9, non pas ISO-8859-5
+(Tatsuo)</para></listitem>
+<listitem><para>Rend mic2ascii() conscient du non ASCII
+(Tatsuo)</para></listitem>
+<listitem><para>Rejète les séquences de caractères multi-octets invalides
+(Tatsuo)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title><application>PL/pgSQL</></title>
+<itemizedlist>
+<listitem><para>Utilise maintenant les portails pour les boucles SELECT,
+permettant d'énormes ensembles de résultats (Jan)</para></listitem>
+<listitem><para>Support de CURSOR et de REFCURSOR (Jan)</para></listitem>
+<listitem><para>Peut maintenant renvoyer des curseurs
+ouverts (Jan)</para></listitem>
+<listitem><para>Ajout de ELSEIF (Klaus Reger)</para></listitem>
+<listitem><para>Amélioration des rapports d'erreurs PL/pgSQL, incluant
+l'emplacement de l'erreur (Tom)</para></listitem>
+<listitem><para>Autorisation des mots clés IS ou FOR dans la déclaration de
+curseurs pour compatibilité (Bruce)</para></listitem>
+<listitem><para>Correction de SELECT ... FOR UPDATE (Tom)</para></listitem>
+<listitem><para>Correction de PERFORM lorsqu'il renvoie plusieurs lignes
+(Tom)</para></listitem>
+<listitem><para>PL/pgSQL utilise le code de coercion de type du serveur
+(Tom)</para></listitem>
+<listitem><para>Correction d'une perte mémoire (Jan, Tom)</para></listitem>
+<listitem><para>Rend optionnel le point virgule en fin (Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>PL/Perl</title>
+<itemizedlist>
+<listitem><para>Nouveau PL/Perl sans confiance du serveur (Alex
+Pilosov)</para></listitem>
+<listitem><para>PL/Perl est maintenant construit sur quelques plateformes même
+si libperl n'est pas une bibliothèque partagée (Peter E)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>PL/Tcl</title>
+<itemizedlist>
+<listitem><para>Rapporte maintenant errorInfo (Vsevolod Lobko)</para></listitem>
+<listitem><para>Ajout de la fonction spi_lastoid
+(bob at redivi.com)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>PL/Python</title>
+<itemizedlist>
+<listitem><para>... est nouveau (Andrew Bosma)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title><application>psql</></title>
+<itemizedlist>
+<listitem><para>\d affiche les index dans un groupe unique et primaire
+(Christopher Kings-Lynne)</para></listitem>
+<listitem><para>Autorise les points virgules à la fin dans les commandes
+antislashs (Greg Sabino Mullane)</para></listitem>
+<listitem><para>Lecture du mot de passe à partir de /dev/tty si
+possible</para></listitem>
+<listitem><para>Force une nouvelle invite du mot de passe lors d'un
+changement d'utilisateur et de base de données (Tatsuo, Tom)</para></listitem>
+<listitem><para>Formate le bon nombre de colonnes pour Unicode
+(Patrice)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title><application>libpq</></title>
+<itemizedlist>
+<listitem><para>Nouvelle fonction PQescapeString() pour échapper les guillemets
+dans les chaînes de commande (Florian Weimer)</para></listitem>
+<listitem><para>Nouvelle fonction PQescapeBytea() échappe les chaînes
+binaires à utiliser comme des littéraux de chaînes SQL</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>JDBC</title>
+<itemizedlist>
+<listitem><para>Renvoie l'OID d'INSERT (Ken K)</para></listitem>
+<listitem><para>Gestion d'un plus grand nombre de types de données (Ken
+K)</para></listitem>
+<listitem><para>Gestion des guillemets simples et des retours chariots dans les
+chaînes (Ken K)</para></listitem>
+<listitem><para>Gestion des variables NULL (Ken K)</para></listitem>
+<listitem><para>Correction pour la gestion des fuseaux horaires (Barry
+Lind)</para></listitem>
+<listitem><para>Amélioration du support de Druid</para></listitem>
+<listitem><para>Autorisation des caractères à huit bits avec un serveur non
+compatible avec le multi-octets (Barry Lind)</para></listitem>
+<listitem><para>Support des types BIT, BINARY (Ned Wolpert)</para></listitem>
+<listitem><para>Réduction de l'utilisation de la mémoire (Michael Stephens, Dave
+Cramer)</para></listitem>
+<listitem><para>Mise à jour de DatabaseMetaData (Peter E)</para></listitem>
+<listitem><para>Ajout de DatabaseMetaData.getCatalogs() (Peter
+E)</para></listitem>
+<listitem><para>Corrections du codage (Anders Bengtsson)</para></listitem>
+<listitem><para>Méthodes get/setCatalog (Jason Davies)</para></listitem>
+<listitem><para>DatabaseMetaData.getColumns() renvoie maintenant les valeurs
+par défaut des colonnes (Jason Davies)</para></listitem>
+<listitem><para>Amélioration de la performance de DatabaseMetaData.getColumns()
+(Jeroen van Vianen)</para></listitem>
+<listitem><para>Rassemblement de JDBC1 et JDBC2 (Anders
+Bengtsson)</para></listitem>
+<listitem><para>Améliorations des performances des transactions (Barry
+Lind)</para></listitem>
+<listitem><para>Corrections sur les tableaux (Greg Zoller)</para></listitem>
+<listitem><para>Ajout de la sérialisation</para></listitem>
+<listitem><para>Correction du traitement en lots (Rene
+Pijlman)</para></listitem>
+<listitem><para>Réorganisation de la méthode ExecSQL (Anders
+Bengtsson)</para></listitem>
+<listitem><para>Corrections de getColumn() (Jeroen van Vianen)</para></listitem>
+<listitem><para>Correction de la fonction isWriteable() (Rene
+Pijlman)</para></listitem>
+<listitem><para>Amélioration du passage des tests de conformance JDBC2 (Rene
+Pijlman)</para></listitem>
+<listitem><para>Ajout du type bytea (Barry Lind)</para></listitem>
+<listitem><para>Ajout de isNullable() (Rene Pijlman)</para></listitem>
+<listitem><para>Corrections pour la suite de tests JDBC date/time (Liam
+Stewart)</para></listitem>
+<listitem><para>Correction sur SELECT 'id' AS xxx FROM table (Dave
+Cramer)</para></listitem>
+<listitem><para>Correction de DatabaseMetaData pour afficher la bonne précision
+(Mark Lillywhite)</para></listitem>
+<listitem><para>Nouvelles clés getImported/getExported (Jason
+Davies)</para></listitem>
+<listitem><para>Support des mots de passe cryptés MD5 (Jeremy
+Wohl)</para></listitem>
+<listitem><para>Correction pour réellement utiliser le cache des types (Ned
+Wolpert)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>ODBC</title>
+<itemizedlist>
+<listitem><para>Suppression de la limite sur la taille des requêtes
+(Hiroshi)</para></listitem>
+<listitem><para>Suppression de la limite sur la taille du champ texte
+(Hiroshi)</para></listitem>
+<listitem><para>Correction de SQLPrimaryKeys en mode multi-octets
+(Hiroshi)</para></listitem>
+<listitem><para>Autorisation des appels de procédure ODBC
+(Hiroshi)</para></listitem>
+<listitem><para>Amélioration de la gestion des booléens (Aidan
+Mountford)</para></listitem>
+<listitem><para>La plupart des options de configuration sont maintenant
+configurables via le DSN (Hiroshi)</para></listitem>
+<listitem><para>Corrections des performances du multi-octets
+(Hiroshi)</para></listitem>
+<listitem><para>Autorise l'utilisation du pilote avec iODBC ou unixODBC (Peter
+E)</para></listitem>
+<listitem><para>Support du cryptage des mots de passe MD5
+(Bruce)</para></listitem>
+<listitem><para>Ajout de plusieurs fonctions de compatibilité dans odbc.sql
+(Peter E)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title><application>ECPG</></title>
+<itemizedlist>
+<listitem><para>Implémentation de EXECUTE ... INTO (Christof
+Petig)</para></listitem>
+<listitem><para>Support du descripteur de plusieurs lignes (c'est-Ã -dire
+CARDINALITY) (Christof Petig)</para></listitem>
+<listitem><para>Correction pour les paramètres de GRANT (Lee
+Kindness)</para></listitem>
+<listitem><para>Correction d'un bogue sur INITIALLY DEFERRED</para></listitem>
+<listitem><para>Plusieurs corrections de bogues (Michael, Christof
+Petig)</para></listitem>
+<listitem><para>Allocation automatique pour les tableaux de variable (int
+*ind_p=NULL)</para></listitem>
+<listitem><para>Allocation automatique pour les tableaux de chaînes (char
+**foo_pp=NULL)</para></listitem>
+<listitem><para>Correction de ECPGfree_auto_mem</para></listitem>
+<listitem><para>Tous les noms de fonction avec un lien externe sont maintenant
+préfixés par ECPG</para></listitem>
+<listitem><para>Corrections pour les tableaux de structures
+(Michael)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Interfaces diverses</title>
+<itemizedlist>
+<listitem><para>Correction de fetchone() pour Python (Gerhard
+Haring)</para></listitem>
+<listitem><para>Utilisation d'UTF, Unicode dans Tcl lorsqu'approprié (Vsevolod
+Lobko, Reinhard Max)</para></listitem>
+<listitem><para>Ajout de COPY TO/FROM dans Tcl (ljb)</para></listitem>
+<listitem><para>Empêche la sortie des classes d'opérateurs d'index par défaut
+dans <application>pg_dump</> (Tom)</para></listitem>
+<listitem><para>Correction d'une perte mémoire dans libpgeasy
+(Bruce)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Construction et installation</title>
+<itemizedlist>
+<listitem><para>Corrections sur configure, le chargeur dynamique et les
+bibliothèques partagées (Peter E)</para></listitem>
+<listitem><para>Corrections dans le port QNX 4 (Bernd
+Tegge)</para></listitem>
+<listitem><para>Corrections dans les ports Cygwin et Windows (Jason
+Tishler, Gerhard Haring, Dmitry Yurtaev, Darko Prenosil, Mikhail
+Terekhov)</para></listitem>
+<listitem><para>Corrections pour les échecs de communication par socket sous
+Windows (Magnus, Mikhail Terekhov)</para></listitem>
+<listitem><para>Correction de compilation pour Hurd (Oliver
+Elphick)</para></listitem>
+<listitem><para>Corrections sur BeOS (Cyril Velter)</para></listitem>
+<listitem><para>Suppression de configure --enable-unicode-conversion, activé
+maintenant par le multi-octets (Tatsuo)</para></listitem>
+<listitem><para>Corrections pour AIX (Tatsuo, Andreas)</para></listitem>
+<listitem><para>Correction du make parallèle (Peter E)</para></listitem>
+<listitem><para>Installation des pages man du langage SQL dans des répertoires
+spécifiques aux OS (Peter E)</para></listitem>
+<listitem><para>Renommage de config.h en pg_config.h (Peter E)</para></listitem>
+<listitem><para>Réorganisation de l'emplacement d'installation des fichiers
+d'en-tête (Peter E)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Code source</title>
+<itemizedlist>
+<listitem><para>Suppression de SEP_CHAR (Bruce)</para></listitem>
+<listitem><para>Nouvelles accroches GUC (Tom)</para></listitem>
+<listitem><para>Assemblage de GUC et de la gestion de la ligne de commandes
+(Marko Kreen)</para></listitem>
+<listitem><para>Suppression de EXTEND INDEX (Martijn van Oosterhout,
+Tom)</para></listitem>
+<listitem><para>Nouvel outil pgjindent pour indenter le code java
+(Bruce)</para></listitem>
+<listitem><para>Suppression de la définition de true/false lors d'une
+compilation sous C++ (Leandro Fanzone, Tom)</para></listitem>
+<listitem><para>Corrections à pgindent (Bruce, Tom)</para></listitem>
+<listitem><para>Remplacement de strcasecmp() avec strcmp() lorsque cela est
+approprié (Peter E)</para></listitem>
+<listitem><para>Amélioration de la portabilité dynahash (Tom)</para></listitem>
+<listitem><para>Ajout de l'utilisation de 'volatile' dans les structures
+spinlock</para></listitem>
+<listitem><para>Amélioration de la logique de gestion des signaux
+(Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+
+ <sect3>
+ <title>Contrib</title>
+<itemizedlist>
+<listitem><para>Nouveau contrib/rtree_gist (Oleg Bartunov, Teodor
+Sigaev)</para></listitem>
+<listitem><para>Nouveau contrib/tsearch, indexage de textes complets (Oleg,
+Teodor Sigaev)</para></listitem>
+<listitem><para>Ajout de contrib/dblink pour l'accès distant aux bases de
+données (Joe Conway)</para></listitem>
+<listitem><para>Outil de conversion Oracle contrib/ora2pg (Gilles
+Darold)</para></listitem>
+<listitem><para>Outil de conversion XML contrib/xml (John
+Gray)</para></listitem>
+<listitem><para>Corrections sur contrib/fulltextindex (Christopher
+Kings-Lynne)</para></listitem>
+<listitem><para>Nouveau contrib/fuzzystrmatch avec levenshtein et métaphone,
+rassemblement de soundex (Joe Conway)</para></listitem>
+<listitem><para>Ajout des requêtes booléennes dans contrib/intarray, des
+recherches binaires, et correctifs (Oleg Bartunov)</para></listitem>
+<listitem><para>Nouvel outil pg_upgrade (Bruce)</para></listitem>
+<listitem><para>Ajout de nouvelles options à pg_resetxlog (Bruce,
+Tom)</para></listitem>
+</itemizedlist>
+ </sect3>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-1-3">
+ <title>Sortie 7.1.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2001-08-15</simpara>
+ </note>
+
+ <sect2>
+ <title>Migration vers la version 7.1.3</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant 7.1.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Remove unused WAL segements of large transactions (Tom)
+Multiaction rule fix (Tom)
+PL/pgSQL memory allocation fix (Jan)
+VACUUM buffer fix (Tom)
+Regression test fixes (Tom)
+pg_dump fixes for GRANT/REVOKE/comments on views, user-defined types (Tom)
+Fix subselects with DISTINCT ON or LIMIT (Tom)
+BeOS fix
+Disable COPY TO/FROM a view (Tom)
+Cygwin build (Jason Tishler)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-1-2">
+ <title>Sortie 7.1.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2001-05-11</simpara>
+ </note>
+
+ <para>
+ Il n'y a qu'une seule correction depuis la 7.1.1.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.1.2</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant 7.1.X.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Correction des SELECT qui ne renvoient aucune ligne dans PL/pgSQL
+Correction pour l'arrêt brutal suite à l'utilisation d'un antislash dans psql
+Correction du droit sur l'intégrité référentielles
+Corrections sur l'optimiseur
+Nettoyages de pg_dump
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-1-1">
+ <title>Sortie 7.1.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2001-05-05</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.1.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.1.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.1.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Correction pour l'opérateur numérique MODULO (Tom)
+Corrections sur pg_dump (Philip)
+pg_dump peut sauvegarder des bases de données d'une version 7.0 (Philip)
+Corrections sur readline 4.2 (Peter E)
+Corrections sur JOIN (Tom)
+Corrections sur AIX, MSWIN, VAX, N32K (Tom)
+Corrections sur Multibytes (Tom)
+Corrections sur Unicode (Tatsuo)
+Amélioration de l'optimiseur (Tom)
+Correction pour les lignes complètes dans les fonctions (Tom)
+Correction pour pg_ctl et les chaînes d'options comprenant des espaces (Peter E)
+Corrections sur ODBC (Hiroshi)
+EXTRACT prend maintenant prendre un argument de type chaîne (Thomas)
+Corrections sur Python (Darcy)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-1">
+ <title>Sortie 7.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2001-04-13</simpara>
+ </note>
+
+ <para>
+ Cette version s'occupe principalement de la suppression des limitations
+ qui ont existé dans le code de <productname>PostgreSQL</productname>
+ depuis de nombreuses années.
+ </para>
+
+ <para>
+ Modifications majeures dans cette version :
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>
+ Write-ahead Log (WAL)
+ </term>
+ <listitem>
+ <para>
+Pour maintenant la cohérence dans le cas d'un arrêt brutal du système
+d'exploitation, les précédentes versions de <productname>PostgreSQL</productname>
+forçaient les modifications des données sur disque avant chaque validation de
+transaction. Avec les WAL, seul un fichier de traces doit être mis sur disque,
+ce qui améliore grandement les performances. Si vous utilisiez -F dans les
+précédentes versions pour désactiver les envois sur le disque, vous pourriez
+considérer l'arrêt de l'utilisation de cette option.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ TOAST
+ </term>
+ <listitem>
+ <para>
+ TOAST - Les précédentes versions avaient une limite de longueur
+de la ligne, typiquement 8 Ko - 32 Ko. Cette limite rendait
+difficile le stockage de champs de texte longs. Avec TOAST, les longues
+lignes de longueur indéfinie peuvent être stockées avec de bonnes performances.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Jointures externes
+ </term>
+ <listitem>
+ <para>
+Nous supportons maintenant les jointures externes. Le contournement UNION/NOT
+IN pour les jointures externes n'est plus nécessaire. Nous utilisons la syntaxe
+SQL92 des jointures externes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Gestionnaire de fonctions
+ </term>
+ <listitem>
+ <para>
+Le précédent gestionnaire de fonctions C ne gérait pas correctement les valeurs
+NULL, pas plus qu'il ne supportait les <acronym>CPU</acronym> 64 bits (Alpha).
+Le nouveau gestionnaire de fonctions le fait. Vous pouvez continuer à utiliser
+vos anciennes fonctions personnalisées mais vous pourriez avoir besoin de les
+réécrire dans le futur pour utiliser la nouvelle interface d'appel du
+gestionnaire de fonctions.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Requêtes complexes
+ </term>
+ <listitem>
+ <para>
+Un grand nombre des requêtes complexes, qui n'étaient pas supportées dans les
+précédentes versions, fonctionnent maintenant. Beaucoup de combinaisons de
+vues, d'agrégats, UNION, LIMIT, de curseurs, de sous-requêtes et de tables
+héritées fonctionnent maintenant sans soucis. Les tables héritées sont
+maintenant accédées par défaut. Les sous-requêtes dans FROM sont aussi
+supportées.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ <sect2>
+ <title>Migration vers la version 7.1</title>
+
+ <para>
+ Une sauvegarde/restauration utilisant pg_dump est requis pour ceux
+ souhaitant migrer leur données des versions précédentes.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Many multibyte/Unicode/locale fixes (Tatsuo and others)
+More reliable ALTER TABLE RENAME (Tom)
+Kerberos V fixes (David Wragg)
+Fix for INSERT INTO...SELECT where targetlist has subqueries (Tom)
+Prompt username/password on standard error (Bruce)
+Large objects inv_read/inv_write fixes (Tom)
+Fixes for to_char(), to_date(), to_ascii(), and to_timestamp() (Karel,
+ Daniel Baldoni)
+Prevent query expressions from leaking memory (Tom)
+Allow UPDATE of arrays elements (Tom)
+Wake up lock waiters during cancel (Hiroshi)
+Fix rare cursor crash when using hash join (Tom)
+Fix for DROP TABLE/INDEX in rolled-back transaction (Hiroshi)
+Fix psql crash from \l+ if MULTIBYTE enabled (Peter E)
+Fix truncation of rule names during CREATE VIEW (Ross Reedstrom)
+Fix PL/perl (Alex Kapranoff)
+Disallow LOCK on views (Mark Hollomon)
+Disallow INSERT/UPDATE/DELETE on views (Mark Hollomon)
+Disallow DROP RULE, CREATE INDEX, TRUNCATE on views (Mark Hollomon)
+Allow PL/pgSQL accept non-ASCII identifiers (Tatsuo)
+Allow views to proper handle GROUP BY, aggregates, DISTINCT (Tom)
+Fix rare failure with TRUNCATE command (Tom)
+Allow UNION/INTERSECT/EXCEPT to be used with ALL, subqueries, views,
+ DISTINCT, ORDER BY, SELECT...INTO (Tom)
+Fix parser failures during aborted transactions (Tom)
+Allow temporary relations to properly clean up indexes (Bruce)
+Fix VACUUM problem with moving rows in same page (Tom)
+Modify pg_dump to better handle user-defined items in template1 (Philip)
+Allow LIMIT in VIEW (Tom)
+Require cursor FETCH to honor LIMIT (Tom)
+Allow PRIMARY/FOREIGN Key definitions on inherited columns (Stephan)
+Allow ORDER BY, LIMIT in subqueries (Tom)
+Allow UNION in CREATE RULE (Tom)
+Make ALTER/DROP TABLE rollback-able (Vadim, Tom)
+Store initdb collation in pg_control so collation cannot be changed (Tom)
+Fix INSERT...SELECT with rules (Tom)
+Fix FOR UPDATE inside views and subselects (Tom)
+Fix OVERLAPS operators conform to SQL92 spec regarding NULLs (Tom)
+Fix lpad() and rpad() to handle length less than input string (Tom)
+Fix use of NOTIFY in some rules (Tom)
+Overhaul btree code (Tom)
+Fix NOT NULL use in Pl/pgSQL variables (Tom)
+Overhaul GIST code (Oleg)
+Fix CLUSTER to preserve constraints and column default (Tom)
+Improved deadlock detection handling (Tom)
+Allow multiple SERIAL columns in a table (Tom)
+Prevent occasional index corruption (Vadim)
+
+Enhancements
+------------
+Add OUTER JOINs (Tom)
+Function manager overhaul (Tom)
+Allow ALTER TABLE RENAME on indexes (Tom)
+Improve CLUSTER (Tom)
+Improve ps status display for more platforms (Peter E, Marc)
+Improve CREATE FUNCTION failure message (Ross)
+JDBC improvements (Peter, Travis Bauer, Christopher Cain, William Webber,
+ Gunnar)
+Grand Unified Configuration scheme/GUC. Many options can now be set in
+ data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
+Improved handling of file descriptor cache (Tom)
+New warning code about auto-created table alias entries (Bruce)
+Overhaul initdb process (Tom, Peter E)
+Overhaul of inherited tables; inherited tables now accessed by default;
+ new ONLY key word prevents it (Chris Bitmead, Tom)
+ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
+ Michael Fork)
+Allow renaming of temp tables (Tom)
+Overhaul memory manager contexts (Tom)
+pg_dumpall uses CREATE USER or CREATE GROUP rather using COPY (Peter E)
+Overhaul pg_dump (Philip Warner)
+Allow pg_hba.conf secondary password file to specify only username (Peter E)
+Allow TEMPORARY or TEMP key word when creating temporary tables (Bruce)
+New memory leak checker (Karel)
+New SET SESSION CHARACTERISTICS (Thomas)
+Allow nested block comments (Thomas)
+Add WITHOUT TIME ZONE type qualifier (Thomas)
+New ALTER TABLE ADD CONSTRAINT (Stephan)
+Use NUMERIC accumulators for INTEGER aggregates (Tom)
+Overhaul aggregate code (Tom)
+New VARIANCE and STDDEV() aggregates
+Improve dependency ordering of pg_dump (Philip)
+New pg_restore command (Philip)
+New pg_dump tar output option (Philip)
+New pg_dump of large objects (Philip)
+New ESCAPE option to LIKE (Thomas)
+New case-insensitive LIKE - ILIKE (Thomas)
+Allow functional indexes to use binary-compatible type (Tom)
+Allow SQL functions to be used in more contexts (Tom)
+New pg_config utility (Peter E)
+New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
+ (Jan)
+New PL/pgSQL GET DIAGNOSTICS statement for SPI value access (Jan)
+New quote_identifiers() and quote_literal() functions (Jan)
+New ALTER TABLE table OWNER TO user command (Mark Hollomon)
+Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)
+Update PyGreSQL to version 3.1 (D'Arcy)
+Store tables as files named by OID (Vadim)
+New SQL function setval(seq,val,bool) for use in pg_dump (Philip)
+Require DROP VIEW to remove views, no DROP TABLE (Mark)
+Allow DROP VIEW view1, view2 (Mark)
+Allow multiple objects in DROP INDEX, DROP RULE, and DROP TYPE (Tom)
+Allow automatic conversion to/from Unicode (Tatsuo, Eiji)
+New /contrib/pgcrypto hashing functions (Marko Kreen)
+New pg_dumpall --globals-only option (Peter E)
+New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
+New AT TIME ZONE syntax (Thomas)
+Allow location of Unix domain socket to be configurable (David J. MacKenzie)
+Allow postmaster to listen on a specific IP address (David J. MacKenzie)
+Allow socket path name to be specified in hostname by using leading slash
+ (David J. MacKenzie)
+Allow CREATE DATABASE to specify template database (Tom)
+New utility to convert MySQL schema dumps to SQL92 and PostgreSQL (Thomas)
+New /contrib/rserv replication toolkit (Vadim)
+New file format for COPY BINARY (Tom)
+New /contrib/oid2name to map numeric files to table names (B Palmer)
+New "idle in transaction" ps status message (Marc)
+Update to pgaccess 0.98.7 (Constantin Teodorescu)
+pg_ctl now defaults to -w (wait) on shutdown, new -l (log) option
+Add rudimentary dependency checking to pg_dump (Philip)
+
+Types
+-----
+Fix INET/CIDR type ordering and add new functions (Tom)
+Make OID behave as an unsigned type (Tom)
+Allow BIGINT as synonym for INT8 (Peter E)
+New int2 and int8 comparison operators (Tom)
+New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
+CHAR() no longer faster than VARCHAR() because of TOAST (Tom)
+New GIST seg/cube examples (Gene Selkov)
+Improved round(numeric) handling (Tom)
+Fix CIDR output formatting (Tom)
+New CIDR abbrev() function (Tom)
+
+Performance
+-----------
+Write-Ahead Log (WAL) to provide crash recovery with less performance
+ overhead (Vadim)
+ANALYZE stage of VACUUM no longer exclusively locks table (Bruce)
+Reduced file seeks (Denis Perchine)
+Improve BTREE code for duplicate keys (Tom)
+Store all large objects in a single table (Denis Perchine, Tom)
+Improve memory allocation performance (Karel, Tom)
+
+Source Code
+-----------
+New function manager call conventions (Tom)
+SGI portability fixes (David Kaelbling)
+New configure --enable-syslog option (Peter E)
+New BSDI README (Bruce)
+configure script moved to top level, not /src (Peter E)
+Makefile/configuration/compilation overhaul (Peter E)
+New configure --with-python option (Peter E)
+Solaris cleanups (Peter E)
+Overhaul /contrib Makefiles (Karel)
+New OpenSSL configuration option (Magnus, Peter E)
+AIX fixes (Andreas)
+QNX fixes (Maurizio)
+New heap_open(), heap_openr() API (Tom)
+Remove colon and semi-colon operators (Thomas)
+New pg_class.relkind value for views (Mark Hollomon)
+Rename ichar() to chr() (Karel)
+New documentation for btrim(), ascii(), chr(), repeat() (Karel)
+Fixes for NT/Cygwin (Pete Forman)
+AIX port fixes (Andreas)
+New BeOS port (David Reid, Cyril Velter)
+Add proofreader's changes to docs (Addison-Wesley, Bruce)
+New Alpha spinlock code (Adriaan Joubert, Compaq)
+UnixWare port overhaul (Peter E)
+New Darwin/MacOS X port (Peter Bierman, Bruce Hartzler)
+New FreeBSD Alpha port (Alfred)
+Overhaul shared memory segments (Tom)
+Add IBM S/390 support (Neale Ferguson)
+Moved macmanuf to /contrib (Larry Rosenman)
+Syslog improvements (Larry Rosenman)
+New template0 database that contains no user additions (Tom)
+New /contrib/cube and /contrib/seg GIST sample code (Gene Selkov)
+Allow NetBSD's libedit instead of readline (Peter)
+Improved assembly language source code format (Bruce)
+New contrib/pg_logger
+New --template option to createdb
+New contrib/pg_control utility (Oliver)
+New FreeBSD tools ipc_check, start-scripts/freebsd
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-0-3">
+ <title>Sortie 7.0.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2000-11-11</simpara>
+ </note>
+
+ <para>
+ Cette version comporte plusieurs corrections sur la version 7.0.2.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.0.3</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant une version 7.0.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Corrections sur Jdbc (Peter)
+Corrections sur les objets larges (Tom)
+Correction d'un trou dans COPY WITH OIDS (Tom)
+Correction du parcours d'index inverse (Tom)
+Correction de SELECT ... FOR UPDATE pour qu'il vérifie les clés dupliquées
+(Hiroshi)
+Ajout de --enable-syslog à configure (Marc)
+Correction de l'annulation d'une transaction à la fin du serveur dans de rares
+cas (Tom)
+Correction sur \l+ de psql lorsque le multi-octets est activé (Tatsuo)
+Autorise PL/pgSQL Ã accepter les identifiants non ascii (Tatsuo)
+Fait que vacuum vide toujours les tampons (Tom)
+Correction pour autoriser l'annulation lors de l'attente d'un verrou (Hiroshi)
+Correction d'un problème d'allocation mémoire dans le code d'authentification de
+l'utilisateur (Tom)
+Suppression d'une utilisation boguée de int4out() (Tom)
+Corrections pour de nombreuses sous-requêtes dans COALESCE ou
+BETWEEN (Tom)
+Corrections pour les déclencheurs en échec sur un en-tête ouvert dans certains
+cas (Jeroen van Vianen)
+Correction pour la sélectivité erronée des différences (Tom)
+Correction pour l'utilisation erronée de strcmp() (Tom)
+Correction du bogue où le gestionnaire de stockage accède à des éléments en
+dehors de la fin du fichier (Tom)
+Correction pour inclure le message errno du noyau dans tous les messages elog
+de smgr (Tom)
+Correction pour le chemin '.' ne faisant pas partie du PATH au moment de la
+construction (SL Baur)
+Correction pour l'erreur de manque de descripteurs de fichiers (Tom)
+Correction pour sauvegarder le drapeau 'iscachable' des fonctions dans pg_dump
+(Tom)
+Correction pour les sous-requêtes dans la liste des cibles du nœud Append
+(Tom)
+Correction pour les plans de jointures assemblées (Tom)
+Correction de l'échec de TRUNCATE sur les relations avec index (Tom)
+Évite le redémarrage de toute la base de données sur une erreur d'écriture
+(Hiroshi)
+Correction de nodeMaterial pour honorer chgParam en recalculant sa sortie (Tom)
+Correction du problème de VACUUM lors du déplacement de la chaîne de mise à jour
+des versions de lignes lorsque la source et la destination d'une version de
+ligne se trouve sur la même page (Tom)
+Correction de user.c CommandCounterIncrement (Tom)
+Correction des problèmes de limite AM/PM dans to_char() (Karel Zak)
+Correction de la gestion de l'agrégat TIME (Tom)
+Correction de to_char() pour éviter la génération d'un codedump sur les
+entrées NULL (Tom)
+Correction d'un tampon (Tom)
+Correction pour les insertion/copie de chaînes multi-octets plus longues dans
+des types de données char() (Tatsuo)
+Correction sur les arrêt brutaux du moteur, à l'annulation (Tom)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-0-2">
+ <title>Sortie 7.0.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2000-06-05</simpara>
+ </note>
+
+ <para>
+ C'est un nouveau paquetage de 7.0.1 avec une documentation ajoutée.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 7.0.2</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Ajout de la documentation dans l'archive tar.
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-7-0-1">
+ <title>Sortie 7.0.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2000-06-01</simpara>
+ </note>
+
+ <para>
+ Ceci est une version nettoyée de la 7.0.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 7.0.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 7.0.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Correction de nombreux problèmes avec CLUSTER (Tom)
+Autorise le fonctionnement de ALTER TABLE RENAME avec les index (Tom)
+Correction de plpgsql pour gérer datetime->timestamp et timespan->interval
+(Bruce)
+Nouvelle option --with-setproctitle de configure pour utiliser setproctitle()
+(Marc, Bruce)
+Correction l'erreur de décalage d'un dans ResultSet à partir de la 6.5.3 et
+ultérieur.
+Corrections sur ResultSet de jdbc (Joseph Shraibman)
+Configuration de l'optimiseur (Tom)
+Correction de la création d'un utilisateur pour pgaccess
+Correction pour les échecs d'UNLISTEN
+Corrections sur IRIX (David Kaelbling)
+Corrections sur QNX (Andreas Kardos)
+Réduction du niveau de verrou pour COPY IN (Tom)
+Modification de libpqeasy pour utiliser les paramètres de style PQconnectdb()
+(Bruce)
+Correction de pg_dump pour gérer les index sur les OID (Tom)
+Correction d'une petite perte mémoire (Tom)
+Correction de createdb/dropdb pour Solaris (Tatsuo)
+Correction pour les connexions non bloquantes (Alfred Perlstein)
+Correction pour une récupération sale après des échecs de RENAME TABLE (Tom)
+Copie de pg_ident.conf.sample dans le répertoire /lib à l'installation (Bruce)
+Ajout du support de SJIS UDC (NEC selection IBM kanji) (Eiji Tokuya)
+Correction des messages syslog trop longs (Tatsuo)
+Correction d'un problème avec les index trop longs entre guillemets (Tom)
+Correction de ResultSet.getTimestamp() pour JDBC (Gregory Krasnow & Floyd
+Marinescu)
+Modifications d'ecpg (Michael)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-0">
+ <title>Sortie 7.0</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>2000-05-08</simpara>
+ </note>
+
+ <para>
+ Cette version contient de nombreuses améliorations dans beaucoup de
+ domaines, démontrant l'acroissement continu de
+ <productname>PostgreSQL</productname>. Il y a plus d'améliorations et de
+ corrections dans la 7.0 que dans n'importe quelle version précédente. Les
+ développeurs ont confiance dans le fait qu'il s'agit de la meilleure version
+ Ã ce jour ; nous avons fait de notre mieux pour sortir des versions
+ solides et celle-ci ne fait pas exception.
+ </para>
+
+ <para>
+ Modifications majeures dans cette version :
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term>
+ Clés étrangères
+ </term>
+ <listitem>
+ <para>
+ Les clés étrangères sont maintenant implémentées avec l'exception des
+ clés étrangères PARTIAL MATCH. Beaucoup d'utilisateurs ont demandé cette
+ fonctionnalité et nous sommes heureux de leur offrir.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Revue de l'optimiseur
+ </term>
+ <listitem>
+ <para>
+ En continuant sur un travail commencé un an auparavant, l'optimiseur a
+ été amélioré, permettant la sélection de meilleurs plans de requêtes et
+ de performance plus rapide avec une utilisation moindre de la mémoire.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Mise à jour de <application>psql</application>
+ </term>
+ <listitem>
+ <para>
+ <application>psql</application>, notre terminal interactif, a été mis Ã
+ jour avec une variété de nouvelles fonctionnalités. Voir la page de
+ manuel de <application>psql</application> pour les détails.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Syntaxe de jointure
+ </term>
+ <listitem>
+ <para>
+ La syntaxe de jointure SQL92 est maintenant supportée, bien qu'il ne
+ s'agisse que des <literal>INNER JOIN</> actuellement. <literal>JOIN</>,
+ <literal>NATURAL JOIN</>, <literal>JOIN</>/<literal>USING</> et
+ <literal>JOIN</>/<literal>ON</> sont disponibles ainsi que les noms de
+ corrélation des colonnes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ <sect2>
+ <title>Migration vers la version 7.0</title>
+
+ <para>
+ Une sauvegarde/restauration utilisant <application>pg_dump</application>
+ est requis pour ceux souhaitant migrer leur données des versions
+ précédentes de <productname>PostgreSQL</productname>. Pour ceux mettant Ã
+ jour à partir de 6.5.*, vous pourriez utiliser à la place
+ <application>pg_upgrade</application> pour mettre à jour cette
+ version ; néanmoins, une installation complète avec
+ sauvegarde/restauration est toujours la méthode la plus robuste pour les
+ mises à jour.
+ </para>
+
+ <para>
+ Les problèmes d'interface et de compatibilité à considérer pour cette
+ nouvelle version incluent :
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Les types date/time <type>datetime</type> et
+ <type>timespan</type> ont été remplacé par les types définis par SQL92
+ <type>timestamp</type> et <type>interval</type>. Bien qu'il y ait eu
+ quelques efforts pour faciliter la transition en permettant Ã
+ <productname>PostgreSQL</productname> de reconnaitre les noms de type
+ obsolètes et de les traduire dans les noms des nouveaux types, ce
+ mécanisme n'est pas complètement transparent pour votre application
+ existante.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ L'optimiseur a été substantiellement amélioré dans le domaine de
+ l'estimation du coût d'une requête. Dans certains cas, ceci résultera en
+ des temps de requêtes moindres car l'optimiseur fera un meilleur choix
+ de plan de requêtes. Néanmoins, sur un petit nombre de cas, impliquant
+ habituellement des distributions pathologiques de données, vos temps de
+ requêtes pourraient augmenter. Si vous gérez de gros volumes de données,
+ vous pourriez vouloir vérifier vos requêtes au niveau de leur
+ performance.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Les interfaces <acronym>JDBC</acronym> et <acronym>ODBC</acronym> ont
+ été mises à jour et étendues.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ La fonction de chaîne <function>CHAR_LENGTH</function> est maintenant
+ une fonction native. Les versions précédentes traduisaient ceci en un
+ appel à <function>LENGTH</function>, ce qui pouvait résulter en une
+ ambiguïté avec les autres types implémentant <function>LENGTH</function>
+ tels que les types géométriques.
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Prevent function calls exceeding maximum number of arguments (Tom)
+Improve CASE construct (Tom)
+Fix SELECT coalesce(f1,0) FROM int4_tbl GROUP BY f1 (Tom)
+Fix SELECT sentence.words[0] FROM sentence GROUP BY sentence.words[0] (Tom)
+Fix GROUP BY scan bogue (Tom)
+Improvements in SQL grammar processing (Tom)
+Fix for views involved in INSERT ... SELECT ... (Tom)
+Fix for SELECT a/2, a/2 FROM test_missing_target GROUP BY a/2 (Tom)
+Fix for subselects in INSERT ... SELECT (Tom)
+Prevent INSERT ... SELECT ... ORDER BY (Tom)
+Fixes for relations greater than 2GB, including vacuum
+Improve propagating system table changes to other backends (Tom)
+Improve propagating user table changes to other backends (Tom)
+Fix handling of temp tables in complex situations (Bruce, Tom)
+Allow table locking at table open, improving concurrent reliability (Tom)
+Properly quote sequence names in pg_dump (Ross J. Reedstrom)
+Prevent DROP DATABASE while others accessing
+Prevent any rows from being returned by GROUP BY if no rows processed (Tom)
+Fix SELECT COUNT(1) FROM table WHERE ...' if no rows matching WHERE (Tom)
+Fix pg_upgrade so it works for MVCC (Tom)
+Fix for SELECT ... WHERE x IN (SELECT ... HAVING SUM(x) > 1) (Tom)
+Fix for "f1 datetime DEFAULT 'now'" (Tom)
+Fix problems with CURRENT_DATE used in DEFAULT (Tom)
+Allow comment-only lines, and ;;; lines too. (Tom)
+Improve recovery after failed disk writes, disk full (Hiroshi)
+Fix cases where table is mentioned in FROM but not joined (Tom)
+Allow HAVING clause without aggregate functions (Tom)
+Fix for "--" comment and no trailing newline, as seen in perl interface
+Improve pg_dump failure error reports (Bruce)
+Allow sorts and hashes to exceed 2GB file sizes (Tom)
+Fix for pg_dump dumping of inherited rules (Tom)
+Fix for NULL handling comparisons (Tom)
+Fix inconsistent state caused by failed CREATE/DROP commands (Hiroshi)
+Fix for dbname with dash
+Prevent DROP INDEX from interfering with other backends (Tom)
+Fix file descriptor leak in verify_password()
+Fix for "Unable to identify an operator =$" problem
+Fix ODBC so no segfault if CommLog and Debogue enabled (Dirk Niggemann)
+Fix for recursive exit call (Massimo)
+Fix for extra-long timezones (Jeroen van Vianen)
+Make pg_dump preserve primary key information (Peter E)
+Prevent databases with single quotes (Peter E)
+Prevent DROP DATABASE inside transaction (Peter E)
+ecpg memory leak fixes (Stephen Birch)
+Fix for SELECT NULL::text, SELECT int4fac(NULL) and SELECT 2 + (NULL) (Tom)
+Y2K timestamp fix (Massimo)
+Fix for VACUUM 'HEAP_MOVED_IN was not expected' errors (Tom)
+Fix for views with tables/columns containing spaces (Tom)
+Prevent privileges on indexes (Peter E)
+Fix for spinlock stuck problem when error is generated (Hiroshi)
+Fix ipcclean on Linux
+Fix handling of NULL constraint conditions (Tom)
+Fix memory leak in odbc driver (Nick Gorham)
+Fix for privilege check on UNION tables (Tom)
+Fix to allow SELECT 'a' LIKE 'a' (Tom)
+Fix for SELECT 1 + NULL (Tom)
+Fixes to CHAR
+Fix log() on numeric type (Tom)
+Deprecate ':' and ';' operators
+Allow vacuum of temporary tables
+Disallow inherited columns with the same name as new columns
+Recover or force failure when disk space is exhausted (Hiroshi)
+Fix INSERT INTO ... SELECT with AS columns matching result columns
+Fix INSERT ... SELECT ... GROUP BY groups by target columns not source columns
+(Tom)
+Fix CREATE TABLE test (a char(5) DEFAULT text '', b int4) with INSERT (Tom)
+Fix UNION with LIMIT
+Fix CREATE TABLE x AS SELECT 1 UNION SELECT 2
+Fix CREATE TABLE test(col char(2) DEFAULT user)
+Fix mismatched types in CREATE TABLE ... DEFAULT
+Fix SELECT * FROM pg_class where oid in (0,-1)
+Fix SELECT COUNT('asdf') FROM pg_class WHERE oid=12
+Prevent user who can create databases can modifying pg_database table (Peter E)
+Fix btree to give a useful elog when key > 1/2 (page - overhead) (Tom)
+Fix INSERT of 0.0 into DECIMAL(4,4) field (Tom)
+
+Enhancements
+------------
+New CLI interface include file sqlcli.h, based on SQL3/SQL98
+Remove all limits on query length, row length limit still exists (Tom)
+Update jdbc protocol to 2.0 (Jens Glaser <email>jens at jens.de</email>)
+Add TRUNCATE command to quickly truncate relation (Mike Mascari)
+Fix to give super user and createdb user proper update catalog rights (Peter E)
+Allow ecpg bool variables to have NULL values (Christof)
+Issue ecpg error if NULL value for variable with no NULL indicator (Christof)
+Allow ^C to cancel COPY command (Massimo)
+Add SET FSYNC and SHOW PG_OPTIONS commands(Massimo)
+Function name overloading for dynamically-loaded C functions (Frankpitt)
+Add CmdTuples() to libpq++(Vince)
+New CREATE CONSTRAINT TRIGGER and SET CONSTRAINTS commands(Jan)
+Allow CREATE FUNCTION/WITH clause to be used for all language types
+configure --enable-debogue adds -g (Peter E)
+configure --disable-debogue removes -g (Peter E)
+Allow more complex default expressions (Tom)
+First real FOREIGN KEY constraint trigger functionality (Jan)
+Add FOREIGN KEY ... MATCH FULL ... ON DELETE CASCADE (Jan)
+Add FOREIGN KEY ... MATCH <unspecified> referential actions (Don Baccus)
+Allow WHERE restriction on ctid (physical heap location) (Hiroshi)
+Move pginterface from contrib to interface directory, rename to pgeasy (Bruce)
+Change pgeasy connectdb() parameter ordering (Bruce)
+Require SELECT DISTINCT target list to have all ORDER BY columns (Tom)
+Add Oracle's COMMENT ON command (Mike Mascari <email>mascarim at yahoo.com</email>)
+libpq's PQsetNoticeProcessor function now returns previous hook(Peter E)
+Prevent PQsetNoticeProcessor from being set to NULL (Peter E)
+Make USING in COPY optional (Bruce)
+Allow subselects in the target list (Tom)
+Allow subselects on the left side of comparison operators (Tom)
+New parallel regression test (Jan)
+Change backend-side COPY to write files with permissions 644 not 666 (Tom)
+Force permissions on PGDATA directory to be secure, even if it exists (Tom)
+Added psql LASTOID variable to return last inserted oid (Peter E)
+Allow concurrent vacuum and remove pg_vlock vacuum lock file (Tom)
+Add privilege check for vacuum (Peter E)
+New libpq functions to allow asynchronous connections: PQconnectStart(),
+ PQconnectPoll(), PQresetStart(), PQresetPoll(), PQsetenvStart(),
+ PQsetenvPoll(), PQsetenvAbort (Ewan Mellor)
+New libpq PQsetenv() function (Ewan Mellor)
+create/alter user extension (Peter E)
+New postmaster.pid and postmaster.opts under $PGDATA (Tatsuo)
+New scripts for create/drop user/db (Peter E)
+Major psql overhaul (Peter E)
+Add const to libpq interface (Peter E)
+New libpq function PQoidValue (Peter E)
+Show specific non-aggregate causing problem with GROUP BY (Tom)
+Make changes to pg_shadow recreate pg_pwd file (Peter E)
+Add aggregate(DISTINCT ...) (Tom)
+Allow flag to control COPY input/output of NULLs (Peter E)
+Make postgres user have a password by default (Peter E)
+Add CREATE/ALTER/DROP GROUP (Peter E)
+All administration scripts now support --long options (Peter E, Karel)
+Vacuumdb script now supports --all option (Peter E)
+ecpg new portable FETCH syntax
+Add ecpg EXEC SQL IFDEF, EXEC SQL IFNDEF, EXEC SQL ELSE, EXEC SQL ELIF
+ and EXEC SQL ENDIF directives
+Add pg_ctl script to control backend start-up (Tatsuo)
+Add postmaster.opts.default file to store start-up flags (Tatsuo)
+Allow --with-mb=SQL_ASCII
+Increase maximum number of index keys to 16 (Bruce)
+Increase maximum number of function arguments to 16 (Bruce)
+Allow configuration of maximum number of index keys and arguments (Bruce)
+Allow unprivileged users to change their passwords (Peter E)
+Password authentication enabled; required for new users (Peter E)
+Disallow dropping a user who owns a database (Peter E)
+Change initdb option --with-mb to --enable-multibyte
+Add option for initdb to prompts for superuser password (Peter E)
+Allow complex type casts like col::numeric(9,2) and col::int2::float8 (Tom)
+Updated user interfaces on initdb, initlocation, pg_dump, ipcclean (Peter E)
+New pg_char_to_encoding() and pg_encoding_to_char() functions (Tatsuo)
+libpq non-blocking mode (Alfred Perlstein)
+Improve conversion of types in casts that don't specify a length
+New plperl internal programming language (Mark Hollomon)
+Allow COPY IN to read file that do not end with a newline (Tom)
+Indicate when long identifiers are truncated (Tom)
+Allow aggregates to use type equivalency (Peter E)
+Add Oracle's to_char(), to_date(), to_datetime(), to_timestamp(), to_number()
+ conversion functions (Karel Zak <zakkr at zf.jcu.cz>)
+Add SELECT DISTINCT ON (expr [, expr ...]) targetlist ... (Tom)
+Check to be sure ORDER BY is compatible with the DISTINCT operation (Tom)
+Add NUMERIC and int8 types to ODBC
+Improve EXPLAIN results for Append, Group, Agg, Unique (Tom)
+Add ALTER TABLE ... ADD FOREIGN KEY (Stephan Szabo)
+Allow SELECT .. FOR UPDATE in PL/pgSQL (Hiroshi)
+Enable backward sequential scan even after reaching EOF (Hiroshi)
+Add btree indexing of boolean values, >= and <= (Don Baccus)
+Print current line number when COPY FROM fails (Massimo)
+Recognize POSIX time zone e.g. "PST+8" and "GMT-8" (Thomas)
+Add DEC as synonym for DECIMAL (Thomas)
+Add SESSION_USER as SQL92 key word, same as CURRENT_USER (Thomas)
+Implement SQL92 column aliases (aka correlation names) (Thomas)
+Implement SQL92 join syntax (Thomas)
+Make INTERVAL reserved word allowed as a column identifier (Thomas)
+Implement REINDEX command (Hiroshi)
+Accept ALL in aggregate function SUM(ALL col) (Tom)
+Prevent GROUP BY from using column aliases (Tom)
+New psql \encoding option (Tatsuo)
+Allow PQrequestCancel() to terminate when in waiting-for-lock state (Hiroshi)
+Allow negation of a negative number in all cases
+Add ecpg descriptors (Christof, Michael)
+Allow CREATE VIEW v AS SELECT f1::char(8) FROM tbl
+Allow casts with length, like foo::char(8)
+New libpq functions PQsetClientEncoding(), PQclientEncoding() (Tatsuo)
+Add support for SJIS user defined characters (Tatsuo)
+Larger views/rules supported
+Make libpq's PQconndefaults() thread-safe (Tom)
+Disable // as comment to be ANSI conforming, should use -- (Tom)
+Allow column aliases on views CREATE VIEW name (collist)
+Fixes for views with subqueries (Tom)
+Allow UPDATE table SET fld = (SELECT ...) (Tom)
+SET command options no longer require quotes
+Update pgaccess to 0.98.6
+New SET SEED command
+New pg_options.sample file
+New SET FSYNC command (Massimo)
+Allow pg_descriptions when creating tables
+Allow pg_descriptions when creating types, columns, and functions
+Allow psql \copy to allow delimiters (Peter E)
+Allow psql to print nulls as distinct from "" [NULL] (Peter E)
+
+Types
+-----
+Many array fixes (Tom)
+Allow bare column names to be subscripted as arrays (Tom)
+Improve type casting of int and float constants (Tom)
+Cleanups for int8 inputs, range checking, and type conversion (Tom)
+Fix for SELECT timespan('21:11:26'::time) (Tom)
+netmask('x.x.x.x/0') is 255.255.255.255 instead of 0.0.0.0 (Oleg Sharoiko)
+Add btree index on NUMERIC (Jan)
+Perl fix for large objects containing NUL characters (Douglas Thomson)
+ODBC fix for for large objects (free)
+Fix indexing of cidr data type
+Fix for Ethernet MAC addresses (macaddr type) comparisons
+Fix for date/time types when overflows happened in computations (Tom)
+Allow array on int8 (Peter E)
+Fix for rounding/overflow of NUMERIC type, like NUMERIC(4,4) (Tom)
+Allow NUMERIC arrays
+Fix bogues in NUMERIC ceil() and floor() functions (Tom)
+Make char_length()/octet_length including trailing blanks (Tom)
+Made abstime/reltime use int4 instead of time_t (Peter E)
+New lztext data type for compressed text fields
+Revise code to handle coercion of int and float constants (Tom)
+Start at new code to implement a BIT and BIT VARYING type (Adriaan Joubert)
+NUMERIC now accepts scientific notation (Tom)
+NUMERIC to int4 rounds (Tom)
+Convert float4/8 to NUMERIC properly (Tom)
+Allow type conversion with NUMERIC (Thomas)
+Make ISO date style (2000-02-16 09:33) the default (Thomas)
+Add NATIONAL CHAR [ VARYING ] (Thomas)
+Allow NUMERIC round and trunc to accept negative scales (Tom)
+New TIME WITH TIME ZONE type (Thomas)
+Add MAX()/MIN() on time type (Thomas)
+Add abs(), mod(), fac() for int8 (Thomas)
+Rename functions to round(), sqrt(), cbrt(), pow() for float8 (Thomas)
+Add transcendental math functions (e.g. sin(), acos()) for float8 (Thomas)
+Add exp() and ln() for NUMERIC type
+Rename NUMERIC power() to pow() (Thomas)
+Improved TRANSLATE() function (Edwin Ramirez, Tom)
+Allow X=-Y operators (Tom)
+Allow SELECT float8(COUNT(*))/(SELECT COUNT(*) FROM t) FROM t GROUP BY f1; (Tom)
+Allow LOCALE to use indexes in regular expression searches (Tom)
+Allow creation of functional indexes to use default types
+
+Performance
+-----------
+Prevent exponential space consumption with many AND's and OR's (Tom)
+Collect attribute selectivity values for system columns (Tom)
+Reduce memory usage of aggregates (Tom)
+Fix for LIKE optimization to use indexes with multibyte encodings (Tom)
+Fix r-tree index optimizer selectivity (Thomas)
+Improve optimizer selectivity computations and functions (Tom)
+Optimize btree searching for cases where many equal keys exist (Tom)
+Enable fast LIKE index processing only if index present (Tom)
+Re-use free space on index pages with duplicates (Tom)
+Improve hash join processing (Tom)
+Prevent descending sort if result is already sorted(Hiroshi)
+Allow commuting of index scan query qualifications (Tom)
+Prefer index scans in cases where ORDER BY/GROUP BY is required (Tom)
+Allocate large memory requests in fix-sized chunks for performance (Tom)
+Fix vacuum's performance by reducing memory allocation requests (Tom)
+Implement constant-expression simplification (Bernard Frankpitt, Tom)
+Use secondary columns to be used to determine start of index scan (Hiroshi)
+Prevent quadruple use of disk space when doing internal sorting (Tom)
+Faster sorting by calling fewer functions (Tom)
+Create system indexes to match all system caches (Bruce, Hiroshi)
+Make system caches use system indexes (Bruce)
+Make all system indexes unique (Bruce)
+Improve pg_statistics management for VACUUM speed improvement (Tom)
+Flush backend cache less frequently (Tom, Hiroshi)
+COPY now reuses previous memory allocation, improving performance (Tom)
+Improve optimization cost estimation (Tom)
+Improve optimizer estimate of range queries x > lowbound AND x < highbound
+(Tom)
+Use DNF instead of CNF where appropriate (Tom, Taral)
+Further cleanup for OR-of-AND WHERE-clauses (Tom)
+Make use of index in OR clauses (x = 1 AND y = 2) OR (x = 2 AND y = 4) (Tom)
+Smarter optimizer computations for random index page access (Tom)
+New SET variable to control optimizer costs (Tom)
+Optimizer queries based on LIMIT, OFFSET, and EXISTS qualifications (Tom)
+Reduce optimizer internal housekeeping of join paths for speedup (Tom)
+Major subquery speedup (Tom)
+Fewer fsync writes when fsync is not disabled (Tom)
+Improved LIKE optimizer estimates (Tom)
+Prevent fsync in SELECT-only queries (Vadim)
+Make index creation use psort code, because it is now faster (Tom)
+Allow creation of sort temp tables > 1 Gig
+
+Source Tree Changes
+-------------------
+Fix for linux PPC compile
+New generic expression-tree-walker subroutine (Tom)
+Change form() to varargform() to prevent portability problems
+Improved range checking for large integers on Alphas
+Clean up #include in /include directory (Bruce)
+Add scripts for checking includes (Bruce)
+Remove un-needed #include's from *.c files (Bruce)
+Change #include's to use <> and "" as appropriate (Bruce)
+Enable Windows compilation of libpq
+Alpha spinlock fix from Uncle George <email>gatgul at voicenet.com</email>
+Overhaul of optimizer data structures (Tom)
+Fix to cygipc library (Yutaka Tanida)
+Allow pgsql to work on newer Cygwin snapshots (Dan)
+New catalog version number (Tom)
+Add Linux ARM
+Rename heap_replace to heap_update
+Update for QNX (Dr. Andreas Kardos)
+New platform-specific regression handling (Tom)
+Rename oid8 -> oidvector and int28 -> int2vector (Bruce)
+Included all yacc and lex files into the distribution (Peter E.)
+Remove lextest, no longer needed (Peter E)
+Fix for libpq and psql on Windows (Magnus)
+Internally change datetime and timespan into timestamp and interval (Thomas)
+Fix for plpgsql on BSD/OS
+Add SQL_ASCII test case to the regression test (Tatsuo)
+configure --with-mb now deprecated (Tatsuo)
+NT fixes
+NetBSD fixes (Johnny C. Lam <email>lamj at stat.cmu.edu</email>)
+Fixes for Alpha compiles
+New multibyte encodings
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-6-5-3">
+ <title>Sortie 6.5.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1999-10-13</simpara>
+ </note>
+
+ <para>
+ This is basically a cleanup release for 6.5.2. We have added a new
+ <application>PgAccess</> that was missing in 6.5.2, and installed an
+NT-specific fix.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 6.5.3</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 6.5.*.
+ </para>
+ </sect2>
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Updated version of pgaccess 0.98
+NT-specific patch
+Fix dumping rules on inherited tables
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+ <sect1 id="release-6-5-2">
+ <title>Sortie 6.5.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1999-09-15</simpara>
+ </note>
+
+ <para>
+ This is basically a cleanup release for 6.5.1. We have fixed a variety of
+ problems reported by 6.5.1 users.
+ </para>
+
+
+ <sect2>
+ <title>Migration vers la version 6.5.2</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 6.5.*.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+subselect+CASE fixes(Tom)
+Add SHLIB_LINK setting for solaris_i386 and solaris_sparc ports(Daren Sefcik)
+Fixes for CASE in WHERE join clauses(Tom)
+Fix BTScan abort(Tom)
+Repair the check for redundant UNIQUE and PRIMARY KEY indexes(Thomas)
+Improve it so that it checks for multicolumn constraints(Thomas)
+Fix for Windows making problem with MB enabled(Hiroki Kataoka)
+Allow BSD yacc and bison to compile pl code(Bruce)
+Fix SET NAMES working
+int8 fixes(Thomas)
+Fix vacuum's memory consumption(Hiroshi,Tatsuo)
+Reduce the total memory consumption of vacuum(Tom)
+Fix for timestamp(datetime)
+Rule deparsing boguefixes(Tom)
+Fix quoting problems in mkMakefile.tcldefs.sh.in and
+mkMakefile.tkdefs.sh.in(Tom)
+This is to re-use space on index pages freed by vacuum(Vadim)
+document -x for pg_dump(Bruce)
+Fix for unary operators in rule deparser(Tom)
+Comment out FileUnlink of excess segments during mdtruncate()(Tom)
+IRIX linking fix from Yu Cao >yucao at falcon.kla-tencor.com<
+Repair logic error in LIKE: should not return LIKE_ABORT
+ when reach end of pattern before end of text(Tom)
+Repair incorrect cleanup of heap memory allocation during transaction abort(Tom)
+Updated version of pgaccess 0.98
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-6-5-1">
+ <title>Sortie 6.5.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1999-07-15</simpara>
+ </note>
+
+ <para>
+ This is basically a cleanup release for 6.5. We have fixed a variety of
+ problems reported by 6.5 users.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 6.5.1</title>
+
+ <para>
+ Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
+ ceux utilisant la version 6.5.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Add NT README file
+Portability fixes for linux_ppc, IRIX, linux_alpha, OpenBSD, alpha
+Remove QUERY_LIMIT, use SELECT...LIMIT
+Fix for EXPLAIN on inheritance(Tom)
+Patch to allow vacuum on multisegment tables(Hiroshi)
+R-Tree optimizer selectivity fix(Tom)
+ACL file descriptor leak fix(Atsushi Ogawa)
+New expresssion subtree code(Tom)
+Avoid disk writes for read-only transactions(Vadim)
+Fix for removal of temp tables if last transaction was aborted(Bruce)
+Fix to prevent too large row from being created(Bruce)
+plpgsql fixes
+Allow port numbers 32k - 64k(Bruce)
+Add ^ precidence(Bruce)
+Rename sort files called pg_temp to pg_sorttemp(Bruce)
+Fix for microseconds in time values(Tom)
+Tutorial source cleanup
+New linux_m68k port
+Fix for sorting of NULL's in some cases(Tom)
+Shared library dependencies fixed (Tom)
+Fixed glitches affecting GROUP BY in subselects(Tom)
+Fix some compiler warnings (Tomoaki Nishiyama)
+Add Win1250 (Czech) support (Pavel Behal)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-6-5">
+ <title>Sortie 6.5</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1999-06-09</simpara>
+ </note>
+
+ <para>
+ This release marks a major step in the development team's mastery of the
+source
+ code we inherited from Berkeley. You will see we are now easily adding
+ major features, thanks to the increasing size and experience of our
+ world-wide development team.
+ </para>
+
+ <para>
+ Here is a brief summary of the more notable changes:
+
+ <variablelist>
+ <varlistentry>
+ <term>
+ Multiversion concurrency control(MVCC)
+ </term>
+ <listitem>
+ <para>
+ This removes our old table-level locking, and replaces it with
+ a locking system that is superior to most commercial database
+ systems. In a traditional system, each row that is modified
+ is locked until committed, preventing reads by other users.
+ MVCC uses the natural multiversion nature of
+ <productname>PostgreSQL</productname> to allow readers to
+ continue reading consistent data during writer activity.
+ Writers continue to use the compact pg_log transaction system.
+ This is all performed without having to allocate a lock for
+ every row like traditional database systems. So, basically,
+ we no longer are restricted by simple table-level locking; we
+ have something better than row-level locking.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Hot backups from <application>pg_dump</application>
+ </term>
+ <listitem>
+ <para>
+ <application>pg_dump</application> takes advantage of the new
+ MVCC features to give a consistent database dump/backup while
+ the database stays online and available for queries.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Numeric data type
+ </term>
+ <listitem>
+ <para>
+ We now have a true numeric data type, with
+ user-specified precision.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Temporary tables
+ </term>
+ <listitem>
+ <para>
+ Temporary tables are guaranteed to have unique names
+ within a database session, and are destroyed on session exit.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ New SQL features
+ </term>
+ <listitem>
+ <para>
+ We now have CASE, INTERSECT, and EXCEPT statement
+ support. We have new LIMIT/OFFSET, SET TRANSACTION ISOLATION LEVEL,
+ SELECT ... FOR UPDATE, and an improved LOCK TABLE command.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Speedups
+ </term>
+ <listitem>
+ <para>
+ We continue to speed up PostgreSQL, thanks to the variety of
+ talents within our team. We have sped up memory allocation,
+ optimization, table joins, and row transfer routines.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Ports
+ </term>
+ <listitem>
+ <para>
+ We continue to expand our port list, this time including
+ <systemitem class="osname">Windows NT</>/<systemitem>ix86</> and
+<systemitem class="osname">NetBSD</>/<systemitem>arm32</>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Interfaces
+ </term>
+ <listitem>
+ <para>
+ Most interfaces have new versions, and existing functionality
+ has been improved.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Documentation
+ </term>
+ <listitem>
+ <para>
+ New and updated material is present throughout the
+ documentation. New <acronym>FAQ</acronym>s have been
+ contributed for <systemitem class="osname">SGI</> and <systemitem
+class="osname">AIX</> platforms.
+ The <citetitle>Tutorial</citetitle> has introductory information
+ on <acronym>SQL</acronym> from Stefan Simkovics.
+ For the <citetitle>User's Guide</citetitle>, there are
+ reference pages covering the postmaster and more utility
+ programs, and a new appendix
+ contains details on date/time behavior.
+ The <citetitle>Administrator's Guide</citetitle> has a new
+ chapter on troubleshooting from Tom Lane.
+ And the <citetitle>Programmer's Guide</citetitle> has a
+ description of query processing, also from Stefan, and details
+ on obtaining the <productname>PostgreSQL</productname> source
+ tree via anonymous <productname>CVS</productname> and
+ <productname>CVSup</productname>.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 6.5</title>
+
+ <para>
+ A dump/restore using <application>pg_dump</application>
+ is required for those wishing to migrate data from any
+ previous release of <productname>PostgreSQL</productname>.
+ <application>pg_upgrade</application> can <emphasis>not</emphasis>
+ be used to upgrade to this release because the on-disk structure
+ of the tables has changed compared to previous releases.
+ </para>
+
+ <para>
+ The new Multiversion Concurrency Control (MVCC) features can
+ give somewhat different behaviors in multiuser
+ environments. <emphasis>Read and understand the following section
+ to ensure that your existing applications will give you the
+ behavior you need.</emphasis>
+ </para>
+
+ <sect3>
+ <title>Multiversion Concurrency Control</title>
+
+ <para>
+ Because readers in 6.5 don't lock data, regardless of transaction
+ isolation level, data read by one transaction can be overwritten by
+ another. In other words, if a row is returned by
+ <command>SELECT</command> it doesn't mean that this row really exists
+ at the time it is returned (i.e. sometime after the statement or
+ transaction began) nor that the row is protected from being deleted or
+ updated by concurrent transactions before the current transaction does
+ a commit or rollback.
+ </para>
+
+ <para>
+ To ensure the actual existence of a row and protect it against
+ concurrent updates one must use <command>SELECT FOR UPDATE</command> or
+ an appropriate <command>LOCK TABLE</command> statement. This should be
+ taken into account when porting applications from previous releases of
+ <productname>PostgreSQL</productname> and other environments.
+ </para>
+
+ <para>
+ Keep the above in mind if you are using
+ <filename>contrib/refint.*</filename> triggers for
+ referential integrity. Additional techniques are required now. One way is
+ to use <command>LOCK parent_table IN SHARE ROW EXCLUSIVE MODE</command>
+ command if a transaction is going to update/delete a primary key and
+ use <command>LOCK parent_table IN SHARE MODE</command> command if a
+ transaction is going to update/insert a foreign key.
+
+ <note>
+ <para>
+ Note that if you run a transaction in SERIALIZABLE mode then you must
+ execute the <command>LOCK</command> commands above before exécution of
+any
+ <acronym>DML</acronym> statement
+ (<command>SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO</command>) in the
+ transaction.
+ </para>
+ </note>
+ </para>
+
+ <para>
+ These inconveniences will disappear in the future
+ when the ability to read dirty
+ (uncommitted) data (regardless of isolation level) and true referential
+ integrity will be implemented.
+ </para>
+ </sect3>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Fix text<->float8 and text<->float4 conversion functions(Thomas)
+Fix for creating tables with mixed-case constraints(Billy)
+Change exp()/pow() behavior to generate error on underflow/overflow(Jan)
+Fix bogue in pg_dump -z
+Memory overrun cleanups(Tatsuo)
+Fix for lo_import crash(Tatsuo)
+Adjust handling of data type names to suppress double quotes(Thomas)
+Use type coercion for matching columns and DEFAULT(Thomas)
+Fix deadlock so it only checks once after one second of sleep(Bruce)
+Fixes for aggregates and PL/pgsql(Hiroshi)
+Fix for subquery crash(Vadim)
+Fix for libpq function PQfnumber and case-insensitive names(Bahman Rafatjoo)
+Fix for large object write-in-middle, no extra block, memory consumption(Tatsuo)
+Fix for pg_dump -d or -D and quote special characters in INSERT
+Repair serious problems with dynahash(Tom)
+Fix INET/CIDR portability problems
+Fix problem with selectivity error in ALTER TABLE ADD COLUMN(Bruce)
+Fix executor so mergejoin of different column types works(Tom)
+Fix for Alpha OR selectivity bogue
+Fix OR index selectivity problem(Bruce)
+Fix so \d shows proper length for char()/varchar()(Ryan)
+Fix tutorial code(Clark)
+Improve destroyuser checking(Oliver)
+Fix for Kerberos(Rodney McDuff)
+Fix for dropping database while dirty buffers(Bruce)
+Fix so sequence nextval() can be case-sensitive(Bruce)
+Fix !!= operator
+Drop buffers before destroying database files(Bruce)
+Fix case where executor evaluates functions twice(Tatsuo)
+Allow sequence nextval actions to be case-sensitive(Bruce)
+Fix optimizer indexing not working for negative numbers(Bruce)
+Fix for memory leak in executor with fjIsNull
+Fix for aggregate memory leaks(Erik Riedel)
+Allow user name containing a dash to grant privileges
+Cleanup of NULL in inet types
+Clean up system table bogues(Tom)
+Fix problems of PAGER and \? command(Masaaki Sakaida)
+Reduce default multisegment file size limit to 1GB(Peter)
+Fix for dumping of CREATE OPERATOR(Tom)
+Fix for backward scanning of cursors(Hiroshi Inoue)
+Fix for COPY FROM STDIN when using \i(Tom)
+Fix for subselect is compared inside an expression(Jan)
+Fix handling of error reporting while returning rows(Tom)
+Fix problems with reference to array types(Tom,Jan)
+Prevent UPDATE SET oid(Jan)
+Fix pg_dump so -t option can handle case-sensitive tablenames
+Fixes for GROUP BY in special cases(Tom, Jan)
+Fix for memory leak in failed queries(Tom)
+DEFAULT now supports mixed-case identifiers(Tom)
+Fix for multisegment uses of DROP/RENAME table, indexes(Ole Gjerde)
+Disable use of pg_dump with both -o and -d options(Bruce)
+Allow pg_dump to properly dump group privileges(Bruce)
+Fix GROUP BY in INSERT INTO table SELECT * FROM table2(Jan)
+Fix for computations in views(Jan)
+Fix for aggregates on array indexes(Tom)
+Fix for DEFAULT handles single quotes in value requiring too many quotes
+Fix security problem with non-super users importing/exporting large objects(Tom)
+Rollback of transaction that creates table cleaned up properly(Tom)
+Fix to allow long table and column names to generate proper serial names(Tom)
+
+Enhancements
+------------
+Add "vacuumdb" utility
+Speed up libpq by allocating memory better(Tom)
+EXPLAIN all indexes used(Tom)
+Implement CASE, COALESCE, NULLIF expression(Thomas)
+New pg_dump table output format(Constantin)
+Add string min()/max() functions(Thomas)
+Extend new type coercion techniques to aggregates(Thomas)
+New moddatetime contrib(Terry)
+Update to pgaccess 0.96(Constantin)
+Add routines for single-byte "char" type(Thomas)
+Improved substr() function(Thomas)
+Improved multibyte handling(Tatsuo)
+Multiversion concurrency control/MVCC(Vadim)
+New Serialized mode(Vadim)
+Fix for tables over 2gigs(Peter)
+New SET TRANSACTION ISOLATION LEVEL(Vadim)
+New LOCK TABLE IN ... MODE(Vadim)
+Update ODBC driver(Byron)
+New NUMERIC data type(Jan)
+New SELECT FOR UPDATE(Vadim)
+Handle "NaN" and "Infinity" for input values(Jan)
+Improved date/year handling(Thomas)
+Improved handling of backend connections(Magnus)
+New options ELOG_TIMESTAMPS and USE_SYSLOG options for log files(Massimo)
+New TCL_ARRAYS option(Massimo)
+New INTERSECT and EXCEPT(Stefan)
+New pg_index.indisprimary for primary key tracking(D'Arcy)
+New pg_dump option to allow dropping of tables before creation(Brook)
+Speedup of row output routines(Tom)
+New READ COMMITTED isolation level(Vadim)
+New TEMP tables/indexes(Bruce)
+Prevent sorting if result is already sorted(Jan)
+New memory allocation optimization(Jan)
+Allow psql to do \p\g(Bruce)
+Allow multiple rule actions(Jan)
+Added LIMIT/OFFSET functionality(Jan)
+Improve optimizer when joining a large number of tables(Bruce)
+New intro to SQL from S. Simkovics' Master's Thesis (Stefan, Thomas)
+New intro to backend processing from S. Simkovics' Master's Thesis (Stefan)
+Improved int8 support(Ryan Bradetich, Thomas, Tom)
+New routines to convert between int8 and text/varchar types(Thomas)
+New bushy plans, where meta-tables are joined(Bruce)
+Enable right-hand queries by default(Bruce)
+Allow reliable maximum number of backends to be set at configure time
+ (--with-maxbackends and postmaster switch (-N backends))(Tom)
+GEQO default now 10 tables because of optimizer speedups(Tom)
+Allow NULL=Var for MS-SQL portability(Michael, Bruce)
+Modify contrib check_primary_key() so either "automatic" or "dependent"(Anand)
+Allow psql \d on a view show query(Ryan)
+Speedup for LIKE(Bruce)
+Ecpg fixes/features, see src/interfaces/ecpg/ChangeLog file(Michael)
+JDBC fixes/features, see src/interfaces/jdbc/CHANGELOG(Peter)
+Make % operator have precedence like /(Bruce)
+Add new postgres -O option to allow system table structure changes(Bruce)
+Update contrib/pginterface/findoidjoins script(Tom)
+Major speedup in vacuum of deleted rows with indexes(Vadim)
+Allow non-SQL functions to run different versions based on arguments(Tom)
+Add -E option that shows actual queries sent by \dt and friends(Masaaki Sakaida)
+Add version number in start-up banners for psql(Masaaki Sakaida)
+New contrib/vacuumlo removes large objects not referenced(Peter)
+New initialization for table sizes so non-vacuumed tables perform better(Tom)
+Improve error messages when a connection is rejected(Tom)
+Support for arrays of char() and varchar() fields(Massimo)
+Overhaul of hash code to increase reliability and performance(Tom)
+Update to PyGreSQL 2.4(D'Arcy)
+Changed debogue options so -d4 and -d5 produce different node displays(Jan)
+New pg_options: pretty_plan, pretty_parse, pretty_rewritten(Jan)
+Better optimization statistics for system table access(Tom)
+Better handling of non-default block sizes(Massimo)
+Improve GEQO optimizer memory consumption(Tom)
+UNION now suppports ORDER BY of columns not in target list(Jan)
+Major libpq++ improvements(Vince Vielhaber)
+pg_dump now uses -z(ACL's) as default(Bruce)
+backend cache, memory speedups(Tom)
+have pg_dump do everything in one snapshot transaction(Vadim)
+fix for large object memory leakage, fix for pg_dumping(Tom)
+INET type now respects netmask for comparisons
+Make VACUUM ANALYZE only use a readlock(Vadim)
+Allow VIEWs on UNIONS(Jan)
+pg_dump now can generate consistent snapshots on active databases(Vadim)
+
+Source Tree Changes
+-------------------
+Improve port matching(Tom)
+Portability fixes for SunOS
+Add Windows NT backend port and enable dynamic loading(Magnus and Daniel Horak)
+New port to Cobalt Qube(Mips) running Linux(Tatsuo)
+Port to NetBSD/m68k(Mr. Mutsuki Nakajima)
+Port to NetBSD/sun3(Mr. Mutsuki Nakajima)
+Port to NetBSD/macppc(Toshimi Aoki)
+Fix for tcl/tk configuration(Vince)
+Removed CURRENT key word for rule queries(Jan)
+NT dynamic loading now works(Daniel Horak)
+Add ARM32 support(Andrew McMurry)
+Better support for HP-UX 11 and UnixWare
+Improve file handling to be more uniform, prevent file descriptor leak(Tom)
+New install commands for plpgsql(Jan)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+
+<sect1 id="release-6-4-2">
+<title>Sortie 6.4.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-12-20</simpara>
+ </note>
+
+<para>
+The 6.4.1 release was improperly packaged. This also has one additional
+bogue fix.
+</para>
+
+
+<sect2>
+<title>Migration vers la version 6.4.2</title>
+
+<para>
+Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour ceux
+utilisant la version 6.4.*.
+</para>
+</sect2>
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Fix for datetime constant problem on some platforms(Thomas)
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+
+
+<sect1 id="release-6-4-1">
+<title>Sortie 6.4.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-12-18</simpara>
+ </note>
+
+<para>
+This is basically a cleanup release for 6.4. We have fixed a variety of
+problems reported by 6.4 users.
+</para>
+
+
+<sect2>
+<title>Migration vers la version 6.4.1</title>
+
+<para>
+Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour ceux
+utilisant la version 6.4.
+</para>
+</sect2>
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Add pg_dump -N flag to force double quotes around identifiers. This is
+ the default(Thomas)
+Fix for NOT in where clause causing crash(Bruce)
+EXPLAIN VERBOSE coredump fix(Vadim)
+Fix shared-library problems on Linux
+Fix test for table existence to allow mixed-case and whitespace in
+ the table name(Thomas)
+Fix a couple of pg_dump bogues
+Configure matches template/.similar entries better(Tom)
+Change builtin function names from SPI_* to spi_*
+OR WHERE clause fix(Vadim)
+Fixes for mixed-case table names(Billy)
+contrib/linux/postgres.init.csh/sh fix(Thomas)
+libpq memory overrun fix
+SunOS fixes(Tom)
+Change exp() behavior to generate error on underflow(Thomas)
+pg_dump fixes for memory leak, inheritance constraints, layout change
+update pgaccess to 0.93
+Fix prototype for 64-bit platforms
+Multibyte fixes(Tatsuo)
+New ecpg man page
+Fix memory overruns(Tatsuo)
+Fix for lo_import() crash(Bruce)
+Better search for install program(Tom)
+Timezone fixes(Tom)
+HP-UX fixes(Tom)
+Use implicit type coercion for matching DEFAULT values(Thomas)
+Add routines to help with single-byte (internal) character type(Thomas)
+Compilation of libpq for Windows fixes(Magnus)
+Upgrade to PyGreSQL 2.2(D'Arcy)
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+
+
+<sect1 id="release-6-4">
+<title>Sortie 6.4</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-10-30</simpara>
+ </note>
+
+<para>
+There are <emphasis>many</emphasis> new features and improvements in this
+release.
+Thanks to our developers and maintainers, nearly every aspect of the system
+has received some attention since the previous release.
+Here is a brief, incomplete summary:
+
+<itemizedlist>
+<listitem>
+<para>
+Views and rules are now functional thanks to extensive new code in the
+rewrite rules system from Jan Wieck. He also wrote a chapter on it
+for the <citetitle>Programmer's Guide</citetitle>.
+</para>
+</listitem>
+<listitem>
+<para>
+Jan also contributed a second procedural language,
+<application>PL/pgSQL</application>, to go with the
+original <application>PL/pgTCL</application> procedural language he contributed
+last release.
+</para>
+</listitem>
+
+<listitem>
+<para>
+We have optional multiple-byte character set support from Tatsuo Ishii
+to complement our existing locale support.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Client/server communications has been cleaned up, with better support for
+asynchronous messages and interrupts thanks to Tom Lane.
+</para>
+</listitem>
+
+<listitem>
+<para>
+The parser will now perform automatic type coercion to match arguments
+to available operators and functions, and to match columns and expressions
+with target columns. This uses a generic mechanism which supports
+the type extensibility features of <productname>PostgreSQL</productname>.
+There is a new chapter in the <citetitle>User's Guide</citetitle>
+which covers this topic.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Three new data types have been added.
+Two types, <type>inet</type> and <type>cidr</type>, support various forms
+of IP network, subnet, and machine addressing. There is now an 8-byte integer
+type available on some platforms. See the chapter on data types
+in the <citetitle>User's Guide</citetitle> for details.
+A fourth type, <type>serial</type>, is now supported by the parser as an
+amalgam of the <type>int4</type> type, a sequence, and a unique index.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Several more <acronym>SQL92</acronym>-compatible syntax features have been
+added, including <command>INSERT DEFAULT VALUES</command>
+</para>
+</listitem>
+
+<listitem>
+<para>
+The automatic configuration and installation system has received some
+attention, and should be more robust for more platforms than it has ever
+been.
+</para>
+</listitem>
+
+</itemizedlist>
+</para>
+
+<sect2>
+<title>Migration vers la version 6.4</title>
+
+<para>
+A dump/restore using <application>pg_dump</application>
+or <application>pg_dumpall</application>
+is required for those wishing to migrate data from any
+previous release of <productname>PostgreSQL</productname>.
+</para>
+</sect2>
+
+ <sect2>
+<title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Fix for a tiny memory leak in PQsetdb/PQfinish(Bryan)
+Remove char2-16 data types, use char/varchar(Darren)
+Pqfn not handles a NOTICE message(Anders)
+Reduced busywaiting overhead for spinlocks with many backends (dg)
+Stuck spinlock detection (dg)
+Fix up "ISO-style" timespan decoding and encoding(Thomas)
+Fix problem with table drop after rollback of transaction(Vadim)
+Change error message and remove non-functional update message(Vadim)
+Fix for COPY array checking
+Fix for SELECT 1 UNION SELECT NULL
+Fix for buffer leaks in large object calls(Pascal)
+Change owner from oid to int4 type(Bruce)
+Fix a bogue in the oracle compatibility functions btrim() ltrim() and rtrim()
+Fix for shared invalidation cache overflow(Massimo)
+Prevent file descriptor leaks in failed COPY's(Bruce)
+Fix memory leak in libpgtcl's pg_select(Constantin)
+Fix problems with username/passwords over 8 characters(Tom)
+Fix problems with handling of asynchronous NOTIFY in backend(Tom)
+Fix of many bad system table entries(Tom)
+
+Enhancements
+------------
+Upgrade ecpg and ecpglib,see src/interfaces/ecpc/ChangeLog(Michael)
+Show the index used in an EXPLAIN(Zeugswetter)
+EXPLAIN invokes rule system and shows plan(s) for rewritten queries(Jan)
+Multibyte awareness of many data types and functions, via configure(Tatsuo)
+New configure --with-mb option(Tatsuo)
+New initdb --pgencoding option(Tatsuo)
+New createdb -E multibyte option(Tatsuo)
+Select version(); now returns PostgreSQL version(Jeroen)
+libpq now allows asynchronous clients(Tom)
+Allow cancel from client of backend query(Tom)
+psql now cancels query with Control-C(Tom)
+libpq users need not issue dummy queries to get NOTIFY messages(Tom)
+NOTIFY now sends sender's PID, so you can tell whether it was your own(Tom)
+PGresult struct now includes associated error message, if any(Tom)
+Define "tz_hour" and "tz_minute" arguments to date_part()(Thomas)
+Add routines to convert between varchar and bpchar(Thomas)
+Add routines to allow sizing of varchar and bpchar into target columns(Thomas)
+Add bit flags to support timezonehour and minute in data retrieval(Thomas)
+Allow more variations on valid floating point numbers (e.g. ".1", "1e6")(Thomas)
+Fixes for unary minus parsing with leading spaces(Thomas)
+Implement TIMEZONE_HOUR, TIMEZONE_MINUTE per SQL92 specs(Thomas)
+Check for and properly ignore FOREIGN KEY column constraints(Thomas)
+Define USER as synonym for CURRENT_USER per SQL92 specs(Thomas)
+Enable HAVING clause but no fixes elsewhere yet.
+Make "char" type a synonym for "char(1)" (actually implemented as
+bpchar)(Thomas)
+Save string type if specified for DEFAULT clause handling(Thomas)
+Coerce operations involving different data types(Thomas)
+Allow some index use for columns of different types(Thomas)
+Add capabilities for automatic type conversion(Thomas)
+Cleanups for large objects, so file is truncated on open(Peter)
+Readline cleanups(Tom)
+Allow psql \f \ to make spaces as delimiter(Bruce)
+Pass pg_attribute.atttypmod to the frontend for column field lengths(Tom,Bruce)
+Msql compatibility library in /contrib(Aldrin)
+Remove the requirement that ORDER/GROUP BY clause identifiers be
+included in the target list(David)
+Convert columns to match columns in UNION clauses(Thomas)
+Remove fork()/exec() and only do fork()(Bruce)
+Jdbc cleanups(Peter)
+Show backend status on ps command line(only works on some platforms)(Bruce)
+Pg_hba.conf now has a sameuser option in the database field
+Make lo_unlink take oid param, not int4
+New DISABLE_COMPLEX_MACRO for compilers that can't handle our macros(Bruce)
+Libpgtcl now handles NOTIFY as a Tcl event, need not send dummy queries(Tom)
+libpgtcl cleanups(Tom)
+Add -error option to libpgtcl's pg_result command(Tom)
+New locale patch, see docs/README/locale(Oleg)
+Fix for pg_dump so CONSTRAINT and CHECK syntax is correct(ccb)
+New contrib/lo code for large object orphan removal(Peter)
+New psql command "SET CLIENT_ENCODING TO 'encoding'" for multibytes
+feature, see /doc/README.mb(Tatsuo)
+contrib/noupdate code to revoke update permission on a column
+libpq can now be compiled on Windows(Magnus)
+Add PQsetdbLogin() in libpq
+New 8-byte integer type, checked by configure for OS support(Thomas)
+Better support for quoted table/column names(Thomas)
+Surround table and column names with double-quotes in pg_dump(Thomas)
+PQreset() now works with passwords(Tom)
+Handle case of GROUP BY target list column number out of range(David)
+Allow UNION in subselects
+Add auto-size to screen to \d? commands(Bruce)
+Use UNION to show all \d? results in one query(Bruce)
+Add \d? field search feature(Bruce)
+Pg_dump issues fewer \connect requests(Tom)
+Make pg_dump -z flag work better, document it in manual page(Tom)
+Add HAVING clause with full support for subselects and unions(Stephan)
+Full text indexing routines in contrib/fulltextindex(Maarten)
+Transaction ids now stored in shared memory(Vadim)
+New PGCLIENTENCODING when issuing COPY command(Tatsuo)
+Support for SQL92 syntax "SET NAMES"(Tatsuo)
+Support for LATIN2-5(Tatsuo)
+Add UNICODE regression test case(Tatsuo)
+Lock manager cleanup, new locking modes for LLL(Vadim)
+Allow index use with OR clauses(Bruce)
+Allows "SELECT NULL ORDER BY 1;"
+Explain VERBOSE prints the plan, and now pretty-prints the plan to
+the postmaster log file(Bruce)
+Add indexes display to \d command(Bruce)
+Allow GROUP BY on functions(David)
+New pg_class.relkind for large objects(Bruce)
+New way to send libpq NOTICE messages to a different location(Tom)
+New \w write command to psql(Bruce)
+New /contrib/findoidjoins scans oid columns to find join relationships(Bruce)
+Allow binary-compatible indexes to be considered when checking for valid
+Indexes for restriction clauses containing a constant(Thomas)
+New ISBN/ISSN code in /contrib/isbn_issn
+Allow NOT LIKE, IN, NOT IN, BETWEEN, and NOT BETWEEN constraint(Thomas)
+New rewrite system fixes many problems with rules and views(Jan)
+ * Rules on relations work
+ * Event qualifications on insert/update/delete work
+ * New OLD variable to reference CURRENT, CURRENT will be remove in
+future
+ * Update rules can reference NEW and OLD in rule qualifications/actions
+ * Insert/update/delete rules on views work
+ * Multiple rule actions are now supported, surrounded by parenthèses
+ * Regular users can create views/rules on tables they have RULE permits
+ * Rules and views inherit the privileges of the creator
+ * No rules at the column level
+ * No UPDATE NEW/OLD rules
+ * New pg_tables, pg_indexes, pg_rules and pg_views system views
+ * Only a single action on SELECT rules
+ * Total rewrite overhaul, perhaps for 6.5
+ * handle subselects
+ * handle aggregates on views
+ * handle insert into select from view works
+System indexes are now multikey(Bruce)
+Oidint2, oidint4, and oidname types are removed(Bruce)
+Use system cache for more system table lookups(Bruce)
+New backend programming language PL/pgSQL in backend/pl(Jan)
+New SERIAL data type, auto-creates sequence/index(Thomas)
+Enable assert checking without a recompile(Massimo)
+User lock enhancements(Massimo)
+New setval() command to set sequence value(Massimo)
+Auto-remove unix socket file on start-up if no postmaster running(Massimo)
+Conditional trace package(Massimo)
+New UNLISTEN command(Massimo)
+psql and libpq now compile under Windows using win32.mak(Magnus)
+Lo_read no longer stores trailing NULL(Bruce)
+Identifiers are now truncated to 31 characters internally(Bruce)
+Createuser options now availble on the command line
+Code for 64-bit integer supported added, configure tested, int8 type(Thomas)
+Prevent file descriptor leaf from failed COPY(Bruce)
+New pg_upgrade command(Bruce)
+Updated /contrib directories(Massimo)
+New CREATE TABLE DEFAULT VALUES statement available(Thomas)
+New INSERT INTO TABLE DEFAULT VALUES statement available(Thomas)
+New DECLARE and FETCH feature(Thomas)
+libpq's internal structures now not exported(Tom)
+Allow up to 8 key indexes(Bruce)
+Remove ARCHIVE key word, that is no longer used(Thomas)
+pg_dump -n flag to supress quotes around indentifiers
+disable system columns for views(Jan)
+new INET and CIDR types for network addresses(TomH, Paul)
+no more double quotes in psql output
+pg_dump now dumps views(Terry)
+new SET QUERY_LIMIT(Tatsuo,Jan)
+
+Source Tree Changes
+-------------------
+/contrib cleanup(Jun)
+Inline some small functions called for every row(Bruce)
+Alpha/linux fixes
+HP-UX cleanups(Tom)
+Multibyte regression tests(Soonmyung.)
+Remove --disabled options from configure
+Define PGDOC to use POSTGRESDIR by default
+Make regression optional
+Remove extra braces code to pgindent(Bruce)
+Add bsdi shared library support(Bruce)
+New --without-CXX support configure option(Brook)
+New FAQ_CVS
+Update backend flowchart in tools/backend(Bruce)
+Change atttypmod from int16 to int32(Bruce, Tom)
+Getrusage() fix for platforms that do not have it(Tom)
+Add PQconnectdb, PGUSER, PGPASSWORD to libpq man page
+NS32K platform fixes(Phil Nelson, John Buller)
+SCO 7/UnixWare 2.x fixes(Billy,others)
+Sparc/Solaris 2.5 fixes(Ryan)
+Pgbuiltin.3 is obsolete, move to doc files(Thomas)
+Even more documention(Thomas)
+Nextstep support(Jacek)
+Aix support(David)
+pginterface manual page(Bruce)
+shared libraries all have version numbers
+merged all OS-specific shared library defines into one file
+smarter TCL/TK configuration checking(Billy)
+smarter perl configuration(Brook)
+configure uses supplied install-sh if no install script found(Tom)
+new Makefile.shlib for shared library configuration(Tom)
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-6-3-2">
+<title>Sortie 6.3.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-04-07</simpara>
+ </note>
+
+<para>
+This is a bogue-fix release for 6.3.x.
+Refer to the release notes for version 6.3 for a more complete summary of new
+features.
+</para>
+<para>
+Summary:
+
+<itemizedlist>
+<listitem>
+<para>
+Repairs automatic configuration support for some platforms, including Linux,
+from breakage inadvertently introduced in version 6.3.1.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Correctly handles function calls on the left side of BETWEEN and LIKE clauses.
+</para>
+</listitem>
+
+</itemizedlist>
+</para>
+<para>
+A dump/restore is NOT required for those running 6.3 or 6.3.1. A
+<literal>make distclean</>, <literal>make</>, and <literal>make install</> is
+all that is required.
+This last step should be performed while the postmaster is not running.
+You should re-link any custom applications that use
+<productname>PostgreSQL</productname> libraries.
+</para>
+<para>
+For upgrades from pre-6.3 installations,
+refer to the installation and migration instructions for version 6.3.
+</para>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Configure detection improvements for tcl/tk(Brook Milligan, Alvin)
+Manual page improvements(Bruce)
+BETWEEN and LIKE fix(Thomas)
+fix for psql \connect used by pg_dump(Oliver Elphick)
+New odbc driver
+pgaccess, version 0.86
+qsort removed, now uses libc version, cleanups(Jeroen)
+fix for buffer over-runs detected(Maurice Gittens)
+fix for buffer overrun in libpgtcl(Randy Kunkee)
+fix for UNION with DISTINCT or ORDER BY(Bruce)
+gettimeofday configure check(Doug Winterburn)
+Fix "indexes not used" bogue(Vadim)
+docs additions(Thomas)
+Fix for backend memory leak(Bruce)
+libreadline cleanup(Erwan MAS)
+Remove DISTDIR(Bruce)
+Makefile dependency cleanup(Jeroen van Vianen)
+ASSERT fixes(Bruce)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-6-3-1">
+ <title>Sortie 6.3.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-03-23</simpara>
+ </note>
+
+ <para>
+ Summary:
+
+<itemizedlist>
+<listitem>
+<para>
+Additional support for multibyte character sets.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Repair byte ordering for mixed-endian clients and servers.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Minor updates to allowed SQL syntax.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Improvements to the configuration autodetection for installation.
+</para>
+</listitem>
+
+</itemizedlist>
+</para>
+<para>
+A dump/restore is NOT required for those running 6.3. A
+<literal>make distclean</>, <literal>make</>, and <literal>make install</> is
+all that is required.
+This last step should be performed while the postmaster is not running.
+You should re-link any custom applications that use
+<productname>PostgreSQL</productname> libraries.
+</para>
+<para>
+For upgrades from pre-6.3 installations,
+refer to the installation and migration instructions for version 6.3.
+</para>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+ecpg cleanup/fixes, now version 1.1(Michael Meskes)
+pg_user cleanup(Bruce)
+large object fix for pg_dump and tclsh (alvin)
+LIKE fix for multiple adjacent underscores
+fix for redefining builtin functions(Thomas)
+ultrix4 cleanup
+upgrade to pg_access 0.83
+updated CLUSTER manual page
+multibyte character set support, see doc/README.mb(Tatsuo)
+configure --with-pgport fix
+pg_ident fix
+big-endian fix for backend communications(Kataoka)
+SUBSTR() and substring() fix(Jan)
+several jdbc fixes(Peter)
+libpgtcl improvements, see libptcl/README(Randy Kunkee)
+Fix for "Datasize = 0" error(Vadim)
+Prevent \do from wrapping(Bruce)
+Remove duplicate Russian character set entries
+Sunos4 cleanup
+Allow optional TABLE key word in LOCK and SELECT INTO(Thomas)
+CREATE SEQUENCE options to allow a negative integer(Thomas)
+Add "PASSWORD" as an allowed column identifier(Thomas)
+Add checks for UNION target fields(Bruce)
+Fix Alpha port(Dwayne Bailey)
+Fix for text arrays containing quotes(Doug Gibson)
+Solaris compile fix(Albert Chin-A-Young)
+Better identify tcl and tk libs and includes(Bruce)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-6-3">
+ <title>Sortie 6.3</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1998-03-01</simpara>
+ </note>
+
+ <para>
+ There are <emphasis>many</emphasis> new features and improvements in this
+release.
+ Here is a brief, incomplete summary:
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ Many new SQL features, including
+ full <acronym>SQL92</acronym> subselect capability
+ (everything is here but target-list subselects).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Support for client-side environment variables to specify time zone and
+date style.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Socket interface for client/server connection. This is the default now
+ so you may need to start <application>postmaster</application> with the
+ <option>-i</option> flag.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Better password authorization mechanisms. Default table privileges have
+changed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Old-style <firstterm>time travel</firstterm>
+ has been removed. Performance has been improved.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+
+ <note>
+ <para>
+ Bruce Momjian wrote the following notes to introduce the new release.
+ </para>
+ </note>
+
+ <para>
+ There are some general 6.3 issues that I want to mention. These are
+ only the big items that can not be described in one sentence. A review
+ of the detailed changes list is still needed.
+ </para>
+ <para>
+ First, we now have subselects. Now that we have them, I would like to
+ mention that without subselects, SQL is a very limited language.
+ Subselects are a major feature, and you should review your code for
+ places where subselects provide a better solution for your queries. I
+ think you will find that there are more uses for subselects than you may
+ think. Vadim has put us on the big SQL map with subselects, and fully
+ functional ones too. The only thing you can't do with subselects is to
+ use them in the target list.
+ </para>
+ <para>
+ Second, 6.3 uses Unix domain sockets rather than TCP/IP by default. To
+ enable connections from other machines, you have to use the new
+ postmaster -i option, and of course edit <filename>pg_hba.conf</filename>.
+Also, for this
+ reason, the format of <filename>pg_hba.conf</filename> has changed.
+ </para>
+ <para>
+ Third, <type>char()</type> fields will now allow faster access than
+<type>varchar()</type> or
+ <type>text</type>. Specifically, the <type>text</> and
+<type>varchar()</type> have a penalty for access to
+ any columns after the first column of this type. <type>char()</type> used
+to also
+ have this access penalty, but it no longer does. This may suggest that
+ you redesign some of your tables, especially if you have short character
+ columns that you have defined as <type>varchar()</type> or
+<type>text</type>. This and other
+ changes make 6.3 even faster than earlier releases.
+ </para>
+ <para>
+ We now have passwords definable independent of any Unix file. There are
+ new SQL USER commands.
+ See the <citetitle>Administrator's Guide</citetitle> for more
+ information. There is a new table, pg_shadow, which is used to store
+ user information and user passwords, and it by default only SELECT-able
+ by the <systemitem>postgres</systemitem> super-user. pg_user is now a view
+of pg_shadow, and is
+ SELECT-able by PUBLIC. You should keep using pg_user in your
+ application without changes.
+ </para>
+ <para>
+ User-created tables now no longer have SELECT privilege to PUBLIC by
+ default. This was done because the ANSI standard requires it. You can
+ of course GRANT any privileges you want after the table is created.
+ System tables continue to be SELECT-able by PUBLIC.
+ </para>
+ <para>
+ We also have real deadlock detection code. No more sixty-second
+ timeouts. And the new locking code implements a <acronym>FIFO</acronym>
+better, so there
+ should be less resource starvation during heavy use.
+ </para>
+ <para>
+ Many complaints have been made about inadequate documentation in previous
+ releases. Thomas has put much effort into many new manuals for this
+ release. Check out the doc/ directory.
+ </para>
+ <para>
+ For performance reasons, time travel is gone, but can be implemented
+ using triggers (see <filename>pgsql/contrib/spi/README</filename>). Please
+check out the new
+ \d command for types, operators, etc. Also, views have their own
+ privileges now, not based on the underlying tables, so privileges on
+ them have to be set separately. Check
+<filename>/pgsql/interfaces</filename> for some new
+ ways to talk to <productname>PostgreSQL</productname>.
+ </para>
+ <para>
+ This is the first release that really required an explanation for
+ existing users. In many ways, this was necessary because the new
+ release removes many limitations, and the work-arounds people were using
+ are no longer needed.
+ </para>
+
+ <sect2>
+ <title>Migration vers la version 6.3</title>
+
+ <para>
+ A dump/restore using <application>pg_dump</application>
+ or <application>pg_dumpall</application>
+ is required for those wishing to migrate data from any
+ previous release of <productname>PostgreSQL</productname>.
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Fix binary cursors broken by MOVE implementation(Vadim)
+Fix for tcl library crash(Jan)
+Fix for array handling, from Gerhard Hintermayer
+Fix acl error, and remove duplicate pqtrace(Bruce)
+Fix psql \e for empty file(Bruce)
+Fix for textcat on varchar() fields(Bruce)
+Fix for DBT Sendproc (Zeugswetter Andres)
+Fix vacuum analyze syntax problem(Bruce)
+Fix for international identifiers(Tatsuo)
+Fix aggregates on inherited tables(Bruce)
+Fix substr() for out-of-bounds data
+Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
+Fix notty output to show status result. -q option still turns it off(Bruce)
+Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
+Fix cluster(Bruce)
+Fix for PQtrace start/stop several times(Bruce)
+Fix a variety of locking problems like newer lock waiters getting
+ lock before older waiters, and having readlock people not share
+ locks if a writer is waiting for a lock, and waiting writers not
+ getting priority over waiting readers(Bruce)
+Fix crashes in psql when executing queries from external files(James)
+Fix problem with multiple order by columns, with the first one having
+ NULL values(Jeroen)
+Use correct hash table support functions for float8 and int4(Thomas)
+Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
+Change precedence for boolean operators to match expected behavior(Thomas)
+Generate elog(ERROR) on over-large integer(Bruce)
+Allow multiple-argument functions in constraint clauses(Thomas)
+Check boolean input literals for 'true','false','yes','no','1','0'
+ and throw elog(ERROR) if unrecognized(Thomas)
+Major large objects fix
+Fix for GROUP BY showing duplicates(Vadim)
+Fix for index scans in MergeJion(Vadim)
+
+Enhancements
+------------
+Subselects with EXISTS, IN, ALL, ANY key words (Vadim, Bruce, Thomas)
+New User Manual(Thomas, others)
+Speedup by inlining some frequently-called functions
+Real deadlock detection, no more timeouts(Bruce)
+Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
+ CURRENT_USER(Thomas)
+Modify constraint syntax to be SQL92-compliant(Thomas)
+Implement SQL92 PRIMARY KEY and UNIQUE clauses using indexes(Thomas)
+Recognize SQL92 syntax for FOREIGN KEY. Throw elog notice(Thomas)
+Allow NOT NULL UNIQUE constraint clause (each allowed separately before)(Thomas)
+Allow PostgreSQL-style casting ("::") of non-constants(Thomas)
+Add support for SQL3 TRUE and FALSE boolean constants(Thomas)
+Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
+Allow shorter strings for boolean literals (e.g. "t", "tr", "tru")(Thomas)
+Allow SQL92 delimited identifiers(Thomas)
+Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
+Support SQL92 syntax for type coercion of literal strings
+ (e.g. "DATETIME 'now'")(Thomas)
+Add conversions for int2, int4, and OID types to and from text(Thomas)
+Use shared lock when building indexes(Vadim)
+Free memory allocated for an user query inside transaction block after
+ this query is done, was turned off in <= 6.2.1(Vadim)
+New SQL statement CREATE PROCEDURAL LANGUAGE(Jan)
+New <productname>PostgreSQL</productname> Procedural Language (PL) backend
+interface(Jan)
+Rename pg_dump -H option to -h(Bruce)
+Add Java support for passwords, European dates(Peter)
+Use indexes for LIKE and ~, !~ operations(Bruce)
+Add hash functions for datetime and timespan(Thomas)
+Time Travel removed(Vadim, Bruce)
+Add paging for \d and \z, and fix \i(Bruce)
+Add Unix domain socket support to backend and to frontend library(Goran)
+Implement CREATE DATABASE/WITH LOCATION and initlocation utility(Thomas)
+Allow more SQL92 and/or <productname>PostgreSQL</productname> reserved words as
+column identifiers(Thomas)
+Augment support for SQL92 SET TIME ZONE...(Thomas)
+SET/SHOW/RESET TIME ZONE uses TZ backend environment variable(Thomas)
+Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
+Enable SET TIME ZONE using TZ environment variable(Thomas)
+Add PGDATESTYLE environment variable to frontend and backend
+initialization(Thomas)
+Add PGTZ, PGCOSTHEAP, PGCOSTINDEX, PGRPLANS, PGGEQO
+ frontend library initialization environment variables(Thomas)
+Regression tests time zone automatically set with "setenv PGTZ PST8PDT"(Thomas)
+Add pg_description table for info on tables, columns, operators, types, and
+ aggregates(Bruce)
+Increase 16 char limit on system table/index names to 32 characters(Bruce)
+Rename system indexes(Bruce)
+Add 'GERMAN' option to SET DATESTYLE(Thomas)
+Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
+Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
+Validate numeric input more carefully for delta times(Thomas)
+Implement day of year as possible input to date_part()(Thomas)
+Define timespan_finite() and text_timespan() functions(Thomas)
+Remove archive stuff(Bruce)
+Allow for a pg_password authentication database that is separate from
+ the system password file(Todd)
+Dump ACLs, GRANT, REVOKE privileges(Matt)
+Define text, varchar, and bpchar string length functions(Thomas)
+Fix Query handling for inheritance, and cost computations(Bruce)
+Implement CREATE TABLE/AS SELECT (alternative to SELECT/INTO)(Thomas)
+Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
+Implement UNIONs for SELECT(Bruce)
+Add UNION, GROUP, DISTINCT to INSERT(Bruce)
+varchar() stores only necessary bytes on disk(Bruce)
+Fix for BLOBs(Peter)
+Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
+Remove unused "option" from PQconnectdb()
+New LOCK command and lock manual page describing deadlocks(Bruce)
+Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
+Enhance psql \z to show sequences(Bruce)
+Show NOT NULL and DEFAULT in psql \d table(Bruce)
+New psql .psqlrc file start-up(Andrew)
+Modify sample start-up script in contrib/linux to show syslog(Thomas)
+New types for IP and MAC addresses in contrib/ip_and_mac(TomH)
+Unix system time conversions with date/time types in contrib/unixdate(Thomas)
+Update of contrib stuff(Massimo)
+Add Unix socket support to DBD::Pg(Goran)
+New python interface (PyGreSQL 2.0)(D'Arcy)
+New frontend/backend protocol has a version number, network byte order(Phil)
+Security features in pg_hba.conf enhanced and documented, many cleanups(Phil)
+CHAR() now faster access than VARCHAR() or TEXT
+ecpg embedded SQL preprocessor
+Reduce system column overhead(Vadmin)
+Remove pg_time table(Vadim)
+Add pg_type attribute to identify types that need length (bpchar, varchar)
+Add report of offending line when COPY command fails
+Allow VIEW privileges to be set separately from the underlying tables.
+ For security, use GRANT/REVOKE on views as appropriate(Jan)
+Tables now have no default GRANT SELECT TO PUBLIC. You must
+ explicitly grant such privileges.
+Clean up tutorial examples(Darren)
+
+Source Tree Changes
+-------------------
+Add new html development tools, and flow chart in /tools/backend
+Fix for SCO compiles
+Stratus computer port Robert Gillies
+Added support for shlib for BSD44_derived & i386_solaris
+Make configure more automated(Brook)
+Add script to check regression test results
+Break parser functions into smaller files, group together(Bruce)
+Rename heap_create to heap_create_and_catalog, rename heap_creatr
+ to heap_create()(Bruce)
+Sparc/Linux patch for locking(TomS)
+Remove PORTNAME and reorganize port-specific stuff(Marc)
+Add optimizer README file(Bruce)
+Remove some recursion in optimizer and clean up some code there(Bruce)
+Fix for NetBSD locking(Henry)
+Fix for libptcl make(Tatsuo)
+AIX patch(Darren)
+Change IS TRUE, IS FALSE, ... to expressions using "=" rather than
+ function calls to istrue() or isfalse() to allow optimization(Thomas)
+Various fixes NetBSD/Sparc related(TomH)
+Alpha linux locking(Travis,Ryan)
+Change elog(WARN) to elog(ERROR)(Bruce)
+FAQ for FreeBSD(Marc)
+Bring in the PostODBC source tree as part of our standard distribution(Marc)
+A minor patch for HP/UX 10 vs 9(Stan)
+New pg_attribute.atttypmod for type-specific info like varchar length(Bruce)
+UnixWare patches(Billy)
+New i386 'lock' for spinlock asm(Billy)
+Support for multiplexed backends is removed
+Start an OpenBSD port
+Start an AUX port
+Start a Cygnus port
+Add string functions to regression suite(Thomas)
+Expand a few function names formerly truncated to 16 characters(Thomas)
+Remove un-needed malloc() calls and replace with palloc()(Bruce)
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-6-2-1">
+<title>Sortie 6.2.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1997-10-17</simpara>
+ </note>
+
+<para>
+6.2.1 is a bogue-fix and usability release on 6.2.
+</para>
+<para>
+Summary:
+
+<itemizedlist>
+<listitem>
+<para>
+Allow strings to span lines, per <acronym>SQL92</acronym>.
+</para>
+</listitem>
+
+<listitem>
+<para>
+Include example trigger function for inserting user names on table updates.
+</para>
+</listitem>
+
+</itemizedlist>
+</para>
+<para>
+This is a minor bogue-fix release on 6.2.
+For upgrades from pre-6.2 systems, a full dump/reload is required.
+Refer to the 6.2 release notes for instructions.
+</para>
+
+<sect2>
+<title>Migration from version 6.2 to version 6.2.1</title>
+
+<para>
+This is a minor bogue-fix release. A dump/reload is not required from version 6.2,
+but is required from any release prior to 6.2.
+</para>
+<para>
+In upgrading from version 6.2, if you choose to dump/reload you will find that
+avg(money) is now calculated correctly. All other bogue fixes take effect
+upon updating the executables.
+</para>
+<para>
+Another way to avoid dump/reload is to use the following SQL command
+from <command>psql</command> to update the existing system table:
+
+<programlisting>
+ update pg_aggregate set aggfinalfn = 'cash_div_flt8'
+ where aggname = 'avg' and aggbasetype = 790;
+</programlisting>
+</para>
+<para>
+This will need to be done to every existing database, including template1.
+</para>
+</sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Allow TIME and TYPE column names(Thomas)
+Allow larger range of true/false as boolean values(Thomas)
+Support output of "now" and "current"(Thomas)
+Handle DEFAULT with INSERT of NULL properly(Vadim)
+Fix for relation reference counts problem in buffer manager(Vadim)
+Allow strings to span lines, like ANSI(Thomas)
+Fix for backward cursor with ORDER BY(Vadim)
+Fix avg(cash) computation(Thomas)
+Fix for specifying a column twice in ORDER/GROUP BY(Vadim)
+Documented new libpq function to return affected rows, PQcmdTuples(Bruce)
+Trigger function for inserting user names for INSERT/UPDATE(Brook Milligan)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+<sect1 id="release-6-2">
+<title>Sortie 6.2</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1997-10-02</simpara>
+ </note>
+
+<para>
+A dump/restore is required for those wishing to migrate data from
+previous releases of <productname>PostgreSQL</productname>.
+</para>
+
+<sect2>
+<title>Migration from version 6.1 to version 6.2</title>
+
+<para>
+This migration requires a complete dump of the 6.1 database and a
+restore of the database in 6.2.
+</para>
+<para>
+Note that the <command>pg_dump</command> and <command>pg_dumpall</command>
+utility from 6.2 should be used
+to dump the 6.1 database.
+</para>
+</sect2>
+
+<sect2>
+<title>Migration from version 1.<replaceable>x</> to version 6.2</title>
+
+<para>
+Those migrating from earlier 1.* releases should first upgrade to 1.09
+because the COPY output format was improved from the 1.02 release.
+</para>
+</sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+Fix problems with pg_dump for inheritance, sequences, archive tables(Bruce)
+Fix compile errors on overflow due to shifts, unsigned, and bad prototypes
+ from Solaris(Diab Jerius)
+Fix bogues in geometric line arithmetic (bad intersection calculations)(Thomas)
+Check for geometric intersections at endpoints to avoid rounding
+ugliness(Thomas)
+Catch non-functional delete attempts(Vadim)
+Change time function names to be more consistent(Michael Reifenberg)
+Check for zero divides(Michael Reifenberg)
+Fix very old bogue which made rows changed/inserted by a command
+ visible to the command itself (so we had multiple update of
+ updated rows, etc.)(Vadim)
+Fix for SELECT NULL, 'fail' FROM pg_am (Patrick)
+SELECT NULL as EMPTY_FIELD now allowed(Patrick)
+Remove un-needed signal stuff from contrib/pginterface
+Fix OR (where x != 1 or x isnull didn't return rows with x NULL) (Vadim)
+Fix time_cmp function (Vadim)
+Fix handling of functions with non-attribute first argument in
+ WHERE clauses (Vadim)
+Fix GROUP BY when order of entries is different from order
+ in target list (Vadim)
+Fix pg_dump for aggregates without sfunc1 (Vadim)
+
+Enhancements
+------------
+Default genetic optimizer GEQO parameter is now 8(Bruce)
+Allow use parameters in target list having aggregates in functions(Vadim)
+Added JDBC driver as an interface(Adrian & Peter)
+pg_password utility
+Return number of rows inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
+Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
+SPI (Server Programming Interface) allows exécution of queries inside
+ C-functions (Vadim)
+NOT NULL implemented (SQL92)(Robson Paniago de Miranda)
+Include reserved words for string handling, outer joins, and unions(Thomas)
+Implement extended comments ("/* ... */") using exclusive states(Thomas)
+Add "//" single-line comments(Bruce)
+Remove some restrictions on characters in operator names(Thomas)
+DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim & Thomas)
+Add text concatenation operator and function (SQL92)(Thomas)
+Support WITH TIME ZONE syntax (SQL92)(Thomas)
+Support INTERVAL unit TO unit syntax (SQL92)(Thomas)
+Define types DOUBLE PRECISION, INTERVAL, CHARACTER,
+ and CHARACTER VARYING (SQL92)(Thomas)
+Define type FLOAT(p) and rudimentary DECIMAL(p,s), NUMERIC(p,s) (SQL92)(Thomas)
+Define EXTRACT(), POSITION(), SUBSTRING(), and TRIM() (SQL92)(Thomas)
+Define CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP (SQL92)(Thomas)
+Add syntax and warnings for UNION, HAVING, INNER and OUTER JOIN (SQL92)(Thomas)
+Add more reserved words, mostly for SQL92 compliance(Thomas)
+Allow hh:mm:ss time entry for timespan/reltime types(Thomas)
+Add center() routines for lseg, path, polygon(Thomas)
+Add distance() routines for circle-polygon, polygon-polygon(Thomas)
+Check explicitly for points and polygons contained within polygons
+ using an axis-crossing algorithm(Thomas)
+Add routine to convert circle-box(Thomas)
+Merge conflicting operators for different geometric data types(Thomas)
+Replace distance operator "<===>" with "<->"(Thomas)
+Replace "above" operator "!^" with ">^" and "below" operator "!|" with
+"<^"(Thomas)
+Add routines for text trimming on both ends, substring, and string
+position(Thomas)
+Added conversion routines circle(box) and poly(circle)(Thomas)
+Allow internal sorts to be stored in memory rather than in files(Bruce & Vadim)
+Allow functions and operators on internally-identical types to succeed(Bruce)
+Speed up backend start-up after profiling analysis(Bruce)
+Inline frequently called functions for performance(Bruce)
+Reduce open() calls(Bruce)
+psql: Add PAGER for \h and \?,\C fix
+Fix for psql pager when no tty(Bruce)
+New entab utility(Bruce)
+General trigger functions for referential integrity (Vadim)
+General trigger functions for time travel (Vadim)
+General trigger functions for AUTOINCREMENT/IDENTITY feature (Vadim)
+MOVE implementation (Vadim)
+
+Source Tree Changes
+-------------------
+HP-UX 10 patches (Vladimir Turin)
+Added SCO support, (Daniel Harris)
+MkLinux patches (Tatsuo Ishii)
+Change geometric box terminology from "length" to "width"(Thomas)
+Deprecate temporary unstored slope fields in geometric code(Thomas)
+Remove restart instructions from INSTALL(Bruce)
+Look in /usr/ucb first for install(Bruce)
+Fix c++ copy example code(Thomas)
+Add -o to psql manual page(Bruce)
+Prevent relname unallocated string length from being copied into database(Bruce)
+Cleanup for NAMEDATALEN use(Bruce)
+Fix pg_proc names over 15 chars in output(Bruce)
+Add strNcpy() function(Bruce)
+remove some (void) casts that are unnecessary(Bruce)
+new interfaces directory(Marc)
+Replace fopen() calls with calls to fd.c functions(Bruce)
+Make functions static where possible(Bruce)
+enclose unused functions in #ifdef NOT_USED(Bruce)
+Remove call to difftime() in timestamp support to fix SunOS(Bruce & Thomas)
+Changes for Digital Unix
+Portability fix for pg_dumpall(Bruce)
+Rename pg_attribute.attnvals to attdispersion(Bruce)
+"intro/unix" manual page now "pgintro"(Bruce)
+"built-in" manual page now "pgbuiltin"(Bruce)
+"drop" manual page now "drop_table"(Bruce)
+Add "create_trigger", "drop_trigger" manual pages(Thomas)
+Add constraints regression test(Vadim & Thomas)
+Add comments syntax regression test(Thomas)
+Add PGINDENT and support program(Bruce)
+Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
+Files moved to /src/tools directory(Bruce)
+SPI and Trigger programming guides (Vadim & D'Arcy)
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-6-1-1">
+<title>Sortie 6.1.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1997-07-22</simpara>
+ </note>
+
+<sect2>
+<title>Migration from version 6.1 to version 6.1.1</title>
+
+<para>
+This is a minor bogue-fix release. A dump/reload is not required from version 6.1,
+but is required from any release prior to 6.1.
+Refer to the release notes for 6.1 for more details.
+</para>
+</sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+fix for SET with options (Thomas)
+allow pg_dump/pg_dumpall to preserve ownership of all tables/objects(Bruce)
+new psql \connect option allows changing usernames without changing databases
+fix for initdb --debogue option(Yoshihiko Ichikawa))
+lextest cleanup(Bruce)
+hash fixes(Vadim)
+fix date/time month boundary arithmetic(Thomas)
+fix timezone daylight handling for some ports(Thomas, Bruce, Tatsuo)
+timestamp overhauled to use standard functions(Thomas)
+other code cleanup in date/time routines(Thomas)
+psql's \d now case-insensitive(Bruce)
+psql's antislash commands can now have trailing semicolon(Bruce)
+fix memory leak in psql when using \g(Bruce)
+major fix for endian handling of communication to server(Thomas, Tatsuo)
+Fix for Solaris assembler and include files(Yoshihiko Ichikawa)
+allow underscores in usernames(Bruce)
+pg_dumpall now returns proper status, portability fix(Bruce)
+ </programlisting>
+ </para>
+ </sect2>
+ </sect1>
+
+<sect1 id="release-6-1">
+<title>Sortie 6.1</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1997-06-08</simpara>
+ </note>
+
+<para>
+ The regression tests have been adapted and extensively modified for the
+ 6.1 release of <productname>PostgreSQL</productname>.
+</para>
+
+<para>
+ Three new data types (<type>datetime</type>, <type>timespan</type>, and
+<type>circle</type>) have been added to
+ the native set of <productname>PostgreSQL</productname> types. Points, boxes,
+paths, and polygons
+ have had their output formats made consistent across the data types.
+ The polygon output in misc.out has only been spot-checked for correctness
+ relative to the original regression output.
+</para>
+
+<para>
+ <productname>PostgreSQL</productname> 6.1 introduces a new, alternate
+optimizer which uses <firstterm>genetic</firstterm>
+ algorithms. These algorithms introduce a random behavior in the ordering
+ of query results when the query contains multiple qualifiers or multiple
+ tables (giving the optimizer a choice on order of evaluation). Several
+ regression tests have been modified to explicitly order the results, and
+ hence are insensitive to optimizer choices. A few regression tests are
+ for data types which are inherently unordered (e.g. points and time
+ intervals) and tests involving those types are explicitly bracketed with
+ <command>set geqo to 'off'</command> and <command>reset geqo</command>.
+</para>
+
+<para>
+ The interpretation of array specifiers (the curly braces around atomic
+ values) appears to have changed sometime after the original regression
+ tests were generated. The current <filename>./expected/*.out</filename> files
+reflect this
+ new interpretation, which may not be correct!
+</para>
+
+<para>
+ The float8 regression test fails on at least some platforms. This is due
+ to differences in implementations of <function>pow()</function> and
+<function>exp()</function> and the signaling
+ mechanisms used for overflow and underflow conditions.
+</para>
+
+<para>
+ The <quote>random</> results in the random test should cause the
+ <quote>random</quote> test to be <quote>failed</quote>, since the
+ regression tests are evaluated using a simple diff. However,
+ <quote>random</> does not seem to produce random results on my test
+ machine (Linux/<application>gcc</>/i686).
+</para>
+
+<sect2>
+<title>Migration vers la version 6.1</title>
+
+<para>
+This migration requires a complete dump of the 6.0 database and a
+restore of the database in 6.1.
+</para>
+<para>
+Those migrating from earlier 1.* releases should first upgrade to 1.09
+because the COPY output format was improved from the 1.02 release.
+</para>
+</sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+packet length checking in library routines
+lock manager priority patch
+check for under/over flow of float8(Bruce)
+multitable join fix(Vadim)
+SIGPIPE crash fix(Darren)
+large object fixes(Sven)
+allow btree indexes to handle NULLs(Vadim)
+timezone fixes(D'Arcy)
+select SUM(x) can return NULL on no rows(Thomas)
+internal optimizer, executor bogue fixes(Vadim)
+fix problem where inner loop in < or <= has no rows(Vadim)
+prevent re-commuting join index clauses(Vadim)
+fix join clauses for multiple tables(Vadim)
+fix hash, hashjoin for arrays(Vadim)
+fix btree for abstime type(Vadim)
+large object fixes(Raymond)
+fix buffer leak in hash indexes (Vadim)
+fix rtree for use in inner scan (Vadim)
+fix gist for use in inner scan, cleanups (Vadim, Andrea)
+avoid unnecessary local buffers allocation (Vadim, Massimo)
+fix local buffers leak in transaction aborts (Vadim)
+fix file manager memmory leaks, cleanups (Vadim, Massimo)
+fix storage manager memmory leaks (Vadim)
+fix btree duplicates handling (Vadim)
+fix deleted rows reincarnation caused by vacuum (Vadim)
+fix SELECT varchar()/char() INTO TABLE made zero-length fields(Bruce)
+many psql, pg_dump, and libpq memory leaks fixed using Purify (Igor)
+
+Enhancements
+------------
+attribute optimization statistics(Bruce)
+much faster new btree bulk load code(Paul)
+BTREE UNIQUE added to bulk load code(Vadim)
+new lock debogue code(Massimo)
+massive changes to libpg++(Leo)
+new GEQO optimizer speeds table multitable optimization(Martin)
+new WARN message for non-unique insert into unique key(Marc)
+update x=-3, no spaces, now valid(Bruce)
+remove case-sensitive identifier handling(Bruce,Thomas,Dan)
+debogue backend now pretty-prints tree(Darren)
+new Oracle character functions(Edmund)
+new plaintext password functions(Dan)
+no such class or insufficient privilege changed to distinct messages(Dan)
+new ANSI timestamp function(Dan)
+new ANSI Time and Date types (Thomas)
+move large chunks of data in backend(Martin)
+multicolumn btree indexes(Vadim)
+new SET var TO value command(Martin)
+update transaction status on reads(Dan)
+new locale settings for character types(Oleg)
+new SEQUENCE serial number generator(Vadim)
+GROUP BY function now possible(Vadim)
+re-organize regression test(Thomas,Marc)
+new optimizer operation weights(Vadim)
+new psql \z grant/permit option(Marc)
+new MONEY data type(D'Arcy,Thomas)
+tcp socket communication speed improved(Vadim)
+new VACUUM option for attribute statistics, and for certain columns (Vadim)
+many geometric type improvements(Thomas,Keith)
+additional regression tests(Thomas)
+new datestyle variable(Thomas,Vadim,Martin)
+more comparison operators for sorting types(Thomas)
+new conversion functions(Thomas)
+new more compact btree format(Vadim)
+allow pg_dumpall to preserve database ownership(Bruce)
+new SET GEQO=# and R_PLANS variable(Vadim)
+old (!GEQO) optimizer can use right-sided plans (Vadim)
+typechecking improvement in SQL parser(Bruce)
+new SET, SHOW, RESET commands(Thomas,Vadim)
+new \connect database USER option
+new destroydb -i option (Igor)
+new \dt and \di psql commands (Darren)
+SELECT "\n" now escapes newline (A. Duursma)
+new geometry conversion functions from old format (Thomas)
+
+Source tree changes
+-------------------
+new configuration script(Marc)
+readline configuration option added(Marc)
+OS-specific configuration options removed(Marc)
+new OS-specific template files(Marc)
+no more need to edit Makefile.global(Marc)
+re-arrange include files(Marc)
+nextstep patches (Gregor Hoffleit)
+removed Windows-specific code(Bruce)
+removed postmaster -e option, now only postgres -e option (Bruce)
+merge duplicate library code in front/backends(Martin)
+now works with eBones, international Kerberos(Jun)
+more shared library support
+c++ include file cleanup(Bruce)
+warn about boguegy flex(Bruce)
+DG/UX, Ultrix, IRIX, AIX portability fixes
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-6-0">
+<title>Sortie 6.0</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1997-01-29</simpara>
+ </note>
+
+<para>
+A dump/restore is required for those wishing to migrate data from
+previous releases of <productname>PostgreSQL</productname>.
+</para>
+
+<sect2>
+<title>Migration from version 1.09 to version 6.0</title>
+
+<para>
+This migration requires a complete dump of the 1.09 database and a
+restore of the database in 6.0.
+</para>
+</sect2>
+
+<sect2>
+<title>Migration from pre-1.09 to version 6.0</title>
+
+<para>
+Those migrating from earlier 1.* releases should first upgrade to 1.09
+because the COPY output format was improved from the 1.02 release.
+</para>
+</sect2>
+
+ <sect2>
+ <title>Modifications</title>
+
+ <para>
+ <programlisting>
+Bug Fixes
+---------
+ALTER TABLE bogue - running postgress process needs to re-read table definition
+Allow vacuum to be run on one table or entire database(Bruce)
+Array fixes
+Fix array over-runs of memory writes(Kurt)
+Fix elusive btree range/non-range bogue(Dan)
+Fix for hash indexes on some types like time and date
+Fix for pg_log size explosion
+Fix permissions on lo_export()(Bruce)
+Fix unitialized reads of memory(Kurt)
+Fixed ALTER TABLE ... char(3) bogue(Bruce)
+Fixed a few small memory leaks
+Fixed EXPLAIN handling of options and changed full_path option name
+Fixed output of group acl privileges
+Memory leaks (hunt and destroy with tools like Purify(Kurt)
+Minor improvements to rules system
+NOTIFY fixes
+New asserts for run-checking
+Overhauled parser/analyze code to properly report errors and increase speed
+Pg_dump -d now handles NULL's properly(Bruce)
+Prevent SELECT NULL from crashing server (Bruce)
+Properly report errors when INSERT ... SELECT columns did not match
+Properly report errors when insert column names were not correct
+psql \g filename now works(Bruce)
+psql fixed problem with multiple statements on one line with multiple outputs
+Removed duplicate system OIDs
+SELECT * INTO TABLE . GROUP/ORDER BY gives unlink error if table exists(Bruce)
+Several fixes for queries that crashed the backend
+Starting quote in insert string errors(Bruce)
+Submitting an empty query now returns empty status, not just " " query(Bruce)
+
+Enhancements
+------------
+Add EXPLAIN manual page(Bruce)
+Add UNIQUE index capability(Dan)
+Add hostname/user level access control rather than just hostname and user
+Add synonym of != for <>(Bruce)
+Allow "select oid,* from table"
+Allow BY,ORDER BY to specify columns by number, or by non-alias
+table.column(Bruce)
+Allow COPY from the frontend(Bryan)
+Allow GROUP BY to use alias column name(Bruce)
+Allow actual compression, not just reuse on the same page(Vadim)
+Allow installation-configuration option to auto-add all local users(Bryan)
+Allow libpq to distinguish between text value '' and NULL(Bruce)
+Allow non-postgres users with createdb privs to destroydb's
+Allow restriction on who can create C functions(Bryan)
+Allow restriction on who can do backend COPY(Bryan)
+Can shrink tables, pg_time and pg_log(Vadim & Erich)
+Change debogue level 2 to print queries only, changed debogue heading layout(Bruce)
+Change default decimal constant representation from float4 to float8(Bruce)
+European date format now set when postmaster is started
+Execute lowercase function names if not found with exact case
+Fixes for aggregate/GROUP processing, allow 'select sum(func(x),sum(x+y) from z'
+Gist now included in the distrubution(Marc)
+Idend authentication of local users(Bryan)
+Implement BETWEEN qualifier(Bruce)
+Implement IN qualifier(Bruce)
+libpq has PQgetisnull()(Bruce)
+libpq++ improvements
+New options to initdb(Bryan)
+Pg_dump allow dump of OIDs(Bruce)
+Pg_dump create indexes after tables are loaded for speed(Bruce)
+Pg_dumpall dumps all databases, and the user table
+Pginterface additions for NULL values(Bruce)
+Prevent postmaster from being run as root
+psql \h and \? is now readable(Bruce)
+psql allow backslashed, semicolons anywhere on the line(Bruce)
+psql changed command prompt for lines in query or in quotes(Bruce)
+psql char(3) now displays as (bp)char in \d output(Bruce)
+psql return code now more accurate(Bryan?)
+psql updated help syntax(Bruce)
+Re-visit and fix vacuum(Vadim)
+Reduce size of regression diffs, remove timezone name différence(Bruce)
+Remove compile-time parameters to enable binary distributions(Bryan)
+Reverse meaning of HBA masks(Bryan)
+Secure Authentication of local users(Bryan)
+Speed up vacuum(Vadim)
+Vacuum now had VERBOSE option(Bruce)
+
+Source tree changes
+-------------------
+All functions now have prototypes that are compared against the calls
+Allow asserts to be disabled easly from Makefile.global(Bruce)
+Change oid constants used in code to #define names
+Decoupled sparc and solaris defines(Kurt)
+Gcc -Wall compiles cleanly with warnings only from unfixable constructs
+Major include file reorganization/reduction(Marc)
+Make now stops on compile failure(Bryan)
+Makefile restructuring(Bryan, Marc)
+Merge bsdi_2_1 to bsdi(Bruce)
+Monitor program removed
+Name change from Postgres95 to PostgreSQL
+New config.h file(Marc, Bryan)
+PG_VERSION now set to 6.0 and used by postmaster
+Portability additions, including Ultrix, DG/UX, AIX, and Solaris
+Reduced the number of #define's, centeralized #define's
+Remove duplicate OIDS in system tables(Dan)
+Remove duplicate system catalog info or report mismatches(Dan)
+Removed many os-specific #define's
+Restructured object file generation/location(Bryan, Marc)
+Restructured port-specific file locations(Bryan, Marc)
+Unused/uninialized variables corrected
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-1-09">
+<title>Sortie 1.09</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1996-11-04</simpara>
+ </note>
+
+<para>
+Sorry, we didn't keep track of changes from 1.02 to 1.09. Some of
+the changes listed in 6.0 were actually included in the 1.02.1 to 1.09
+releases.
+</para>
+</sect1>
+
+<sect1 id="release-1-02">
+<title>Sortie 1.02</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1996-08-01</simpara>
+ </note>
+
+<sect2>
+<title>Migration from version 1.02 to version 1.02.1</title>
+
+<para>
+Here is a new migration file for 1.02.1. It includes the 'copy' change
+and a script to convert old <acronym>ASCII</acronym> files.
+</para>
+<note>
+<para>
+The following notes are for the benefit of users who want to migrate
+databases from <productname>Postgres95</> 1.01 and 1.02 to
+<productname>Postgres95</> 1.02.1.
+</para>
+<para>
+If you are starting afresh with <productname>Postgres95</> 1.02.1 and do not
+need
+to migrate old databases, you do not need to read any further.
+</para>
+</note>
+
+<para>
+In order to upgrade older <productname>Postgres95</> version 1.01 or 1.02
+databases to
+version 1.02.1, the following steps are required:
+</para>
+<procedure>
+<step>
+<para>
+Start up a new 1.02.1 postmaster
+</para>
+</step>
+<step>
+<para>
+Add the new built-in functions and operators of 1.02.1 to 1.01 or 1.02
+ databases. This is done by running the new 1.02.1 server against
+ your own 1.01 or 1.02 database and applying the queries attached at
+ the end of the file. This can be done easily through <command>psql</>. If
+your
+ 1.01 or 1.02 database is named <literal>testdb</literal> and you have cut the
+commands
+ from the end of this file and saved them in <filename>addfunc.sql</filename>:
+<programlisting>
+ % psql testdb -f addfunc.sql
+</programlisting>
+
+Those upgrading 1.02 databases will get a warning when executing the
+last two statements in the file because they are already present in 1.02. This
+is
+not a cause for concern.
+</para>
+</step>
+</procedure>
+</sect2>
+
+<sect2>
+<title>Dump/Reload Procedure</title>
+
+<para>
+If you are trying to reload a pg_dump or text-mode, <literal>copy tablename to
+stdout</literal> generated with a previous version, you will need to run the
+attached <command>sed</command> script on the ASCII file before loading it into
+the
+database. The old format used '.' as end-of-data, while '\.' is now the
+end-of-data marker. Also, empty strings are now loaded in as '' rather
+than NULL. See the copy manual page for full details.
+
+<programlisting>
+ sed 's/^\.$/\\./g' <in_file >out_file
+</programlisting>
+</para>
+<para>
+If you are loading an older binary copy or non-<systemitem>stdout</> copy, there
+is no
+end-of-data character, and hence no conversion necessary.
+
+<programlisting>
+-- following lines added by agc to reflect the case-insensitive
+-- regexp searching for varchar (in 1.02), and bpchar (in 1.02.1)
+create operator ~* (leftarg = bpchar, rightarg = text, procedure =
+texticregexeq);
+create operator !~* (leftarg = bpchar, rightarg = text, procedure =
+texticregexne);
+create operator ~* (leftarg = varchar, rightarg = text, procedure =
+texticregexeq);
+create operator !~* (leftarg = varchar, rightarg = text, procedure =
+texticregexne);
+</programlisting>
+</para>
+</sect2>
+
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Source code maintenance and development
+ * worldwide team of volunteers
+ * the source tree now in CVS at ftp.ki.net
+
+Enhancements
+ * psql (and underlying libpq library) now has many more options for
+ formatting output, including HTML
+ * pg_dump now output the schema and/or the data, with many fixes to
+ enhance completeness.
+ * psql used in place of monitor in administration shell scripts.
+ monitor to be deprecated in next release.
+ * date/time functions enhanced
+ * NULL insert/update/comparison fixed/enhanced
+ * TCL/TK lib and shell fixed to work with both tck7.4/tk4.0 and tcl7.5/tk4.1
+
+Bug Fixes (almost too numerous to mention)
+ * indexes
+ * storage management
+ * check for NULL pointer before dereferencing
+ * Makefile fixes
+
+New Ports
+ * added SolarisX86 port
+ * added BSD/OS 2.1 port
+ * added DG/UX port
+</programlisting>
+</para>
+<!--
+Contributors (appologies to any missed)
+ * Kurt J. Lidl <lidl at va.pubnix.com>
+ (missed in first run, but no less important)
+ * Erich Stamberger <eberger at gewi.kfunigraz.ac.at>
+ * Jason Wright <jason at shiloh.vnet.net>
+ * Cees de Groot <C.deGroot at inter.NL.net>
+ * ernst.molitor at uni-bonn.de
+ * michael.siebenborn at ae3.Hypo.DE (Michael Siebenborn (6929))
+ * Brian E. Gallew <geek+ at cmu.edu>
+ * Vadim B. Mikheev <vadim at sable.krasnoyarsk.su>
+ * Adam Sussman <myddryn at vidya.com>
+ * Chris Dunlop <chris at onthe.net.au>
+ * Marc G. Fournier <scrappy at ki.net>
+ * Dan McGuirk <mcguirk at indirect.com>
+ * Dr_George_D_Detlefsen <drgeorge at ilt.com>
+ * Erich Stamberger <eberger at gewi.kfunigraz.ac.at>
+ * Massimo Dal Zotto <dz at cs.unitn.it>
+ * Randy Kunkee <kunkee at Starbase.NeoSoft.COM>
+ * Rick Weldon <rick at wisetech.com>
+ * Thomas van Reimersdahl <reimersd at dali.techinfo.rwth-aachen.de>
+ * david bennett <dave at bensoft.com>
+ * ernst.molitor at uni-bonn.de
+ * Julian Assange <proff at suburbia.net>
+ * Bruce Momjian <pgman at candle.pha.pa.us>
+ * Paul "Shag" Walmsley <ccshag at cclabs.missouri.edu>
+ * "Alistair G. Crooks" <azcb0 at sde.uts.amdahl.com>
+-->
+</sect2>
+</sect1>
+
+<sect1 id="release-1-01">
+<title>Sortie 1.01</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1996-02-23</simpara>
+ </note>
+
+
+<sect2>
+<title>Migration from version 1.0 to version 1.01</title>
+
+<para>
+The following notes are for the benefit of users who want to migrate
+databases from <productname>Postgres95</> 1.0 to <productname>Postgres95</>
+1.01.
+</para>
+<para>
+If you are starting afresh with <productname>Postgres95</> 1.01 and do not need
+to migrate old databases, you do not need to read any further.
+</para>
+<para>
+In order to <productname>Postgres95</> version 1.01 with databases created with
+<productname>Postgres95</> version 1.0, the following steps are required:
+</para>
+<procedure>
+<step>
+<para>
+Set the definition of <symbol>NAMEDATALEN</symbol> in
+<filename>src/Makefile.global</filename> to 16
+ and <symbol>OIDNAMELEN</symbol> to 20.
+</para>
+</step>
+<step>
+<para>
+Decide whether you want to use Host based authentication.
+</para>
+<substeps>
+<step>
+<para>
+If you do, you must create a file name <literal>pg_hba</literal> in your
+top-level data
+ directory (typically the value of your <envar>$PGDATA</envar>).
+<filename>src/libpq/pg_hba</filename>
+ shows anexemple syntax.
+</para>
+</step>
+<step>
+<para>
+If you do not want host-based authentication, you can comment out
+ the line
+<programlisting>
+ HBA = 1
+</programlisting>
+ in <filename>src/Makefile.global</filename>
+</para>
+<para>
+ Note that host-based authentication is turned on by default, and if
+ you do not take steps A or B above, the out-of-the-box 1.01 will
+ not allow you to connect to 1.0 databases.
+</para>
+</step>
+</substeps>
+</step>
+
+<step>
+<para>
+Compile and install 1.01, but DO NOT do the <command>initdb</command> step.
+</para>
+</step>
+<step>
+<para>
+Before doing anything else, terminate your 1.0 postmaster, and
+ backup your existing <envar>$PGDATA</envar> directory.
+</para>
+</step>
+<step>
+<para>
+Set your <envar>PGDATA</envar> environment variable to your 1.0 databases, but
+set up
+ path up so that 1.01 binaries are being used.
+</para>
+</step>
+<step>
+<para>
+Modify the file <filename><envar>$PGDATA</envar>/PG_VERSION</filename> from 5.0
+to 5.1
+</para>
+</step>
+<step>
+<para>
+Start up a new 1.01 postmaster
+</para>
+</step>
+<step>
+<para>
+Add the new built-in functions and operators of 1.01 to 1.0
+ databases. This is done by running the new 1.01 server against
+ your own 1.0 database and applying the queries attached and saving
+ in the file 1.0_to_1.01.sql. This can be done easily through
+<command>psql</command>.
+ If your 1.0 database is name <literal>testdb</literal>:
+
+<programlisting>
+ % psql testdb -f 1.0_to_1.01.sql
+</programlisting>
+
+and then execute the following commands (cut and paste from here):
+
+<programlisting>
+-- add builtin functions that are new to 1.01
+
+create function int4eqoid (int4, oid) returns bool as 'foo'
+language 'internal';
+create function oideqint4 (oid, int4) returns bool as 'foo'
+language 'internal';
+create function char2icregexeq (char2, text) returns bool as 'foo'
+language 'internal';
+create function char2icregexne (char2, text) returns bool as 'foo'
+language 'internal';
+create function char4icregexeq (char4, text) returns bool as 'foo'
+language 'internal';
+create function char4icregexne (char4, text) returns bool as 'foo'
+language 'internal';
+create function char8icregexeq (char8, text) returns bool as 'foo'
+language 'internal';
+create function char8icregexne (char8, text) returns bool as 'foo'
+language 'internal';
+create function char16icregexeq (char16, text) returns bool as 'foo'
+language 'internal';
+create function char16icregexne (char16, text) returns bool as 'foo'
+language 'internal';
+create function texticregexeq (text, text) returns bool as 'foo'
+language 'internal';
+create function texticregexne (text, text) returns bool as 'foo'
+language 'internal';
+
+-- add builtin functions that are new to 1.01
+
+create operator = (leftarg = int4, rightarg = oid, procedure = int4eqoid);
+create operator = (leftarg = oid, rightarg = int4, procedure = oideqint4);
+create operator ~* (leftarg = char2, rightarg = text, procedure =
+char2icregexeq);
+create operator !~* (leftarg = char2, rightarg = text, procedure =
+char2icregexne);
+create operator ~* (leftarg = char4, rightarg = text, procedure =
+char4icregexeq);
+create operator !~* (leftarg = char4, rightarg = text, procedure =
+char4icregexne);
+create operator ~* (leftarg = char8, rightarg = text, procedure =
+char8icregexeq);
+create operator !~* (leftarg = char8, rightarg = text, procedure =
+char8icregexne);
+create operator ~* (leftarg = char16, rightarg = text, procedure =
+char16icregexeq);
+create operator !~* (leftarg = char16, rightarg = text, procedure =
+char16icregexne);
+create operator ~* (leftarg = text, rightarg = text, procedure = texticregexeq);
+create operator !~* (leftarg = text, rightarg = text, procedure =
+texticregexne);
+</programlisting>
+</para>
+</step>
+</procedure>
+</sect2>
+
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Incompatibilities:
+ * 1.01 is backwards compatible with 1.0 database provided the user
+ follow the steps outlined in the MIGRATION_from_1.0_to_1.01 file.
+ If those steps are not taken, 1.01 is not compatible with 1.0 database.
+
+Enhancements:
+ * added PQdisplayTuples() to libpq and changed monitor and psql to use it
+ * added NeXT port (requires SysVIPC implementation)
+ * added CAST .. AS ... syntax
+ * added ASC and DESC key words
+ * added 'internal' as a possible language for CREATE FUNCTION
+ internal functions are C functions which have been statically linked
+ into the postgres backend.
+ * a new type "name" has been added for system identifiers (table names,
+ attribute names, etc.) This replaces the old char16 type. The
+ of name is set by the NAMEDATALEN #define in src/Makefile.global
+ * a readable reference manual that describes the query language.
+ * added host-based access control. A configuration file ($PGDATA/pg_hba)
+ is used to hold the configuration data. If host-based access control
+ is not desired, comment out HBA=1 in src/Makefile.global.
+ * changed regex handling to be uniform use of Henry Spencer's regex code
+ regardless of platform. The regex code is included in the distribution
+ * added functions and operators for case-insensitive regular expressions.
+ The operators are ~* and !~*.
+ * pg_dump uses COPY instead of SELECT loop for better performance
+
+Bug fixes:
+ * fixed an optimizer bogue that was causing core dumps when
+ functions calls were used in comparisons in the WHERE clause
+ * changed all uses of getuid to geteuid so that effective uids are used
+ * psql now returns non-zero status on errors when using -c
+ * applied public patches 1-14
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-1-0">
+<title>Sortie 1.0</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1995-09-05</simpara>
+ </note>
+
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Copyright change:
+ * The copyright of <productname>Postgres</productname> 1.0 has been loosened to
+be freely modifiable
+ and modifiable for any purpose. Please read the COPYRIGHT file.
+ Thanks to Professor Michael Stonebraker for making this possible.
+
+Incompatibilities:
+ * date formats have to be MM-DD-YYYY (or DD-MM-YYYY if you're using
+ EUROPEAN STYLE). This follows SQL-92 specs.
+ * "delimiters" is now a key word
+
+Enhancements:
+ * sql LIKE syntax has been added
+ * copy command now takes an optional USING DELIMITER specification.
+ delimiters can be any single-character string.
+ * IRIX 5.3 port has been added.
+ Thanks to Paul Walmsley and others.
+ * updated pg_dump to work with new libpq
+ * \d has been added psql
+ Thanks to Keith Parks
+ * regexp performance for architectures that use POSIX regex has been
+ improved due to caching of precompiled patterns.
+ Thanks to Alistair Crooks
+ * a new version of libpq++
+ Thanks to William Wanders
+
+Bug fixes:
+ * arbitrary userids can be specified in the createuser script
+ * \c to connect to other databases in psql now works.
+ * bad pg_proc entry for float4inc() is fixed
+ * users with usecreatedb field set can now create databases without
+ having to be usesuper
+ * remove access control entries when the entry no longer has any
+ privileges
+ * fixed non-portable datetimes implementation
+ * added kerberos flags to the src/backend/Makefile
+ * libpq now works with kerberos
+ * typographic errors in the user manual have been corrected.
+ * btrees with multiple index never worked, now we tell you they don't
+ work when you try to use them
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-0-03">
+<title><productname>Postgres95</productname> Release 0.03</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1995-07-21</simpara>
+ </note>
+
+<sect2>
+<title>Modifications</title>
+<para>
+<programlisting>
+Incompatible changes:
+ * BETA-0.3 IS INCOMPATIBLE WITH DATABASES CREATED WITH PREVIOUS VERSIONS
+ (due to system catalog changes and indexing structure changes).
+ * double-quote (") is deprecated as a quoting character for string literals;
+ you need to convert them to single quotes ('). <!-- " -->
+ * name of aggregates (eg. int4sum) are renamed in accordance with the
+ SQL standard (eg. sum).
+ * CHANGE ACL syntax is replaced by GRANT/REVOKE syntax.
+ * float literals (eg. 3.14) are now of type float4 (instead of float8 in
+ previous releases); you might have to do typecasting if you dépend on it
+ being of type float8. If you neglect to do the typecasting and you assign
+ a float literal to a field of type float8, you may get incorrect values
+ stored!
+ * LIBPQ has been totally revamped so that frontend applications
+ can connect to multiple backends
+ * the usesysid field in pg_user has been changed from int2 to int4 to
+ allow wider range of Unix user ids.
+ * the netbsd/freebsd/bsd o/s ports have been consolidated into a
+ single BSD44_derived port. (thanks to Alistair Crooks)
+
+SQL standard-compliance (the following details changes that makes postgres95
+more compliant to the SQL-92 standard):
+ * the following SQL types are now built-in: smallint, int(eger), float, real,
+ char(N), varchar(N), date and time.
+
+ The following are aliases to existing postgres types:
+ smallint -> int2
+ integer, int -> int4
+ float, real -> float4
+ char(N) and varchar(N) are implemented as truncated text types. In
+ addition, char(N) does blank-padding.
+ * single-quote (') is used for quoting string literals; '' (in addition to
+ \') is supported as means of inserting a single quote in a string
+ * SQL standard aggregate names (MAX, MIN, AVG, SUM, COUNT) are used
+ (Also, aggregates can now be overloaded, i.e. you can define your
+ own MAX aggregate to take in a user-defined type.)
+ * CHANGE ACL removed. GRANT/REVOKE syntax added.
+ - Privileges can be given to a group using the "GROUP" key word.
+ Forexemple:
+ GRANT SELECT ON foobar TO GROUP my_group;
+ The key word 'PUBLIC' is also supported to mean all users.
+
+ Privileges can only be granted or revoked to one user or group
+ at a time.
+
+ "WITH GRANT OPTION" is not supported. Only class owners can change
+ access control
+ - The default access control is to to grant users readonly access.
+ You must explicitly grant insert/update access to users. To change
+ this, modify the line in
+ src/backend/utils/acl.h
+ that defines ACL_WORLD_DEFAULT
+
+Bug fixes:
+ * the bogue where aggregates of empty tables were not run has been fixed. Now,
+ aggregates run on empty tables will return the initial conditions of the
+ aggregates. Thus, COUNT of an empty table will now properly return 0.
+ MAX/MIN of an empty table will return a row of value NULL.
+ * allow the use of \; inside the monitor
+ * the LISTEN/NOTIFY asynchronous notification mechanism now work
+ * NOTIFY in rule action bodies now work
+ * hash indexes work, and access methods in general should perform better.
+ creation of large btree indexes should be much faster. (thanks to Paul
+ Aoki)
+
+Other changes and enhancements:
+ * addition of an EXPLAIN statement used for explaining the query exécution
+ plan (eg. "EXPLAIN SELECT * FROM EMP" prints out the exécution plan for
+ the query).
+ * WARN and NOTICE messages no longer have timestamps on them. To turn on
+ timestamps of error messages, uncomment the line in
+ src/backend/utils/elog.h:
+ /* define ELOG_TIMESTAMPS */
+ * On an access control violation, the message
+ "Either no such class or insufficient privilege"
+ will be given. This is the same message that is returned when
+ a class is not found. This dissuades non-privileged users from
+ guessing the existence of privileged classes.
+ * some additional system catalog changes have been made that are not
+ visible to the user.
+
+libpgtcl changes:
+ * The -oid option has been added to the "pg_result" tcl command.
+ pg_result -oid returns oid of the last row inserted. If the
+ last command was not an INSERT, then pg_result -oid returns "".
+ * the large object interface is available as pg_lo* tcl commands:
+ pg_lo_open, pg_lo_close, pg_lo_creat, etc.
+
+Portability enhancements and New Ports:
+ * flex/lex problems have been cleared up. Now, you should be able to use
+ flex instead of lex on any platforms. We no longer make assumptions of
+ what lexer you use based on the platform you use.
+ * The Linux-ELF port is now supported. Various configuration have been
+ tested: The following configuration is known to work:
+ kernel 1.2.10, gcc 2.6.3, libc 4.7.2, flex 2.5.2, bison 1.24
+ with everything in ELF format,
+
+New utilities:
+ * ipcclean added to the distribution
+ ipcclean usually does not need to be run, but if your backend crashes
+ and leaves shared memory segments hanging around, ipcclean will
+ clean them up for you.
+
+New documentation:
+ * the user manual has been revised and libpq documentation added.
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-0-02">
+<title><productname>Postgres95</productname> Release 0.02</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1995-05-25</simpara>
+ </note>
+
+<sect2>
+<title>Modifications</title>
+
+<para>
+<programlisting>
+Incompatible changes:
+ * The SQL statement for creating a database is 'CREATE DATABASE' instead
+ of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead
+ of 'DESTROYDB'. However, the names of the executables 'createdb' and
+ 'destroydb' remain the same.
+
+New tools:
+ * pgperl - a Perl (4.036) interface to Postgres95
+ * pg_dump - a utility for dumping out a postgres database into a
+ script file containing query commands. The script files are in a ASCII
+ format and can be used to reconstruct the database, even on other
+ machines and other architectures. (Also good for converting
+ a Postgres 4.2 database to Postgres95 database.)
+
+The following ports have been incorporated into postgres95-beta-0.02:
+ * the NetBSD port by Alistair Crooks
+ * the AIX port by Mike Tung
+ * the Windows NT port by Jon Forrest (more stuff but not done yet)
+ * the Linux ELF port by Brian Gallew
+
+The following bogues have been fixed in postgres95-beta-0.02:
+ * new lines not escaped in COPY OUT and problem with COPY OUT when first
+ attribute is a '.'
+ * cannot type return to use the default user id in createuser
+ * SELECT DISTINCT on big tables crashes
+ * Linux installation problems
+ * monitor doesn't allow use of 'localhost' as PGHOST
+ * psql core dumps when doing \c or \l
+ * the "pgtclsh" target missing from src/bin/pgtclsh/Makefile
+ * libpgtcl has a hard-wired default port number
+ * SELECT DISTINCT INTO TABLE hangs
+ * CREATE TYPE doesn't accept 'variable' as the internallength
+ * wrong result using more than 1 aggregate in a SELECT
+</programlisting>
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="release-0-01">
+<title><productname>Postgres95</productname> Release 0.01</title>
+
+ <note>
+ <title>Date de sortie</title>
+ <simpara>1995-05-01</simpara>
+ </note>
+
+<para>
+Initial release.
+</para>
+</sect1>
+
+<![IGNORE[
+ <sect1 id="timing-results">
+ <title>Timing Results</title>
+
+ <para>
+ These timing results are from running the regression test with the commands
+
+ <programlisting>
+% cd src/test/regress
+% make all
+% time make runtest
+ </programlisting>
+ </para>
+ <para>
+ Timing under Linux 2.0.27 seems to have a roughly 5% variation from run
+ to run, presumably due to the scheduling vagaries of multitasking systems.
+ </para>
+
+ <sect2>
+ <title>Version 6.5</title>
+
+ <para>
+ As has been the case for previous releases, timing between
+ releases is not directly comparable since new regression tests
+ have been added. In general, 6.5 is faster than previous
+ releases.
+ </para>
+
+ <para>
+ Timing with <function>fsync()</function> disabled:
+
+ <programlisting>
+ Time System
+ 02:00 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486
+ 04:38 Sparc Ultra 1 143MHz, 64MB, Solaris 2.6
+ </programlisting>
+ </para>
+
+ <para>
+ Timing with <function>fsync()</function> enabled:
+
+ <programlisting>
+ Time System
+ 04:21 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486
+ </programlisting>
+
+ For the <systemitem class="osname">Linux</systemitem> system above, using <acronym>UW-SCSI</acronym> disks rather than (older) <acronym>IDE</acronym>
+ disks leads to a 50% improvement in speed on the regression test.
+ </para>
+ </sect2>
+
+<sect2>
+<title>Version 6.4beta</title>
+
+<para>
+The times for this release are not directly comparable to those for previous releases
+since some additional regression tests have been included.
+In general, however, 6.4 should be slightly faster than the previous release (thanks, Bruce!).
+</para>
+<para>
+<programlisting>
+ Time System
+ 02:26 Dual Pentium Pro 180, 96MB, UW-SCSI, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
+</programlisting>
+</para>
+</sect2>
+
+<sect2>
+<title>Version 6.3</title>
+
+<para>
+The times for this release are not directly comparable to those for previous releases
+since some additional regression tests have been included and some obsolete tests involving
+time travel have been removed.
+In general, however, 6.3 is substantially faster than previous releases (thanks, Bruce!).
+</para>
+<para>
+<programlisting>
+ Time System
+ 02:30 Dual Pentium Pro 180, 96MB, UW-SCSI, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
+ 04:12 Dual Pentium Pro 180, 96MB, EIDE, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
+</programlisting>
+</para>
+</sect2>
+
+<sect2>
+<title>Version 6.1</title>
+
+<para>
+<programlisting>
+ Time System
+ 06:12 Pentium Pro 180, 32MB, EIDE, Linux 2.0.30, gcc 2.7.2 -O2 -m486
+ 12:06 P-100, 48MB, Linux 2.0.29, gcc
+ 39:58 Sparc IPC 32MB, Solaris 2.5, gcc 2.7.2.1 -O -g
+</programlisting>
+</para>
+</sect2>
+</sect1>
+]]>
Modified: traduc/branches/bv747/manuel/release.sgml
===================================================================
--- traduc/branches/bv747/manuel/release.sgml 2009-09-08 07:51:34 UTC (rev 1388)
+++ traduc/branches/bv747/manuel/release.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -1,15 +1,16 @@
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.235.2.68 2009-05-02 20:18:21 tgl Exp $ -->
<!--
-$Header: /var/lib/cvs/pgsql-fr/sgml/release.sgml,v 1.10.2.6 2005/07/15 06:33:46 guillaume Exp $
Typical markup:
&<> use & escapes
+PostgreSQL <productname>
+postgresql.conf, pg_hba.conf <filename>
[A-Z][A-Z ]+[A-Z] <command>
[A-Za-z_][A-Za-z0-9_]+() <function>
[A-Za-z_]/[A-Za-z_]+ <filename>
-PostgreSQL <productname>
pg_[A-Za-z0-9_] <application>
-[A-Z][A-Z] <type>, <envar>, <literal>
+[A-Z][A-Z][A-Z_ ]* <type>, <envar>, <literal>
non-ASCII characters convert to HTML4 entity (&) escapes
@@ -26,18 +27,17 @@
wrap long lines
For new features, add links to the documentation sections. Use </link>
-so that perl can remove it so HISTORY.html can be created with no
-links to the main documentation. This was added only in 8.2, so don't
-do it for earlier branch release files.
+not just </> so that generate_history.pl can remove it, so HISTORY.html
+can be created without links to the main documentation.
-->
<appendix id="release">
- <title>Notes de version</title>
+ <title>Release Notes</title>
<para>
The release notes contain the significant changes in each
- <productname>PostgreSQL</productname> release, with major features and migration
+ <productname>PostgreSQL</> release, with major features and migration
issues listed at the top. The release notes do not contain changes
that affect only a few users or changes that are internal and therefore not
user-visible. For example, the optimizer is improved in almost every
@@ -47,7 +47,7 @@
<para>
A complete list of changes for each release can be obtained by
- viewing the CVS logs for each release.
+ viewing the <link linkend="cvs">CVS</link> logs for each release.
The <ulink
url="http://archives.postgresql.org/pgsql-committers/">pgsql-committers
email list</ulink> records all source code changes as well. There is also
@@ -63,11856 +63,14 @@
review, so each item is truly a community effort.
</para>
- <sect1 id="release-7-4-25">
- <title>Version 7.4.25</title>
-
- <note>
- <title>Date de version</title>
- <simpara>2009-03-16</simpara>
- </note>
-
- <para>
- Cette version contient des corrections de la version 7.4.24.
- Pour plus d'informations sur les nouvelles fonctionnalités de la
- version majeure 7.4, voir <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.25</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Correction de crashs suite à des récursions erronées dûes à l'échec d'une
- conversion d'encodage (Tom)
- </para>
-
- <para>
- Cette modification étend les corrections réalisées lors des deux
- précédentes versions mineures pour les même scénarios. Les corrections
- déjà réalisées étaient ciblées sur les problèmes rencontrés, mais nous
- nous apercevons maintenant que <emphasis>toute</emphasis> erreur renvoyée
- par une fonction de conversion d'encodage pouvait entraîner une récursion
- infinie pour indiquer l'erreur. La solution est donc de désactiver toute
- traduction et conversion d'encodage. Le message d'erreur est renvoyé en
- ASCII simple si nous découvrons que nous sommes dans une situation
- susceptible d'entraîner une récursion infinie.
- </para>
- </listitem>
-
- <listitem>
- <para>
- N'autorise plus <command>CREATE CONVERSION</> avec les mauvais encodages
- pour la fonction de conversion spécifiée (Heikki)
- </para>
-
- <para>
- Ceci permet de prévenir un scénario possible pour un échec de conversion
- d'encodage. Le changement précédent permet de se protéger contre les
- autres échecs du même type.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un crash lorsque <function>to_char()</> a pour argument des
- codes de format inappropriés pour la donnée en argument (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajout de <literal>MUST</> (Mauritius Island Summer Time) dans la liste
- par défaut des abréviations connues de fuseau horaire (Xavier Bugaud)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-24">
- <title>Version 7.4.24</title>
-
- <note>
- <title>Date de version</title>
- <simpara>2009-02-02</simpara>
- </note>
-
- <para>
- Cette version contient des corrections de la version 7.4.23.
- Pour plus d'informations sur les nouvelles fonctionnalités de la
- version majeure 7.4, voir <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.24</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Changements</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Amélioration de la gestion des URL dans la fonction
- <function>headline()</function> (Teodor)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration de la gestion des lignes trop longues dans la fonction
- <function>headline()</function> (Teodor)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Empêche des échecs ou des mauvaises conversions avec Assert si une
- conversion d'encodage est créé avec la mauvaise fonction de conversion
- pour la paire spécifiée des encodages (Tom, Heikki)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Évite un verrou inutile des petites tables dans <command>VACUUM</>
- (Heikki)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de variables non initialisées dans la fonction
- <function>get_covers()</function> de <filename>contrib/tsearch2</filename>
- (Teodor)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue dans la gestion de <function>to_char()</function>
- pour les codes de format <literal>TH</literal> (Andreas Scherbaum)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Toute la documentation référence maintenant <literal>pgsql-bugs</literal>
- et/ou <literal>pgsql-hackers</literal>, au lieu des listes obsolètes comme
- <literal>pgsql-ports</literal> et <literal>pgsql-patches</literal> (Tom)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-23">
- <title>Version 7.4.23</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2008-11-03</simpara>
- </note>
-
- <para>
- Cette version contient des corrections de la version 7.4.22.
- Pour plus d'informations sur les nouvelles fonctionnalités de la
- version majeure 7.4, voir <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.23</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Correction d'un crash du serveur lorsque l'encodage client ne peut pas
- représenter une version convertie du message d'erreur (Tom)
- </para>
-
- <para>
- Nous avons déjà corrigé des problèmes identiques dans le passé, mais le
- problème est toujours d'actualité si le message <quote>le caratère n'a
- pas d'équivalent</> ne peut pas être converti. La correction revient à
- désactiver la transformation et à renvoyer le message d'erreur en ASCII
- brut quand nous détectons cette situation.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de la génération du résumé (« headline ») par tsearch2 quand
- l'élément de la requête correspond au premier mot d'un texte (Sushant
- Sinha)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de l'affichage de secondes fractionnées dans des valeurs
- d'intervalle lors de l'utilisation d'un style de date non ISO dans une
- construction ayant utilisé l'option <option>--enable-integer-datetimes</>
- (Ron Mayer)
- </para>
- </listitem>
-
- <listitem>
- <para>
- S'assure que <function>SPI_getvalue</> et <function>SPI_getbinval</>
- fonctionnent correctement lorsque la ligne et le descripteur de ligne
- passés ont un nombre de colonnes différent (Tom)
- </para>
-
- <para>
- Cette situation est normale quand une table se voit ajouter ou supprimer
- des colonnes, mais ces deux fonctions ne le géraient pas correctement.
- La seule conséquence probable est l'envoi d'un message d'erreur erroné.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de l'analyse de <command>CREATE USER</> par <application>ecpg</>
- (Michael)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-22">
- <title>Release 7.4.22</title>
-
- <note>
- <title>Release date</title>
- <simpara>2008-09-22</simpara>
- </note>
-
- <para>
- This release contains a variety of fixes from 7.4.21.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4"/>.
- </para>
-
- <sect2>
- <title>Migration to Version 7.4.22</title>
-
- <para>
- A dump/restore is not required for those running 7.4.X.
- However, if you are upgrading from a version earlier than 7.4.11,
- see the release notes for 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Changes</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Fix datetime input functions to correctly detect integer overflow when
- running on a 64-bit platform (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Improve performance of writing very long log messages to syslog (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
- ON</> query (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix planner to estimate that <literal>GROUP BY</> expressions yielding
- boolean results always result in two groups, regardless of the
- expressions' contents (Tom)
- </para>
-
- <para>
- This is very substantially more accurate than the regular <literal>GROUP
- BY</literal> estimate for certain boolean tests like <replaceable>col</replaceable>
- <literal>IS NULL</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Improve <application>pg_dump</application> and <application>pg_restore</application>'s
- error reporting after failure to send a SQL command (Tom)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-21">
- <title>Release 7.4.21</title>
-
- <note>
- <title>Release date</title>
- <simpara>2008-06-12</simpara>
- </note>
-
- <para>
- This release contains one serious bug fix over 7.4.20.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration to Version 7.4.21</title>
-
- <para>
- A dump/restore is not required for those running 7.4.X.
- However, if you are upgrading from a version earlier than 7.4.11,
- see the release notes for 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Changes</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Make <function>pg_get_ruledef()</> parenthesize negative constants (Tom)
- </para>
-
- <para>
- Before this fix, a negative constant in a view or rule might be dumped
- as, say, <literal>-42::integer</>, which is subtly incorrect: it should
- be <literal>(-42)::integer</> due to operator precedence rules.
- Usually this would make little difference, but it could interact with
- another recent patch to cause
- <productname>PostgreSQL</> to reject what had been a valid
- <command>SELECT DISTINCT</> view query. Since this could result in
- <application>pg_dump</> output failing to reload, it is being treated
- as a high-priority fix. The only released versions in which dump
- output is actually incorrect are 8.3.1 and 8.2.7.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-20">
- <title>Release 7.4.20</title>
-
- <note>
- <title>Release date</title>
- <simpara>never released</simpara>
- </note>
-
- <para>
- This release contains a variety of fixes from 7.4.19.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration to Version 7.4.20</title>
-
- <para>
- A dump/restore is not required for those running 7.4.X.
- However, if you are upgrading from a version earlier than 7.4.11,
- see the release notes for 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Changes</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Fix conversions between ISO-8859-5 and other encodings to handle
- Cyrillic <quote>Yo</quote> characters (<literal>e</literal> and <literal>E</literal> with
- two dots) (Sergey Burladyan)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix a few datatype input functions
- that were allowing unused bytes in their results to contain
- uninitialized, unpredictable values (Tom)
- </para>
-
- <para>
- This could lead to failures in which two apparently identical literal
- values were not seen as equal, resulting in the parser complaining
- about unmatched <literal>ORDER BY</literal> and <literal>DISTINCT</literal>
- expressions.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix a corner case in regular-expression substring matching
- (<literal>substring(<replaceable>string</replaceable> from
- <replaceable>pattern</replaceable>)</literal>) (Tom)
- </para>
-
- <para>
- The problem occurs when there is a match to the pattern overall but
- the user has specified a parenthesized subexpression and that
- subexpression hasn't got a match. An example is
- <literal>substring('foo' from 'foo(bar)?')</literal>.
- This should return NULL, since <literal>(bar)</literal> isn't matched, but
- it was mistakenly returning the whole-pattern match instead (ie,
- <literal>foo</literal>).
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix incorrect result from <application>ecpg</application>'s
- <function>PGTYPEStimestamp_sub()</function> function (Michael)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix <literal>DatumGetBool</literal> macro to not fail with <application>gcc</application>
- 4.3 (Tom)
- </para>
-
- <para>
- This problem affects <quote>old style</quote> (V0) C functions that
- return boolean. The fix is already in 8.3, but the need to
- back-patch it was not realized at the time.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix longstanding <command>LISTEN</command>/<command>NOTIFY</command>
- race condition (Tom)
- </para>
-
- <para>
- In rare cases a session that had just executed a
- <command>LISTEN</command> might not get a notification, even though
- one would be expected because the concurrent transaction executing
- <command>NOTIFY</command> was observed to commit later.
- </para>
-
- <para>
- A side effect of the fix is that a transaction that has executed
- a not-yet-committed <command>LISTEN</command> command will not see any
- row in <structname>pg_listener</structname> for the <command>LISTEN</command>,
- should it choose to look; formerly it would have. This behavior
- was never documented one way or the other, but it is possible that
- some applications depend on the old behavior.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix display of constant expressions in <literal>ORDER BY</literal>
- and <literal>GROUP BY</literal> (Tom)
- </para>
-
- <para>
- An explictly casted constant would be shown incorrectly. This could
- for example lead to corruption of a view definition during
- dump and reload.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fix <application>libpq</application> to handle NOTICE messages correctly
- during COPY OUT (Tom)
- </para>
-
- <para>
- This failure has only been observed to occur when a user-defined
- datatype's output routine issues a NOTICE, but there is no
- guarantee it couldn't happen due to other causes.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-19">
- <title>Version 7.4.19</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2008-01-07</simpara>
- </note>
-
- <para>
- Cette version contient divers correctifs de la version 7.4.18,
- et inclut des corrections pour des failles de sécurité importantes.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.19</title>
-
- <para>
- Les utilisateurs des versions 7.4.X n'ont pas besoin d'effectuer d'une
- étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour à partir
- d'une version précédant la 7.4.11, voir les notes de version de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Empêche les fonctions d'index de s'exécuter avec les droits de
- l'utilisateur exécutant <command>VACUUM</command>,
- <command>ANALYZE</command>, etc (Tom)
- </para>
-
- <para>
- Les fonctions utilisées dans les expressions d'index et dans les index
- partiels sont évaluées quand une nouvelle entrée est faite dans la table.
- Depuis longtemps, ceci est un risque, un cheval de Troie pouvant être
- exécuté si une personne modifie une table appartenant à un utilisateur
- à qui on ne peut faire confiance (Notez ques les triggers, valeurs par
- défaut, contraintes de vérification, etc posent le même type de risque.)
- Mais les fonctions utilisées dans des index sont un danger supplémentaire
- car ils seront exécutés par des opérations de maintenance périodiques
- comme un <command>VACUUM FULL</command>, opérations généralement
- exécutées par des super-utilisateurs. Donc, un utilisateur cherchant à
- gagner accès au système peut exécuter du code avec des droits de
- super-utilisateur en ajoutant une définition d'index avec un code de
- cheval de Troie, puis attendre la prochaine exécution des opérations de
- maintenance. La correction s'arrange pour que les opérations standards de
- maintenance (ceci incluant <command>VACUUM</command>,
- <command>ANALYZE</command>, <command>REINDEX</command> et
- <command>CLUSTER</command>) s'exécutent en tant que propriétaire de la
- table plutôt qu'en tant qu'appelent, en utilisant le même mécanisme de
- bascule de droits utilisé dans les fonctions <literal>SECURITY
- DEFINER</literal>. Pour empêcher un coutournement de cette mesure de
- sécurité, l'exécution de <command>SET SESSION AUTHORIZATION</command>
- et <command>SET ROLE</command> est maintenant interdit dans un contexte
- <literal>SECURITY DEFINER</literal>. (CVE-2007-6600)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Réparation de bogues relatifs aux expressions rationnelles (Tom, Will
- Drewry)
- </para>
-
- <para>
- Des motifs d'expressions rationnelles conçus très précisément pourraient
- causer des arrêts brutaux, des boucles infinies (ou presque) et/ou une
- consommation massive de mémoire. Tout ceci représente un risque de
- déni de service pour les applications qui acceptent des motifs de
- recherche via des expressions rationnelles à partir de sources indignes
- de confiance. (CVE-2007-4769, CVE-2007-4772, CVE-2007-6067)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Oblige l'utilisation de l'authentification par mot de passe pour les
- utilisateurs standards de <filename>/contrib/dblink</filename>, c'est
- une mesure de sécurité (Joe)
- </para>
-
- <para>
- La correction apparue dans 8.2.5 était incomplète, car il ne corrigeait
- la faille que pour certaines fonctions <filename>dblink</filename>.
- (CVE-2007-6601, CVE-2007-3278)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un échec du planificateur dans certaines cas de
- <literal>WHERE false AND var IN (SELECT ...)</literal> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un arrêt brutal potentiel dans
- <function>translate()</function> lors de l'utilisation d'un encodage
- multi-octets de la base (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de PL/Python pour ne pas causer un arrêt brutal sur des
- messages d'exception longs (Alvaro)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Corrections de l'analyseur <application>ecpg</application> (Michael)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction pour que <function>crosstab()</function>, du module
- <filename>contrib/tablefunc</filename>, gère les rowid NULL comme catégorie (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction des routines d'affichage de <type>tsvector</type> et
- <type>tsquery</type> pour échapper correctement les antislashs (Teodor,
- Bruce)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un arrêt brutal de <function>to_tsvector()</function> sur
- les très grosses chaînes en entrée (Teodor)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Nécessite l'utilisation d'une version spécifique
- d'<productname>Autoconf</productname> lors de la re-génération du script
- <command>configure</command> (Peter)
- </para>
-
- <para>
- Ceci affecte seulement les développeurs et les créateurs de package.
- La modification a pour but d'empêcher l'utilisation accidentelle de
- combinaisons non testées des versions d'<productname>Autoconf</productname>
- et de <productname>PostgreSQL</productname>. Vous pouvez supprimer la
- vérification de la version si vous voulez vraiment utiliser une version
- différente d'<productname>Autoconf</productname>, mais c'est de votre
- responsabilité.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-18">
- <title>Version 7.4.18</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-09-17</simpara>
- </note>
-
- <para>
- Cette version contient divers correctifs de la version 7.4.17.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.18</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Empêche une corruption de l'index quand une transaction insère des lignes
- puis annule tout juste avant la fin d'un <command>VACUUM</command> en
- parallèle sur la même table (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
- correctement (Tom) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
- est corrigée (Tom) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- le plantage lorsque la journalisation de
- <varname>log_min_error_statement</varname> n'a plus de mémoire
- disponible est corrigé (Tom) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>CLUSTER</command> ne plante
- plus en tentant de travailler sur les tables temporaires d'autres
- sessions (Alvaro) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- les utilisateurs dépourvus de droit superutilisateur qui utilisent
- <filename>/contrib/dblink</filename> ne peuvent utiliser que
- l'authentification par mot de passe, pour des raisons de sécurité
- (Joe).
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-17">
- <title>Version 7.4.17</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-04-23</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.16, dont la
- correction d'une faille de sécurité.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.17</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Supporte le placement explicite du schéma des tables temporaires dans
- <varname>search_path</>, et désactive sa recherche pour les fonctions
- et opérateurs (Tom)
- </para>
- <para>
- Ceci est nécessaire pour autoriser une fonction en mode security-definer
- à configurer une valeur sécurisée de <varname>search_path</>. Sans cela,
- un utilisateur SQL sans droit peut utiliser des objets temporaires pour
- exécuter du code avec une fonction possédant les droits du créateur de
- la fonction (CVE-2007-2138). Voir <command>CREATE FUNCTION</> pour plus
- d'informations.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</> (Teodor)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue pouvant corrompre des données dans la façon
- dont <command>VACUUM FULL</> gère les chaînes <command>UPDATE</>
- (Tom, Pavan Deolasee)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un PANIC lors de l'élargissement d'un index haché
- (bug introduit en 7.4.15) (Tom)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-16">
- <title>Version 7.4.16</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-02-05</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.15, dont la
- correction d'une faille de sécurité.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration to version 7.4.16</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Suppression d'une faille de sécurité qui permet à des utilisateurs
- connectés de lire la mémoire du serveur (backend)
- (Tom)
- </para>
- <para>
- Cette vulnérabilité implique de modifier le type de données de la
- colonne d'une table utilisée dans une fonction SQL (CVE-2007-0555).
- Cette erreur peut être facilement exploitée pour causer un arrêt brutal
- du serveur et pourrait être utilisée, en principe, pour lire un contenu
- de la base, contenu que l'utilisateur ne devrait pas pouvoir accéder.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue rare où la séparation de page d'un index btree
- pourrait échouer à cause du choix d'un point de séparation infaisable.
- (Heikki Linnakangas)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration de la sécurité du traitement de caractères multi-octets pour
- les séquences UTF8 de plus de trois octets (Tom)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-15">
- <title>Version 7.4.15</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-01-08</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.14.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.15</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Amélioration de la gestion de <function>getaddrinfo()</function> sur AIX
- (Tom)
- </para>
-
- <para>
- Ceci corrige un problème lors du lancement, entre autres, du récupérateur
- de statistiques.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction des erreurs <quote>failed to re-find parent key</quote> du
- <command>VACUUM</command> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Corrections de bogues affectant les index hash de plusieurs Go (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de l'erreur lors de la construction d'un
- <literal>ARRAY[]</literal> contenant plusieurs éléments vides (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- <function>to_number()</function> et <function>to_char(numeric)</function>
- sont maintenant <literal>STABLE</literal>, et non plus
- <literal>IMMUTABLE</literal>, pour les nouvelles installations
- (<application>initdb</application> nécessaire) (Tom)
- </para>
-
- <para>
- Ceci a été modifié car <literal>lc_numeric</literal> peut modifier la
- sortie de ces fonctions.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration de l'utilisation des expressions rationnelles qui utilisent
- des parenthèses (Tom)
- </para>
-
- <para>
- Ceci améliore aussi les performances de l'<literal>\d</literal> de
- <application>psql</application>.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-14">
- <title>Version 7.4.14</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-10-16</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.13.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.14</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction d'un <quote>core dump</quote> quand un litéral sans
- type est pris pour un ANYARRAY</para></listitem>
-<listitem><para>Correction de <function>string_to_array()</> pour gérer des
- correspondances se surchargeant pour la chaîne de séparation</para>
-<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</>.
-</para></listitem>
-<listitem><para>Correction de quelques cas rares dans la correspondance de modèles
- pour les commandes <literal>\d</literal> de <application>psql</application> </para></listitem>
-<listitem><para>Correction de bogues corrompant les index dans /contrib/ltree
- (Teodor)</para></listitem>
-<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
-<listitem><para>Adjustement des tests de regression suite aux modifications
- récentes des lois de l'US DST</para> </listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-13">
- <title>Version 7.4.13</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-05-23</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.12 incluant des
- correctifs pour des problèmes de sécurité extrêmement sérieux.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.13</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
-
- <para>
- Assurer une sécurité complète contre les attaques par injection SQL décrites
- dans CVE-2006-2313 et CVE-2006-2314 peuvent demander des modifications dans
- le code de l'application. Si vous avez des applications embarquant des
- chaînes non sûres dans des commandes SQL, vous devriez les examiner aussi
- rapidement que possible pour vous assurer qu'elles utilisent les techniques
- d'échappement recommandées. Dans la plupart des cas, les applications
- devraient utiliser des sous-routines fournies par des bibliothèques ou des
- pilotes (comme <function>PQescapeStringConn()</> de <application>libpq</>)
- pour réaliser l'échappement des chaînes plutôt que de se fier à un code
- <foreignphrase>ad hoc</>.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Modification du serveur pour qu'il rejette les caractères
-multi-octets mal codés dans tous les cas (Tatsuo, Tom)</para>
-<para>Bien que <productname>PostgreSQL</> va dans cette direction depuis un
-certain temps, les vérifications sont maintenant appliquées uniformément à
-tous les codages et toutes les entrées de texte. Ce sont maintenant des
-erreurs, et non plus des messages d'avertissement. Ce changement sert à se
-défendre contre les attaques à base d'injection SQL du type décrit dans
-CVE-2006-2313.
-</para></listitem>
-
-<listitem><para>Rejette des utilisations non sûres de <literal>\'</> dans les
-chaînes</para>
-<para>En tant que défense côté serveur contre les attaques de type injection
-SQL décrit dans CVE-2006-2314, le serveur accepte maintenant seulement
-<literal>''</> et plus <literal>\'</> comme représentation d'un guillemet simple
-ASCII dans des chaînes SQL. Par défaut, <literal>\'</> est rejetté seulement
-quand <varname>client_encoding</> est configuré avec un codage client seul
-(SJIS, BIG5, GBK, GB18030 ou UHC), qui est le scénario dans lequel l'injection
-SQL est possible. Un nouveau paramètre de configuration
-<varname>backslash_quote</> est disponible pour ajuster ce comportement si
-nécessaire. Notez qu'une sécurité complète contre
-CVE-2006-2314 pourrait nécessiter des modifications du côté client ; le but
-de <varname>backslash_quote</> est en partie de rendre évident que les clients
-non sécurisés sont non sécurisés.
-</para></listitem>
-
-<listitem><para>Modification des routines d'échappement de texte de
-<application>libpq</> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</> pour les
-problèmes de sécurité décrits dans CVE-2006-2313 et CVE-2006-2314. Les
-applications qui utilisent les connections concurrentes multiples de
-<productname>PostgreSQL</> devraient migrer vers <function>PQescapeStringConn()</>
-et <function>PQescapeByteaConn()</> pour s'assurer que l'échappement est
-réalisé correctement pour les paramétrages utilisés dans chaque connexion de
-base de données. Les applications qui font des échappements de chaînes
-<quote>à la main</> devraient être modifiées pour se fier à aux routines de la
-bibliothèques à la place.
-</para></listitem>
-
-<listitem><para>Correction de quelques fonctions de conversion de codage</para>
-<para><function>win1251_to_iso</>, <function>alt_to_iso</>,
-<function>euc_tw_to_big5</>, <function>euc_tw_to_mic</>,
-<function>mic_to_euc_tw</> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de
-<literal>\'</> dans les chaînes (Bruce, Jan)</para></listitem>
-
-<listitem><para>Correction d'un bogue qui a quelque fois empêché des parcours
-d'index OR de ramener les lignes adéquates</para></listitem>
-
-<listitem><para>Correction d'un replay WAL pour le cas où un index btree a été
-tronqué</para></listitem>
-
-<listitem><para>Correction de <literal>SIMILAR TO</> pour les modèles impliquant
-<literal>|</> (Tom)</para></listitem>
-
-<listitem><para>Correction du serveur pour qu'il utilise les paramètres
-personnalisés DH SSL correctement (Michael Fuhr)</para></listitem>
-
-<listitem><para>Correction de Bonjour pour les Intel Macs (Ashley Clark)</para></listitem>
-
-<listitem><para>Correction de quelques pertes mémoires mineures</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-12">
- <title>Version 7.4.12</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-02-14</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.11.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.12</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.11, voir les notes de sortie de la 7.4.11.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
-SESSION AUTHORIZATION</> (CVE-2006-0553)</para>
-<para>Un utilisateur non privilégié pourrait faire arrêter brutalement le
-processus serveur, résultant en un déni de service momentané pour les autres
-utilisateurs si le serveur a été compilé en activant les assertions (ce qui
-n'est pas la valeur par défaut).
-Merci à Akio Ishida pour nous avoir rapporté ce problème.
-</para></listitem>
-
-<listitem><para>Correction d'un bogue avec la logique de visibilité des
-lignes dans les lignes insérées soi-même (Tom)</para>
-<para>Dans des circonstances rares, une ligne insérée par la commande en cours
-pourrait déjà être vue comme valide alors qu'elle ne le devrait pas. Corrige
-un bogue ajoutée dans les versions 7.4.9 et 7.3.11.
-</para></listitem>
-
-<listitem><para>Correction d'une condition qui pourrait amener une erreur de type
-<quote>le fichier existe déjà</> lors de la création d'un fichier pg_clog
-(Tom)</para></listitem>
-
-<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</> pour
-les paramètres <literal>UNKNOWN</> dans les instructions préparées
-(Neil)</para></listitem>
-
-<listitem><para>Correction pour permettre la restauration de sauvegardes qui
-avaient des références croisées de schémas pour les opérateurs personnalisés
-(Tom)</para></listitem>
-
-<listitem><para>Correction de portabilité pour tester la présence de
-<function>finite</> et <function>isinf</> lors du configure (Tom)</para></listitem>
-
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-11">
- <title>Version 7.4.11</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-01-09</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la version 7.4.10.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.11</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
- De plus, vous aurez sûrement besoin de lancer la commande
- <command>REINDEX</> sur les index des colonnes de type texte après la
- mise à jour si vous êtes affectés par les problèmes de locale ou de
- <application>plperl</> décrits ci-dessous.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction des messages Describe au niveau protocole lancés
-de l'extérieur d'une transaction ou à partir d'une transaction échouée
-(Tom)</para></listitem>
-
-<listitem><para>Correction de la comparaison de chaînes de caractères pour les
-locales qui considèrent des combinaisons différentes de caractères comme égales,
-comme le hongrois (Tom)</para>
-<para>Ceci pourrait nécessiter l'exécution de la commande <command>REINDEX</>
-pour corriger les index existants sur des colonnes de type texte.</para></listitem>
-
-<listitem><para>Configuration des variables d'environnement de la locale lors
-du démarrage de postmaster pour s'assurer que <application>plperl</> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</>. Sous ces conditions, toute
-utilisation de <application>plperl</> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</> pour corriger des
-index existant sur des colonnes de type texte si cela vous arrivait.
-</para></listitem>
-
-<listitem><para>Correction d'un ancien bogue dans strpos() et dans le gestion
-des expressions rationnelles de certains ensembles de caractères asiatiques
-rarement utilisés (Tatsuo)
-</para></listitem>
-
-<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</>,
-qui l'empêchait d'utiliser l'espace disponible des grains de sel (salt) pour les
-algorithmes MD5 et XDES (Marko Kreen, Solar Designer)</para>
-<para>Les grains de sel ne sont pas affectés pour Blowfish et le DES
-standard.</para></listitem>
-
-<listitem><para>Correction de <filename>/contrib/dblink</> pour renvoyer une
-erreur plutôt que de s'arrêter brutalement quand le nombre de colonnes spécifié
-est différent de ce qui est réellement renvoyé par la requête (Joe)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-10">
- <title>Version 7.4.10</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-12-12</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections sur la 7.4.9.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.10</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un cas extrême dans la gestion des traces des
-transactions</para>
-<para>Il existait une petite possibilité pour laquelle une opération
-d'entrée/sortie pouvait être initiée pour la mauvaise page, amenant à un
-échec Assert ou à une corruption de données.</para>
-</listitem>
-
-<listitem><para>Empêche un échec si le client envoie un message de protocole
-Bind quand la transaction en cours est déjà annulée</para></listitem>
-
-<listitem><para>Corrections sur <filename>/contrib/ltree</> (Teodor)</para></listitem>
-
-<listitem><para>Corrections de compilation sur AIX et HPUX (Tom)</para></listitem>
-
-<listitem><para>Correction d'une vieille erreur sur les jointures externes</para>
-<para>Ce bogue a quelque fois causé une fausse erreur <quote>RIGHT JOIN is
-only supported with merge-joinable join conditions</>.</para></listitem>
-
-<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</>
-quand une table a été supprimée</para></listitem>
-
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-9">
- <title>Version 7.4.9</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-10-04</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.4.8.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration à partir de la version 7.4.9</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.4.8, voir les notes de sortie de la 7.4.8.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
- <listitem><para>Correction d'une erreur qui permettait au <command>VACUUM</>
- de supprimer les chaînes <literal>ctid</> trop tôt, et ajout de
- vérification supplémentaire dans le code qui suit les liens
- <literal>ctid</></para>
- <para>Ceci corrige un vieux problème qui pourrait causer des arrêt
- brutaux dans de rares circonstances.</para></listitem>
- <listitem><para>Correction de <type>CHAR()</> pour ajouter le nom
- d'espaces spécifié lors de l'utilisation d'un ensemble de caractères
- multi-octets (Yoshiyuki Asaba)</para>
- <para>Dans les versions précédentes, l'ajout pour <type>CHAR()</> était
- incorrect car il ajoutait seulement le nombre d'octets spécifiés sans
- prendre en considération la façon dont les caractères étaient stockés.
- </para></listitem>
- <listitem><para>Correction du sens du test pour les transactions
- en lecture seule dans <command>COPY</></para>
- <para>Le code empêchait <command>COPY TO</> alors qu'il aurait dû interdire
- <command>COPY FROM</>.</para></listitem>
- <listitem><para>Correction du problème de planification avec les clauses
- ON des jointures externes qui référencent seulement la relation du côté
- interne</para></listitem>
- <listitem><para>Autres corrections sur les cas particuliers du <literal>x
- FULL JOIN y ON true</></para></listitem>
- <listitem><para>Rend <function>array_in</> et <function>array_recv</> plus
- paranoïaque sur la validation de leur paramètre OID</para></listitem>
- <listitem><para>Correction des lignes manquantes dans les requêtes
- du type <literal>UPDATE a=... WHERE a...</> avec un index GiST sur la
- colonne <literal>a</></para></listitem>
- <listitem><para>Amélioration de la stabilité de l'analyse des valeurs du
- type datetime</para></listitem>
- <listitem><para>Amélioration de la vérification pour les pages WAL
- partiellement écrites</para></listitem>
- <listitem><para>Amélioration de la solidité de la gestion des signaux
- lorsque SSL est activé</para></listitem>
- <listitem><para>Empêche l'ouverture de plus de <literal>max_files_per_process</>
- fichiers lors du démarrage de postmaster</para></listitem>
- <listitem><para>Plusieurs corrections de perte mémoire</para></listitem>
- <listitem><para>Quelques améliorations sur la portabilité</para></listitem>
- <listitem><para>Correction de PL/PgSQL pour gérer correctement
- <literal>var := var</> quand la variable est passée par
- référence</para></listitem>
- <listitem><para>Mise à jour de <filename>contrib/tsearch2</> pour utiliser
- le code Snowball actuel</para></listitem>
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-8">
- <title>Version 7.4.8</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-05-09</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections sur la 7.4.7, dont des
- correctifs sur des trous de sécurité.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.8</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, c'est une façon possible de gérer deux problèmes
- de sécurité significatifs, qui ont été trouvé dans le contenu initial des
- catalogues systèmes des versions 7.4.X. Une séquence
- sauvegarde/initdb/restauration utilisant le initdb de la 7.4.8 corrigera
- automatiquement ces problèmes.
- </para>
-
- <para>
- Le problème de sécurité le plus important est que les fonctions de conversion
- du codage des ensembles de caractères peuvent être appelées à partir de
- commandes SQL par des utilisateurs non pribilégiés alors que les fonctions
- n'ont pas été conçues pour un tel usage et ne sont pas sécurisées contre
- des choix rusés des arguments. Le correctif implique de modifier la liste
- déclarée des arguments de ces fonctions pour qu'elles ne soient plus
- appelées à partir des commandes SQL. (Ceci n'affecte pas leur utilisation
- normale par la machinerie de conversion du codage.)
- </para>
-
- <para>
- Le problème le moins important est que le module <filename>contrib/tsearch2</>
- crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</>
- alors qu'elles n'acceptent pas les arguments <type>internal</>. Ceci casse
- la sûreté des types pour toutes les fonctions utilisant des arguments
- <type>internal</>.
- </para>
-
- <para>
- Il est fortement recommandé que toutes les installations corrigent ces
- erreurs, soit par un initdb soit en suivant les procédures de réparation
- données ci-dessous. Les erreurs permettent au moins à des utilisateurs
- non privilégiés de la base de données d'arrêter brutalement leur
- processus serveur et pourraient permettre à des utilisateurs non privilégiés
- de gagner les privilèges d'un superutilisateur.
- </para>
-
- <para>
- Si vous souhaitez ne pas lancer d'initdb, exécutez la procédure suivante à
- la place en tant que superutilisateur de la base de données :
-
-<programlisting>
-BEGIN;
-UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
-WHERE pronamespace = 11 AND pronargs = 5
- AND proargtypes[2] = 'cstring'::regtype;
--- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
--- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
-COMMIT;
-</programlisting>
-
- Ensuite, si vous avez installé <filename>contrib/tsearch2</>, faites
-
-<programlisting>
-BEGIN;
-UPDATE pg_proc SET proargtypes[0] = 'internal'::regtype
-WHERE oid IN (
- 'dex_init(text)'::regprocedure,
- 'snb_en_init(text)'::regprocedure,
- 'snb_ru_init(text)'::regprocedure,
- 'spell_init(text)'::regprocedure,
- 'syn_init(text)'::regprocedure
-);
--- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
--- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
-COMMIT;
-</programlisting>
-
- Si cette commande échoue avec un message comme <quote>function
- "dex_init(text)" does not exist</>, alors soit <filename>tsearch2</>
- n'est pas installé dans cette base de données, soit vous l'avez déjà mise
- à jour.
- </para>
-
- <para>
- Les procédures ci-dessus doivent être exécutées pour <emphasis>chaque</>
- base de données d'une installation, ceci incluant <literal>template1</>
- et devant idéalement inclure aussi <literal>template0</>. Si vous ne
- corrigez pas les bases de données modèles, alors toute base de données
- créée par la suite contiendra les mêmes erreurs. <literal>template1</> peut
- être corrigé de la même façon que les autres bases de données alors que
- <literal>template0</> requiert des étapes supplémentaires. Tout d'abord,
- à partir de n'importe quel base de données
-<programlisting>
-UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
-</programlisting>
- Ensuite, connectez-vous à <literal>template0</> et effectuez les opérations
- de réparation. Faites
-<programlisting>
--- gelez de nouveau template0:
-VACUUM FREEZE;
--- et protégez-contre toute nouvelle modification :
-UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
-</programlisting>
- </para>
- </sect2>
-
- <sect2>
- <title>Changes</title>
-
-<itemizedlist>
-<listitem><para>Modification de la signature de la fonction de codage pour
-empêcher toute mauvaise utilisation</para></listitem>
-<listitem><para>Modification de <filename>contrib/tsearch2</> pour éviter une
-utilisation non sécurisée des résultats <type>INTERNAL</> de la fonction</para></listitem>
-<listitem><para>Réparation d'une ancienne condition qui permettait à une
-transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
-UPDATE) légèrement plus tôt que dans les autres buts</para>
-<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
-incohérences apparents des données et visibles brièvement par les applications.
-</para></listitem>
-<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
-</para>
-<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
-tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
-faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
-d'Assert.
-</para></listitem>
-<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
-ZONE</></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
-sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise à
-jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
-</para></listitem>
-<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
-type <type>TIME WITH TIME ZONE</></para></listitem>
-<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
-négatives dans les valeurs <type>INTERVAL</></para>
-<para>Cette erreur est seulement survenue quand l'option de configuration
-<literal>--enable-integer-datetimes</> avait été utilisée.
-</para></listitem>
-<listitem><para>S'assure que les opérations effectuées pendant l'arrêt du serveur
-sont comptées par le collecteur de statistiques</para>
-<para>Ceci doit avoir résolu les rapports concernant <application>pg_autovacuum</>,
-comme quoi il ne lançait pas assez fréquemment VACUUM sur les catalogues
-systèmes — il n'a pas été question de suppressions des catalogues causées
-par la suppression de tables temporaires lors de l'arrêt du serveur.
-</para></listitem>
-<listitem><para>Vérification supplémentaires de dépassement de tampon dans
-plpgsql (Neil)</para></listitem>
-<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
-noms des déclencheurs contenant <literal>%</> (Neil)</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
-constructions d'OpenSSL (Marko Kreen)</para></listitem>
-<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</>
-</para></listitem>
-<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
-<type>RECORD</></para></listitem>
-<listitem><para>Empêche <function>to_char(interval)</> d'arrêter brutalement le
-serveur (dump core) pour les formats relatifs au mois</para></listitem>
-<listitem><para>Empêche un arrêt brutal sur <literal>COALESCE(NULL,NULL)</></para></listitem>
-<listitem><para>Correction de <function>array_map</> pour appeler correctement
-les fonctions PL</para></listitem>
-<listitem><para>Correction de la vérification des droits dans <command>ALTER
-DATABASE RENAME</></para></listitem>
-<listitem><para>Correction de <command>ALTER LANGUAGE RENAME</></para></listitem>
-<listitem><para>Make <function>RemoveFromWaitQueue</> clean up after itself</para>
-<para>Ceci corrige une erreur de gestion du verrour qui pourrait seulement être
-visible si une transaction a été dégagée de l'attente d'un verrour (typiquement
-dans le cas d'une requête annulée) et que le détenteur du verrou le relâche
-dans une fenêtre très petite.
-</para></listitem>
-<listitem><para>Correction d'un problème avec un paramètre non typé apparaissant dans
-<command>INSERT ... SELECT</></para></listitem>
-<listitem><para>Correction d'un échec de <command>CLUSTER</> après
-<command>ALTER TABLE SET WITHOUT OIDS</></para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-7">
- <title>Version 7.4.7</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-01-31</simpara>
- </note>
-
- <para>
- Cette version contient une variété de corrections de la version 7.4.6,
- incluant des correctifs de sécurité.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.4.7</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- 7.4.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Interdit <command>LOAD</> aux utilisateurs standards</para>
-<para>
-Sur les plateformes qui exécuteront automatiquement les fonctions
-d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
-les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
-un code arbitraire par le serveur. Merci à NGS Software pour cette
-information.</para></listitem>
-<listitem><para>Vérifie que le créateur d'une fonction d'agrégat a le droit
-d'exécuter les fonctions de transition spécifiées</para>
-<para>
-Ce problème rendait possible le contournement de l'interdiction du droit
-EXECUTE sur une fonction.</para></listitem>
-<listitem><para>Correction de problèmes de sécurité et de problèmes sur
-les 64 bits dans contrib/intagg</para></listitem>
-<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
-dans contrib (Kris Jurka)</para></listitem>
-<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
-plpgsql dispose trop de paramètres (Neil)</para></listitem>
-<listitem><para>Correction d'erreurs de plannification pour les jointures
-complètes et externes à droite</para>
-<para>
-Le résultat de la jointure était faussement supposé trié de la même façon que
-l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
-mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
-mauvaises réponses.
-</para></listitem>
-<listitem><para>Correction de plperl pour les guillemets dans les
-champs</para></listitem>
-<listitem><para>Correction de l'affichage des intervalles négatifs pour les
-styles de date SQL et GERMAN</para></listitem>
-<listitem><para>Fait que age(timestamptz) calcule à partir du fuseau horaire
-et non pas de GMT</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-6">
- <title>Sortie 7.4.6</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-10-22</simpara>
- </note>
-
- <para>
- Cette version contient plusieurs correctifs de la version 7.4.5.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.6</title>
-
- <para>
- Une sauvegarde restauration n'est pas requise pour ceux utilisant une
- version 7.4.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
-d'astuce sur disque</para>
-<para>
-Sous quelques rares circonstances, ceci pourrait mener à des échecs
-<quote>could not access transaction status</>, qui se qualifient comme bogue
-pouvant entraîner des pertes de données.
-</para></listitem>
-<listitem><para>Assurance que la jointure externe hachée ne manque pas de
-lignes</para>
-<para>
-Les jointures gauches très importantes pourraient échouer à afficher les lignes
-du côté gauche sans correspondance en donnant seulement la distribution droite
-des données.
-</para></listitem>
-<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
-root</para>
-<para>
-Ceci est fait pour évacuer tout risque de problèmes de sécurité.
-</para></listitem>
-<listitem><para>Évite l'utilisation de fichiers temporaires dans
-<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
-<para>
-Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
-d'importance car il n'y a aucune raison pour que les utilisateurs autres que
-les développeurs utilisent ce script de toute façon.
-</para></listitem>
-<listitem><para>Empêche l'arrêt forcé du moteur à partir de la ré-émission
-du résultat de la commande précédente</para>
-<para>
-Dans de rares cas, un client pourrait penser que sa dernière commande a réussi
-alors qu'elle a réellement été annulée par l'arrêt forcé de la base de données.
-</para></listitem>
-<listitem><para>Réparation d'un bogue dans
-<function>pg_stat_get_backend_idset</function></para>
-<para>
-Cela pouvait amener un mauvais comportement dans quelques vues de statistiques
-du système.
-</para></listitem>
-<listitem><para>Correction d'une petite perte mémoire dans
-postmaster</para></listitem>
-<listitem><para>Correction du bogue <quote>expected both swapped tables to have
-TOAST tables</></para>
-<para>
-Ceci pouvait arriver dans les cas tels que CLUSTER après ALTER TABLE DROP
-COLUMN.
-</para></listitem>
-<listitem><para>Empêche <literal>pg_ctl restart</> d'ajouter <literal>-D</>
-plusieurs fois</para></listitem>
-<listitem><para>Correction du problème de valeurs NULL dans les index
-GiST</para></listitem>
-<listitem><para><literal>::</> n'est plus interprété comme une variable dans
-une instruction de préparation ECPG</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-5">
- <title>Sortie 7.4.5</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-08-18</simpara>
- </note>
-
- <para>
- Cette version contient la correction d'un bogue sérieux de la version 7.4.4.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.5</title>
-
- <para>
- Une sauvegarde restauration n'est pas requise pour ceux utilisant une
- version 7.4.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'un arrêt brutal possible lors d'insertions
-concurrentes dans l'index B-tree</para>
-<para>
-Ce correctif s'occupe d'un cas ras dans les insertions concurrentes dans un
-index B-tree, pouvant résulter en un PANIC du serveur. Aucun dommage permanent
-ne devrait en résulter mais cela vaut néanmoins une pré-version. Ce bogue
-n'existe pas dans les versions antérieures 7.4.
-</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-4">
- <title>Sortie 7.4.4</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-08-16</simpara>
- </note>
-
- <para>
- Cette version contient quelques correctifs sur la 7.4.3.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.4</title>
-
- <para>
- Une sauvegarde restauration n'est pas requise pour ceux utilisant une
- version 7.4.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Empêche une perte possible de transactions validées lors d'un
-arrêt brutal</para>
-<para>
-À cause d'un verrouillage insuffisant entre la validation des transactions et
-des points de vérification, il était possible pour les transactions validées
-juste avant le point de vérification perdu, complètement ou partiellement, le
-plus récent après un arrêt brutal de la base de données et un redémarrage. Ceci
-est un bogue sérieux qui existait depuis <productname>PostgreSQL</productname>
-7.1.</para></listitem>
-<listitem><para>Vérification de la restriction HAVING avant d'évaluer une liste
-de résultat d'un plan d'agrégat</para></listitem>
-<listitem><para>Évite un arrêt brutal lorsque l'identifiant de l'utilisateur
-courant est supprimé</para></listitem>
-<listitem><para>Correction des tableaux croisés hachés pour les tableaux sans
-ligne (Joe)</para></listitem>
-<listitem><para>Force la mise à jour du cache après renommage d'une colonne dans
-une clé étrangère</para></listitem>
-<listitem><para>L'affichage propre des requêtes UNION
-fonctionne correctement</para></listitem>
-<listitem><para>Fait que psql gère les retours chariot <literal>\r\n</>
-proprement dans COPY IN</para></listitem>
-<listitem><para><application>pg_dump</> gèrait les ACL avec des options grant
-non correctement</para></listitem>
-<listitem><para>Correction du support des threads pour OS X et
-Solaris</para></listitem>
-<listitem><para>Mise à jour du pilote JDBC (construction 215) avec différents
-correctifs</para></listitem>
-<listitem><para>Corrections pour ECPG</para></listitem>
-<listitem><para>Corrections des traductions (contributeurs
-variés)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-3">
- <title>Sortie 7.4.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-06-14</simpara>
- </note>
-
- <para>
- Cette version contient quelques correctifs pour la 7.4.2.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.3</title>
-
- <para>
- Une sauvegarde restauration n'est pas requise pour ceux utilisant une
- version 7.4.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction de pertes mémoire temporaires lors de l'utilisation
-d'agrégats non hachés (Tom)</para></listitem>
-<listitem><para>Correctifs pour ECPG, incluant quelques-uns pour la
-compatibilité avec Informix (Michael)</para></listitem>
-<listitem><para>Corrections pour compiler avec l'activation des threads, en
-particulier pour Solaris (Bruce)</para></listitem>
-<listitem><para>Correction d'une erreur dans la fin de COPY IN lors de
-l'utilisation de l'ancien protocole réseau (ljb)</para></listitem>
-<listitem><para>Plusieurs corrections importantes dans pg_autovacuum, incluant
-des correctifs pour les grosses tables, les OID non signés, la stabilité, les
-tables temporaires et le mode de débogage (Matthew T.
-O'Connor)</para></listitem>
-<listitem><para>Correction d'un problème lors de la lecture de sauvegardes au
-format tar sur NetBSD et BSD/OS (Bruce)</para></listitem>
-<listitem><para>Quelques corrections sur JDBC</para></listitem>
-<listitem><para>Correction de ALTER SEQUENCE RESTART lorsque last_value vaut la
-valeur de réinitialisation (Tom)</para></listitem>
-<listitem><para>Réparation de l'échec après recalcul des sous-sélections
-imbriquées (Tom)</para></listitem>
-<listitem><para>Correction de problèmes avec les expressions non constantes dans
-LIMIT/OFFSET</para></listitem>
-<listitem><para>Support de FULL JOIN sans clause de jointure, tels que X FULL
-JOIN Y ON TRUE (Tom)</para></listitem>
-<listitem><para>Correction d'un autre bogue sur les tables sans colonnes
-(Tom)</para></listitem>
-<listitem><para>Amélioration de la gestion des identifiants non qualifiés dans
-les clauses GROUP BY des sous-sélections (Tom)</para>
-<para>
-Les alias de liste de sélection à l'intérieur de sous-sélections prendront
-maintenant la précédence sur les noms des niveaux de requêtes externes.
-</para></listitem>
-<listitem><para>Ne génère pas de <quote>NATURAL CROSS JOIN</> lors de la
-décompilation de règles (Tom)</para></listitem>
-<listitem><para>Ajout de vérification pour la taille de champ invalide dans le
-COPY binaire (Tom)</para>
-<para>
-Ceci corrige une faille de sécurité difficile à exploiter.
-</para></listitem>
-<listitem><para>Évite les conflits de verrouillage entre
-<command>ANALYZE</command> et
-<command>LISTEN</command>/<command>NOTIFY</command></para></listitem>
-<listitem><para>Nombreuses mises à jour de traduction (plusieurs
-contributeurs)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-2">
- <title>Sortie 7.4.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-03-08</simpara>
- </note>
-
- <para>
- Cette version contient quelques correctifs pour la 7.4.1.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.2</title>
-
- <para>
- Une sauvegarde restauration n'est pas requise pour ceux utilisant une
- version 7.4.X. Néanmoins, c'est la méthode conseillé car plus simple pour
- l'incorporation de la correction sur deux erreurs trouvées dans le contenu
- initial des catalogues systèmes de la 7.4. Une séquence
- sauvegarde/initdb/restauration utilisant l'initdb de la 7.4.2 corrigera
- automatiquement ces problèmes.
- </para>
-
- <para>
- La plus sévère des deux erreurs est que le type de données
- <type>anyarray</> a un mauvais label d'alignement ; ceci est un
- problème parce que le catalogue système <structname>pg_statistic</> utilise
- des colonnes <type>anyarray</>. Ce mauvais label peut causer des mauvaises
- estimations du planificateur et même des arrêts brutaux lorsque des
- requêtes de planification impliquent des clauses <literal>WHERE</> sur des
- colonnes doublement alignées doubles (telles que <type>float8</> et
- <type>timestamp</>). Il est fortement recommandé que toutes les
- installations réparent cette erreur, soit par initdb soit en suivant la
- procédure de réparation manuelle donnée ci-dessous.
- </para>
-
- <para>
- L'erreur moindre est que la vue système <structname>pg_settings</> devrait
- être marquée comme ayant un accès public en mise à jour pour permettre
- l'utilisation de <literal>UPDATE pg_settings</> comme substitut pour
- <command>SET</>. Ceci peut être corrigé soit par initdb soit manuellement
- mais il n'est pas nécessaire de le corriger sauf si vous voulez utiliser
- <literal>UPDATE pg_settings</>.
- </para>
-
- <para>
- Si vous ne souhaitez pas lancer un initdb, la procédure suivante corrigera
- <structname>pg_statistic</>. En tant que superutilisateur de la base de
- données, faites :
-
-<programlisting>
--- efface les anciennes données de pg_statistic :
-DELETE FROM pg_statistic;
-VACUUM pg_statistic;
--- ceci devrait mettre à jour 1 ligne :
-UPDATE pg_type SET typalign = 'd' WHERE oid = 2277;
--- ceci devrait mettre à jour 6 lignes :
-UPDATE pg_attribute SET attalign = 'd' WHERE atttypid = 2277;
---
--- À ce moment, vous DEVEZ lancer un nouveau moteur pour éviter un arrêt brutal
---
--- repopulate pg_statistic:
-ANALYZE;
-</programlisting>
-
- Ceci peut se faire sur une base de données en réel mais attention au fait
- que tous les serveurs de la base de données modifiée doivent être relancés
- avant qu'il ne soit sain de repeupler <structname>pg_statistic</>.
- </para>
-
- <para>
- Pour corriger l'erreur <structname>pg_settings</>, faites simplement :
-<programlisting>
-GRANT SELECT, UPDATE ON pg_settings TO PUBLIC;
-</programlisting>
- </para>
-
- <para>
- Les procédures ci-dessus doivent être exécutées dans <emphasis>chaque</>
- base de données d'une installation, ceci incluant <literal>template1</>, et
- idéalement <literal>template0</>. Si vous ne corrigez pas les bases de
- données modèles, alors toute nouvelle base de données contiendra les mêmes
- erreurs. <literal>template1</> peut être corrigé de la même façon que toute
- autre base de données, mais corriger <literal>template0</> requiert
- quelques étapes supplémentaires. Tout d'abord, à partir de n'importe quelle
- session de base de données
-<programlisting>
-UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
-</programlisting>
- nsuite, connectez-vous à <literal>template0</> et exécutez les
- procédures de réparation suivante. Enfin, faites
-<programlisting>
--- re-gèle template0:
-VACUUM FREEZE;
--- et la protège contre toute modifications futures :
-UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
-</programlisting>
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<para>
- La version 7.4.2 incorpore toutes les corrections de la version 7.3.6,
- ainsi que les suivantes :
-</para>
-
-<itemizedlist>
-<listitem><para>Correction du bogue d'alignement de
-<structname>pg_statistics</> qui pouvait provoquer un arrêt brutal de
-l'optimiseur</para>
-<para>Voir ci-dessus pour les détails sur ce problème.</para></listitem>
-<listitem><para>Autorise les utilisateurs standards à mettre à jour
-<structname>pg_settings</></para></listitem>
-<listitem><para>Correction de quelques bogues de l'optimiseur, la plupart
-amenant des erreurs <quote>variable not found in subplan target lists</>
-errors (NdT : variable non trouvée dans les listes cibles
-du sous-plan</para></listitem>
-<listitem><para>Évite les échecs dû au manque de mémoire lors du la
-ncement de plusieurs gros parcours d'index</para></listitem>
-<listitem><para>Correction d'un problème multioctets pouvant amener des erreurs
-du type <quote>out of memory</> (manque de mémoire) lors d'une opération
-<command>COPY IN</></para></listitem>
-<listitem><para>Correction de problèmes avec <command>SELECT INTO</> /
-<command>CREATE TABLE AS</> à partir de tables sans OID</para></listitem>
-<listitem><para>Correction de problèmes avec les tests de régression
-<filename>alter_table</> lors de tests en parallèle</para></listitem>
-<listitem><para>Correction de problèmes survenant à la limite du nombre de
-fichiers ouverts, notamment sur OS X
-(Tom)</para></listitem>
-<listitem><para>Correction partielle pour les problèmes de la locale
-turque</para>
-<para>initdb réussira maintenant avec la locale turque, mais il reste quelques
-inconvénients associés avec le problème <literal>i/I</>.</para></listitem>
-<listitem><para>Fait que pg_dump initialise le codage du client lors d'une
-restauration</para></listitem>
-<listitem><para>Plusieurs autres corrections de pg_dump</para></listitem>
-<listitem><para>Autorise ecpg à utiliser de nouveau des mots clés C comme noms
-de colonnes (Michael)</para></listitem>
-<listitem><para>Ajout de <literal>WHENEVER NOT_FOUND</> à ecpg pour
-<literal>SELECT/INSERT/UPDATE/DELETE</> (Michael)</para></listitem>
-<listitem><para>Correction d'un arrêt brutal d'ecpg pour les requêtes appelant
-des fonctions renvoyant des ensembles (Michael)</para></listitem>
-<listitem><para>Plusieurs autres corrections d'ecpg (Michael)</para></listitem>
-<listitem><para>Corrections pour le compilateur Borland</para></listitem>
-<listitem><para>Amélioration de la construction avec les threads
-(Bruce)</para></listitem>
-<listitem><para>Plusieurs autres corrections pour la
-construction</para></listitem>
-<listitem><para>Plusieurs corrections sur JDBC</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4-1">
- <title>Sortie 7.4.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-12-22</simpara>
- </note>
-
- <para>
- Cette version contient plusieurs correctifs de la 7.4.
- For information about new features in the 7.4 major release, see
- <xref linkend="release-7-4">.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.4.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
- ceux utilisant la version 7.4.
- </para>
-
- <para>
- Si vous voulez installer les correctifs dans le schéma d'information, vous
- avez besoin de le recharger dans la base de données. Ceci est accompli soit
- en initialisant un nouveau groupe de bases avec <command>initdb</command>
- soit en lançant la séquence suivante de commandes SQL dans chaque base de
- données (incluant idéalement <literal>template1</literal>) en tant que
- superutilisateur avec <application>psql</application>, après installation
- de la nouvelle version :
-<programlisting>
-DROP SCHEMA information_schema CASCADE;
-\i /usr/local/pgsql/share/information_schema.sql
-</programlisting>
- Substituez votre chemin d'installation dans la deuxième commande.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction d'un bogue dans l'analyse de <command>CREATE
-SCHEMA</command> avec ECPG (Michael)</para></listitem>
-<listitem><para>Correction d'une erreur de compilation quand
-<option>--enable-thread-safety</option> et <option>--with-perl</option> sont
-utilisés ensemble (Peter)</para></listitem>
-<listitem><para>Correction des sous-requêtes utilisant des jointures de
-découpage (Tom)</para>
-<para>
- Certaines sous-requêtes qui utilisaient des jointures de découpage pouvaient
- s'arrêter brutalement à cause de structures mal partagées.
-</para></listitem>
-<listitem><para>Correction d'un problème de compactage de la carte des espaces
-libres (Tom)</para>
-<para>
- Ceci corrige un bogue où le compactage de la carte des espaces libres
- pouvait entraîner un arrêt du serveur de la base de données.
-</para>
-</listitem>
-<listitem><para>Correction pour la construction de libpq à partir du compilateur
-Borland (Bruce)</para></listitem>
-<listitem><para>Correction de <function>netmask()</function> et de
-<function>hostmask()</function> pour renvoyer le masklen de longueur maximale
-(Tom)</para>
-<para>
- Correction de ces fonctions pour renvoyer des valeurs cohérentes avec les
- versions pre-7.4..
-</para>
-</listitem>
-<listitem><para>Plusieurs corrections de
-<filename>contrib/pg_autovacuum</filename></para>
-<para>
- Les correctifs incluent une mauvaise initialisation des variables, un
- vacuum manquant après un <command>TRUNCATE</command> et un dépassement du
- calcul de durée pour les vacuums longs.
-</para>
-</listitem>
-<listitem><para>Autorise la compilation de <filename>contrib/cube</filename>
-sous Cygwin (Jason Tishler)</para></listitem>
-<listitem><para>Correction de l'utilisation par Solaris du fichier mot de passe
-lorsqu'aucun mot de passe n'est défini (Tom)</para>
-<para>
- Correction de l'arrêt brutal sur Solaris causé par l'utilisation de tout
- type d'authentification par mot de passe lorsqu'aucun mot de passe n'est
- défini.
-</para>
-</listitem>
-<listitem><para>Correction de JDBC pour les problèmes de threads, autres
-corrections</para></listitem>
-<listitem><para>Correction sur les recherches dans les index <type>bytea</type>
-(Joe)</para></listitem>
-<listitem><para>Correction du schéma d'information pour les types de données bit
-(Peter)</para></listitem>
-<listitem><para>Force zero_damaged_pages à être actif lors de la récupération
-à partir des WAL</para></listitem>
-<listitem><para>Empêche quelques cas obscures de <quote>variable not in
-subplan target lists</quote></para></listitem>
-<listitem><para>Rend <function>PQescapeBytea</function> et
-<function>byteaout</function> cohérent l'un avec l'autre (Joe)</para></listitem>
-<listitem><para>Échappe la sortie <type>bytea</type> pour les octets > 0x7e
-(Joe)</para>
-<para>
- Si plusieurs codages clients sont utilisés pour la sortie et
- l'entrée <type>bytea</type>, il est possible de corrompre les valeurs
- <type>bytea</type> en modifiant les codages. Cette correction échappe tous les
- octets qui pourraient être affectés.
-</para>
-</listitem>
-<listitem><para>Ajout des appels manquants à <function>SPI_finish()</function>
-à la fonction <function>get_tuple_of_interest()</function> de dblink
-(Joe)</para></listitem>
-<listitem><para>Nouvelle FAQ tchèque</para></listitem>
-<listitem><para>Correction de la vue du schéma d'informations
-<literal>constraint_column_usage</literal> pour les clés étrangères
-(Peter)</para></listitem>
-<listitem><para>Corrections sur ECPG (Michael)</para></listitem>
-<listitem><para>Correction d'un bogue avec plusieurs sous-requêtes
-<literal>IN</literal> et des jointures dans les sous-requêtes
-(Tom)</para></listitem>
-<listitem><para>Autorise le fonctionnement de <literal>COUNT('x')</literal>
-(Tom)</para></listitem>
-<listitem><para>Installation des fichiers d'inclusion d'ECPG pour la
-compatibilité Informix dans un répertoire séparé (Peter)</para>
-<para>
- Certains noms des fichiers d'inclusion d'ECPG pour la compatibilité Informix
- entrent en conflit avec les fichiers d'inclusion du système d'exploitation.
- En les installant dans leur propre répertoire, les conflits de noms ont été
- réduits.
-</para>
-</listitem>
-<listitem><para>Correction d'une perte mémoire sur SSL (Neil)</para>
-<para>
- Cette version corrige un bogue de la 7.4 où SSL ne libérait pas toute la
- mémoire qu'il avait alloué.
-</para>
-</listitem>
-<listitem><para>Empêche l'utilisation du nom de service par
-<filename>pg_service.conf</filename> comme nom de la base par défaut
-(Bruce)</para></listitem>
-<listitem><para>Correction de l'authentification locale par ident sur FreeBSD
-(Tom)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-4">
- <title>Sortie 7.4</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-11-17</simpara>
- </note>
-
- <sect2>
- <title>Aperçu</title>
-
- <para>
- Modifications majeures dans cette version :
- </para>
-
- <variablelist>
- <varlistentry>
- <term>
- Les sous-requêtes <literal>IN</literal>/<literal>NOT IN</literal> sont
-maintenant bien plus efficaces
- </term>
-
- <listitem>
- <para>
- Dans les versions précédentes, les sous-requêtes
-<literal>IN</literal>/<literal>NOT IN</literal> ont été jointes par la requête
-supérieure en parcourant séquentiellement la sous-requête pour trouver une
-correspondance. Le code de la 7.4 utilise les mêmes techniques sophistiquées
-utilisées par les jointures ordinaires et est donc bien plus rapide. Un
-<literal>IN</literal> sera maintenant aussi rapide ou plus rapide que la
-sous-requête <literal>EXISTS</literal> équivalente ; ceci inverse
-l'information conventionnelle qui s'appliquait aux versions précédentes.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Amélioration du traitement du <literal>GROUP BY</literal> en utilisant
-les <quote>hash buckets</quote>
- </term>
-
- <listitem>
- <para>
- Dans les précédentes versions, les lignes à grouper étaient d'abord
-triées. Le code de la 7.4 traite le <literal>GROUP BY</literal> sans tri en
-accumulant les résultats dans une table de découpage avec une entrée par
-groupe. Néanmoins, il utilisera toujours la technique du tri si la table de
-découpage est estimée trop importante pour être contenue dans
-<varname>sort_mem</>.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Nouvelle fonctionnalité de jointure par découpage sur des clés
-multiples
- </term>
-
- <listitem>
- <para>
- Dans les précédentes versions, les jointures par découpage pouvaient
-uniquement survenir sur des clés uniques. Cette version ajoute les jointures
-par découpage sur plusieurs colonnes.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Les requêtes utilisant la syntaxe <literal>JOIN</literal> explicite sont
-maintenant mieux optimisées
- </term>
-
- <listitem>
- <para>
- Les précédentes versions évaluaient les requêtes en utilisant
-uniquement la syntaxe <literal>JOIN</literal> explicite dans l'ordre
-fournie par la syntaxe. La version 7.4 autorise l'optimisation complète de
-ces requêtes, ce qui signifie que l'optimiseur considère tous les ordres
-possibles de jointure et choisit le plus efficace. Néanmoins, les
-jointures externes doivent toujours suivre l'ordre déclaré.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Code des expressions rationnelles plus rapide et plus puissant
- </term>
-
- <listitem>
- <para>
- Le module entier des expressions rationnelles a été remplacé avec une
-nouvelle version de Henry Spencer, écrit originellement pour Tcl. Le code
-améliore énormément les performances et supporte plusieurs types d'expressions
-rationnelles.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Fonctions en ligne pour les fonctions SQL simples
- </term>
-
- <listitem>
- <para>
- Les fonctions SQL simples peuvent maintenant être en ligne en incluant
-le SQL dans la requête principale. Ceci améliore les performances en éliminant
-la surcharge par appel. Ceci signifie que les fonctions SQL simples se
-comportent maintenant comme des macros.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Support complet des connexions IPv6 et des données de type adresse IPv6
- </term>
-
- <listitem>
- <para>
- Les versions précédentes autorisaient seulement les connexions IPv4 et
-les types de données IP supportaient seulement les adresses IPv4. Cette version
-ajoute le support complet de IPv6 dans ces deux domaines.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Amélioration majeure dans les performances et la fiabilité de SSL
- </term>
-
- <listitem>
- <para>
- Plusieurs personnes très au courant de l'API SSL ont revu notre code
-SSL pour améliorer la négotiation de clé SSL et la récupération en cas d'erreur.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Le <quote>free space map</quote> réutilise efficacement les
-pages d'index, et quelques autres améliorations des espaces libres
- </term>
-
- <listitem>
- <para>
- Dans les précédentes versions, les pages d'index B-tree qui étaient
-laissées vides à cause de lignes supprimées pouvaient seulement être
-ré-utilisées par les lignes de valeurs d'index similaires aux lignes
-originellement indexées sur cette page. Avec la version 7.4,
-<command>VACUUM</command> enregistre les pages d'index vide et permet leur
-ré-utilisation pour toute ligne d'index future.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Schéma d'information au standard SQL
- </term>
-
- <listitem>
- <para>
- Le schéma d'information fournit une façon standardisée et stable
-d'accéder aux informations sur les objets du schéma définis dans une base de
-données.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Les curseurs se conforment mieux au standard SQL
- </term>
-
- <listitem>
- <para>
- Les commandes <command>FETCH</command> et
- <command>MOVE</command> ont été revues pour mieux se conformer au
- standard SQL.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Les curseurs peuvent exister en dehors des transactions
- </term>
-
- <listitem>
- <para>
- Ces curseurs sont aussi appelés des curseurs détenables.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Nouveau protocole client/serveur
- </term>
-
- <listitem>
- <para>
- Le nouveau protocole ajoute des codes d'erreur, plus d'informations sur
-le statut, un démarrage plus rapide, un meilleur support des transmissions de
-données binaires, des valeurs de paramètres séparées à partir des commandes
-SQL, des instructions préparées disponibles au niveau du protocole et une
-récupération plus propre pour les échecs lors d'un <command>COPY</command>.
-L'ancien protocole est toujours supporté par le serveur et les clients.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Les applications <application>libpq</application> et
- <application>ECPG</application> sont maintenant totalement compatibles
- avec les threads
- </term>
-
- <listitem>
- <para>
- Alors que les précédentes versions de <application>libpq</application>
-supportaient déjà les threads, cette version améliore la compatibilité en
-corrigeant certains codes, non compatibles, utilisés lors du lancement de
-la connexion à la base de données. L'option
-<option>--enable-thread-safety</option> de <command>configure</command> doit
-être utilisé pour activer cette fonctionnalité.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Nouvelle version de l'indexage complet de texte
- </term>
-
- <listitem>
- <para>
- Une nouvelle suite d'indexage complet de texte est disponible dans
- <filename>contrib/tsearch2</filename>.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Nouvel outil autovacuum
- </term>
-
- <listitem>
- <para>
- Le nouvel outil autovacuum dans
- <filename>contrib/autovacuum</filename> surveille les tables de
-statistiques de la base de données sur les activités
-<command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
-et lance automatiquement un <command>VACUUM</command> quand cela est nécessaire.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- La gestion des tableaux a été améliorée et déplacée dans le cœur du
-serveur
- </term>
-
- <listitem>
- <para>
- Beaucoup de limitations des tableaux ont été supprimées et les tableaux
-se comportent beaucoup plus comme des types de données complètement supportés.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- </sect2>
-
- <sect2>
- <title>Migration vers la version 7.4</title>
-
- <para>
- Une sauvegarde/restauration grâce à <application>pg_dump</application> est
- requise pour ceux souhaitant migrer leurs données d'une version précédente.
- </para>
-
- <para>
- Observez les incompatibilités suivantes :
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- Le paramétrage autocommit, côté serveur, a été supprimé et réimplémenté
-dans les applications clients et dans les langages. L'autocommit posait
-beaucoup trop de problèmes avec les langages et applications qui voulaient
-contrôler leur propre comportement de validation automatique, donc celui-ci a
-été supprimé du serveur et ajouté aux API clientes individuelles si appropriées.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Le contenu des messages d'erreur a un peu changé dans cette version. Un
-effort significatif a été fourni pour rendre ces messages plus consistants et
-plus orientés vers l'utilisateur. Si vos applications essaient de détecter des
-conditions d'erreur en analysant le message d'erreur, vous êtes fortement
-encouragé à utiliser le nouveau code d'erreur à la place.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les jointures internes utilisant la syntaxe <literal>JOIN</literal>
-explicite pourraient se comporter différemment parce qu'elles sont mieux
-optimisées.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Un certain nombre de paramètres de configuration serveur ont été
-renommés pour plus de clarté, principalement ceux liés aux traces.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>FETCH 0</literal> ou <literal>MOVE 0</literal> ne font
-maintenant plus rien. Dans les précédentes versions, <literal>FETCH 0</literal>
-récupérerait toutes les lignes restantes et <literal>MOVE 0</literal> se
-déplacerait à la fin du curseur.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>FETCH</command> and <command>MOVE</command> renvoient
-maintenant le nombre réel de lignes récupérées/déplacées ou 0 si au début ou à
-la fin du curseur. Les versions précédentes renverraient le nombre de lignes
-passé à la commande, pas le nombre de lignes réellement récupérées ou déplacées.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>COPY</command> traite maintenant les fichiers processus
-qui utilisent les séquences retour chariot ou retour chariot/fin de ligne. Les
-retours chariots ou fin de ligne littérals ne sont plus acceptés dans les
-données ; utilisez à la place <literal>\r</literal> et
-<literal>\n</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les espaces suivants sont maintenant supprimés lors de la conversion du
-type <type>char(<replaceable>n</>)</type> aux types
-<type>varchar(<replaceable>n</>)</type> et <type>text</type>. C'est ce que la
-plupart des gens s'attendaient à voir arriver.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Le type de données <type>float(<replaceable>p</>)</type> mesure
-maintenant <replaceable>p</> en chiffres binaires, et non pas en chiffres
-décimals. Le nouveau comportement suit le standard SQL.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les valeurs de dates ambigues doivent correspondre à l'ordre spécifié
-par le paramétrage <varname>datestyle</varname>. Dans les précédentes versions,
-la spécification de la date <literal>10/20/03</> était interprétée comme une
-date d'octobre même si <varname>datestyle</> spécifiait la date en premier. La
-7.4 envoie une erreur si une spécification de date est invalide pour le
-paramétrage courant de <varname>datestyle</>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les fonctions <function>oidrand</function>, <function>oidsrand</function>
-et <function>userfntest</function> ont été supprimées. Ces fonctions n'étaient
-plus utiles.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les littéraux de chaîne spécifiant des valeurs date/heure, tels que
-<literal>'now'</literal> ou <literal>'today'</literal>, ne fonctionneront plus
-comme attendus dans les expressions par défaut de colonnes ; ils ne
-ajouteront maintenant par défaut l'heure de création de la table par
-défaut, pas le moment de l'ajout. À la place, les fonctions <function>now()</>,
-<function>current_timestamp</> ou <function>current_date</function> devraient
-être utilisées.
- </para>
-
- <para>
- Dans les précédentes versions, il y avait un code spécial pour que les
-chaînes telles que <literal>'now'</literal> soient interprétées au moment de
-l'<command>INSERT</> et non pas au moment de la création de la table mais ce
-contournement ne couvrait pas tous les cas. La version 7.4 requiert
-maintenant que les valeurs par défaut soient définies proprement en
-utilisant des fonctions comme <function>now()</> ou
-<function>current_timestamp</>. Elles fonctionneront dans toutes les situations.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Le signe dollar (<literal>$</>) n'est plus permis dans les noms
-d'opérateurs. À la place, cela peut être un caractère dans les identifiants, à
-condition qu'il ne soit pas le premier. Ceci a été fait pour améliorer la
-compatibilité avec les autres systèmes de bases de données et pour éviter les
-problèmes de syntaxe lorsque des emplacements de paramètres
-(<literal>$<replaceable>n</></>) sont écrits adjacents à ceux des opérateurs.
- </para>
- </listitem>
- </itemizedlist>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- Vous trouverez ci-dessous un détail des modifications entre la version 7.4
-et la précédente version majeure.
- </para>
-
- <sect3>
- <title>Modifications des opérations du serveur</title>
-
- <itemizedlist>
- <listitem>
- <para>
- Autorisation des connexions IPv6 au serveur (Nigel Kukard, Johan Jordaan,
- Bruce, Tom, Kurt Roeckx, Andrew Dunstan)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de SSL pour gérer les erreurs proprement (Nathan Mueller)
- </para>
- <para>
- Dans les précédentes versions, certains rapports d'erreur de l'API SSL
-n'étaient pas gérés correctement. Cette version corrige ces problèmes.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration des performances et de la sécurité du protocole SSL (Sean
-Chittenden)
- </para>
- <para>
- La renégotiation de clé SSL arrivait trop fréquemment, impliquant des
-performances SSL pauvres. De plus, la gestion de la clé initiale a été
-améliorée.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Affiche d'informations sur les verrous lorsqu'un blocage (deadlock) est
-détecté (Tom)
- </para>
- <para>
- Ceci permet un débogage plus facile de ce type de situation.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Mise à jour des heures de modification des socket s
-<filename>/tmp</filename> pour éviter leur suppression (Tom)
- </para>
- <para>
- Ceci devrait aider à empêcher le nettoyage du répertoire
-<filename>/tmp</filename> par des scripts d'administration.
- </para>
- </listitem>
-
- <listitem><para>Activation de PAM pour Mac OS X (Aaron
-Hillegass)</para></listitem>
-
- <listitem>
- <para>Index B-tree complètement compatibles avec les WAL (Tom)</para>
- <para>
- Dans les précédentes versions, dans certains cas rares, un arrêt brutal
-du serveur pouvait causer la corruption d'index B-tree. Cette version supprime
-ces quelques cas rares.
- </para>
- </listitem>
-
- <listitem><para>Permet le compactage des index B-tree et la réutilisation
-des pages vides (Tom)</para></listitem>
-
- <listitem>
- <para>
- Corrige la recherche incohérente des index lors de la division de la
-première page racine (Tom)
- </para>
- <para>
- Dans les précédentes versions, lorsqu'un index sur une page se divisait
-en deux pages, il y avait une brève période où une autre session de base de
-données pouvait ne pas voir une entrée d'index. Cette version corrige ce cas
-rare d'échecs.
- </para>
- </listitem>
-
- <listitem><para>Améliore la logique d'allocation de l'espace libre
-(Tom)</para></listitem>
-
- <listitem>
- <para>Préserve les informations sur l'espace libre entre les différents
-redémarrages du serveur (Tom)</para>
- <para>
- Dans les précédentes versions, la carte de l'espace libre n'était pas
-sauvegardée quand le postmaster était arrêté, donc les serveurs nouvellement
-démarrés n'avaient pas d'informations sur l'espace libre. Cette version
-sauvegarde la carte de l'espace libre et la recharge quand le serveur est
-relancé.
- </para>
- </listitem>
-
- <listitem><para>Ajoute le temps de lancement dans
-<literal>pg_stat_activity</literal>
-(Neil)</para></listitem>
- <listitem><para>Nouveau code pour détecter les pages disque
-corrompues ; efface avec
-<varname>zero_damaged_pages</varname> (Tom)</para></listitem>
- <listitem><para>Nouveau protocole client/serveur : plus rapide, plus
-de limite sur la longueur du nom de l'utilisateur, permet une sortie propre
-de la commande <command>COPY</command> (Tom)</para></listitem>
- <listitem><para>Ajoute un statut de transaction, un ID de table, un ID
-de colonne au client/serveur protocol (Tom)</para></listitem>
- <listitem><para>Ajoute des entrées/sorties binaires au protocole
-client/serveur (Tom)</para></listitem>
- <listitem><para>Supprime le paramétrage serveur autocommit ; déplacez
-dans les applications clientes (Tom)</para></listitem>
- <listitem><para>Changement des messages d'erreurs, codes d'erreurs et
-trois niveaux de détails d'erreurs (Tom, Joe, Peter)</para></listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Améliorations des performances</title>
-
- <itemizedlist>
- <listitem><para>Ajout du découpage pour les agrégats <literal>GROUP
-BY</literal> (Tom)</para></listitem>
- <listitem><para>Jointures à boucles imbriquées plus intelligentes
- sur les index multicolonnes (Tom)</para></listitem>
- <listitem><para>Autorisation des jointures découpées à clés multiples
-(Tom)</para></listitem>
- <listitem><para>Amélioration du <quote>constant folding</quote>
-(Tom)</para></listitem>
- <listitem><para>Ajout de la capacité de mettre en ligne les fonctions SQL
-simples (Tom)</para></listitem>
-
- <listitem>
- <para>Réduction de l'utilisation de la mémoire pour les requêtes utilisant
-des fonctions complexes (Tom)</para>
- <para>
- Dans les précédentes versions, les fonctions renvoyant la mémoire allouée
-ne la libéraient pas tant que la requête n'était pas terminée. Cette version
-permet la libréation de la mémoire allouée par les fonctions lorsque l'appel de
-celle-ci se termine, réduisant la mémoire totale utilisée par les fonctions.
- </para>
- </listitem>
-
- <listitem>
- <para>Amélioration des performances de l'optimiseur GEQO (Tom)</para>
- <para>
- Cette version corrige quelques inefficacités dans la façon dont
-l'optimiseur GEQO gère les chemins de requête potentiels.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise la gestion des <literal>IN</>/<literal>NOT IN</> via des tables
-de découpages (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration des performances de <literal>NOT IN
-(<replaceable>subquery</>)</literal> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Permet que la plupart des sous-requêtes <literal>IN</literal> soient
-traitées comme des jointures (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les opérations de correspondance de modèles peuvent utiliser des
- index quelque soit la locale (Peter)
- </para>
- <para>
- Il n'existe aucune méthode pourque des locales non ASCII utilisent les
- index standards pour des comparaisons <literal>LIKE</literal>. Cette
- version ajoute un moyen de créer un index spécial pour
- <literal>LIKE</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>Permet au postmaster de précharger les bibliothèques en utilisant
- <varname>preload_libraries</varname> (Joe)</para>
- <para>
- Pour les bibliothèques dynamiques requérant un long moment pour se
- charger, cette option est disponible pour que la bibliothèque soit
- pré-chargée par postmaster et héritée par toutes les sessions de la base
- de données.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Améliore le calcul des coûts par l'optimiseur, particulièrement pour les
- sous-requêtes (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Évite le tri lors la sous-requête <literal>ORDER BY</literal> correspond
- à la requête de haut niveau (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Déduit que <literal>WHERE a.x = b.y AND b.y = 42</literal> signifie aussi
- que <literal>a.x = 42</literal> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise les jointures de découpage (hash/merge) sur des jointures
- complexes (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise les jointures de découpage sur un plus grand nombre de types
- de données (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise l'optimisation des jointures internes explicites, désactivez avec
- <varname>join_collapse_limit</varname> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajoute le paramètre <varname>from_collapse_limit</varname> pour contrôler
- la conversion des sous-requêtes en jointures (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Utilise le code plus rapide et plus puissant des expressions rationnelles
- provenant de Tcl (Henry Spencer, Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Utilise les ensembles de relation dans l'optimiseur (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Améliore le temps de lancement de la connexion (Tom)</para>
- <para>
- Le nouveau protocole client/serveur requiert moins de paquets réseau pour
- commencer une session de la base de données.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Améliore les performances des déclencheurs/contraintes (Stephan)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Améliore la rapidité de <literal>col IN (const, const, const,
- ...)</literal> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Corrige les index de découpage, qui pourraient être cassés dans de rares
- cas (Tom)
- </para>
- </listitem>
-
- <listitem><para>Améliore la concurrence et la rapidité des index de
- découpage (Tom)</para>
- <para>
- Les versions précédentes souffraient d'une pauvre performance pour les
-index de découpage, particulièrement dans les situations avec de nombreux
-clients. Cette version corrige ceci. Le groupe de développement est intéressé
-par des rapports de comparaison entre les performances d'un index B-tree et
-d'un index de découpage.
- </para>
- </listitem>
-
- <listitem>
- <para>Alignement des tampons partagés sur des limites sur 32 bits pour des
- amélioration de la rapidité de copie (Manfred Spraul)</para>
- <para>
- Certains CPU réalisent des copies de données plus rapidement si les
- adresses sont alignées sur 32 bits.
- </para>
- </listitem>
-
- <listitem>
- <para>Type de données <type>numeric</type> réimplémenté pour de meilleurs
- performances (Tom)</para>
- <para>
- <type>numeric</type> était auparavant stocké en base 100. Le nouveau code
- utilise la base 10000 pour des performances significativement meilleures.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modification de la configuration du serveur</title>
-
- <itemizedlist>
- <listitem>
- <para>Renommage du paramètre serveur <varname>server_min_messages</> et
- <varname>log_min_messages</> (Bruce)</para>
- <para>
- Ceci a été fait pour que la plupart des paramètres contrôlant les
- traces serveur commencent avec <literal>log_</>.
- </para>
- </listitem>
-
- <listitem><para>Renommage de <varname>show_*_stats</> en
- <varname>log_*_stats</> (Bruce)</para></listitem>
- <listitem><para>Renommage de <varname>show_source_port</> en
-<varname>log_source_port</> (Bruce)</para></listitem>
- <listitem><para>Renommage de <varname>hostname_lookup</> en
-<varname>log_hostname</> (Bruce)</para></listitem>
-
- <listitem>
- <para>Ajout de <varname>checkpoint_warning</> pour avertir en cas de
- points de vérification trop fréquent (Bruce)</para>
- <para>
- Dans les versions précédentes, il était difficile de déterminer si un
- point de vérification arrivait trop fréquemment. Cette fonctionnalité
- ajoute un avertissement aux traces du serveur lorsqu'un nombre
- excessif de points de vérification survient.
- </para>
- </listitem>
-
- <listitem><para>Nouveaux paramètres du serveur en lecture seule con
- cernant la localisation (Tom)</para></listitem>
-
- <listitem>
- <para>
- Modifie les messages des traces du serveur en <literal>DEBUG</> plutôt que
- <literal>LOG</> (Bruce)
- </para>
- </listitem>
-
- <listitem>
- <para>Empêche les variables de traces du serveur d'être désactivées par des
- utilisateurs standards (Bruce)</para>
- <para>
- Ceci est une fonctionnalité de sécurité pour que les utilisateurs
- standards ne puissent pas désactivés les traces activées par
- l'administrateur.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <varname>log_min_messages</>/<varname>client_min_messages</> contrôle
- maintenant la sortie <varname>debug_*</> (Bruce)
- </para>
- <para>
- Ceci centralise les informations de déboguages du client de façon à
- ce que toutes les sorties de déboguages puissent être envoyées soit au
- client soit aux traces du serveur.
- </para>
- </listitem>
-
- <listitem>
- <para>Ajoute le support du serveur Rendezvous de Mac OS X (Chris
- Campbell)</para>
- <para>
- Ceci permet aux hôtes Mac OS X de chercher les serveurs
- <productname>PostgreSQL</productname> disponibles sur le réseau.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajoute la possibilité d'afficher seulement les instructions lentes
- en utilisant <varname>log_min_duration_statement</varname> (Christopher)
- </para>
- <para>
- Ceci est une fonctionnalité de débogage souvent demandée qui permet aux
- administrateurs de voir seulement les requêtes lentes dans les traces du
- serveur.
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise <filename>pg_hba.conf</filename> à accepter des masques
- réseau au format CIDR (Andrew Dunstan)</para>
- <para>
- Ceci permet aux administrateurs d'assembler l'adresse IP de l'hôte et les
- champs de masques dans un seul champ CIDR dans
- <filename>pg_hba.conf</filename>.
- </para>
- </listitem>
-
- <listitem><para>Nouveau paramètre <varname>is_superuser</varname> en
- lecture seule (Tom)</para></listitem>
-
- <listitem>
- <para>Nouveau paramètre <varname>log_error_verbosity</varname> pour
- contrôler le détail des erreurs (Tom)</para>
- <para>
- Ceci fonctionne avec la nouvelle version des rapports d'erreurs pour
- fournir des informations supplémentaires comme des astuces, de noms de
- fichiers et des numéros de lignes.
- </para>
- </listitem>
-
- <listitem>
- <para><literal>postgres --describe-config</literal> affiche maintenant les
- variables de configuration du serveur (Aizaz Ahmed, Peter)</para>
- <para>
- Cette option est utile pour les outils d'administration qui ont besoin de
- connaître les noms des variables de coniguration et leur minimum, maximum,
- valeur par défaut et descriptionss.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajoute de nouvelles colonnes dans <literal>pg_settings</literal> :
- <literal>context</>, <literal>type</>, <literal>source</>,
- <literal>min_val</>, <literal>max_val</> (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Par défaut, <varname>shared_buffers</> vaut 1000 et
- <varname>max_connections</> 100 si possible (Tom)
- </para>
- <para>
- Les anciennes versions avaient pour valeur par défaut 64 tampons
- partagés pour que <productname>PostgreSQL</productname> puisse démarrer
-même sur de très vieux
- systèmes. Cette version teste la mémoire partagée autorisée par la
- plateforme et sélectionne des valeurs par défaut plus raisonnable si
- possible. Bien sûr, les utilisateurs sont toujours encouragés à évaluer
- leur charge de ressources en accord avec
- <varname>shared_buffers</varname>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Nouveau type d'enregistrement dans <filename>pg_hba.conf</filename>
- <literal>hostnossl</> pour empêcher les connexions SSL (Jon
- Jensen)
- </para>
- <para>
- Dans les précédentes versions, il n'existait pas de moyens d'empêcher les
- connexions SSL si le client et le serveur supportaient SSL. Cette option
- le permet.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Nouveau déplacement du paramètre <varname>geqo_random_seed</varname>
- (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajout du paramètre serveur <varname>regex_flavor</varname> pour contrôler
- le traitement des expressions rationnelles (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <command>pg_ctl</command> gère mieux les ports non standards
- (Greg)
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications sur les requêtes</title>
-
- <itemizedlist>
- <listitem><para>Nouveau schéma d'informations au standard SQL
- (Peter)</para></listitem>
- <listitem><para>Ajoute des transactions en lecture seule
- (Peter)</para></listitem>
- <listitem><para>Affichage du nom de la clé et de la valeur dans les
- messages de violation de clé étrangère (Dmitry Tkach)</para></listitem>
-
- <listitem>
- <para>Permet aux utilisateurs de voir leur propre requêtes dans
-<literal>pg_stat_activity</literal> (Kevin Brown)</para>
- <para>
- Dans les versions précédentes, seul le superutilisateur pouvait voir les
- chaînes de requêtes en utilisant <literal>pg_stat_activity</literal>.
- Maintenant, les utilisateurs ordinaires peuvent voir leurs propres
- requêtes.
- </para>
- </listitem>
-
- <listitem>
- <para>Corrige les agrégats dans les sous-requêtes pour correspondre au
- standard SQL (Tom)</para>
- <para>
- Le standard SQL indique qu'une fonction d'agrégat apparaissant dans une
- sous-requête appartient à la requête externe si son argument contient
- seulement des variables de la requête externe. Les versions précédentes de
- <productname>PostgreSQL</productname> ne gèrent pas ce point correctement.
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout d'une option pour empêcher l'ajout automatique de
- tables référencées dans la requête (Nigel J. Andrews)</para>
- <para>
- Par défaut, les tables mentionnées dans la requête sont automatiquement
- ajoutées dans la clause <literal>FROM</> s'ils n'y sont pas déjà. Ceci est
- compatible avec le comportement historique de
-<productname>POSTGRES</productname>
- mais est contraire
- au standard SQL. Cette option permet de sélectionner un comportement
- compatible avec le standard.
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise <literal>UPDATE ... SET col = DEFAULT</literal> (Rod)</para>
- <para>
- Ceci permet à <command>UPDATE</command> d'initialiser une colonne à sa
- valeur déclarée par défaut.
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise l'utilisation d'expressions dans
- <literal>LIMIT</>/<literal>OFFSET</>
- (Tom)</para>
- <para>
- Dans les versions précédentes, <literal>LIMIT</>/<literal>OFFSET</>
- pouvaient seulement être des constantes, pas des expressions.
- </para>
- </listitem>
-
- <listitem>
- <para>Implémentation de <literal>CREATE TABLE AS EXECUTE</literal> (Neil,
- Peter)</para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Object Manipulation Changes</title>
-
- <itemizedlist>
- <listitem>
- <para>Rend la grammaire de <command>CREATE SEQUENCE</command> plus
- conforme à SQL:2003 (Neil)</para>
- </listitem>
-
- <listitem>
- <para>Ajout des déclencheurs au niveau instruction (Neil)</para>
- <para>
- Bien que ceci permet à un déclencheur d'être lancé à la fin d'une
- instruction, il ne permet pas au déclencheur d'accéder à toutes les lignes
- modifiées par l'instruction. Cette possibilité est planifiée pour une
- future version.
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout de contraintes de vérifications pour les domaines
- (Rod)</para>
- <para>
- Ceci améliore grandement l'utilité des domaines en les permettant
- d'utiliser les contraintes de vérification.
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout d'<command>ALTER DOMAIN</command> (Rod)</para>
- <para>
- Ceci permet la manipulation de domaines existants.
- </para>
- </listitem>
-
- <listitem>
- <para>Correction de plusieurs bogues pour les tables comprenant zéro
- colonne (Tom)</para>
- <para>
- <productname>PostgreSQL</productname> supporte les tables sans colonne.
- Ceci corrige plusieurs bogues survenant lors de l'utilisation de telles
- tables.
- </para>
- </listitem>
-
- <listitem>
- <para>Fait que <literal>ALTER TABLE ... ADD PRIMARY KEY</literal> ajoute
- une contrainte non NULL (Rod)</para>
- <para>
- Dans les précédentes versions, <literal>ALTER TABLE ... ADD
- PRIMARY</literal> aurait ajouter un index unique mais pas de contrainte
- non NULL. Ceci est corrigé dans cette version.
- </para>
- </listitem>
-
- <listitem><para>Ajout de <literal>ALTER TABLE ... WITHOUT OIDS</literal>
- (Rod)</para>
- <para>
- Ceci permet de contrôler le fait qu'il y ait ou non une colonne OID pour
- les nouvelles lignes. Ceci est surtout utile pour sauvegarder de l'espace
- disque.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajout de <literal>ALTER SEQUENCE</literal> pour modifier les valeurs
- minimum, maximum, l'incrément, le cache et le cycle (Rod)
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout de <literal>ALTER TABLE ... CLUSTER ON</literal> (Alvaro
- Herrera)</para>
- <para>
- Cette commande est utilisée par <command>pg_dump</command> pour
- enregistrer la colonne de groupement pour chaque table précédemment
- groupée. Cette information est utilisée pour regrouper toutes les tables
- précédemment groupées.
- </para>
- </listitem>
-
- <listitem><para>Amélioration de la conversion automatique de type pour les
- domaines (Rod, Tom)</para></listitem>
- <listitem><para>Permet les signes dollar dans les identifiants sauf en
- premier caractère (Tom)</para></listitem>
- <listitem><para>Interdit les signes dollar dans les noms d'opérateur, pour
- que <literal>x=$1</> fonctionne (Tom)</para></listitem>
-
- <listitem>
- <para>
- Autorise la copie du schéma de la table en utilisant <literal>LIKE
- <replaceable>soustable</replaceable></literal>, aussi une fonctionnalité
- SQL:2003 <literal>INCLUDING DEFAULTS</literal> (Rod)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajout de la clause <literal>WITH GRANT OPTION</literal> pour
- <command>GRANT</command> (Peter)
- </para>
- <para>
- Ceci permet à <command>GRANT</command> de donner aux autres utilisateurs
- la capacité de données des privilèges sur un objet.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications des commandes utilitaires</title>
-
- <itemizedlist>
- <listitem>
- <para>Ajout de la clause <literal>ON COMMIT</literal> à <command>CREATE
- TABLE</command> pour les tables temporaires (Gavin)</para>
- <para>
- Ceci permet à une table d'être supprimée ou d'avoir toutes ces lignes
- supprimées lors de la validation d'une transaction.
- </para>
- </listitem>
-
- <listitem>
- <para>Permet aux curseurs d'agir en dehors des transactions en utilisant
- <literal>WITH HOLD</literal> (Neil)</para>
- <para>
- Dans les précédentes versions, les curseurs étaient supprimés à la fin de
- la transaction qui les avait créé. Les curseurs peuvent maintenant être
- créés avec l'option <literal>WITH HOLD</literal> qui leur permet de
- continuer à être utilisé après que la transaction qui les a créé soit
- validée.
- </para>
- </listitem>
-
- <listitem>
- <para><literal>FETCH 0</literal> et <literal>MOVE 0 </literal> ne font
- maintenant plus rien (Bruce)</para>
- <para>
- Dans les précédentes versions, <literal>FETCH 0</literal> récupérait
- toutes les lignes restantes et <literal>MOVE 0</literal> se déplaçait à la
- fin du curseur.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <command>FETCH</command> et <command>MOVE</command> renvoient le
- nombre de lignes récupérées/déplacées ou zéro si au début ou à la fin du
- curseur, suivant le standard SQL (Bruce)
- </para>
- <para>
- Dans les versions précédentes, le nombre de lignes renvoyé par
- <command>FETCH</command> et <command>MOVE</command> ne reflétaient pas
- exactement le nombre de lignes traitées.
- </para>
- </listitem>
-
- <listitem>
- <para>Gestion propre de <literal>SCROLL</literal> avec les curseurs ou
- renvoi d'une erreur (Neil)</para>
- <para>
- Permettre un accès aléatoire (à la fois en avant et en arrière) aux
- différents types de requêtes ne peut pas se faire sans quelques travaux
- supplémentaires. Si <literal>SCROLL</literal> est spécifié lors de la
- création du curseur, ce travail supplémentaire a été réalisé. De plus, si
- le curseur a été créé avec <literal>NO SCROLL</literal>, aucun accès
- aléatoire ne sera autorisé.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Implémente les options compatibles SQL <literal>FIRST</>,
- <literal>LAST</>, <literal>ABSOLUTE <replaceable>n</></>,
- <literal>RELATIVE <replaceable>n</></> pour
- <command>FETCH</command> et <command>MOVE</command> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise <command>EXPLAIN</command> sur <command>DECLARE
- CURSOR</command> (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Permet à <command>CLUSTER</command> d'utiliser les index marqués
- comme pré-groupés par défaut (Alvaro Herrera)</para>
- </listitem>
-
- <listitem>
- <para>Permet à <command>CLUSTER</command> de grouper toutes les tables
- (Alvaro Herrera)</para>
- <para>
- Ceci permet à toutes les tables précédemment groupées dans une base de
- données d'être regroupées avec une seule commande.
- </para>
- </listitem>
-
- <listitem><para>Empêche <command>CLUSTER</command> sur les index partiels
- (Tom)</para></listitem>
-
- <listitem><para>Autorise les retours à la ligne DOS et Mac dans les fichiers
- <command>COPY</> (Bruce)</para></listitem>
-
- <listitem>
- <para>
- Interdit les retours chariot comme valeur de données, les
- antislash-retour-chariot et <literal>\r</> sont toujours autorisés (Bruce)
- </para>
- </listitem>
-
- <listitem>
- <para>Modifications sur <command>COPY</> (binaire, <literal>\.</>)
- (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Récupération propre après un échec de <command>COPY</command>
- (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Empêche les possibles pertes de mémoire de <command>COPY</command>
- (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Fait que <command>TRUNCATE</command> soit sain lors de transactions
- (Rod)</para>
- <para>
- <command>TRUNCATE</command> peut maintenant être utilisé à l'intérieur
- d'une transaction. Si la transaction est annulée, les modifications faites
- par <command>TRUNCATE</command> sont automatiquement annulées.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Permet la préparation et le lien de commandes utilitaires comme
- <command>FETCH</command> et <command>EXPLAIN</command> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout de <command>EXPLAIN EXECUTE</command> (Neil)</para>
- </listitem>
-
- <listitem>
- <para>Amélioration des performances de <command>VACUUM</command> sur les
- index en réduisant le trafic des WAL (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Les index fonctionnels ont été généralisés en des index sur des
- expressions (Tom)</para>
- <para>
- Dans les versions précédentes, les index fonctionnels supportaient
- seulement une simple fonction appliquée à un ou plusieurs noms de
- commandes. Cette version accepte tout type d'expression scalaire.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <command>SHOW TRANSACTION ISOLATION</command> corresponde à
- l'entrée de <command>SET TRANSACTION ISOLATION</command>
- (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Fait que <command>COMMENT ON DATABASE</command> sur les bases de
- données non locales génère un message d'avertissement plutôt qu'une
- erreur (Rod)</para>
- <para>
- Les commentaires de bases de données sont stockés dans les tables
- locales de la base de données. Donc, les commentaires sur une base de
- données doivent être stockés dans chaque base de données.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Améliore la fiabilité de <command>LISTEN</>/<command>NOTIFY</> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Permet à <command>REINDEX</command> de réindexer fiablement les
- index de catalogues système non partagés (Tom)</para>
- <para>
- Ceci permet aux tables système d'être réindexées sans avoir besoin d'une
- session en solo, qui était nécessaire dans les versions précédentes. Les
- seules tables qui requièrent maintenant une session solo sont les tables
- système global <literal>pg_database</>, <literal>pg_shadow</> et
- <literal>pg_group</>.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications sur les types de données et sur les fonctions</title>
-
- <itemizedlist>
- <listitem>
- <para>
- Nouveau paramètre serveur <varname>extra_float_digits</varname> pour
- contrôler la précision d'affichage des nombres à virgule glottante (Pedro
- Ferreira, Tom)
- </para>
- <para>
- Ceci contrôle la précision qui causait des problèmes lors des tests de
- régression.
- </para>
- </listitem>
-
- <listitem><para>Autorisation de <literal>+1300</literal> comme spécificateur
- numérique de fuseau horaire, pour FJST (Tom)</para></listitem>
-
- <listitem>
- <para>
- Suppression des fonctions <function>oidrand</>, <function>oidsrand</> et
- <function>userfntest</> rarement utilisées (Neil)
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout de la fonction <function>md5()</> sur le serveur principal,
- auparavant déjà dans <filename>contrib/pgcrypto</filename> (Joe)</para>
- <para>
- Une fonction MD5 était fréquemment demandée. Pour des possibilités
- plus complexes de cryptage, utilisez
- <filename>contrib/pgcrypto</filename>.
- </para>
- </listitem>
-
- <listitem><para>Augmentation de l'étendue des données de
- <type>timestamp</type> (John Cochran)</para></listitem>
-
- <listitem>
- <para>
- Modification de <literal>EXTRACT(EPOCH FROM timestamp)</literal> pour que
- <type>timestamp without time zone</type> soit supposé être dans le fuseau
- local, et non pas en GMT (Tom)
- </para>
- </listitem>
-
- <listitem><para>Récupération des divisions par zéro au cas où le système
- d'exploitation ne le permet pas (Tom)</para></listitem>
- <listitem><para>Modification du type de données <type>numeric</type>
- interne en base 10000 (Tom)</para></listitem>
- <listitem><para>Nouvelle fonction <function>hostmask()</function> (Greg
- Wickham)</para></listitem>
- <listitem><para>Corrections pour <function>to_char()</function> et
- <function>to_timestamp()</function> (Karel)</para></listitem>
-
- <listitem>
- <para>
- Permet aux fonctions de prendre tout type de données en argument et de
- renvoyer aussi tout type, en utilisant <type>anyelement</type> et
- <type>anyarray</type> (Joe)
- </para>
- <para>
- Ceci permet la création de fonctions qui peuvent fonctionner avec tout
- type de données.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les tableaux peuvent maintenant être spécifiés comme
- <literal>ARRAY[1,2,3]</literal>,
- <literal>ARRAY[['a','b'],['c','d']]</literal> ou
- <literal>ARRAY[ARRAY[ARRAY[2]]]</literal> (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise une comparaison correcte des tableaux, ceci incluant le support
- de <literal>ORDER BY</literal> et <literal>DISTINCT</literal> (Joe)
- </para>
- </listitem>
-
- <listitem><para>Autorise les index sur les colonnes de type tableau
- (Joe)</para></listitem>
- <listitem><para>Autorise la concaténation de tableaux avec
- <literal>||</literal> (Joe)</para></listitem>
-
- <listitem>
- <para>
- Autorise la qualification <literal>WHERE</literal>
- <literal><replaceable>expr</> <replaceable>op</> ANY/SOME/ALL
- (<replaceable>array_expr</>)</literal> (Joe)
- </para>
- <para>
- Ceci permet aux tableaux de se comporter comme une liste de valeurs dans
- des requêtes comme <literal>SELECT * FROM tab WHERE col IN
- (array_val)</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Nouvelles fonctions de tableaux <function>array_append</>,
- <function>array_cat</>, <function>array_lower</>,
- <function>array_prepend</>, <function>array_to_string</>,
- <function>array_upper</>, <function>string_to_array</> (Joe)
- </para>
- </listitem>
-
- <listitem><para>Autorise l'utilisation de fonctions polymorphiques par les
- agrégats définis par l'utilisateur (Joe)</para></listitem>
- <listitem><para>Permet les affectations dans des tableaux vides
- (Joe)</para></listitem>
-
- <listitem>
- <para>
- Autorise 60 dans la partie secondes des champs de type <type>time</type>,
- <type>timestamp</type> et <type>interval</type> (Tom)
- </para>
- <para>
- Les valeurs à soixante secondes sont nécesssaires pour les <quote>leap
- seconds</quote>.
- </para>
- </listitem>
-
- <listitem><para>Permet au type de données <type>cidr</type> d'être converti
- en <type>text</type> (Tom)</para></listitem>
-
- <listitem><para>Interdit les noms de fuseaux horaires invalides dans SET
- TIMEZONE (Tom)</para></listitem>
-
- <listitem>
- <para>
- Supprime les espaces à la fin lorsque une donnée de type
- <type>char</type> est convertie en type <type>varchar</> ou <type>text</>
- (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <type>float(<replaceable>p</>)</> mesure la précision
- <replaceable>p</> en chiffres binaires, et non pas en chiffres décimaux
- (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Ajoute le support IPv6 aux types de données <type>inet</type> et
- <type>cidr</type> (Michael Graff)</para>
- </listitem>
-
- <listitem>
- <para>Ajoute la fonction <function>family()</function> pour rapporter si
- l'adresse fait partie de la famille IPv4 ou IPv6 (Michael Graff)</para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <literal>SHOW datestyle</literal> génère une sortie similaire à
- celle utilisée par <literal>SET datestyle</literal> (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <literal>EXTRACT(TIMEZONE)</literal> et <literal>SET/SHOW
- TIME ZONE</literal> suivent la convention SQL pour le signe des décalages
- de zones horaires, c'est-à-dire que le positif est l'est à partir d'UTC
- (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Correction de <literal>date_trunc('quarter', ...)</literal> (Böjthe
-Zoltán)</para>
- <para>
- Les anciennes versions renvoyaient une valeur incorrecte pour cet appel
- de fonction.
- </para>
- </listitem>
-
- <listitem>
- <para>Fait que <function>initcap()</function> soit plus compatible avec
- Oracle (Mike Nolan)</para>
- <para>
- <function>initcap()</function> met en majuscule toute lettre après un
- caractère non alphanumérique, plutôt qu'après un espace blanc.
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise seulement l'ordre du champ <varname>datestyle</varname>
- pour les valeurs de données ne faisant pas partie du format ISO-8601
- (Greg)</para>
- </listitem>
-
- <listitem>
- <para>
- Ajout de nouvelles valeurs pour <varname>datestyle</varname>,
- <literal>MDY</>, <literal>DMY</> et <literal>YMD</> pour initialiser
- l'ordre du champ en entrée ; honore <literal>US</> et
- <literal>European</> pour une compatibilité ascendante (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les chaînes littérales comme <literal>'now'</literal> ou
- <literal>'today'</literal> ne fonctionneront plus comme valeur par défaut
- d'une colonne. À la place, utilisez des fonctions comme
- <function>now()</function>, <function>current_timestamp</function>.
- (modification requise pour les instructions préparées) (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>Traitement de NaN comme plus important que tout autre valeur dans
- <function>min()</>/<function>max()</> (Tom)</para>
- <para>
- NaN était déjà trié après les valeurs numériques ordinaires dans la
- plupart des cas, mais <function>min()</> et <function>max()</> ne le
- faisaient pas correctement.
- </para>
- </listitem>
-
- <listitem>
- <para>Empêche l'intervalle de supprimer l'affichage de
- <literal>:00</literal></para>
- </listitem>
-
- <listitem>
- <para>
- Nouvelles fonctions <function>pg_get_triggerdef(prettyprint)</function>
- et <function>pg_constraint_is_visible() (Christopher)</function>
- </para>
- </listitem>
-
- <listitem>
- <para>Permet la spécification de l'heure avec <literal>040506</> ou
- <literal>0405</> (Tom)</para>
- </listitem>
-
- <listitem>
- <para>
- L'ordre de la date en entrée doit être <literal>YYYY-MM-DD</literal>
- (avec une année sur quatre chiffres) ou correspondre à
- <varname>datestyle</varname>
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <function>pg_get_constraintdef</function> supporte les
- contraintes uniques, de clés primaires et de vérification de contraintes
- (Christopher)
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Server-Side Language Changes</title>
-
- <itemizedlist>
- <listitem>
- <para>
- Empêche PL/pgSQL de s'arrêter brutalement lorsque <literal>RETURN
- NEXT</literal> est utilisé avec une variable d'enregistrement ne
- correspondant à aucune ligne (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que l'interface <function>spi_execute</function> de PL/Python gère
- les valeurs NULL correctement (Andrew Bosma)
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise la déclaration des variables de type composé dans PL/pgSQL
- sans <literal>%ROWTYPE</literal> (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Corrige la fonction <function>_quote()</function> de PL/Python pour
- gérer les gros entiers</para>
- </listitem>
-
- <listitem>
- <para>Modification de PL/Python en langage sans confiance, maintenant
- appelé <literal>plpythonu</literal> (Kevin Jacobs, Tom)</para>
- <para>
- Le langage Python ne support plus un environnement d'exécution restreint,
- donc la version de confiant de PL/Python a été supprimée. Si cette
- situation évolue, une version de PL/python pouvant être utilisé par des
- utilisateurs ordinaires sera préparée.
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise les fonctions polymorphiques dans PL/pgSQL (Joe, Tom)</para>
- </listitem>
-
- <listitem>
- <para>Autorise les fonctions SQL polymorphiques (Joe)</para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration du mécanisme de cache des fonctions compilées dans PL/pgSQL
- avec un support complet du polymorphisme (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Ajout du nouveau paramètre <literal>$0</> dans PL/pgSQL, représentant le
- type de retour réel de la fonction (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise PL/Tcl et PL/Python à utiliser le même déclencheur sur des
- tables multiples (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction de <function>spi_prepare</function> de PL/Tcl pour qu'il
- accepte les noms de types qualifiés complètement dans la liste des types
- des paramètres (Jan)
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications sur psql</title>
-
- <itemizedlist>
- <listitem>
- <para>Ajout de <literal>\pset pager always</literal> pour utiliser en
- permanence le pagineur (Greg)</para>
- <para>
- Ceci force l'utilisation du pagineur même si le nombre de lignes est plus
- petit que la hauteur de l'écran. Ceci est valable pour les lignes de
- données ne tenant pas sur une ligne de l'écran.
- </para>
- </listitem>
-
- <listitem><para>Amélioration de la complétion par tabulation (Rod, Ross
- Reedstrom, Ian Barwick)</para></listitem>
- <listitem><para>Réordonnancement de l'aide <literal>\?</> en la groupant
- (Harald Armin Massa, Bruce)</para></listitem>
- <listitem><para>Ajout des commandes antislash pour liste les schémas,
- fonctions de conversions et conversions (Christopher)</para></listitem>
-
- <listitem>
- <para>
- <command>\encoding</> est modifié pour se baser sur le paramètre serveur
- <varname>client_encoding</varname> (Tom)
- </para>
- <para>
- Dans les versions précédentes, <command>\encoding</command> n'était pas
- tenu au courant des changements de codage fait en utilisant <literal>SET
- client_encoding</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>Sauvegarde du tampon de l'éditeur dans l'historique de readline
- (Ross)</para>
- <para>
- Lorsque <command>\e</> est utilisé pour éditer une requête, le résultat
- est sauvegardé dans l'historique de readline pour récupération en
- utilisant la flèche vers le haut.
- </para>
- </listitem>
-
- <listitem><para>Amélioration de l'affichage de <command>\d</command>
- (Christopher)</para></listitem>
- <listitem><para>Amélioration du mode HTML pour être plus conforme au
- standard (Greg)</para></listitem>
-
- <listitem>
- <para>Nouvelle fonction <command>\set AUTOCOMMIT off</command> (Tom)</para>
- <para>
- Ceci prend la place du paramètre serveur <varname>autocommit</varname>
- qui a été supprimé.
- </para>
- </listitem>
-
- <listitem>
- <para>Nouveau <command>\set VERBOSITY</command> pour contrôler le détail
- des erreurs (Tom)</para>
- <para>
- Ceci contrôle le niveau du nouveau détail des rapports.
- </para>
- </listitem>
-
- <listitem><para>Nouvelle invite de séquence d'échappement
- <literal>%x</literal> pour afficher l'état de la transaction
- (Tom)</para></listitem>
- <listitem><para>Les options longues pour <application>psql</application>
- sont maintenant disponibles sur toutes les plateformes</para></listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications de pg_dump</title>
-
- <itemizedlist>
- <listitem><para>Multiples corrections de pg_dump, incluant le format tar et
- les gros objets</para></listitem>
- <listitem><para>Autorise la sauvegarde de schémas spécifiques par pg_dump
- (Neil)</para></listitem>
-
- <listitem>
- <para>Fait que pg_dump préserve les caractéristiques de stockage des
- colonnes (Christopher)</para>
- <para>
- Ceci préserve l'information <literal>ALTER TABLE ... SET
- STORAGE</literal>.
- </para>
- </listitem>
-
- <listitem><para>Fait que pg_dump préserve les caractéristiques
- <command>CLUSTER</command> (Christopher)</para></listitem>
-
- <listitem>
- <para>
- Fait que pg_dumpall utilise <command>GRANT</>/<command>REVOKE</> pour
- sauvegarder les droits au niveau de la base de données (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise pg_dumpall à supporter les options <option>-a</>,
- <option>-s</>, <option>-x</> de pg_dump (Tom)
- </para>
- </listitem>
-
- <listitem><para>Empêche pg_dump de mettre en minuscule les identifiants
- spécifiés sur la ligne de commande (Tom)</para></listitem>
-
- <listitem>
- <para>
- Les options <option>--use-set-session-authorization</option> et
- <option>--no-reconnect</option> de pg_dump ne font maintenant plus
- rien, toutes les sauvegardes utilisent <command>SET SESSION
- AUTHORIZATION</command>
- </para>
- <para>
- pg_dump ne se reconnecte plus pour changer d'utilisateurs mais utilise à
- la place <command>SET SESSION AUTHORIZATION</command>. Ceci réduira le
- nombre de demandes de mot de passe lors des restaurations.
- </para>
- </listitem>
-
- <listitem>
- <para>Les options longues pour <application>pg_dump</application> sont
- maintenant disponibles sur toutes les plateformes</para>
- <para>
- <productname>PostgreSQL</productname> inclut maintenant ses propres
- routines de traitement des options longues.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications de libpq</title>
-
- <itemizedlist>
- <listitem>
- <para>
- Ajout de la fonction <function>PQfreemem</function> pour libérer la
- mémoire de Windows, suggéré pour le <command>NOTIFY</command> (Bruce)
- </para>
- <para>
- Windows requiert que la mémoire allouée dans une bibliothèque soit libérée
- par une fonction de la même bibliothèque, donc <function>free()</function>
- ne fonctionne pas pour libérer la mémoire allouée par libpq.
- <function>PQfreemem</function> est la bonne façon de libérer la mémoire
- libpq, spécialement sur Windows, et est aussi recommandée sur les autres
- plateformes.
- </para>
- </listitem>
-
- <listitem>
- <para>Fonctionnalité de service de document, et ajout d'un fichier
- d'exemple (Bruce)</para>
- <para>
- Ceci permet aux clients de rechercher une information de connexion
- dans un ficher central sur la machine client.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Fait que <function>PQsetdbLogin</function> a les mêmes valeurs par défaut
- que <function>PQconnectdb</function> (Tom)
- </para>
- </listitem>
-
- <listitem><para>Autorise libpq à échouer proprement lorsque les ensembles de
- résultats sont trop importants (Tom)</para></listitem>
-
- <listitem>
- <para>
- Amélioration de la performance de la fonction
- <function>PQunescapeBytea</function> (Ben Lamb)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise une libpq totalement compatible avec les threads avec
- l'option <option>--enable-thread-safety</option> de
- <filename>configure</filename> (Lee Kindness, Philip Yarra)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Autorise la fonction <function>pqInternalNotice</function> à accepter les
- chaînes de format et leurs arguments au lieu d'un simple message
- préformaté (Tom, Sean Chittenden)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Contrôle la négotiation SSL avec les valeurs <literal>sslmode</literal>
- <literal>disable</literal>, <literal>allow</literal>,
- <literal>prefer</literal> et <literal>require</literal> (Jon
- Jensen)
- </para>
- </listitem>
-
- <listitem>
- <para>Autorise les nouveaux codes d'erreur et les niveaux de texte
- (Tom)</para>
- </listitem>
-
- <listitem>
- <para>Autorise l'accès à la table et la colonne sous-jacente du résultat
- d'une requête (Tom)</para>
- <para>
- Ceci est utile pour les applications de création de requêtes qui veulent
- connaître la table sous-jacente et les noms de colonnes spécifiées avec
- un ensemble de résultats spécifique.
- </para>
- </listitem>
-
- <listitem><para>Autorise l'accès au statut de la transaction en cours
- (Tom)</para></listitem>
- <listitem><para>Ajoute la capacité de passer des données binaires
- directement au serveur (Tom)</para></listitem>
-
- <listitem>
- <para>
- Ajout des fonctions <function>PQexecPrepared</function> et
- <function>PQsendQueryPrepared</function> réalisant un
- bind/execute des précédentes instructions préparées (Tom)
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modification de JDBC</title>
-
- <itemizedlist>
- <listitem><para>Autorise <function>setNull</function> sur des ensembles de
- résultats en lecture/écriture</para></listitem>
- <listitem><para>Autorise <function>executeBatch</function> sur une
- instruction préparée (Barry)</para></listitem>
- <listitem><para>Support des connexions SSL (Barry)</para></listitem>
- <listitem><para>Gestion des noms de schéma dans les ensembles de résultats
- (Paul Sorenson)</para></listitem>
- <listitem><para>Ajout du support de refcursor (Nic
- Ferrier)</para></listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Diverses modifications dans l'interface</title>
-
- <itemizedlist>
- <listitem>
- <para>Empêche les possibles pertes de mémoire ou <quote>core dump</quote>
- lors d'un arrêt de libpgtcl (Tom)</para>
- </listitem>
- <listitem>
- <para>Ajout de la compatibilité Informix pour ECPG (Michael)</para>
- <para>
- Ceci permet à ECPG de traiter des programmes C embarqués qui étaient
- écrit en utilisant certaines extensions Informix.
- </para>
- </listitem>
-
- <listitem>
- <para>Ajout du type <type>decimal</type> à ECPG sur une longueur fixe, pour
- Informix (Michael)</para>
- </listitem>
-
- <listitem>
- <para>
- Autorise les programmes SQL embarqués en mode compatible avec les threads
- après utilisation de l'option <option>--enable-thread-safety</option> de
- <filename>configure</filename> (Lee Kindness, Bruce)
- </para>
- <para>
- Ceci permet à de nombreux threads d'accéder à la base de données en
- même temps.
- </para>
- </listitem>
-
- <listitem>
- <para>Déplacement du client Python PyGreSQL sur <ulink
- url="http://www.pygresql.org"></ulink> (Marc)</para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications du code source</title>
-
- <itemizedlist>
- <listitem><para>Empêche le besoin de fichiers de résultats de
-régression séparés par plateforme (Tom)</para></listitem>
- <listitem><para>Amélioration de la primitive de verrou sur PPC (Reinhard
-Max)</para></listitem>
- <listitem><para>Nouvelle fonction <function>palloc0</function> pour allouer
-et effacer la mémoire (Bruce)</para></listitem>
- <listitem><para>Correction du code de verrou pour le CPU s390x (64-bit)
-(Tom)</para></listitem>
- <listitem><para>Autorise OpenBSD à utiliser les crédentiels ident locales
-(William Ahern)</para></listitem>
- <listitem><para>Fait que les arbres de plans de requêtes sont en lecture
-seule pour l'exécuteur (Tom)</para></listitem>
- <listitem><para>Ajout du script de démarrage pour Darwin (David
-Wheeler)</para></listitem>
- <listitem><para>Permet à libpq de compiler avec le compilateur C++ de
-Borland (Lester Godwin, Karl Waclawek)</para></listitem>
- <listitem><para>Utilisation de notre propre version de
-<function>getopt_long()</function> si nécessaire (Peter)</para></listitem>
- <listitem><para>Convertion des scripts d'administration en C
-(Peter)</para></listitem>
- <listitem><para>Bison >= 1.85 est maintenant requis pour construire la
-grammaire PostgreSQL, s'il s'agit d'une construction à partir du
-CVS</para></listitem>
- <listitem><para>Assemblage de la documentation en un seul livre
-(Peter)</para></listitem>
- <listitem><para>Ajout de fonctions compatibles Windows
-(Bruce)</para></listitem>
- <listitem><para>Permet aux interfaces clients d'être compilées sous MinGW
-(Bruce)</para></listitem>
- <listitem><para>Nouvelle fonction <function>ereport()</function> pour les
-rapports d'erreur (Tom)</para></listitem>
- <listitem><para>Support du compilateur Intel sur Linux
-(Peter)</para></listitem>
- <listitem><para>Amélioration des scripts de démarrage Linux (Slawomir
-Sudnik, Darko Prenosil)</para></listitem>
- <listitem><para>Ajout du support pour AMD Opteron et Itanium (Jeffrey W.
-Baker, Bruce)</para></listitem>
- <listitem>
- <para>Suppression de l'option <option>--enable-recode</option> de
-<command>configure</command></para>
- <para>
- Ce n'était plus nécessaire maintenant que nous avons <command>CREATE
-CONVERSION</command>.
- </para>
- </listitem>
- <listitem>
- <para>Génère une erreur de compilation si le code spinlock n'est pas trouvé
-(Bruce)</para>
- <para>
- Les plateformes sans code spinlock échoueront maintenant à la compilation
-plutôt que silencieusement lors de l'utilisation de sémaphores. Cet échec peut
-être désactivé avec une nouvelle option <command>configure</command>.
- </para>
- </listitem>
- </itemizedlist>
- </sect3>
-
- <sect3>
- <title>Modifications dans contrib</title>
-
- <itemizedlist>
- <listitem><para>Modification de la licence de dbmirror par celle de
-BSD</para></listitem>
- <listitem><para>Amélioration de earthdistance (Bruno Wolff
-III)</para></listitem>
- <listitem><para>Amélioration de la portabilité de pgcrypto (Marko
-Kreen)</para></listitem>
- <listitem><para>Suppression du crash en xml (John Gray, Michael
-Richards)</para></listitem>
- <listitem><para>Mise à jour d'oracle</para></listitem>
- <listitem><para>Mise à jour de mysql</para></listitem>
- <listitem><para>Mise à jour de cube (Bruno Wolff III)</para></listitem>
- <listitem><para>Mise à jour d'earthdistance pour utiliser cube (Bruno Wolff
-III)</para></listitem>
- <listitem><para>Mise à jour de btree_gist (Oleg)</para></listitem>
- <listitem><para>Nouveau module de recherche en texte complet tsearch2 (Oleg,
-Teodor)</para></listitem>
- <listitem><para>Ajout d'une fonction inter tableau basé sur le découpage
-dans tablefuncs (Joe)</para></listitem>
- <listitem><para>Ajout d'une colonne serial pour trier les familles
-<function>connectby()</> dans tablefuncs (Nabil Sayegh,Joe)</para></listitem>
- <listitem><para>Ajout des connexions nommées persistantes dans dblink
-(Shridhar Daithanka)</para></listitem>
- <listitem><para>Le nouveau pg_autovacuum permet des
-<command>VACUUM</command> automatique (Matthew T. O'Connor)</para></listitem>
- <listitem><para>Fait que pgbench honore les variables d'environnement
-<envar>PGHOST</>, <envar>PGPORT</>, <envar>PGUSER</> (Tatsuo)</para></listitem>
- <listitem><para>Amélioration d'intarray (Teodor Sigaev)</para></listitem>
- <listitem><para>Amélioration de pgstattuple (Rod)</para></listitem>
- <listitem><para>Correction d'un bogue dans <function>metaphone()</function>
-(contrib fuzzystrmatch)</para></listitem>
- <listitem><para>Amélioration d'adddepend (Rod)</para></listitem>
- <listitem><para>Mise à jour de spi/timetravel (Böjthe
-Zoltán)</para></listitem>
- <listitem><para>Correction de l'option <option>-s</> de dbase et
-amélioration de la gestion des non ASCII (Thomas Behr, Márcio
-Smiderle)</para></listitem>
- <listitem><para>Suppression du module tableau car les fonctionnalités sont
-maintenant incluent par défaut (Joe)</para></listitem>
- </itemizedlist>
- </sect3>
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-21">
- <title>Version 7.3.21</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2008-01-07</simpara>
- </note>
-
- <para>
- Cette version contient divers correctifs de la version 7.3.20,
- et inclut des corrections pour des failles de sécurité importantes.
- </para>
-
- <para>
- Ceci sera sûrement la dernière version <productname>PostgreSQL</productname>
- dans la série 7.3.X. Les utilisateurs sont encouragés à mettre à jour bientôt.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.21</title>
-
- <para>
- Les utilisateurs des versions 7.3.X n'ont pas besoin d'effectuer d'une
- étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour à partir
- d'une version précédant la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Empêche les fonctions d'index de s'exécuter avec les droits de
- l'utilisateur exécutant <command>VACUUM</command>,
- <command>ANALYZE</command>, etc (Tom)
- </para>
-
- <para>
- Les fonctions utilisées dans les expressions d'index et dans les index
- partiels sont évaluées quand une nouvelle entrée est faite dans la table.
- Depuis longtemps, ceci est un risque, un cheval de Troie pouvant être
- exécuté si une personne modifie une table appartenant à un utilisateur
- à qui on ne peut faire confiance (Notez ques les triggers, valeurs par
- défaut, contraintes de vérification, etc posent le même type de risque.)
- Mais les fonctions utilisées dans des index sont un danger supplémentaire
- car ils seront exécutés par des opérations de maintenance périodiques
- comme un <command>VACUUM FULL</command>, opérations généralement
- exécutées par des super-utilisateurs. Donc, un utilisateur cherchant à
- gagner accès au système peut exécuter du code avec des droits de
- super-utilisateur en ajoutant une définition d'index avec un code de
- cheval de Troie, puis attendre la prochaine exécution des opérations de
- maintenance. La correction s'arrange pour que les opérations standards de
- maintenance (ceci incluant <command>VACUUM</command>,
- <command>ANALYZE</command>, <command>REINDEX</command> et
- <command>CLUSTER</command>) s'exécutent en tant que propriétaire de la
- table plutôt qu'en tant qu'appelent, en utilisant le même mécanisme de
- bascule de droits utilisé dans les fonctions <literal>SECURITY
- DEFINER</literal>. Pour empêcher un coutournement de cette mesure de
- sécurité, l'exécution de <command>SET SESSION AUTHORIZATION</command>
- et <command>SET ROLE</command> est maintenant interdit dans un contexte
- <literal>SECURITY DEFINER</literal>. (CVE-2007-6600)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Oblige l'utilisation de l'authentification par mot de passe pour les
- utilisateurs standards de <filename>/contrib/dblink</filename>, c'est
- une mesure de sécurité (Joe)
- </para>
-
- <para>
- La correction apparue dans 7.3.20 était incomplète, car il ne corrigeait
- la faille que pour certaines fonctions <filename>dblink</filename>.
- (CVE-2007-6601, CVE-2007-3278)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un arrêt brutal potentiel dans
- <function>translate()</function> lors de l'utilisation d'un encodage
- multi-octets de la base (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction pour que <function>crosstab()</function>, du module
- <filename>contrib/tablefunc</filename>, gère les rowid NULL comme catégorie (Joe)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Nécessite l'utilisation d'une version spécifique
- d'<productname>Autoconf</productname> lors de la re-génération du script
- <command>configure</command> (Peter)
- </para>
-
- <para>
- Ceci affecte seulement les développeurs et les créateurs de package.
- La modification a pour but d'empêcher l'utilisation accidentelle de
- combinaisons non testées des versions d'<productname>Autoconf</productname>
- et de <productname>PostgreSQL</productname>. Vous pouvez supprimer la
- vérification de la version si vous voulez vraiment utiliser une version
- différente d'<productname>Autoconf</productname>, mais c'est de votre
- responsabilité.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-20">
- <title>Version 7.3.20</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-09-17</simpara>
- </note>
-
- <para>
- Cette version contient divers correctifs de la version 7.3.19.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.20</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Empêche une corruption de l'index quand une transaction insère des lignes
- puis annule tout juste avant la fin d'un <command>VACUUM</command> en
- parallèle sur la même table (Tom)
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
- correctement (Tom) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- le plantage lorsque la journalisation de
- <varname>log_min_error_statement</varname> n'a plus de mémoire
- disponible est corrigé (Tom) ;
- </para>
- </listitem>
-
- <listitem>
- <para>
- les utilisateurs dépourvus de droit superutilisateur qui utilisent
- <filename>/contrib/dblink</filename> ne peuvent utiliser que
- l'authentification par mot de passe, pour des raisons de sécurité
- (Joe).
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-19">
- <title>Version 7.3.19</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-04-23</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.18, dont la
- correction d'une faille de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.19</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Supporte le placement explicite du schéma des tables temporaires dans
- <varname>search_path</>, et désactive sa recherche pour les fonctions
- et opérateurs (Tom)
- </para>
- <para>
- Ceci est nécessaire pour autoriser une fonction en mode security-definer
- à configurer une valeur sécurisée de <varname>search_path</>. Sans cela,
- un utilisateur SQL sans droit peut utiliser des objets temporaires pour
- exécuter du code avec une fonction possédant les droits du créateur de
- la fonction (CVE-2007-2138). Voir <command>CREATE FUNCTION</> pour plus
- d'informations.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue pouvant corrompre des données dans la façon
- dont <command>VACUUM FULL</> gère les chaînes <command>UPDATE</>
- (Tom, Pavan Deolasee)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-18">
- <title>Version 7.3.18</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-02-05</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.17, dont la
- correction d'une faille de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.18</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- Suppression d'une faille de sécurité qui permet à des utilisateurs
- connectés de lire la mémoire du serveur (backend)
- (Tom)
- </para>
- <para>
- Cette vulnérabilité implique de modifier le type de données de la
- colonne d'une table utilisée dans une fonction SQL (CVE-2007-0555).
- Cette erreur peut être facilement exploitée pour causer un arrêt brutal
- du serveur et pourrait être utilisée, en principe, pour lire un contenu
- de la base, contenu que l'utilisateur ne devrait pas pouvoir accéder.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Correction d'un bogue rare où la séparation de page d'un index btree
- pourrait échouer à cause du choix d'un point de séparation infaisable.
- (Heikki Linnakangas)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration de la sécurité du traitement de caractères multi-octets pour
- les séquences UTF8 de plus de trois octets (Tom)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-17">
- <title>Version 7.3.17</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2007-01-08</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.16.
- </para>
-
- <sect2>
- <title>Migration to version 7.3.17</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <function>to_number()</function> et <function>to_char(numeric)</function>
- sont maintenant <literal>STABLE</literal>, et non plus
- <literal>IMMUTABLE</literal>, pour les nouvelles installations
- (<application>initdb</application> nécessaire) (Tom)
- </para>
-
- <para>
- Ceci a été modifié car <literal>lc_numeric</literal> peut modifier la
- sortie de ces fonctions.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Amélioration de l'utilisation des expressions rationnelles qui utilisent
- des parenthèses (Tom)
- </para>
-
- <para>
- Ceci améliore aussi les performances de l'<literal>\d</literal> de
- <application>psql</application>.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-16">
- <title>Version 7.3.16</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-10-16</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.15.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.16</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modification</title>
-
-<itemizedlist>
-<listitem><para>Correction de quelques cas rares dans la correspondance de modèles
- pour les commandes <literal>\d</literal> de <application>psql</application></para></listitem>
-<listitem><para>Correction de bogues corrompant les index dans /contrib/ltree
- (Teodor)</para></listitem>
-<listitem><para>Correction provenant du code de spinlock, version 7.4, pour
- améliorer les performances et le support des architectures 64 bits</para> </listitem>
-<listitem><para>Correction d'une fuite mémoire relative à SSL dans libpq</para> </listitem>
-<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
-<listitem><para>Adjustement des tests de regression suite aux modifications
- récentes des lois de l'US DST</para> </listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-15">
- <title>Version 7.3.15</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-05-23</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.14 incluant des
- correctifs pour des problèmes de sécurité extrêmement sérieux.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.15</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
-
- <para>
- Assurer une sécurité complète contre les attaques par injection SQL décrites
- dans CVE-2006-2313 et CVE-2006-2314 peuvent demander des modifications dans
- le code de l'application. Si vous avez des applications embarquant des
- chaînes non sûres dans des commandes SQL, vous devriez les examiner aussi
- rapidement que possible pour vous assurer qu'elles utilisent les techniques
- d'échappement recommandées. Dans la plupart des cas, les applications
- devraient utiliser des sous-routines fournies par des bibliothèques ou des
- pilotes (comme <function>PQescapeStringConn()</> de <application>libpq</>)
- pour réaliser l'échappement des chaînes plutôt que de se fier à un code
- <foreignphrase>ad hoc</>.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Modification du serveur pour qu'il rejette les caractères
-multi-octets mal codés dans tous les cas (Tatsuo, Tom)</para>
-<para>Bien que <productname>PostgreSQL</> va dans cette direction depuis un
-certain temps, les vérifications sont maintenant appliquées uniformément à
-tous les codages et toutes les entrées de texte. Ce sont maintenant des
-erreurs, et non plus des messages d'avertissement. Ce changement sert à se
-défendre contre les attaques à base d'injection SQL du type décrit dans
-CVE-2006-2313.
-</para></listitem>
-
-<listitem><para>Rejette des utilisations non sûres de <literal>\'</> dans les
-chaînes</para>
-<para>En tant que défense côté serveur contre les attaques de type injection
-SQL décrit dans CVE-2006-2314, le serveur accepte maintenant seulement
-<literal>''</> et plus <literal>\'</> comme représentation d'un guillemet simple
-ASCII dans des chaînes SQL. Par défaut, <literal>\'</> est rejetté seulement
-quand <varname>client_encoding</> est configuré avec un codage client seul
-(SJIS, BIG5, GBK, GB18030 ou UHC), qui est le scénario dans lequel l'injection
-SQL est possible. Un nouveau paramètre de configuration
-<varname>backslash_quote</> est disponible pour ajuster ce comportement si
-nécessaire. Notez qu'une sécurité complète contre
-CVE-2006-2314 pourrait nécessiter des modifications du côté client ; le but
-de <varname>backslash_quote</> est en partie de rendre évident que les clients
-non sécurisés sont non sécurisés.
-</para></listitem>
-
-<listitem><para>Modification des routines d'échappement de texte de
-<application>libpq</> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</> pour les
-problèmes de sécurité décrits dans CVE-2006-2313 et CVE-2006-2314. Les
-applications qui utilisent les connections concurrentes multiples de
-<productname>PostgreSQL</> devraient migrer vers <function>PQescapeStringConn()</>
-et <function>PQescapeByteaConn()</> pour s'assurer que l'échappement est
-réalisé correctement pour les paramétrages utilisés dans chaque connexion de
-base de données. Les applications qui font des échappements de chaînes
-<quote>à la main</> devraient être modifiées pour se fier à aux routines de la
-bibliothèques à la place.
-</para></listitem>
-
-<listitem><para>Correction de quelques fonctions de conversion de codage</para>
-<para><function>win1251_to_iso</>, <function>alt_to_iso</>,
-<function>euc_tw_to_big5</>, <function>euc_tw_to_mic</>,
-<function>mic_to_euc_tw</> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de
-<literal>\'</> dans les chaînes (Bruce, Jan)</para></listitem>
-
-<listitem><para>Correction du serveur pour qu'il utilise les paramètres
-personnalisés DH SSL correctement (Michael Fuhr)</para></listitem>
-
-<listitem><para>Correction de quelques pertes mémoires mineures</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-14">
- <title>Version 7.3.14</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-02-14</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la 7.3.13.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.14</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.13, voir les notes de sortie de la 7.3.13.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
-SESSION AUTHORIZATION</> (CVE-2006-0553)</para>
-<para>Un utilisateur non privilégié pourrait faire arrêter brutalement le
-processus serveur, résultant en un déni de service momentané pour les autres
-utilisateurs si le serveur a été compilé en activant les assertions (ce qui
-n'est pas la valeur par défaut).
-Merci à Akio Ishida pour nous avoir rapporté ce problème.
-</para></listitem>
-
-<listitem><para>Correction d'un bogue avec la logique de visibilité des
-lignes dans les lignes insérées soi-même (Tom)</para>
-<para>Dans des circonstances rares, une ligne insérée par la commande en cours
-pourrait déjà être vue comme valide alors qu'elle ne le devrait pas. Corrige
-un bogue ajoutée dans la version 7.3.11.
-</para></listitem>
-
-<listitem><para>Correction d'une condition qui pourrait amener une erreur de type
-<quote>le fichier existe déjà</> lors de la création d'un fichier pg_clog
-(Tom)</para></listitem>
-
-<listitem><para>Correction pour permettre la restauration de sauvegardes qui
-avaient des références croisées de schémas pour les opérateurs personnalisés
-(Tom)</para></listitem>
-
-<listitem><para>Correction de portabilité pour tester la présence de
-<function>finite</> et <function>isinf</> lors du configure (Tom)</para></listitem>
-
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-13">
- <title>Version 7.3.13</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2006-01-09</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la version 7.3.12.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.13</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
- De plus, vous aurez sûrement besoin de lancer la commande
- <command>REINDEX</> sur les index des colonnes de type texte après la
- mise à jour si vous êtes affectés par les problèmes de locale ou de
- <application>plperl</> décrits ci-dessous.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction de la comparaison de chaînes de caractères pour les
-locales qui considèrent des combinaisons différentes de caractères comme égales,
-comme le hongrois (Tom)</para>
-<para>Ceci pourrait nécessiter l'exécution de la commande <command>REINDEX</>
-pour corriger les index existants sur des colonnes de type texte.</para></listitem>
-
-<listitem><para>Configuration des variables d'environnement de la locale lors
-du démarrage de postmaster pour s'assurer que <application>plperl</> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</>. Sous ces conditions, toute
-utilisation de <application>plperl</> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</> pour corriger des
-index existant sur des colonnes de type texte si cela vous arrivait.
-</para></listitem>
-
-<listitem><para>Correction d'un ancien bogue dans strpos() et dans le gestion
-des expressions rationnelles de certains ensembles de caractères asiatiques
-rarement utilisés (Tatsuo)
-</para></listitem>
-
-<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</>,
-qui l'empêchait d'utiliser l'espace disponible des grains de sel (salt) pour les
-algorithmes MD5 et XDES (Marko Kreen, Solar Designer)</para>
-<para>Les grains de sel ne sont pas affectés pour Blowfish et le DES
-standard.</para></listitem>
-
-<listitem><para>Correction de <filename>/contrib/dblink</> pour renvoyer une
-erreur plutôt que de s'arrêter brutalement quand le nombre de colonnes spécifié
-est différent de ce qui est réellement renvoyé par la requête (Joe)</para></listitem>
-
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-12">
- <title>Version 7.3.12</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-12-12</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections sur la 7.3.11.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.12</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un cas extrême dans la gestion des traces des
-transactions</para>
-<para>Il existait une petite possibilité pour laquelle une opération
-d'entrée/sortie pouvait être initiée pour la mauvaise page, amenant à un
-échec Assert ou à une corruption de données.</para>
-</listitem>
-
-<listitem><para>Corrections sur <filename>/contrib/ltree</> (Teodor)</para></listitem>
-
-<listitem><para>Correction d'une vieille erreur sur les jointures externes</para>
-<para>Ce bogue a quelque fois causé une fausse erreur <quote>RIGHT JOIN is
-only supported with merge-joinable join conditions</>.</para></listitem>
-
-<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</>
-quand une table a été supprimée</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-11">
- <title>Version 7.3.11</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-10-04</simpara>
- </note>
-
- <para>
- Cette version contient quelques correctifs par rapport à la 7.3.10.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.11</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, si vous mettez à jour à partir d'une version
- antérieure à la 7.3.10, voir les notes de sortie de la 7.3.10.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <itemizedlist>
- <listitem><para>Correction d'une erreur qui permettait au <command>VACUUM</>
- de supprimer les chaînes <literal>ctid</> trop tôt, et ajout de
- vérification supplémentaire dans le code qui suit les liens
- <literal>ctid</></para>
- <para>Ceci corrige un vieux problème qui pourrait causer des arrêt
- brutaux dans de rares circonstances.</para></listitem>
- <listitem><para>Correction de <type>CHAR()</> pour ajouter le nom
- d'espaces spécifié lors de l'utilisation d'un ensemble de caractères
- multi-octets (Yoshiyuki Asaba)</para>
- <para>Dans les versions précédentes, l'ajout pour <type>CHAR()</> était
- incorrect car il ajoutait seulement le nombre d'octets spécifiés sans
- prendre en considération la façon dont les caractères étaient stockés.
- </para></listitem>
- <listitem><para>Correction des lignes manquantes dans les requêtes
- du type <literal>UPDATE a=... WHERE a...</> avec un index GiST sur la
- colonne <literal>a</></para></listitem>
- <listitem><para>Amélioration de la vérification pour les pages WAL
- partiellement écrites</para></listitem>
- <listitem><para>Amélioration de la solidité de la gestion des signaux
- lorsque SSL est activé</para></listitem>
- <listitem><para>Plusieurs corrections de perte mémoire</para></listitem>
- <listitem><para>Quelques améliorations sur la portabilité</para></listitem>
- <listitem><para>Correction de PL/PgSQL pour gérer correctement
- <literal>var := var</> quand la variable est passée par
- référence</para></listitem>
- </itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-10">
- <title>Version 7.3.10</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-05-09</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections sur la 7.3.9, dont des
- correctifs sur des trous de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.10</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- version 7.3.X. Néanmoins, c'est une façon possible de gérer un problème
- de sécurité significatif, qui a été trouvé dans le contenu initial des
- catalogues systèmes des versions 7.3.X. Une séquence
- sauvegarde/initdb/restauration utilisant le initdb de la 7.3.10 corrigera
- automatiquement ces problèmes.
- </para>
-
- <para>
- Le problème de sécurité le plus important est que les fonctions de conversion
- du codage des ensembles de caractères peuvent être appelées à partir de
- commandes SQL par des utilisateurs non pribilégiés alors que les fonctions
- n'ont pas été conçues pour un tel usage et ne sont pas sécurisées contre
- des choix rusés des arguments. Le correctif implique de modifier la liste
- déclarée des arguments de ces fonctions pour qu'elles ne soient plus
- appelées à partir des commandes SQL. (Ceci n'affecte pas leur utilisation
- normale par la machinerie de conversion du codage.)
- Il est fortement recommandé que toutes les installations corrigent ces
- erreurs, soit par un initdb soit en suivant les procédures de réparation
- données ci-dessous. Les erreurs permettent au moins à des utilisateurs
- non privilégiés de la base de données d'arrêter brutalement leur
- processus serveur et pourraient permettre à des utilisateurs non privilégiés
- de gagner les privilèges d'un superutilisateur.
- </para>
-
-
- <para>
- Si vous souhaitez ne pas lancer d'initdb, exécutez la procédure suivante à
- la place en tant que superutilisateur de la base de données :
-
-<programlisting>
-BEGIN;
-UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
-WHERE pronamespace = 11 AND pronargs = 5
- AND proargtypes[2] = 'cstring'::regtype;
--- La commande devrait rapporter qu'elle a mis à jour 90 lignes ;
--- si ce n'est pas le cas, annulez (rollback) et investiguez au lieu de valider !
-COMMIT;
-</programlisting>
- </para>
-
- <para>
- Les procédures ci-dessus doivent être exécutées pour <emphasis>chaque</>
- base de données d'une installation, ceci incluant <literal>template1</>
- et devant idéalement inclure aussi <literal>template0</>. Si vous ne
- corrigez pas les bases de données modèles, alors toute base de données
- créée par la suite contiendra les mêmes erreurs. <literal>template1</> peut
- être corrigé de la même façon que les autres bases de données alors que
- <literal>template0</> requiert des étapes supplémentaires. Tout d'abord,
- à partir de n'importe quel base de données
-<programlisting>
-UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
-</programlisting>
- Ensuite, connectez-vous à <literal>template0</> et effectuez les opérations
- de réparation. Faites
-<programlisting>
--- gelez de nouveau template0 :
-VACUUM FREEZE;
--- et protégez-contre toute nouvelle modification :
-UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
-</programlisting>
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Modification de la signature de la fonction de codage pour
-empêcher toute mauvaise utilisation</para></listitem>
-<listitem><para>Réparation d'une ancienne condition qui permettait à une
-transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
-UPDATE) légèrement plus tôt que dans les autres buts</para>
-<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
-incohérences apparents des données et visibles brièvement par les applications.
-</para></listitem>
-<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
-</para>
-<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
-tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
-faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
-d'Assert.
-</para></listitem>
-<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
-ZONE</></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
-sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise à
-jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
-</para></listitem>
-<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
-type <type>TIME WITH TIME ZONE</></para></listitem>
-<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
-négatives dans les valeurs <type>INTERVAL</></para>
-<para>Cette erreur est seulement survenue quand l'option de configuration
-<literal>--enable-integer-datetimes</> avait été utilisée.
-</para></listitem>
-<listitem><para>Vérification supplémentaires de dépassement de tampon dans
-plpgsql (Neil)</para></listitem>
-<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
-noms des déclencheurs contenant <literal>%</> (Neil)</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
-constructions d'OpenSSL (Marko Kreen)</para></listitem>
-<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</>
-</para></listitem>
-<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
-<type>RECORD</></para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-9">
- <title>Sortie 7.3.9</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-01-31</simpara>
- </note>
-
- <para>
- Cette version contient une grande variété de correctifs pour la 7.3.8,
- incluant certains spécifiques à des questions de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.9</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
- version 7.3.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Interdit l'utilisation de <command>LOAD</> aux utilisateurs
-standards</para>
-<para>
-Sur les plateformes qui exécuteront automatiquement les fonctions
-d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
-les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
-un code arbitraire par le serveur. Merci à NGS Software pour cette
-information.</para></listitem>
-<listitem><para>Vérifie que le créateur d'une fonction d'agrégat a le droit
-d'exécuter les fonctions de transition spécifiées</para>
-<para>
-Ce problème rendait possible le contournement de l'interdiction du droit
-EXECUTE sur une fonction.</para></listitem>
-<listitem><para>Correction de problèmes de sécurité et de problèmes sur
-les 64 bits dans contrib/intagg</para></listitem>
-<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
-dans contrib (Kris Jurka)</para></listitem>
-<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
-plpgsql dispose trop de paramètres (Neil)</para></listitem>
-<listitem><para>Correction d'erreurs de plannification pour les jointures
-complètes et externes à droite</para>
-<para>
-Le résultat de la jointure était faussement supposé trié de la même façon que
-l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
-mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
-mauvaises réponses.
-</para></listitem>
-<listitem><para>Correction de plperl pour les guillemets dans les
-champs</para></listitem>
-<listitem><para>Correction de l'affichage des intervalles négatifs pour les
-styles de date SQL et GERMAN</para></listitem>
-<listitem><para>Fait que age(timestamptz) calcule à partir du fuseau horaire
-et non pas de GMT</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-8">
- <title>Sortie 7.3.8</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-10-22</simpara>
- </note>
-
- <para>
- Cette version contient plusieurs corrections pour la version 7.3.7.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.8</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
- version 7.3.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
-d'astuce sur disque</para>
-<para>
-Sous quelques rares circonstances, ceci pourrait mener à des échecs
-<quote>could not access transaction status</>, qui se qualifient comme bogue
-pouvant entraîner des pertes de données.
-</para></listitem>
-<listitem><para>Assurance que la jointure externe hachée ne manque pas de
-lignes</para>
-<para>
-Les jointures gauches très importantes pourraient échouer à afficher les lignes
-du côté gauche sans correspondance en donnant seulement la distribution droite
-des données.
-</para></listitem>
-<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
-root</para>
-<para>
-Ceci est fait pour évacuer tout risque de problèmes de sécurité.
-</para></listitem>
-<listitem><para>Évite l'utilisation de fichiers temporaires dans
-<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
-<para>
-Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
-d'importance car il n'y a aucune raison pour que les utilisateurs autres que
-les développeurs utilisent ce script de toute façon.
-</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-7">
- <title>Sortie 7.3.7</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-08-16</simpara>
- </note>
-
- <para>
- Cette version contient une correction critique de la version 7.3.6 et
- quelques éléments mineurs.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.7</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent une
- version 7.3.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Empêche une perte possible de transactions validées lors d'un
-arrêt brutal</para>
-<para>
-À cause d'un verrouillage insuffisant entre la validation des transactions et
-des points de vérification, il était possible pour les transactions validées
-juste avant le point de vérification perdu, complètement ou partiellement, le
-plus récent après un arrêt brutal de la base de données et un redémarrage. Ceci
-est un bogue sérieux qui existait depuis <productname>PostgreSQL</productname>
-7.1.</para></listitem>
-<listitem><para>Suppression du traitement de mots asymétriques dans tsearch
-(Teodor)</para></listitem>
-<listitem><para>Qualifie les noms de fonction proprement avec le schéma lors de
-la sauvegarde d'un CAST</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-6">
- <title>Sortie 7.3.6</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-03-02</simpara>
- </note>
-
- <para>
- Cette version contient plusieurs correction de la version 7.3.5.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.6</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
- ceux qui utilisent une version 7.3.X.
- </para>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Revert erroneous changes in rule permissions checking</para>
-<para>A patch applied in 7.3.3 to fix a corner case in rule permissions checks
-turns out to have disabled rule-related permissions checks in many
-not-so-corner cases. This would for example allow users to insert into views
-they weren't supposed to have permission to insert into. We have therefore
-reverted the 7.3.3 patch. The original bug will be fixed in 8.0.
-</para></listitem>
-<listitem><para>Repair incorrect order of operations in
-GetNewTransactionId()</para>
-<para>
-This bug could result in failure under out-of-disk-space conditions, including
-inability to restart even after disk space is freed.
-</para></listitem>
-<listitem><para>Ensure configure selects -fno-strict-aliasing even when
-an external value for CFLAGS is supplied</para>
-<para>
-On some platforms, building with -fstrict-aliasing causes bugs.
-</para></listitem>
-<listitem><para>Make pg_restore handle 64-bit off_t correctly</para>
-<para>
-This bug prevented proper restoration from archive files exceeding 4Gb.
-</para></listitem>
-<listitem><para>Make contrib/dblink not assume that local and remote type OIDs
-match (Joe)</para></listitem>
-<listitem><para>Quote connectby()'s start_with argument properly
-(Joe)</para></listitem>
-<listitem><para>Don't crash when a rowtype argument to a plpgsql function is
-NULL</para></listitem>
-<listitem><para>Avoid generating invalid character encoding sequences in
-corner cases when planning LIKE operations</para></listitem>
-<listitem><para>Ensure text_position() cannot scan past end of source string
-in multibyte cases (Korea PostgreSQL Users' Group)</para></listitem>
-<listitem><para>Fix index optimization and selectivity estimates for LIKE
-operations on bytea columns (Joe)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-5">
- <title>Sortie 7.3.5</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-12-03</simpara>
- </note>
-
- <para>
- Cette version dispose de quelques corrections de la version 7.3.4.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.5</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> requise pour
- ceux qui utilisent une version 7.3.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Force zero_damaged_pages to be on during recovery from
-WAL</para></listitem>
-<listitem><para>Prevent some obscure cases of <quote>variable not in subplan
-target lists</quote></para></listitem>
-<listitem><para>Force stats processes to detach from shared memory, ensuring
-cleaner shutdown</para></listitem>
-<listitem><para>Make PQescapeBytea and byteaout consistent with each other
-(Joe)</para></listitem>
-<listitem><para>Added missing SPI_finish() calls to dblink's
-get_tuple_of_interest() (Joe)</para></listitem>
-<listitem><para>Fix for possible foreign key violation when rule rewrites INSERT
-(Jan)</para></listitem>
-<listitem><para>Support qualified type names in PL/Tcl's spi_prepare command
-(Jan)</para></listitem>
-<listitem><para>Make pg_dump handle a procedural language handler located in
-pg_catalog</para></listitem>
-<listitem><para>Make pg_dump handle cases where a custom opclass is in another
-schema</para></listitem>
-<listitem><para>Make pg_dump dump binary-compatible casts correctly
-(Jan)</para></listitem>
-<listitem><para>Fix insertion of expressions containing subqueries into rule
-bodies</para></listitem>
-<listitem><para>Fix incorrect argument processing in clusterdb script (Anand
-Ranganathan)</para></listitem>
-<listitem><para>Fix problems with dropped columns in plpython
-triggers</para></listitem>
-<listitem><para>Repair problems with to_char() reading past end of its input
-string (Karel)</para></listitem>
-<listitem><para>Fix GB18030 mapping errors (Tatsuo)</para></listitem>
-<listitem><para>Fix several problems with SSL error handling and asynchronous
-SSL I/O</para></listitem>
-<listitem><para>Remove ability to bind a list of values to a single parameter in
-JDBC
-(prevents possible SQL-injection attacks)</para></listitem>
-<listitem><para>Fix some errors in HAVE_INT64_TIMESTAMP code
-paths</para></listitem>
-<listitem><para>Fix corner case for btree search in parallel with first root
-page split</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-3-4">
- <title>Sortie 7.3.4</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-07-24</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.3.3.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.4</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux disposant d'une 7.3.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation des problèmes de conversion timestamp vers date avant
-2000</para></listitem>
-<listitem><para>Empêche la rare probabilité d'un échec de lancement du serveur
-(Tom)</para></listitem>
-<listitem><para>Correction de bogues dans la conversion interval vers time
-(Tom)</para></listitem>
-<listitem><para>Ajout des noms de contraintes dans quelques endroits de pg_dump
-(Rod)</para></listitem>
-<listitem><para>Amélioration des performances de fonctions avec beaucoup de
-paramètres (Tom)</para></listitem>
-<listitem><para>Correction du dépassement de tampon de to_ascii()
-(Tom)</para></listitem>
-<listitem><para>Empêche que la restauration des commentaires de la base de
-données envoie une erreur (Tom)</para></listitem>
-<listitem><para>Coutournement du strxfrm() bogué présent dans quelques
-versions de Solaris (Tom)</para></listitem>
-<listitem><para>Réalise un échappement propre des chaînes setObject() de
-jdbc pour améliorer la sécurité (Barry)</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-3-3">
- <title>Sortie 7.3.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-05-22</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.3.2.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.3.3</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.3.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation de calculs quelque fois incorrect de StartUpID après
-un crash</para></listitem>
-<listitem><para>Évite des lenteurs avec un grand nombre de déclencheurs
-déferrés dans une transaction (Stephan)</para></listitem>
-<listitem><para>Ne verrouille pas la ligne référencée quand
-<command>UPDATE</command> ne modifie pas la valeur de la clé étrangère
-(Jan)</para></listitem>
-<listitem><para>Utilisation de <command>-fPIC</command>, et non pas
-<command>-fpic</command>, sur Sparc (Tom Callaway)</para></listitem>
-<listitem><para>Réparation du manque de connaissance des schémas dans
-contrib/reindexdb</para></listitem>
-<listitem><para>Correction d'une erreur dans contrib/intarray pour le tableau
-résultat à zéro élément (Teodor)</para></listitem>
-<listitem><para>S'assure que le script createuser quitte avec control-C
-(Oliver)</para></listitem>
-<listitem><para>Correction d'erreurs quand le type d'une colonne supprimée a
-lui-même été supprimé</para></listitem>
-<listitem><para><command>CHECKPOINT</command> ne cause pas de panique sur la
-base de données sur à un échec sur des étapes non critiques</para></listitem>
-<listitem><para>Accepte 60 dans les champs secondes des valeurs de type
-timestamp, time, interval</para></listitem>
-<listitem><para>Lancement d'une note, pas d'une erreur, si la précision de
-<type>TIMESTAMP</type>, <type> TIME</type> ou <type>INTERVAL</type> est trop
-large</para></listitem>
-<listitem><para>Correction de la fonction de convertion
-<function>abstime-to-time</function> (la correction n'est pas appliquée sauf si
-vous lancez <application>initdb</application>)</para></listitem>
-<listitem><para>Correction de l'entrée <application>pg_proc</application> pour
-<type>timestampt_izone</type> (le correctif n'est pas appliqué sauf si vous
-lancez <application>initdb</application>)</para></listitem>
-<listitem><para>Fait que <function>EXTRACT(EPOCH FROM timestamp without time
-zone)</function> traite l'entrée comme une heure locale</para></listitem>
-<listitem><para><command>'now'::timestamptz</command> donne la mauvaise
-réponse si le fuseau horaire a changé précédemment lors de la
-transaction</para></listitem>
-<listitem><para>Le <envar>HAVE_INT64_TIMESTAMP</envar> pour time with
-timezone surcharge son entrée</para></listitem>
-<listitem><para>Accepte <command>GLOBAL TEMP/TEMPORARY</command> comme synonyme
-de <command>TEMPORARY</command></para></listitem>
-<listitem><para>Évite un mauvais de la vérification des droits du schéma
-dans les déclencheurs de clés étrangères</para></listitem>
-<listitem><para>Correction de bogues dans les déclencheurs de clés étrangères
-pour l'action <command>SET DEFAULT</command></para></listitem>
-<listitem><para>Correction d'une mauvaise vérification de
-<quote>time-qual</quote> dans la récupération des lignes pour
-<command>UPDATE</command> et <command>DELETE</command>
-triggers</para></listitem>
-<listitem><para>Les clauses de clés étrangères étaient analysées mais
-ignorées dans <command>ALTER TABLE ADD COLUMN</command></para></listitem>
-<listitem><para>Correction du problème du script createlang dans les cas où la
-fonction de gestion existe déjà</para></listitem>
-<listitem><para>Correction du mauvais comportement pour les tables sans colonne
-dans <application>pg_dump</application>, COPY, ANALYZE, ainsi qu'à d'autres
-emplacements</para></listitem>
-<listitem><para>Correction du mauvais comportement dans
-<function>func_error()</function> sur les noms de types contenant
-'%'</para></listitem>
-<listitem><para>Correction du mauvais comportement de
-<function>replace()</function> sur les chaînes contenant '%'</para></listitem>
-<listitem><para>Échec lorsque des expressions rationnelles
-contiennent certains caractères multi-octets</para></listitem>
-<listitem><para>Tient bien compte des <command>NULL</command> dans plus de cas
-pour les estimations de taille de jointures</para></listitem>
-<listitem><para>Évite un conflit avec la définition du système de la fonction
-ou macro <function>isblank()</function></para></listitem>
-<listitem><para>Correction de l'échec pour la convertion de valeurs de type
-point en EUC_TW (Tatsuo)</para></listitem>
-<listitem><para>Correction d'une récupération d'une erreur à partir des appels
-<function>SSL_read</function>/<function>SSL_write</function></para></listitem>
-<listitem><para>Don't do early constant-folding of type coercion
-expressions</para></listitem>
-<listitem><para>Valide les champs des en-têtes de page immédiatement après
-les avoir lu dans chaque page</para></listitem>
-<listitem><para>Réparation d'une mauvaise vérification pour les variables non
-groupées dans des jointures non nommées</para></listitem>
-<listitem><para>Correction d'un dépassement de tampon dans
-<function>to_ascii</function> (Guido Notari)</para></listitem>
-<listitem><para>Corrections de contrib/ltree (Teodor)</para></listitem>
-<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>) dans la
-détections de verrous bloqués sur les machines où char est non
-signé</para></listitem>
-<listitem><para>Évite de se trouver sans tampons dans des parcours d'index
-multiples (bogue introduit dans la 7.3)</para></listitem>
-<listitem><para>Correction des fonctions d'estimation de la sélectivité du
-planficateur pour gérer correctement les domaines</para></listitem>
-<listitem><para>Corrige le bogue d'allocation mémoire de
-<application>dbmirror</application> (Steven Singer)</para></listitem>
-<listitem><para>Empêche les boucles infinies dans
-<function>ln(numeric)</function> à cause d'une erreur
-d'arrondi</para></listitem>
-<listitem><para><command>GROUP BY</command> en plein confusion s'il y a
-plusieurs éléments GROUP BY identiques</para></listitem>
-<listitem><para>Correction d'un mauvais plan lorsque des
-<command>UPDATE</command>/<command>DELETE</command> héritées référencent une
-autre table héritée</para></listitem>
-<listitem><para>Empêche le groupement sur des index incomplets (partiel ou
-stockant uniquement les non NULL)</para></listitem>
-<listitem><para>Demande d'arrêt du service au bon moment s'il arrive au
-moment du lancement</para></listitem>
-<listitem><para>Correction des liens gauches dans les index temporaires
-(pourrait faire oublier des entrées à des parcours inverses)</para></listitem>
-<listitem><para>Correction d'une gestion incorrecte du paramétrage
-client_encoding dans postgresql.conf (Tatsuo)</para></listitem>
-<listitem><para>Correction d'un échec pour répondre à <command>pg_ctl stop -m
-fast</command> une fois que Async_NotifyHandler est lancé</para></listitem>
-<listitem><para>Correction de SPI dans les cas où la règle contient plusieurs
-instructions du même type</para></listitem>
-<listitem><para>Correction d'un problème avec la vérification pour un mauvais
-type de droit d'accès dans la requête de la règle</para></listitem>
-<listitem><para>Correction d'un problème avec <command>EXCEPT</command> dans
-<command>CREATE RULE</command></para></listitem>
-<listitem><para>Empêche des problèmes lors de la suppression de tables
-temporaires avec les colonnes de type serial</para></listitem>
-<listitem><para>Correction de l'échec replace_vars_with_subplan_refs dans les
-vues complexes</para></listitem>
-<listitem><para>Correction de la lenteur des expressions rationnelles dans
-les codes à un seul octet (Tatsuo)</para></listitem>
-<listitem><para>Permet la qualification de noms de type dans <command>CREATE
-CAST</command> et <command> DROP CAST</command></para></listitem>
-<listitem><para>Accepte <function>SETOF type[]</function>, qui avait
-été écrit auparavant <function>SETOF _type</function></para></listitem>
-<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>)
-<application>pg_dump</application> dans certains cas pour les langages de
-procédures</para></listitem>
-<listitem><para>Force le style de date ISO dans la sortie
-<application>pg_dump</application> pour des raisons de portabilité
-(Oliver)</para></listitem>
-<listitem><para><application>pg_dump</application> échouait lors de la
-gestion d'une erreur renvoyée par <function>lo_read</function> (Oleg
-Drokin)</para></listitem>
-<listitem><para><application>pg_dumpall</application> échouait avec les
-groupes sans membres (Nick Eskelinen)</para></listitem>
-<listitem><para><application>pg_dumpall</application> échouait lors de la
-reconnaissance de l'option</para></listitem>
-<listitem><para>pg_restore échouait lors de la restauration des blobs si -X
-disable-triggers est spécifié</para></listitem>
-<listitem><para>Réparation de la perte mémoire entre fonctions dans
-plpgsql</para></listitem>
-<listitem><para>La commande <command>elog</command> de pltcl s'arrêtait
-brutalement si des mauvais paramètres étaient soumis (Ian
-Harding)</para></listitem>
-<listitem><para>plpython utilisait de mauvaises valeurs
-de <envar>atttypmod</envar> (Brad McLean)</para></listitem>
-<listitem><para>Correction d'une mauvaise mise entre guillemets des valeurs
-booléennes dans l'interface Python (D'Arcy)</para></listitem>
-<listitem><para>Ajout de la méthode <function>addDataType()</function> pour
-l'interface PGConnection de JDBC</para></listitem>
-<listitem><para>Correction de nombreux problèmes avec les ensembles de
-résultats en lecture/écriture pour JDBC (Shawn Green)</para></listitem>
-<listitem><para>Correction de nombreux problèmes avec DatabaseMetaData pour JDBC
-(Kris Jurka, Peter Royal)</para></listitem>
-<listitem><para>Correction d'un problème avec l'analyse des ACL de table dans
-JDBC</para></listitem>
-<listitem><para>Meilleur message d'erreur pour les problèmes de
-conversions des ensembles de caractères dans JDBC</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-3-2">
- <title>Sortie 7.3.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-02-04</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.3.1.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.2</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.3.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Restauration de la création de la colonne OID dans CREATE
-TABLE AS / SELECT INTO</para></listitem>
-<listitem><para>Correction de l'arrêt brutal <application>pg_dump</> lors de la
-sauvegarde des vues possédant des commentaires</para></listitem>
-<listitem><para>Sauvegarde proprement les contraintes DEFERRABLE/INITIALLY
-DEFERRED</para></listitem>
-<listitem><para>Correction d'UPDATE lors la numérotation des colonnes de
-tables enfants diffère de celle du parent</para></listitem>
-<listitem><para>Augmentation de la valeur par défaut de
-max_fsm_relations</para></listitem>
-<listitem><para>Correction d'un problème lors de la récupération en sens inverse
-ddans un curseur pour une requête à une seule ligne</para></listitem>
-<listitem><para>Fait que la récupération (<quote>fetch</quote>) inverse
-fonctionne correctement avec le curseur sur une requête SELECT
-DISTINCT</para></listitem>
-<listitem><para>Correction des problèmes lors du chargement de fichiers
-<application>pg_dump</> contenant une utilisation de
-contrib/lo</para></listitem>
-<listitem><para>Correction d'un problème avec les noms utilisateurs entièrement
-en chiffres</para></listitem>
-<listitem><para>Correction d'une probable perte de mémoire et d'un arrêt brutal
-lors de la déconnexion de libpgtcl</para></listitem>
-<listitem><para>Fait que la commande spi_execute de plpython gère correctement
-les NULL (Andrew Bosma)</para></listitem>
-<listitem><para>Ajuste une erreur plpython rapportant que ses tests de
-régression ont encore réussi</para></listitem>
-<listitem><para>Fonctionne avec bison 1.875</para></listitem>
-<listitem><para>Bonne gestion des noms comprenant des majuscule et des minus
-cules dans %type de plpgsql (Neil)</para></listitem>
-<listitem><para>Corrige un arrêt brutal (<quote>core dump</quote>) dans pltcl
-lors de l'exécution d'une requête réécrite par une règle</para></listitem>
-<listitem><para>Réparation des dépassements d'indices de tableau (suivant le
-rapport de Yichen Xie)</para></listitem>
-<listitem><para>Réduction de MAX_TIME_PRECISION, passant de 13 à 10 dans le cas
-des nombres à virgule flottante</para></listitem>
-<listitem><para>Gère correctement la casse des noms de variables suivant la
-configuration de la base de données et de l'utilisateur</para></listitem>
-<listitem><para>Correction de l'arrêt brutal (<quote>coredump</quote>) dans
-RETURN NEXT de plpgsql lorsqu'un SELECT into record ne renvoie aucune
-ligne</para></listitem>
-<listitem><para>Correction d'une utilisation obsolète de pg_type.typprtlen dans
-l'interface client python</para></listitem>
-<listitem><para>Bonne gestions des secondes à fraction dans le type timestamp
-du pilote JDBC</para></listitem>
-<listitem><para>Amélioration des performances de getImportedKeys() dans
-JDBC</para></listitem>
-<listitem><para>Fait que les liens symboliques de la bibliothèque
-partagée fonctionnent en standard dans HPUX (Giles)</para></listitem>
-<listitem><para>Réparation d'un comportement d'arrondi inconsistent pour
-timestamp, time, interval</para></listitem>
-<listitem><para>Correction sur la négotiation SSL (Nathan
-Mueller)</para></listitem>
-<listitem><para>Fait que la fonctionnalité ~/.pgpass de libpq fonctionne
-lors de la connexion avec PQconnectDB</para></listitem>
-<listitem><para>Mise à jour de my2pg, ora2pg</para></listitem>
-<listitem><para>Mise à jour de traduction</para></listitem>
-<listitem><para>Ajout de conversions entre les types lo et oid dans
-contrib/lo</para></listitem>
-<listitem><para>Le code fastpath vérifie maintenant les droits d'appels de
-fonctions</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-3-1">
- <title>Sortie 7.3.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-12-18</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.3.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.3.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.3. Néanmoins, il devrait être noté que la
- principale bibliothèque d'interface de
-<productname>PostgreSQL</productname>,
- libpq, a un nouveau numéro majeur de version pour cette sortie, ce qui
- pourrait nécessiter la recompilation de code client dans certains cas.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction d'un arrêt brutal (<quote>core dump</quote>) de
-COPY TO lorsque le codage client/serveur ne correspond pas
-(Tom)</para></listitem>
-<listitem><para>Autorise <application>pg_dump</> à fonctionner avec les serveurs
-pré-7.2 (Philip)</para></listitem>
-<listitem><para>Corrections de contrib/adddepend (Tom)</para></listitem>
-<listitem><para>Correction d'un problème avec la suppression de paramétrages par
-utilisateur ou par base de données (Tom)</para></listitem>
-<listitem><para>Correction de contrib/vacuumlo (Tom)</para></listitem>
-<listitem><para>Autorise le cryptage 'password' même lorsque pg_shadow contient
-des mots de passe MD5 (Bruce)</para></listitem>
-<listitem><para>Correction de contrib/dbmirror (Steven Singer)</para></listitem>
-<listitem><para>Corrections sur l'optimiseur (Tom)</para></listitem>
-<listitem><para>Corrections de contrib/tsearch (Teodor Sigaev,
-Magnus)</para></listitem>
-<listitem><para>Permet aux noms de locale d'être saisis avec des majuscules et
-minuscules mélangées (Nicolai Tufar)</para></listitem>
-<listitem><para>Incrémente le numéro de version majeure de la bibliothèque libpq
-(Bruce)</para></listitem>
-<listitem><para>Corrections des rapports d'erreur de pg_hba.conf (Bruce,
-Neil)</para></listitem>
-<listitem><para>Ajout de SCO Openserver 5.0.4 comme plateforme supporté
-(Bruce)</para></listitem>
-<listitem><para>Empêche EXPLAIN d'arrêter brutalement le serveur
-(Tom)</para></listitem>
-<listitem><para>Corrections sur SSL (Nathan Mueller)</para></listitem>
-<listitem><para>Empêche la création de colonnes composites via ALTER TABLE
-(Tom)</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-3">
- <title>Sortie 7.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-11-27</simpara>
- </note>
-
- <sect2>
- <title>Aperçu</title>
-
- <para>
- Modifications majeures dans cette version :
- </para>
-
- <variablelist>
- <varlistentry>
- <term>Schémas</term>
- <listitem>
- <para>
- Les schémas permettent aux utilisateurs de créer des objets dans des
- espaces de noms séparés, donc deux personnes ou applications peuvent
- avoir des tables de même nom. Il existe aussi un schéma public pour les
- tables partagées. La création de table/index peut être restreinte en
- supprimant les droits du le schéma public.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Suppression de colonne</term>
- <listitem>
- <para>
- <productname>PostgreSQL</productname> supporte maintenant la
- fonctionnalité <literal>ALTER TABLE
- ... DROP COLUMN</literal>.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Fonctions de tables</term>
- <listitem>
- <para>
- Les fonctions renvoyant plusieurs lignes et/ou plusieurs colonnes sont
- maintenant plus facile à utiliser qu'auparavant. Vous pouvez appeler
- une <quote>fonction de table</quote> dans la clause
- <literal>FROM</literal> d'un <literal>SELECT</literal>, traitant sa
- sortie comme une table. De plus, les fonctions
- <application>PL/pgSQL</application> peuvent maintenant renvoyer des
- ensembles.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Requêtes préparées</term>
- <listitem>
- <para>
- <productname>PostgreSQL</productname> supporte maintenant les requêtes
- préparées pour des performances améliorées.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Récupération des dépendances</term>
- <listitem>
- <para>
- <productname>PostgreSQL</productname> enregistre maintenant les
- dépendances de objets, ce qui
- permet des améliorations dans de nombreux domaines. Les instructions
- <command>DROP</command> prennent maintenant soit <literal>CASCADE</>
- soit <literal>RESTRICT</> pour contrôler si les objets dépendant sont
- aussi supprimés.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Droits</term>
- <listitem>
- <para>
- Les fonctions et langages de procédures disposent maintenant de droits
- et les fonctions peuvent être définies pour être exécutées suivant les
- droits de leur créateur.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Internationalisation</term>
- <listitem>
- <para>
- Le support du multioctet et des locales est maintenant activé en
- permanence.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Traces</term>
- <listitem>
- <para>
- Une variété d'options de traces a été améliorée.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Interfaces</term>
- <listitem>
- <para>
- Un grand nombre d'interfaces a été déplacé dans <ulink
- url="http://gborg.postgresql.org">http://gborg.postgresql.org</> où ils
- peuvent être développés et mis à disposition indépendamment.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Fonctions/Identifieurs</term>
- <listitem>
- <para>
- Par défaut, les fonctions prennent maintenant jusqu'à 32 paramètres et
- les identifiants peuvent être d'une taille maximum de 63 octets. De
- plus, <literal>OPAQUE</> est maintenant obsolète : il existe des
- <quote>pseudo-types de données</> pour représenter chacune des
- significations précédentes de <literal>OPAQUE</> dans l'argument et les
- types de résultat de la fonction.
- </para>
- </listitem>
- </varlistentry>
-
- </variablelist>
- </sect2>
-
- <sect2>
- <title>Migration vers la version 7.3</title>
-
- <para>
- Une sauvegarde/restauration utilisant <application>pg_dump</> est requise
- pour ceux souhaitant migrer leur données à partir d'une version
- précédente. S i votre application examine les catalogues systèmes, des
- modifications supplémentaires seront requises à cause de l'introduction des
- schémas dans la version 7.3 ; pour plus d'informations, voir :
- <ulink url="http://developer.postgresql.org/~momjian/upgrade_tips_7.3"></>.
- </para>
-
- <para>
- Observez les incompatibilités suivantes :
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- Les clients avant la 6.3 ne sont plus supportés.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>pg_hba.conf</filename> a maintenant une colonne pour le nom
- de l'utilisateur et pour des fonctionnalités supplémentaires. Les
- fichiers existants doivent être ajustés.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Quelques paramètres de trace de <filename>postgresql.conf</filename> ont
- été renommés.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>LIMIT #,#</literal> a été désactivé ; utilisez
- <literal>LIMIT # OFFSET #</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les instructions <command>INSERT</command> avec des listes de colonnes
- doivent spécifier une valeur pour chaque colonne spécifiée. Par exemple,
- <literal>INSERT INTO tab (col1, col2) VALUES ('val1')</literal> est
- maintenant non valide. Il est toujours permis de fournir moins de
- colonnes qu'attendu si l'<command>INSERT</command> n'a pas de liste de
- colonnes.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les colonnes de type <type>serial</type> ne sont plus automatiquement
- <literal>UNIQUE</> ; du coup, un index ne sera pas automatiquement
- créé.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Une commande <command>SET</command> à l'intérieur d'une transaction est
- maintenant annulée
- </para>
- </listitem>
-
- <listitem>
- <para>
- <command>COPY</command> ne considère plus que les colonnes de fin
- manquantes doivent être NULL. Toutes les colonnes doivent être
- spécifiées. (Néanmoins, vous pouvez avoir un effet similaire en
- spécifiant une liste de colonnes dans la commande
- <command>COPY</command>.)
- </para>
- </listitem>
-
- <listitem>
- <para>
- Le type de données <type>timestamp</type> est maintenant équivalent à
- <type>timestamp without time zone</type>, au lieu de
- <type>timestamp with time zone</type>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les bases de données, avant la version 7.3 et chargées dans cette
- version, n'auront pas les dépendances du nouvel objet pour les colonnes
- de type <type>serial</type>, les contraintes uniques et les clés
- étrangères. Voir le répertoire <filename>contrib/adddepend/</filename>
- pour une description détaillée et un script qui ajoute ces dépendances.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Une chaîne vide (<literal>''</literal>) n'est plus permise comme entrée
- dans un champ d'entier. Auparavant, c'était silencieusement interprété
- comme 0.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <sect3>
- <title>Opérations du serveur</title>
-<itemizedlist>
-<listitem><para>Ajout de la vue pg_locks pour afficher les verrous
-(Neil)</para></listitem>
-<listitem><para>Corrections de sécurité pour l'allocation en mémoire
-de la négotiation des mots de passe (Neil)</para></listitem>
-<listitem><para>Suppression du support pour le protocole version 0 FE/BE
-(<productname>PostgreSQL</productname> 6.2 et précédent) (Tom)</para></listitem>
-<listitem><para>Réservation des quelques derniers emplacements du serveur pour
-les superutilisateurs, ajout du paramètre superuser_reserved_connections pour
-contrôler ceci (Nigel J. Andrews)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Performance</title>
-<itemizedlist>
-<listitem><para>Amélioration du lancement en appelant localtime() seulement une
-fois (Tom)</para></listitem>
-<listitem><para>Mise en cache des informations du catalogue système dans
-des fichiers plats pour un lancement plus rapide (Tom)</para></listitem>
-<listitem><para>Amélioration du cache pour les informations des index
-(Tom)</para></listitem>
-<listitem><para>Améliorations de l'optimiseur (Tom, Fernando
-Nasser)</para></listitem>
-<listitem><para>Les caches catalog stockent maintenant les recherches échoués
-(Tom)</para></listitem>
-<listitem><para>Amélioration des fonctions de découpage (Neil)</para></listitem>
-<listitem><para>Amélioration de la performance de la mise en jeton des requêtes
-et de la gestion du réseau (Peter)</para></listitem>
-<listitem><para>Amélioration de la rapidité pour la restauration des objets
-larges (Mario Weilguni)</para></listitem>
-<listitem><para>Marquage des entrées d'index expirés lors de la première re
-chercher, sauvant ainsi quelques récupérations d'en-tête (Tom)</para></listitem>
-<listitem><para>Évite un remplissage de bitmap NULL excessif (Manfred
-Koizar)</para></listitem>
-<listitem><para>Ajout du qsort() pour Solaris sous licence BSD, pour les
-performances (Bruce)</para></listitem>
-<listitem><para>Réduction du coût par ligne des quatre octets (Manfred
-Koizar)</para></listitem>
-<listitem><para>Correction d'un bogue dans l'optimiseur GEQO (Neil
-Conway)</para></listitem>
-<listitem><para>Utiliser WITHOUT OID fait réellement gagner quatre octets par
-ligne (Manfred Koizar)</para></listitem>
-<listitem><para>Ajout de la variable default_statistics_target pour spécifier
-des cibles ANALYZE (Neil)</para></listitem>
-<listitem><para>Utilisation du tampon cache local pour les tables temporaires
-pour qu'il n'y ait pas de surcharge des WAL (Tom)</para></listitem>
-<listitem><para>Amélioration des performances de la carte des espaces libres sur
-de grandes tables (Stephen Marshall, Tom)</para></listitem>
-<listitem><para>Amélioration de la concurrence des écritures dans les WAL
-(Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Droits</title>
-<itemizedlist>
-<listitem><para>Ajout de droits sur les fonctions et langages de procédure
-(Peter)</para></listitem>
-<listitem><para>Ajout de OWNER à CREATE DATABASE pour que les superutilisateurs
-puissent créer des bases de données pour les utilisateurs non privilégiés (Gavin
-Sherry, Tom)</para></listitem>
-<listitem><para>Ajout des nouveaux bits de droits EXECUTE et USAGE
-(Tom)</para></listitem>
-<listitem><para>Ajout de SET SESSION AUTHORIZATION DEFAULT et RESET SESSION
-AUTHORIZATION (Tom)</para></listitem>
-<listitem><para>Permet que les fonctions soient exécutées avec les droits du
-propriétaire de la fonction (Peter)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Configuration du serveur</title>
-<itemizedlist>
-<listitem><para>Les messages de traces du serveur sont maintenant marqués avec
-LOG, et non pas DEBUG (Bruce)</para></listitem>
-<listitem><para>Ajout d'une colonne utilisateur à pg_hba.conf
-(Bruce)</para></listitem>
-<listitem><para>log_connections affiche deux lignes dans le journal des traces
-(Tom)</para></listitem>
-<listitem><para>Suppression de debug_level dans postgresql.conf, maintenant
-server_min_messages (Bruce)</para></listitem>
-<listitem><para>Nouvelle commande ALTER DATABASE/USER ... SET pour
-l'initialisation de la base de données par utilisateur (Peter)</para></listitem>
-<listitem><para>Nouveaux paramètres server_min_messages et client_min_messages
-pour contrôler quels messages sont envoyés au journal des traces du serveur ou
-aux applications clientes (Bruce)</para></listitem>
-<listitem><para>Permet à pg_hba.conf de spécifier des listes d'utilisateurs
-/bases de données séparées par des virgules, des noms de groupe avant le
-signe + en suffixe et des noms de fichiers avec un @ en préfixe
-(Bruce)</para></listitem>
-<listitem><para>Suppression de la capacité d'un deuxième fichier de mot
- de passe et de l'outil pg_password (Bruce)</para></listitem>
-<listitem><para>Ajout d'une variable db_user_namespace pour les noms
-utilisateurs locaux à la base de données (Bruce)</para></listitem>
-<listitem><para>Amélioration de SSL (Bear Giles)</para></listitem>
-<listitem><para>Les mots de passe sont cryptés par défaut
-(Bruce)</para></listitem>
-<listitem><para>Autorise la réinitialisation de pg_statistics par l'appel de
-pg_stat_reset() (Christopher)</para></listitem>
-<listitem><para>Ajout du paramètre log_duration (Bruce)</para></listitem>
-<listitem><para>Renommage de debug_print_query en log_statement
-(Bruce)</para></listitem>
-<listitem><para>Renommage de show_query_stats en show_statement_stats
-(Bruce)</para></listitem>
-<listitem><para>Ajout de param log_min_error_statement pour afficher les
-commandes à tracer en cas d'erreur (Gavin)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Requêtes</title>
-<itemizedlist>
-<listitem><para>Les curseurs ne sont pas sensibles, ce qui signifie que
-leur contenu ne change pas (Tom)</para></listitem>
-<listitem><para>Désactivation de la syntaxe LIMIT #,# ; maintenant
-seul LIMIT # OFFSET # est supporté (Bruce)</para></listitem>
-<listitem><para>Augmentation de la taille de l'identifiant à 63 (Neil,
-Bruce)</para></listitem>
-<listitem><para>Corrections d'UNION pour assembler trois ou plus de trois
-colonnes de taille différente (Tom)</para></listitem>
-<listitem><para>Ajout du mot clé DEFAULT pour INSERT, par exemple INSERT ...
-(..., DEFAULT, ...) (Rod)</para></listitem>
-<listitem><para>Les vues peuvent avoir des valeurs par défaut en utilisant ALTER
-COLUMN ... SET DEFAULT (Neil)</para></listitem>
-<listitem><para>Échec en insertion (INSERT) des des listes de colonnes ne co
-rrespondant pas à toutes les valeurs de colonnes, par exemple INSERT INTO tab
-(col1, col2) VALUES ('val1');
-(Rod)</para></listitem>
-<listitem><para>Correction pour les alias de jointure (Tom)</para></listitem>
-<listitem><para>Correction des FULL OUTER JOIN (Tom)</para></listitem>
-<listitem><para>Amélioration des rapports d'identifiant invalide et
-d'emplacement (Tom, Gavin)</para></listitem>
-<listitem><para>Correction d'OPEN cursor(args) (Tom)</para></listitem>
-<listitem><para>Les 'ctid' peuvent être utilisées dans une vue et
-currtid(viewname) (Hiroshi)</para></listitem>
-<listitem><para>Correction pour CREATE TABLE AS avec UNION
-(Tom)</para></listitem>
-<listitem><para>Amélioration de la syntaxe SQL99 (Thomas)</para></listitem>
-<listitem><para>Ajout de la variable statement_timeout pour annuler des requêtes
-(Bruce)</para></listitem>
-<listitem><para>Autorisation des requêtes préparées avec PREPARE/EXECUTE
-(Neil)</para></listitem>
-<listitem><para>FOR UPDATE peut apparaître après LIMIT/OFFSET
-(Bruce)</para></listitem>
-<listitem><para>Ajout d'une variable autocommit (Tom, David Van
-Wie)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Manipulation d'objets</title>
-<itemizedlist>
-<listitem><para>Rend optionnel les signes d'égalité dans CREATE DATABASE (Gavin
-Sherry)</para></listitem>
-<listitem><para>Fait que ALTER TABLE OWNER change aussi le propriétaire de
-l'index (Neil)</para></listitem>
-<listitem><para>Le nouveau ALTER TABLE nomtable ALTER COLUMN nomcolonne SET
-STORAGE contrôle le stockage de TOAST, la compression (John
-Gray)</para></listitem>
-<listitem><para>Ajout du support du schéma, CREATE/DROP SCHEMA
-(Tom)</para></listitem>
-<listitem><para>Création d'un schéma pour les tables temporaires
-(Tom)</para></listitem>
-<listitem><para>Ajout de la variable search_path pour la recherche de schémas
-(Tom)</para></listitem>
-<listitem><para>Ajout de ALTER TABLE SET/DROP NOT NULL
-(Christopher)</para></listitem>
-<listitem><para>Nouveaux niveaux de volatilité CREATE FUNCTION
-(Tom)</para></listitem>
-<listitem><para>Rend les noms de règles uniques seulement par table
-(Tom)</para></listitem>
-<listitem><para>Ajout d'une clause 'ON tablename' à DROP RULE et à
-COMMENT ON RULE
-(Tom)</para></listitem>
-<listitem><para>Ajout de ALTER TRIGGER RENAME (Joe)</para></listitem>
-<listitem><para>Nouvelles fonctions current_schema() et current_schemas()
-(Tom)</para></listitem>
-<listitem><para>Autorise les fonctions à renvoyer plusieurs lignes (fonctions de
-table) (Joe)</para></listitem>
-<listitem><para>Rend WITH optionnel dans CREATE DATABASE pour rester
-consistant (Bruce)</para></listitem>
-<listitem><para>Ajout de la conservation des dépendances d'objets (Rod,
-Tom)</para></listitem>
-<listitem><para>Ajout de RESTRICT/CASCADE aux commandes DROP
-(Rod)</para></listitem>
-<listitem><para>Ajout de ALTER TABLE DROP pour les cas sans CHECK CONSTRAINT
-(Rod)</para></listitem>
-<listitem><para>Destruction automatique de la séquence lors du DROP d'une table
-avec SERIAL (Rod)</para></listitem>
-<listitem><para>Empêche la suppression d'une colonne si celle-ci est utilisée
-par une clé étrangère (Rod)</para></listitem>
-<listitem><para>Supprime automatiquement les contraintes/fonctions lorsqu'un
-objet est supprimé (Rod)</para></listitem>
-<listitem><para>Ajout de CREATE/DROP OPERATOR CLASS (Bill Studenmund,
-Tom)</para></listitem>
-<listitem><para>Ajout de ALTER TABLE DROP COLUMN (Christopher, Tom,
-Hiroshi)</para></listitem>
-<listitem><para>Empêche les colonnes héritées d'être supprimées ou renommées
-(Alvaro Herrera)</para></listitem>
-<listitem><para>Correction des contraintes de clés étrangères pour ne pas avoir
-d'erreurs sur les états intermédiaires de la base de données
-(Stephan)</para></listitem>
-<listitem><para>Propagation du renommage de colonne ou de table pour les
-contraintes de clés étrangères</para></listitem>
-<listitem><para>Ajout de CREATE OR REPLACE VIEW (Gavin, Neil,
-Tom)</para></listitem>
-<listitem><para>Ajout de CREATE OR REPLACE RULE (Gavin, Neil,
-Tom)</para></listitem>
-<listitem><para>Fait que les règles s'exécutent dans l'ordre alphabétique,
-renvoyant des valeurs plus prévisibles (Tom)</para></listitem>
-<listitem><para>Les déclencheurs sont maintenant lancés dans l'ordre
-alphabétique (Tom)</para></listitem>
-<listitem><para>Ajout de /contrib/adddepend pour gérer les dépendances d'objets
-pre-7.3 (Rod)</para></listitem>
-<listitem><para>Permet une meilleure conversion lors de l'insertion et de la
-mise à jour des valeurs (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Commandes utilitaires</title>
-<itemizedlist>
-<listitem><para>Fait que COPY TO affiche les retours chariots et retours à la
-ligne avec \r et \n (Tom)</para></listitem>
-<listitem><para>Permet à DELIMITER dans COPY FROM d'être propre sur huit bits
-(Tatsuo)</para></listitem>
-<listitem><para>Fait que <application>pg_dump</> utilise ALTER TABLE ADD PRIMARY
-KEY pour des raisons de performance (Neil)</para></listitem>
-<listitem><para>Désactivation des crochets dans les règles à plusieurs
-instructions (Bruce)</para></listitem>
-<listitem><para>Désactivation de l'appel du VACUUM à l'intérieur d'une fonction
-(Bruce)</para></listitem>
-<listitem><para>Autorise dropdb et d'autres scripts à utiliser des identifiants
-avec des espaces (Bruce)</para></listitem>
-<listitem><para>Restreint les modifications de commentaire de la base de données
-à la base de données courante</para></listitem>
-<listitem><para>Autorise les commentaires sur les opérateurs, indépendent de la
-fonction sous-jacente (Rod)</para></listitem>
-<listitem><para>Annule les commandes SET dans les transactions annulées
-(Tom)</para></listitem>
-<listitem><para>EXPLAIN s'affiche maintenant comme une requête
-(Tom)</para></listitem>
-<listitem><para>Affichage des expressions de condition et tri des clés dans
-EXPLAIN (Tom)</para></listitem>
-<listitem><para>Ajout de 'SET LOCAL var = valeur' pour initialiser
-les variables pour une seule transaction (Tom)</para></listitem>
-<listitem><para>Autorise le lancement d'ANALYZE dans une transaction
-(Bruce)</para></listitem>
-<listitem><para>Amélioration de la syntaxe de COPY en utilisant les nouvelles
-clauses WITH, conservant ainsi la compatibilité ascendante
-(Bruce)</para></listitem>
-<listitem><para>Correction de <application>pg_dump</> pour afficher de façon
-consistante les balises dans les sauvegardes non ASCII (Bruce)</para></listitem>
-<listitem><para>Fait que les contraintes de clés étrangères dans le fichier de
-sauvegarde (Rod)</para></listitem>
-<listitem><para>Ajout de COMMENT ON CONSTRAINT (Rod)</para></listitem>
-<listitem><para>Autorise COPY TO/FROM à spécifier les noms de colonnes (Brent
-Verner)</para></listitem>
-<listitem><para>Sauvegarde les contraintes UNIQUE et PRIMARY KEY comme
-ALTER TABLE (Rod)</para></listitem>
-<listitem><para>SHOW s'affiche comme le résultat d'une requête
-(Joe)</para></listitem>
-<listitem><para>Génération d'un échec sur les lignes courtes de COPY plutôt que
-de rajouter des NULL (Neil)</para></listitem>
-<listitem><para>Correction de CLUSTER pour préserver tous les attributs des
-tables (Alvaro Herrera)</para></listitem>
-<listitem><para>Nouvelle table pg_settings pour visualiser/modifier les
-paramétrages GUC (Joe)</para></listitem>
-<listitem><para>Ajout de la mise entre guillemets intelligente, amélioration
-sur la portabilité de la sortie de <application>pg_dump</>
-(Peter)</para></listitem>
-<listitem><para>Sauvegarde les colonnes serial comme SERIAL
-(Tom)</para></listitem>
-<listitem><para>Activation du support des gros fichiers, >2 Go pour
-<application>pg_dump</> (Peter, Philip Warner, Bruce)</para></listitem>
-<listitem><para>Interdit TRUNCATE sur les tables qui sont impliquées dans des
-contraintes référentielles (Rod)</para></listitem>
-<listitem><para>Fait que TRUNCATE tronque aussi automatiquement la table
-toast de la relation (Tom)</para></listitem>
-<listitem><para>Ajout de l'outil clusterdb qui groupera automatiquement
-une base de données entière en se basant sur les opérations CLUSTER précédentes
-(Alvaro Herrera)</para></listitem>
-<listitem><para>Revue de pg_dumpall (Peter)</para></listitem>
-<listitem><para>Autorise le REINDEX des tables TOAST (Tom)</para></listitem>
-<listitem><para>Implémentation de START TRANSACTION, suivant SQL99
-(Neil)</para></listitem>
-<listitem><para>Correction des rares corruptions d'index lorsqu'une division
-de page affecte la suppression en masse (Tom)</para></listitem>
-<listitem><para>Correction de l'héritage sur ALTER TABLE ... ADD COLUMN (Alvaro
-Herrera)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Types de données et fonctions</title>
-<itemizedlist>
-<listitem><para>Correction pour que factorial(0) renvoie 1
-(Bruce)</para></listitem>
-<listitem><para>Améliorations des types date/time/timezone
-(Thomas)</para></listitem>
-<listitem><para>Correction pour l'extraction d'un morceau de tableau
-(Tom)</para></listitem>
-<listitem><para>Correction de extract/date_part pour rapporter les bonnes
-microsecondes sur des valeurs de type timestamp (Tatsuo)</para></listitem>
-<listitem><para>Autorise text_substr() et bytea_substr() à lire des valeurs
-TOAST de façon plus efficace (John Gray)</para></listitem>
-<listitem><para>Ajout du support du domaine (Rod)</para></listitem>
-<listitem><para>Fait que WITHOUT TIME ZONE est la valeur par défaut des
-types de données TIMESTAMP et TIME data (Thomas)</para></listitem>
-<listitem><para>Autorise un autre schéma de stockage des entiers sur 64 bits
-pour les types date/time en utilisant --enable-integer-datetimes dans configure
-(Thomas)</para></listitem>
-<listitem><para>Fait que timezone(timestamptz) renvoie timestamp plutôt que
-string (Thomas)</para></listitem>
-<listitem><para>Autorise les secondes fractionnées dans les types date/time
-pour les dates datant de l'an 1 avant JC (Thomas)</para></listitem>
-<listitem><para>Limite les types de données timestamp à six places décimales
-pour la précision (Thomas)</para></listitem>
-<listitem><para>Modification des fonctions de conversion timezone de timetz() à
-timezone() (Thomas)</para></listitem>
-<listitem><para>Ajout des variables de configuration datestyle et timezone
-(Tom)</para></listitem>
-<listitem><para>Ajout d'OVERLAY(), qui autorise la substitution d'une
-sous-chaîne dans une chaîne (Thomas)</para></listitem>
-<listitem><para>Ajout de SIMILAR TO (Thomas, Tom)</para></listitem>
-<listitem><para>Ajout d'un SUBSTRING(chaîne FROM modele FOR
-échappement) utilisant les expressions rationnelles (Thomas)</para></listitem>
-<listitem><para>Ajout des fonctions LOCALTIME et LOCALTIMESTAMP
-(Thomas)</para></listitem>
-<listitem><para>Ajout des types composés nommés utilisant CREATE TYPE nomtype
-AS (column) (Joe)</para></listitem>
-<listitem><para>Autorise la définition d'un type composé dans la clause alias
-d'une table (Joe)</para></listitem>
-<listitem><para>Ajout d'une nouvelle API pour simplifier la création de
-fonctions de table en langage C (Joe)</para></listitem>
-<listitem><para>Supprime les parenthèses vides compatible ODBC des appels
-de fonctions SQL99 si elles ne sont pas compatibles avec le standard
-(Thomas)</para></listitem>
-<listitem><para>Le type de données macaddr accepte 12 chiffres hexadécimaux
-sans séparateurs (Mike Wyer)</para></listitem>
-<listitem><para>Ajout de CREATE/DROP CAST (Peter)</para></listitem>
-<listitem><para>Ajout de l'opérateur IS DISTINCT FROM (Thomas)</para></listitem>
-<listitem><para>Ajout de la fonction SQL99 TREAT(), synonyme de CAST()
-(Thomas)</para></listitem>
-<listitem><para>Ajout de pg_backend_pid() pour afficher le pid du serveur
-(Bruce)</para></listitem>
-<listitem><para>Ajout du prédicat IS OF / IS NOT OF (Thomas)</para></listitem>
-<listitem><para>Autorise les constantes de type chaîne de bits sans une
-longueur définie (Thomas)</para></listitem>
-<listitem><para>Autorise la conversion entre les entiers à huit octets et les
-chaînes de bit (Thomas)</para></listitem>
-<listitem><para>Implémente la conversion littérale en hexadécimale vers un
-littéral de type chaîne de bits (Thomas)</para></listitem>
-<listitem><para>Autorise l'apparition des fonctions de table dans la clause FROM
-(Joe)</para></listitem>
-<listitem><para>Augmente le nombre maximum de paramètres de fonctions à 32
-(Bruce)</para></listitem>
-<listitem><para>Ne crée plus automatiquement un index pour les colonnes SERIAL
-(Tom)</para></listitem>
-<listitem><para>Ajout de current_database() (Rod)</para></listitem>
-<listitem><para>Correction de cash_words() pour ne pas avoir de dépassement de
-tampons (Tom)</para></listitem>
-<listitem><para>Ajout des fonctions replace(), split_part(), to_hex()
-(Joe)</para></listitem>
-<listitem><para>Correction de LIKE pour bytea en argument du côté droit
-(Joe)</para></listitem>
-<listitem><para>Empêche les arrêt brutaux causés par SELECT cash_out(2)
-(Tom)</para></listitem>
-<listitem><para>Correction de to_char(1,'FM999.99') pour qu'elle renvoie un
-point (Karel)</para></listitem>
-<listitem><para>Correction des fonctions trigger/type/language renvoyant OPAQUE
-pour qu'elles renvoient un type correct (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Internationalisation</title>
-<itemizedlist>
-<listitem><para>Ajout de codages supplémentaires : Koréen
-(JOHAB), Thai (WIN874), Vietnamien (TCVN), Arabe (WIN1256), Chinois
-Simplifié (GBK), Koréen (UHC) (Eiji Tokuya)</para></listitem>
-<listitem><para>Activation par défaut du support de la locale
-(Peter)</para></listitem>
-<listitem><para>Ajout des variables locale (Peter)</para></listitem>
-<listitem><para>Échappement des octets >= 0x7f pour le multioctet dans
-PQescapeBytea/PQunescapeBytea (Tatsuo)</para></listitem>
-<listitem><para>Ajout de la prise en compte de la locale dans les classes de
-caractères des expressions rationnelles</para></listitem>
-<listitem><para>Activation par défaut du support multioctets
-(Tatsuo)</para></listitem>
-<listitem><para>Ajout du support multioctets GB18030 (Bill
-Huang)</para></listitem>
-<listitem><para>Ajout de CREATE/DROP CONVERSION, permettant les locales
-chargeables (Tatsuo, Kaori)</para></listitem>
-<listitem><para>Ajout de la table pg_conversion (Tatsuo)</para></listitem>
-<listitem><para>Ajout de la fonction SQL99 CONVERT() (Tatsuo)</para></listitem>
-<listitem><para>pg_dumpall, pg_controldata et pg_resetxlog sont maintenant au
-courant de la langue nationale (Peter)</para></listitem>
-<listitem><para>Nouvelles traductions et mises à jour</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Langages du côté serveur</title>
-<itemizedlist>
-<listitem><para>Autorise les fonctions récursives SQL (Peter)</para></listitem>
-<listitem><para>Modification de la construction de PL/Tcl pour utiliser le
-compilateur configuré et Makefile.shlib (Peter)</para></listitem>
-<listitem><para>Refonte de la variable FOUND PL/pgSQL pour être encore plus
-compatible avec Oracle (Neil, Tom)</para></listitem>
-<listitem><para>Autorise PL/pgSQL à gérer les identifiants entre guillemets
-(Tom)</para></listitem>
-<listitem><para>Autorisation des fonctions PL/pgSQL
-renvoyant des ensembles de résultats (Neil)</para></listitem>
-<listitem><para>PL/pgSQL connait les schémas (Joe)</para></listitem>
-<listitem><para>Suppression de quelques pertes mémoires (Nigel J. Andrews,
-Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>psql</title>
-<itemizedlist>
-<listitem><para>Ne met plus en minuscule les noms de bases de données indiqués
-avec \connect pour une compatibilité avec la 7.2.0 (Tom)</para></listitem>
-<listitem><para>Ajout de \timing pour chronométrer les requêtes utilisateur
-(Greg Sabino Mullane)</para></listitem>
-<listitem><para>Fait que \d affiche des informations sur les index (Greg Sabino
-Mullane)</para></listitem>
-<listitem><para>Le nouveau \dD affiche les domaines (Jonathan
-Eisler)</para></listitem>
-<listitem><para>Permet à psql d'afficher les règles sur les vues (Paul
-?)</para></listitem>
-<listitem><para>Correction pour la substitution des variables avec psql
-(Tom)</para></listitem>
-<listitem><para>Autorise l'affichage de la structure des tables temporaires avec
-\d (Tom)</para></listitem>
-<listitem><para>Autorise l'affichage les clés étrangères avec \d
-(Rod)</para></listitem>
-<listitem><para>Correction de \? pour honorer l'afficheur page par page avec
-\pset (Bruce)</para></listitem>
-<listitem><para>Fait que psql rapporte son numéro de version au lancement
-(Tom)</para></listitem>
-<listitem><para>Autorise la spécification des noms de colonnes avec \copy
-(Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>libpq</title>
-<itemizedlist>
-<listitem><para>Ajout de ~/.pgpass pour stocker la combinaison hôte
-/mot de passe de l'utilisateur (Alvaro Herrera)</para></listitem>
-<listitem><para>Ajout de la fonction PQunescapeBytea() à libpq (Patrick
-Welche)</para></listitem>
-<listitem><para>Correction pour l'envoi de grandes requêtes sur des connexions
-non bloquantes (Bernhard Herzog)</para></listitem>
-<listitem><para>Correction pour l'utilisation de timers par libpq sur Win9X
-(David Ford)</para></listitem>
-<listitem><para>Autorisation pour que le notify de libpq gère des serveurs avec
-des identifiants de longueurs différentes (Tom)</para></listitem>
-<listitem><para>Ajout de PQescapeString() et PQescapeBytea() dans libpq pour
-Windows (Bruce)</para></listitem>
-<listitem><para>Correction pour SSL avec les connexions non bloquantes (Jack
-Bates)</para></listitem>
-<listitem><para>Ajout d'un paramètre de déconnexion automatique au bout d'un
-certain temps sans activité (Denis A Ustimenko)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>JDBC</title>
-<itemizedlist>
-<listitem><para>JDBC se compile avec le JDK 1.4 (Dave)</para></listitem>
-<listitem><para>Ajout du support JDBC 3 (Barry)</para></listitem>
-<listitem><para>Autorise JDBC à configurer le niveau des traces en ajoutant
-?loglevel=X à l'URL de connexion (Barry)</para></listitem>
-<listitem><para>Ajout du message Driver.info() qui affiche le numéro de version
-(Barry)</para></listitem>
-<listitem><para>Ajout des ensembles de résultats en lecture/écriture (Raghu
-Nidagal, Dave)</para></listitem>
-<listitem><para>Ajout du support pour les instructions appellables (Paul
-Bethe)</para></listitem>
-<listitem><para>Ajout de la possibilité d'annulation d'une
-requête</para></listitem>
-<listitem><para>Ajout du rafraîchissement d'une ligne (Dave)</para></listitem>
-<listitem><para>Correction du cryptage MD5 pour gérer les serveurs multibyte
-(Jun Kawai)</para></listitem>
-<listitem><para>Ajout du support pour les instructions préparées
-(Barry)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Interfaces diverses</title>
-<itemizedlist>
-<listitem><para>Correction d'un bogue ECPG concernant les nombres en octal avec
-les guillemets simples (Michael)</para></listitem>
-<listitem><para>Déplacement de src/interfaces/libpgeasy dans
-http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
-<listitem><para>Amélioration de l'interface Python (Elliot Lee, Andrew
-Johnson, Greg Copeland)</para></listitem>
-<listitem><para>Ajout de l'événement de fermeture de la connexion dans libpgtcl
-(Gerhard Hintermayer)</para></listitem>
-<listitem><para>Déplacement de src/interfaces/libpq++ dans
-http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
-<listitem><para>Déplacement de src/interfaces/odbc dans
-http://gborg.postgresql.org (Marc)</para></listitem>
-<listitem><para>Déplacement de src/interfaces/libpgeasy dans
-http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
-<listitem><para>Déplacement de src/interfaces/perl5 dans
-http://gborg.postgresql.org (Marc, Bruce)</para></listitem>
-<listitem><para>Suppression de src/bin/pgaccess des sources, maintenant sur
-http://www.pgaccess.org (Bruce)</para></listitem>
-<listitem><para>Ajout de la commande pg_on_connection_loss à libpgtcl (Gerhard
-Hintermayer, Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Code source</title>
-<itemizedlist>
-<listitem><para>Correction pour un make parallèle (Peter)</para></listitem>
-<listitem><para>Corrections spécifiques pour AIX lors de l'édition des liens
-avec Tcl (Andreas Zeugswetter)</para></listitem>
-<listitem><para>Permet à PL/Perl d'être construit avec Cygwin (Jason
-Tishler)</para></listitem>
-<listitem><para>Amélioration des compilations MIPS (Peter, Oliver
-Elphick)</para></listitem>
-<listitem><para>Requiert Autoconf version 2.53 (Peter)</para></listitem>
-<listitem><para>Requiert readline et zlib par défaut dans configure
-(Peter)</para></listitem>
-<listitem><para>Permet l'utilisation de <quote>Intimate Shared Memory</quote>
-(ISM) par Solaris pour des raisons de performances (Scott Brunza, P.J. Josh
-Rovero)</para></listitem>
-<listitem><para>Activation permanente de syslog dans la compilation, suppression
-de l'option --enable-syslog (Tatsuo)</para></listitem>
-<listitem><para>Activation permanente du multi-octets dans la compilation,
-suppression de l'option --enable-multibyte (Tatsuo)</para></listitem>
-<listitem><para>Activation permanente de la locale dans la compilation,
-suppression de l'option --enable-locale (Peter)</para></listitem>
-<listitem><para>Correction pour la création des DLL Win9x (Magnus
-Naeslund)</para></listitem>
-<listitem><para>Correction pour l'utilisation de link() par le code WAL sur
-Windows, BeOS (Jason Tishler)</para></listitem>
-<listitem><para>Ajout de sys/types.h à c.h, suppression à partir des fichiers
-principaux (Peter, Bruce)</para></listitem>
-<listitem><para>Correction d'un blocage sur les machines SMP sous AIX
-(Tomoyuki Niijima)</para></listitem>
-<listitem><para>Correction d'un autre blocage SMP sur AIX (Tomoyuki
-Niijima)</para></listitem>
-<listitem><para>Correction de la gestion de dates avant 1970 sur les nouvelles
-bibliothèques glibc (Tom)</para></listitem>
-<listitem><para>Correction du verrour sur les PowerPC SMP
-(Tom)</para></listitem>
-<listitem><para>Empêche gcc -ffast-math d'être utilisé (Peter,
-Tom)</para></listitem>
-<listitem><para>Bison >= 1.50 est maintenant requis pour les constructions
-développeur</para></listitem>
-<listitem><para>Le support Kerberos 5 se construit maintenant avec Heimdal
-(Peter)</para></listitem>
-<listitem><para>Ajout de l'appendice dans le guide utilisateur qui liste toutes
-les fonctionnalités SQL (Thomas)</para></listitem>
-<listitem><para>Amélioration de l'édition des liens des modules chargeables pour
-utiliser RTLD_NOW (Tom)</para></listitem>
-<listitem><para>Nouveaux niveaux d'erreurs WARNING, INFO, LOG, DEBUG[1-5]
-(Bruce)</para></listitem>
-<listitem><para>Le nouveau répertoire src/port contient les fonctions
-remplacées de la libc (Peter, Bruce)</para></listitem>
-<listitem><para>Nouveau catalogue système pg_namespace pour les schémas
-(Tom)</para></listitem>
-<listitem><para>Ajout de pg_class.relnamespace pour les schémas
-(Tom)</para></listitem>
-<listitem><para>Ajout de pg_type.typnamespace pour les schémas
-(Tom)</para></listitem>
-<listitem><para>Ajout de pg_proc.pronamespace pour les schémas
-(Tom)</para></listitem>
-<listitem><para>Restructuration des agrégats pour disposer des entrées de
-pg_proc (Tom)</para></listitem>
-<listitem><para>Les relations système ont maintenant leur propre espace de
-noms, le test pg_* n'est plus requis (Fernando Nasser)</para></listitem>
-<listitem><para>Renommage des noms d'index TOAST pour être *_index au lieu de
-*_idx (Neil)</para></listitem>
-<listitem><para>Ajout des espaces de noms pour les opérateurs et les classes
-d'opérateurs (Tom)</para></listitem>
-<listitem><para>Ajout de vérifications supplémentaires pour le fichier de
-contrôle du serveur (Thomas)</para></listitem>
-<listitem><para>Nouvelle FAQ polonaise (Marcin Mazurek)</para></listitem>
-<listitem><para>Ajout du support des sémaphores Posix (Tom)</para></listitem>
-<listitem><para>Document nécessaire pour reindex (Bruce)</para></listitem>
-<listitem><para>Renommage de quelques identifiants internes pour simplifier la
-compilation Windows (Jan, Katherine Ward)</para></listitem>
-<listitem><para>Ajout de documentation sur l'espace de disque
-(Bruce)</para></listitem>
-<listitem><para>Suppression de KSQO de GUC (Bruce)</para></listitem>
-<listitem><para>Correction d'une perte mémoire dans rtree (Kenneth
-Been)</para></listitem>
-<listitem><para>Modification de quelques messages d'erreur pour la cohérence
-(Bruce)</para></listitem>
-<listitem><para>Suppression des colonnes de tables système non utilisées
-(Peter)</para></listitem>
-<listitem><para>Colonnes système NOT NULL lorsqu'appropriées
-(Tom)</para></listitem>
-<listitem><para>Nettoyage de l'utilisation de sprintf à la place de
-snprintf() (Neil, Jukka Holappa)</para></listitem>
-<listitem><para>Suppression d'OPAQUE et création de sous-types spécifiques
-(Tom)</para></listitem>
-<listitem><para>Nettoyages de la gestion interne des tableaux (Joe,
-Tom)</para></listitem>
-<listitem><para>Interdiction de pg_atoi('') (Bruce)</para></listitem>
-<listitem><para>Suppression du paramètres wal_files car les fichiers WAL sont
-maintenant recyclés (Bruce)</para></listitem>
-<listitem><para>Ajout des numéros de version dans les pages d'en-tête
-(Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Contrib</title>
-<itemizedlist>
-<listitem><para>Autorise les tableaux d'inet dans /contrib/array
-(Neil)</para></listitem>
-<listitem><para>Corrections pour GiST (Teodor Sigaev, Neil)</para></listitem>
-<listitem><para>Mise à jour de /contrib/mysql</para></listitem>
-<listitem><para>Ajout de /contrib/dbsize pour afficher la taille des tables
-sans vacuum (Peter)</para></listitem>
-<listitem><para>Ajout de /contrib/intagg, routines d'agrégat des entiers
-(mlw)</para></listitem>
-<listitem><para>Amélioration de /contrib/oid2name (Neil,
-Bruce)</para></listitem>
-<listitem><para>Amélioration de /contrib/tsearch (Oleg, Teodor
-Sigaev)</para></listitem>
-<listitem><para>Nettoyage de /contrib/rserver (Alexey V.
-Borzov)</para></listitem>
-<listitem><para>Mise à jour de l'outil /contrib/oracle conversion (Gilles
-Darold)</para></listitem>
-<listitem><para>Mise à jour de /contrib/dblink (Joe)</para></listitem>
-<listitem><para>Amélioration des options supportées par /contrib/vacuumlo (Mario
-Weilguni)</para></listitem>
-<listitem><para>Amélioration de /contrib/intarray (Oleg, Teodor Sigaev, Andrey
-Oktyabrski)</para></listitem>
-<listitem><para>Ajout de l'outil /contrib/reindexdb (Shaun
-Thomas)</para></listitem>
-<listitem><para>Ajout de l'indexage dans /contrib/isbn_issn (Dan
-Weston)</para></listitem>
-<listitem><para>Ajout de /contrib/dbmirror (Steven Singer)</para></listitem>
-<listitem><para>Amélioration de /contrib/pgbench (Neil)</para></listitem>
-<listitem><para>Ajout des exemples de fonctions de table /contrib/tablefunc
-(Joe)</para></listitem>
-<listitem><para>Ajout du type de données pour les structures en arbre
-/contrib/ltree (Teodor Sigaev, Oleg Bartunov)</para></listitem>
-<listitem><para>Déplacement de /contrib/pg_controldata, pg_resetxlog dans
-le répertoire principal des sources (Bruce)</para></listitem>
-<listitem><para>Correction à /contrib/cube (Bruno Wolff)</para></listitem>
-<listitem><para>Amélioration de /contrib/fulltextindex
-(Christopher)</para></listitem>
-</itemizedlist>
- </sect3>
-
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-2-8">
- <title>Version 7.2.8</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-05-09</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections sur la 7.2.7, dont un
- correctif sur un trou de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.8</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant la
- version 7.2.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'une ancienne condition qui permettait à une
-transaction d'être vue comme validée pour certains buts (par exemple SELECT FOR
-UPDATE) légèrement plus tôt que dans les autres buts</para>
-<para>Ceci est un bogue extrêmement sérieux car il pourrait amener à des
-incohérences apparents des données et visibles brièvement par les applications.
-</para></listitem>
-<listitem><para>Réparation d'une condition entre extension de relation et VACUUM
-</para>
-<para>Théoriquement, ceci pourrait avoir causé des pertes d'une page de données
-tout juste insérées, bien que la probabilité d'un tel scénario semble extrêmement
-faible. Il n'existe pas de cas connus où cela a provoqué plus qu'un échec
-d'Assert.
-</para></listitem>
-<listitem><para>Correction des comparaisons des valeurs <type>TIME WITH TIME
-ZONE</></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</>, il
-sera nécessaire de le <command>REINDEX</>er après avoir installé cette mise à
-jour parce que ce correctif corrige l'ordre de tri des valeurs de colonnes.
-</para></listitem>
-<listitem><para>Correction de <function>EXTRACT(EPOCH)</> pour les valeurs de
-type <type>TIME WITH TIME ZONE</></para></listitem>
-<listitem><para>Vérification supplémentaires de dépassement de tampon dans
-plpgsql (Neil)</para></listitem>
-<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
-noms des index et déclencheurs contenant <literal>%</> (Neil)</para></listitem>
-<listitem><para>Empêche <function>to_char(interval)</> d'arrêter brutalement le
-serveur (dump core) pour les formats relatifs au mois</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</> pour les nouvelles
-constructions d'OpenSSL (Marko Kreen)</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-2-7">
- <title>Sortie 7.2.7</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2005-01-31</simpara>
- </note>
-
- <para>
- Cette version contient quelques correctifs de la version 7.2.6, certains
- portant sur des problèmes de sécurité.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.7</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- 7.2.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Interdit <command>LOAD</> aux utilisateurs standards</para>
-<para>
-Sur les plateformes qui exécuteront automatiquement les fonctions
-d'initialisation d'une bibliothèque partagée (ceci inclut au moins Windows et
-les Unix basés sur ELF), <command>LOAD</> est utilisable pour faire exécuter
-un code arbitraire par le serveur. Merci à NGS Software pour cette
-information.</para></listitem>
-<listitem><para>Ajout du marquage STRICT nécessaire à quelques fonctions
-dans contrib (Kris Jurka)</para></listitem>
-<listitem><para>Évite un dépassement de tampon lorsque la déclaration du curseur
-plpgsql dispose trop de paramètres (Neil)</para></listitem>
-<listitem><para>Correction d'erreurs de plannification pour les jointures
-complètes et externes à droite</para>
-<para>
-Le résultat de la jointure était faussement supposé trié de la même façon que
-l'entrée gauche. Ceci pouvait délivrer une sortie mal triée à l'utilisateur
-mais, dans le cas de jointures d'assemblage imbriquées, pouvait donner de
-mauvaises réponses.
-</para></listitem>
-<listitem><para>Correction de l'affichage des intervalles négatifs pour les
-styles de date SQL et GERMAN</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-2-6">
- <title>Sortie 7.2.6</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-10-22</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la version 7.2.5.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.2.6</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- 7.2.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'un échec possible pour mettre à jour les bits
-d'astuce sur disque</para>
-<para>
-Sous quelques rares circonstances, ceci pourrait mener à des échecs
-<quote>could not access transaction status</>, qui se qualifient comme bogue
-pouvant entraîner des pertes de données.
-</para></listitem>
-<listitem><para>Assurance que la jointure externe hachée ne manque pas de
-lignes</para>
-<para>
-Les jointures gauches très importantes pourraient échouer à afficher les lignes
-du côté gauche sans correspondance en donnant seulement la distribution droite
-des données.
-</para></listitem>
-<listitem><para>Interdit l'exécution de <application>pg_ctl</> en tant que
-root</para>
-<para>
-Ceci est fait pour évacuer tout risque de problèmes de sécurité.
-</para></listitem>
-<listitem><para>Évite l'utilisation de fichiers temporaires dans
-<filename>/tmp</> dans <command>make_oidjoins_check</command></para>
-<para>
-Ceci a été rapportée comme un problème de sécurité bien qu'il est de peu
-d'importance car il n'y a aucune raison pour que les utilisateurs autres que
-les développeurs utilisent ce script de toute façon.
-</para></listitem>
-<listitem><para>Mise à jour vers les nouvelles versions de
-Bison</para></listitem>
-</itemizedlist>
-
- </sect2>
- </sect1>
-
- <sect1 id="release-7-2-5">
- <title>Sortie 7.2.5</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2004-08-16</simpara>
- </note>
-
- <para>
- Cette version contient quelques corrections de la version 7.2.4.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.2.5</title>
-
- <para>
- Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
- 7.2.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Réparation d'un arrêt brutal possible lors d'insertions
-concurrentes dans l'index B-tree</para>
-<para>
-Ce correctif s'occupe d'un cas ras dans les insertions concurrentes dans un
-index B-tree, pouvant résulter en un PANIC du serveur. Aucun dommage permanent
-ne devrait en résulter mais cela vaut néanmoins une pré-version. Ce bogue
-n'existe pas dans les versions antérieures 7.1.
-</para></listitem>
-<listitem><para>Correction d'un cas particulier dans la recherche en parallèle
-dans des arbres balancés (btree) avec une page racine divisée</para></listitem>
-<listitem><para>Correction d'un dépassement de tampon dans
-<function>to_ascii</function> (Guido Notari)</para></listitem>
-<listitem><para>Correction d'un arrêt brutal lors de la détection d'un verrou
-mortel sur les machines dont le type char est non signé</para></listitem>
-<listitem><para>Correction d'un échec pour répondre à <command>pg_ctl stop -m
-fast</command> après le lancement d'un Async_NotifyHandler</para></listitem>
-<listitem><para>Correction de pertes mémoire dans pg_dump</para></listitem>
-<listitem><para>Évite les conflits avec la définition système de la fonction ou
-macro <function>isblank()</function></para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
- <sect1 id="release-7-2-4">
- <title>Sortie 7.2.4</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2003-01-30</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.2.3,
- incluant des correctifs pour empêcher des possibles pertes de données.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.4</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.2.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction de quelques cas supplémentaires d'erreurs <quote>No
-one parent tuple was found</quote> lors du VACUUM</para></listitem>
-<listitem><para>Empêche VACUUM d'être appelé à l'intérieur d'une fonction
-(Bruce)</para></listitem>
-<listitem><para>S'assure que les mises à jour de pg_clog sont synchronisées sur
-disque avant de marquer le point de vérification comme terminé</para></listitem>
-<listitem><para>Empêche le dépassement d'entier lors de grosses jointures
-de découpage</para></listitem>
-<listitem><para>Fait que les commandes GROUP fonctionnent lorsque
-pg_group.grolist est assez large pour être mis en
-<quote>TOAST</quote></para></listitem>
-<listitem><para>Correction d'erreurs dans les tables datetime ; quelques
-noms de fuseau horaire n'étaient pas reconnus</para></listitem>
-<listitem><para>Correction de quelques dépassements d'entier dans circle_poly(),
-path_encode(), path_add() (Neil)</para></listitem>
-<listitem><para>Réparation d'erreurs de logique dans lseg_eq(), lseg_ne(),
-lseg_center()</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-2-3">
- <title>Sortie 7.2.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-10-01</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.2.2,
- incluant des correctifs pour empêcher des possibles pertes de données.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.3</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.2.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Empêche la perte possible de traces de transaction compressées
-(Tom)</para></listitem>
-<listitem><para>Empêche les non superutilisateurs d'augmenter les informations
-de vacuum les plus récentes (Tom)</para></listitem>
-<listitem><para>Gestion des dates antérieures à 1970 dans les nouvelles
-versions de glibc (Tom)</para></listitem>
-<listitem><para>Correction de blocage possible lors de l'arrêt du
-serveur</para></listitem>
-<listitem><para>Empêche des blocages de spinlock sur les machines SMP PPC
-(Tomoyuki Niijima)</para></listitem>
-<listitem><para>Correction de <application>pg_dump</> pour sauvegarder
-correctement le FULL JOIN USING (Tom)</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-2-2">
- <title>Sortie 7.2.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-08-23</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.2.1.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.2</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant version 7.2.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Autorise EXECUTE de "CREATE TABLE AS ... SELECT" en PL/pgSQL
-(Tom)</para></listitem>
-<listitem><para>Correction pour la réinitialisation de l'id des traces des
-transactions compressées (Tom)</para></listitem>
-<listitem><para>Correction de PQescapeBytea/PQunescapeBytea pour qu'ils gèrent
-les octets supérieurs à 0x7f (Tatsuo)</para></listitem>
-<listitem><para>Correction pour que l'arrêt brutal de psql et
-<application>pg_dump</> lors de l'appel d'options longues inexistantes
-(Tatsuo)</para></listitem>
-<listitem><para>Correction d'un arrêt brutal lors de l'appel d'opérateurs de
-géométriques (Tom)</para></listitem>
-<listitem><para>Autorise l'appel de OPEN cursor(args) (Tom)</para></listitem>
-<listitem><para>Correction de la construction de l'index rtree_gist
-(Teodor)</para></listitem>
-<listitem><para>Correction de la sauvegarde des agrégats définis par
-l'utilisateur (Tom)</para></listitem>
-<listitem><para>Corrections pour contrib/intarray (Oleg)</para></listitem>
-<listitem><para>Corrections des requêtes complexes UNION/EXCEPT/INTERSECT
-utilisant des parenthèses (Tom)</para></listitem>
-<listitem><para>Correction de pg_convert (Tatsuo)</para></listitem>
-<listitem><para>Correction pour l'arrêt brutal avec des chaînes DATA longues
-(Thomas, Neil)</para></listitem>
-<listitem><para>Corrections pour repeat(), lpad(), rpad() et les chaînes longues
-(Neil)</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-2-1">
- <title>Sortie 7.2.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-03-21</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.2.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.2.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.2.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>S'assure que les compteurs de séquence ne reviennent pas en
-arrière après un arrêt brutal (Tom)</para></listitem>
-<listitem><para>Correction des touches pour la conversion kanji de pgaccess
-(Tatsuo)</para></listitem>
-<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
-<listitem><para>Amélioration des entrées/sorties (Tom)</para></listitem>
-<listitem><para>Nouvelle FAQ russe</para></listitem>
-<listitem><para>Correction de compilation pour le AuthBlockSig manquant
-(Heiko)</para></listitem>
-<listitem><para>Fuseaux horaires supplémentaires et correction des
-fuseaux horaires (Thomas)</para></listitem>
-<listitem><para>Permet à \connect dans psql de gérer les noms de base de
-données et d'utilisateurs possédant des minuscules et des majuscules
-(Tom)</para></listitem>
-<listitem><para>Renvoie le bon OID sur la complétion des commandes même a
-vec des règles ON INSERT (Tom)</para></listitem>
-<listitem><para>Autorise COPY FROM à utiliser des délimiteurs sur 8 bits
-(Tatsuo)</para></listitem>
-<listitem><para>Correction d'un bogue dans extract/date_part pour les
-millisecondes/microsecondes (Tatsuo)</para></listitem>
-<listitem><para>Amélioration de la gestion de plusieurs UNION avec différentes
-longueurs (Tom)</para></listitem>
-<listitem><para>Amélioration de contrib/btree_gist (Teodor
-Sigaev)</para></listitem>
-<listitem><para>Amélioration du dictionnaire de contrib/tsearch, voir
-README.tsearch pour une étape d'installation supplémentaire (Thomas T. Thai,
-Teodor Sigaev)</para></listitem>
-<listitem><para>Correction sur la gestion des indices de tableau
-(Tom)</para></listitem>
-<listitem><para>Autorise le lancement de EXECUTE sur "CREATE TABLE AS ...
-SELECT" en PL/pgSQL (Tom)</para></listitem>
-</itemizedlist>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-2">
- <title>Sortie 7.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2002-02-04</simpara>
- </note>
-
- <sect2>
- <title>Aperçu</title>
-
- <para>
- Cette version améliore <productname>PostgreSQL</> pour une utilisation avec
- des applications gèrant de gros volumes.
- </para>
-
- <para>
- Modifications majeures dans cette version :
- </para>
-
- <variablelist>
- <varlistentry>
- <term>VACUUM</term>
- <listitem>
- <para>
- L'opération VACUUM ne verrouille plus les tables, permettant du coup
- un accès à l'utilisateur normal pendant le vacuum. Une nouvelle commande
- <command>VACUUM FULL</> fait le vacuum ancien style en verrouillant la
- table et en diminuant la copie disque de la table.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Transactions</term>
- <listitem>
- <para>
- Il n'y a plus de problèmes avec les installations dépassant quatre
- milliards de transactions.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>OID</term>
- <listitem>
- <para>
- Les OID sont maintenant optionnelles. Les utilisateurs peuvent maintenant
- créer des tables sans OID dans le cas où l'utilisation d'OID est
- excessif.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Optimiseur</term>
- <listitem>
- <para>
- Le système calcule maintenant des statistiques de colonnes lors
- d'<command>ANALYZE</>, permettant de meilleurs choix pour l'optimiseur.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Sécurité</term>
- <listitem>
- <para>
- Une nouvelle option de cryptage MD5 permet un stockage plus sécurisé et
- le transfert des mots de passe. Une nouvelle option d'authentification
- par socket de domaine Unix est disponible sur les systèmes Linux et BSD.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Statistiques</term>
- <listitem>
- <para>
- Les administrateurs peuvent utiliser le nouveau module de statistiques
- d'accès aux tables pour obtenir des informations détaillées sur
- l'utilisation des tables et index.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Internationalisation</term>
- <listitem>
- <para>
- Les messages des programmes et des bibliothèques peuvent maintenant
- être affichés dans plusieurs langues.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
-
- <sect2>
- <title>Migration vers la version 7.2</title>
-
- <para>
- Une sauvegarde/restauration avec <command>pg_dump</command> est requis pour
- ceux qui souhaitent migrer leur données d'une version précédente.
- </para>
-
- <para>
- Observez les incompatibilités suivantes :
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- La sémantique de la commande <command>VACUUM</command> a changé dans
- cette version. Vous devez mettre à jour vos procédures de maintenance en
- adéquation.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Dans cette version, les comparaisons utilisant <literal>= NULL</literal>
- retourneront toujours faux (ou NULL, plus précisément). Les anciennes
- versions transformaient automatiquement cette syntaxe en <literal>IS
- NULL</literal>. L'ancien comportement peut être réactivé en utilisant un
- paramètre de <filename>postgresql.conf</filename>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les fichiers de configuration <filename>pg_hba.conf</> et
- <filename>pg_ident.conf</> sont maintenant rechargés après réception
- d'un signal <systemitem>SIGHUP</>, pas avec chaque connexion.
- </para>
- </listitem>
-
- <listitem>
- <para>
- La fonction <filename>octet_length()</> renvoie maintenant la taille
- des données non compressées.
- </para>
- </listitem>
-
- <listitem>
- <para>
- La valeur de type date/time <literal>'current'</literal> n'est plus
- disponible. Vous aurez besoin de réécrire vos applications.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les fonctions <literal>timestamp()</literal>, <literal>time()</literal>
- et <literal>interval()</literal> ne sont plus disponibles. À la place,
- utilisez <literal>timestamp 'string'</literal> ou
- <literal>CAST</literal>.
- </para>
- </listitem>
- </itemizedlist>
-
- <para>
- La syntaxe <literal>SELECT ... LIMIT #,#</literal> sera supprimée dans la
- prochaine version. Vous devez modifier vos requêtes pour utiliser des
- clauses LIMIT et OFFSET séparées, c'est-à-dire <literal>LIMIT 10 OFFSET
- 20</literal>.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <sect3>
- <title>Server Operation</title>
-<itemizedlist>
-<listitem><para>Création de fichiers temporaires dans un répertoire séparé
-(Bruce)</para></listitem>
-<listitem><para>Suppression des fichiers temporaires orphelins au lancement de
-postmaster (Bruce)</para></listitem>
-<listitem><para>Ajout d'index uniques à quelques tables système
-(Tom)</para></listitem>
-<listitem><para>Réorganisation des opérateurs de tables système (Oleg Bartunov,
-Teodor Sigaev, Tom)</para></listitem>
-<listitem><para>Renommage de pg_log en pg_clog (Tom)</para></listitem>
-<listitem><para>Activation de SIGTERM, SIGQUIT pour tuer les serveurs
-(Jan)</para></listitem>
-<listitem><para>Suppression de la limite du nombre de serveurs au moment de la
-compilation (Tom)</para></listitem>
-<listitem><para>Meilleure nettoyage pour les échecs de ressources sémaphores
-(Tatsuo, Tom)</para></listitem>
-<listitem><para>Permet un meilleur retour au début des ID de transaction
-(Tom)</para></listitem>
-<listitem><para>Suppression des OID pour certaines tables système
-(Tom)</para></listitem>
-<listitem><para>Suppression de la vérification d'erreur "violation de
-la modification des données ayant lancé le déclencheur" (Tom)</para></listitem>
-<listitem><para>Création du portail SPI des plans préparés/sauvegardés
-(Jan)</para></listitem>
-<listitem><para>Les fonctions de colonnes SPI fonctionnent avec les colonnes
-systèmes (Tom)</para></listitem>
-<listitem><para>Amélioration de la compression des grandes valeurs
-(Tom)</para></listitem>
-<listitem><para>Collecteur de statistiques pour les accès aux tables et index
-(Jan)</para></listitem>
-<listitem><para>Tronque les noms de séquences très longs en une valeur
-raisonnable (Tom)</para></listitem>
-<listitem><para>Mesure les temps de transaction en millisecondes
-(Thomas)</para></listitem>
-<listitem><para>Correction des parcours séquentiels de TID
-(Hiroshi)</para></listitem>
-<listitem><para>L'ID du superutilisateur est maintenant fixé à 1 (Peter
-E)</para></listitem>
-<listitem><para>Nouvelle option "reload" de pg_ctl (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Performance</title>
-<itemizedlist>
-<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
-<listitem><para>Nouvelle statistique dans la colonne histogramme pour
-l'optimiseur (Tom)</para></listitem>
-<listitem><para>Réutilisation des fichiers de trace en pré-écriture
-(WAL) plutôt que de les annuler (Tom)</para></listitem>
-<listitem><para>Amélioration du cache (Tom)</para></listitem>
-<listitem><para>Amélioration de l'optimiseur avec IS NULL, IS NOT NULL
-(Tom)</para></listitem>
-<listitem><para>Amélioration du gestionnaire de verrous pour réduire le temps
-de conservation d'un verrou (Tom)</para></listitem>
-<listitem><para>Conservation des entrées relcache pour les fonctions de
-support d'accès par index (Tom)</para></listitem>
-<listitem><para>Permet une meilleure sélectivité avec NaN et les infinies dans
-NUMERIC (Tom)</para></listitem>
-<listitem><para>Amélioration des performances de R-tree (Kenneth
-Been)</para></listitem>
-<listitem><para>Division des B-tree plus efficace (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Droits</title>
-<itemizedlist>
-<listitem><para>Modification des droits UPDATE, DELETE pour qu'ils soient bien
-distincts (Peter E)</para></listitem>
-<listitem><para>Nouveaux droits REFERENCES, TRIGGER (Peter E)</para></listitem>
-<listitem><para>Autorise GRANT/REVOKE vers/à partir de plus d'un utilisateur
-à la fois (Peter E)</para></listitem>
-<listitem><para>Nouvelle fonction has_table_privilege() (Joe
-Conway)</para></listitem>
-<listitem><para>Autorise les utilisateurs standards à lancer un vacuum sur la
-base de données (Tom)</para></listitem>
-<listitem><para>Nouvelle commande SET SESSION AUTHORIZATION (Peter
-E)</para></listitem>
-<listitem><para>Correction d'un bogue dans les modifications de droits sur les
-tables nouvellement créées (Tom)</para></listitem>
-<listitem><para>Interdit l'accès de pg_statistic aux utilisateurs normaux,
-ajout de vues accessibles aux utilisateurs (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Authentification de l'utilisateur</title>
-<itemizedlist>
-<listitem><para>Lance un autre postmaster avant de réaliser l'authentification
-pour empêcher les blocages (Peter E)</para></listitem>
-<listitem><para>Ajout de l'authentification ident sur les sockets de domaine
-Unix pour Linux, *BSD (Helge Bahmann, Oliver Elphick, Teodor Sigaev,
-Bruce)</para></listitem>
-<listitem><para>Ajout d'une méthode d'authentification par mot de passe
-utilisant le cryptage MD5 (Bruce)</para></listitem>
-<listitem><para>Autorise le cryptage des mots de passe stockés utilisant MD5
-(Bruce)</para></listitem>
-<listitem><para>Authentification PAM (Dominic J. Eidson)</para></listitem>
-<listitem><para>Chargement de pg_hba.conf et pg_ident.conf uniquement au
-lancement et après un SIGHUP (Bruce)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Configuration du serveur</title>
-<itemizedlist>
-<listitem><para>Interprétation de quelques abréviations de fuseaux horaires en
-tant qu'australien plutôt qu'américain du nord, configurable à l'exécution
-(Bruce)</para></listitem>
-<listitem><para>Nouveau paramètre pour initialiser le niveau d'isolation par
-défaut d'une transaction (Peter E)</para></listitem>
-<listitem><para>Nouveau paramètre pour activer la conversion de "expr
-= NULL" en "expr IS NULL", désactivé par défaut (Peter E)</para></listitem>
-<listitem><para>Nouveau paramètre pour contrôler l'utilisation de la mémoire par
-VACUUM (Tom)</para></listitem>
-<listitem><para>Nouveau paramètre pour initialiser le délai autorisé pour
-terminer l'authentification du client (Tom)</para></listitem>
-<listitem><para>Nouveau paramètre pour configurer le nombre maximum de fichiers
-ouverts (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Requêtes</title>
-<itemizedlist>
-<listitem><para>Les instructions ajoutées par des règles INSERT s'exécutent
-maintenant après l'INSERT (Jan)</para></listitem>
-<listitem><para>Empêche les noms de relation mal formés dans la liste cible
-(Bruce)</para></listitem>
-<listitem><para>Les NULL sont maintenant triés après les valeurs normales dans
-un ORDER BY (Tom)</para></listitem>
-<listitem><para>Nouveaux tests booléens IS UNKNOWN, IS NOT UNKNOWN
-(Tom)</para></listitem>
-<listitem><para>Nouveau mode de verrou SHARE UPDATE EXCLUSIVE
-(Tom)</para></listitem>
-<listitem><para>Nouvelle commande EXPLAIN ANALYZE affichant les temps
-d'exécution et les nombres de lignes (Martijn van Oosterhout)</para></listitem>
-<listitem><para>Correction d'un problème avec LIMIT et les sous-requêtes
-(Tom)</para></listitem>
-<listitem><para>Correction de LIMIT, DISTINCT ON placés dans des sous-requêtes
-(Tom)</para></listitem>
-<listitem><para>Correction d'EXCEPT/INTERSECT imbriqués (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Manipulation de schémas</title>
-<itemizedlist>
-<listitem><para>Correction de SERIAL pour les tables temporaires
-(Bruce)</para></listitem>
-<listitem><para>Autorise les séquences temporaires (Bruce)</para></listitem>
-<listitem><para>Les séquences utilisent maintenant int8 en interne
-(Tom)</para></listitem>
-<listitem><para>Le nouveau SERIAL8 crée des colonnes int8 avec des séquences,
-par défaut il s'agit de séquences SERIAL4 (Tom)</para></listitem>
-<listitem><para>Rend les OID optionnel en utilisant WITHOUT OIDS
-(Tom)</para></listitem>
-<listitem><para>Ajout de la synatxe %TYPE pour CREATE TYPE (Ian Lance
-Taylor)</para></listitem>
-<listitem><para>Ajout de ALTER TABLE / DROP CONSTRAINT pour les contraintes
-CHECK (Christopher Kings-Lynne)</para></listitem>
-<listitem><para>Nouveau CREATE OR REPLACE FUNCTION pour modifier la fonction
-existante (préservant la fonction OID) (Gavin Sherry)</para></listitem>
-<listitem><para>Ajout d'ALTER TABLE / ADD [ UNIQUE | PRIMARY ] (Christopher
-Kings-Lynne)</para></listitem>
-<listitem><para>Autorise le renommage de colonne dans les vues</para></listitem>
-<listitem><para>Fait que ALTER TABLE / RENAME COLUMN met à jour les noms de
-colonnes des index (Brent Verner)</para></listitem>
-<listitem><para>Correction pour ALTER TABLE / ADD CONSTRAINT ... CHECK avec les
-tables héritées (Stephan Szabo)</para></listitem>
-<listitem><para>ALTER TABLE RENAME met à jour correctement les arguments du
-déclencheurs de clé étrangère (Brent Verner)</para></listitem>
-<listitem><para>DROP AGGREGATE et COMMENT ON AGGREGATE acceptent maintenant un
-aggtype (Tom)</para></listitem>
-<listitem><para>Ajout de la conversion automatique du type de données en retour
-pour les fonctions SQL (Tom)</para></listitem>
-<listitem><para>Permet aux index GiST de gérer les NULL et les index à
-plusieurs clés (Oleg Bartunov, Teodor Sigaev, Tom)</para></listitem>
-<listitem><para>Activation des index partiels (Martijn van
-Oosterhout)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Commandes outils</title>
-<itemizedlist>
-<listitem><para>Ajout de RESET ALL, SHOW ALL (Marko Kreen)</para></listitem>
-<listitem><para>CREATE/ALTER USER/GROUP accepte les options dans n'importe quel
-ordre (Vince)</para></listitem>
-<listitem><para>Ajout de la fonctionnalité LOCK A, B, C (Neil
-Padgett)</para></listitem>
-<listitem><para>Nouvelle option ENCRYPTED/UNENCRYPTED pour CREATE/ALTER
-USER (Bruce)</para></listitem>
-<listitem><para>Le nouveau VACUUM léger ne verrouille pas la table ;
-l'ancienne sémantique est disponible en tant que VACUUM FULL
-(Tom)</para></listitem>
-<listitem><para>Désactivation de COPY TO/FROM sur les vues
-(Bruce)</para></listitem>
-<listitem><para>La chaîne COPY DELIMITERS doit avoir exactement un caractère
-(Tom)</para></listitem>
-<listitem><para>Le message d'avertissement du VACUUM pour le nombre de
-lignes d'index plus petit que l'en-tête apparaît maintenant si approprié
-(Martijn van Oosterhout)</para></listitem>
-<listitem><para>Correction des vérifications de droits pour CREATE INDEX
-(Tom)</para></listitem>
-<listitem><para>Interdit l'utilisation inappropriée de CREATE/DROP
-INDEX/TRIGGER/VIEW (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Types de données et fonctions</title>
-<itemizedlist>
-<listitem><para>SUM(), AVG(), COUNT() utilisent maintenant int8 en interne pour
-des questions de rapidité (Tom)</para></listitem>
-<listitem><para>Ajout de convert(), convert2() (Tatsuo)</para></listitem>
-<listitem><para>Nouvelle fonction bit_length() (Peter E)</para></listitem>
-<listitem><para>Fait que le "n" dans CHAR(n)/VARCHAR(n) représente le
-nombre de lettres, pas le nombre d'octets (Tatsuo)</para></listitem>
-<listitem><para>CHAR(), VARCHAR() rejetent maintenant les chaînes trop
-longues (Peter E)</para></listitem>
-<listitem><para>BIT VARYING rejete maintenant les chaînes de bits trop
-longues (Peter E)</para></listitem>
-<listitem><para>BIT rejete maintenant les chaînes de bits ne correspondant pas à
-la taille déclarée (Peter E)</para></listitem>
-<listitem><para>Fonctions de conversions texte pour INET, CIDR (Alex
-Pilosov)</para></listitem>
-<listitem><para>Opérateurs << et <<= indexables pour INET, CIDR
-(Alex Pilosov)</para></listitem>
-<listitem><para>Bytea \### requiert maintenant un numéro valide à trois chiffres
-octals</para></listitem>
-<listitem><para>Amélioration des comparaisons de Bytea, supporte maintenant =,
-<>, >, >=, < et <=</para></listitem>
-<listitem><para>Bytea supporte maintenant les index B-tree</para></listitem>
-<listitem><para>Bytea supporte maintenant LIKE, LIKE...ESCAPE, NOT LIKE, NOT
-LIKE...ESCAPE</para></listitem>
-<listitem><para>Bytea supporte maintenant la concaténation</para></listitem>
-<listitem><para>Nouvelles fonctions bytea : position, substring, trim,
-btrim et length</para></listitem>
-<listitem><para>Nouveau mode de fonction pour encode(), "escaped", convertit
-les bytea échappés de façon minimale vers/à partir du texte</para></listitem>
-<listitem><para>Ajout de pg_database_encoding_max_length()
-(Tatsuo)</para></listitem>
-<listitem><para>Ajout de la fonction pg_client_encoding()
-(Tatsuo)</para></listitem>
-<listitem><para>now() renvoie l'heure avec une précision à la milliseconde
-(Thomas)</para></listitem>
-<listitem><para>Nouveau type de données TIMESTAMP WITHOUT TIMEZONE
-(Thomas)</para></listitem>
-<listitem><para>Ajout de la spécification ISO date/time avec "T",
-yyyy-mm-ddThh:mm:ss
-(Thomas)</para></listitem>
-<listitem><para>Nouvelles fonctions de comparaisons des xid/int
-(Hiroshi)</para></listitem>
-<listitem><para>Ajout de la précision vers les types de données TIME, TIMESTAMP
-et INTERVAL (Thomas)</para></listitem>
-<listitem><para>Modification de la ligique de coercion des types pour
-tenter en premier lieu les fonctions compatibles binairement
-(Tom)</para></listitem>
-<listitem><para>Nouvelle fonction encode() installée par défaut (Marko
-Kreen)</para></listitem>
-<listitem><para>Amélioration des fonctions de conversion to_*() (Karel
-Zak)</para></listitem>
-<listitem><para>Optimisation de LIKE/ILIKE lors de l'utilisation de codage
-sur un seul octet (Tatsuo)</para></listitem>
-<listitem><para>Nouvelles fonctions dans contrib/pgcrypto : crypt(),
-hmac(), encrypt(), gen_salt() (Marko Kreen)</para></listitem>
-<listitem><para>Bonne description de la fonction translate()
-(Bruce)</para></listitem>
-<listitem><para>Ajout de l'argument INTERVAL pour SET TIME ZONE
-(Thomas)</para></listitem>
-<listitem><para>Ajout de la syntaxe INTERVAL YEAR TO MONTH (etc.)
-(Thomas)</para></listitem>
-<listitem><para>Optimisation des fonctions length lors de l'utilisation de
-codage sur un seul octet (Tatsuo)</para></listitem>
-<listitem><para>Corrections de path_inter, path_distance, path_length,
-dist_ppath pour gérer les chemins fermés (Curtis Barrett, Tom)</para></listitem>
-<listitem><para>octet_length(text) renvoie maintenant une longueur non
-compressée (Tatsuo, Bruce)</para></listitem>
-<listitem><para>Gestion du nom complet "July" dans les littéraux date/time (Greg
-Sabino Mullane)</para></listitem>
-<listitem><para>Quelques appels de fonction datatype() sont maintenant évalués
-différemment</para></listitem>
-<listitem><para>Ajout du support pour les spécifications d'heure julienne
-et ISO (Thomas)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Internationalisation</title>
-<itemizedlist>
-<listitem><para>Support de la langue nationale dans psql,
-<application>pg_dump</>, libpq et le serveur (Peter E)</para></listitem>
-<listitem><para>Traductions des messages en chinois (simplifié, traditionnel),
-tchèque, français, allemand, hongrois, russe, suèdois (Peter E, Serguei A.
-Mokhov, Karel Zak, Weiping He, Zhenbang Wei, Kovacs Zoltan)</para></listitem>
-<listitem><para>Rend trim, ltrim, rtrim, btrim, lpad, rpad, translate
-conscient du multi-octets (Tatsuo)</para></listitem>
-<listitem><para>Ajout du support de LATIN5,6,7,8,9,10 (Tatsuo)</para></listitem>
-<listitem><para>Ajout du support de ISO 8859-5,6,7,8 (Tatsuo)</para></listitem>
-<listitem><para>Le bon LATIN5 signifie ISO-8859-9, non pas ISO-8859-5
-(Tatsuo)</para></listitem>
-<listitem><para>Rend mic2ascii() conscient du non ASCII
-(Tatsuo)</para></listitem>
-<listitem><para>Rejète les séquences de caractères multi-octets invalides
-(Tatsuo)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title><application>PL/pgSQL</></title>
-<itemizedlist>
-<listitem><para>Utilise maintenant les portails pour les boucles SELECT,
-permettant d'énormes ensembles de résultats (Jan)</para></listitem>
-<listitem><para>Support de CURSOR et de REFCURSOR (Jan)</para></listitem>
-<listitem><para>Peut maintenant renvoyer des curseurs
-ouverts (Jan)</para></listitem>
-<listitem><para>Ajout de ELSEIF (Klaus Reger)</para></listitem>
-<listitem><para>Amélioration des rapports d'erreurs PL/pgSQL, incluant
-l'emplacement de l'erreur (Tom)</para></listitem>
-<listitem><para>Autorisation des mots clés IS ou FOR dans la déclaration de
-curseurs pour compatibilité (Bruce)</para></listitem>
-<listitem><para>Correction de SELECT ... FOR UPDATE (Tom)</para></listitem>
-<listitem><para>Correction de PERFORM lorsqu'il renvoie plusieurs lignes
-(Tom)</para></listitem>
-<listitem><para>PL/pgSQL utilise le code de coercion de type du serveur
-(Tom)</para></listitem>
-<listitem><para>Correction d'une perte mémoire (Jan, Tom)</para></listitem>
-<listitem><para>Rend optionnel le point virgule en fin (Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>PL/Perl</title>
-<itemizedlist>
-<listitem><para>Nouveau PL/Perl sans confiance du serveur (Alex
-Pilosov)</para></listitem>
-<listitem><para>PL/Perl est maintenant construit sur quelques plateformes même
-si libperl n'est pas une bibliothèque partagée (Peter E)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>PL/Tcl</title>
-<itemizedlist>
-<listitem><para>Rapporte maintenant errorInfo (Vsevolod Lobko)</para></listitem>
-<listitem><para>Ajout de la fonction spi_lastoid
-(bob at redivi.com)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>PL/Python</title>
-<itemizedlist>
-<listitem><para>... est nouveau (Andrew Bosma)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title><application>psql</></title>
-<itemizedlist>
-<listitem><para>\d affiche les index dans un groupe unique et primaire
-(Christopher Kings-Lynne)</para></listitem>
-<listitem><para>Autorise les points virgules à la fin dans les commandes
-antislashs (Greg Sabino Mullane)</para></listitem>
-<listitem><para>Lecture du mot de passe à partir de /dev/tty si
-possible</para></listitem>
-<listitem><para>Force une nouvelle invite du mot de passe lors d'un
-changement d'utilisateur et de base de données (Tatsuo, Tom)</para></listitem>
-<listitem><para>Formate le bon nombre de colonnes pour Unicode
-(Patrice)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title><application>libpq</></title>
-<itemizedlist>
-<listitem><para>Nouvelle fonction PQescapeString() pour échapper les guillemets
-dans les chaînes de commande (Florian Weimer)</para></listitem>
-<listitem><para>Nouvelle fonction PQescapeBytea() échappe les chaînes
-binaires à utiliser comme des littéraux de chaînes SQL</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>JDBC</title>
-<itemizedlist>
-<listitem><para>Renvoie l'OID d'INSERT (Ken K)</para></listitem>
-<listitem><para>Gestion d'un plus grand nombre de types de données (Ken
-K)</para></listitem>
-<listitem><para>Gestion des guillemets simples et des retours chariots dans les
-chaînes (Ken K)</para></listitem>
-<listitem><para>Gestion des variables NULL (Ken K)</para></listitem>
-<listitem><para>Correction pour la gestion des fuseaux horaires (Barry
-Lind)</para></listitem>
-<listitem><para>Amélioration du support de Druid</para></listitem>
-<listitem><para>Autorisation des caractères à huit bits avec un serveur non
-compatible avec le multi-octets (Barry Lind)</para></listitem>
-<listitem><para>Support des types BIT, BINARY (Ned Wolpert)</para></listitem>
-<listitem><para>Réduction de l'utilisation de la mémoire (Michael Stephens, Dave
-Cramer)</para></listitem>
-<listitem><para>Mise à jour de DatabaseMetaData (Peter E)</para></listitem>
-<listitem><para>Ajout de DatabaseMetaData.getCatalogs() (Peter
-E)</para></listitem>
-<listitem><para>Corrections du codage (Anders Bengtsson)</para></listitem>
-<listitem><para>Méthodes get/setCatalog (Jason Davies)</para></listitem>
-<listitem><para>DatabaseMetaData.getColumns() renvoie maintenant les valeurs
-par défaut des colonnes (Jason Davies)</para></listitem>
-<listitem><para>Amélioration de la performance de DatabaseMetaData.getColumns()
-(Jeroen van Vianen)</para></listitem>
-<listitem><para>Rassemblement de JDBC1 et JDBC2 (Anders
-Bengtsson)</para></listitem>
-<listitem><para>Améliorations des performances des transactions (Barry
-Lind)</para></listitem>
-<listitem><para>Corrections sur les tableaux (Greg Zoller)</para></listitem>
-<listitem><para>Ajout de la sérialisation</para></listitem>
-<listitem><para>Correction du traitement en lots (Rene
-Pijlman)</para></listitem>
-<listitem><para>Réorganisation de la méthode ExecSQL (Anders
-Bengtsson)</para></listitem>
-<listitem><para>Corrections de getColumn() (Jeroen van Vianen)</para></listitem>
-<listitem><para>Correction de la fonction isWriteable() (Rene
-Pijlman)</para></listitem>
-<listitem><para>Amélioration du passage des tests de conformance JDBC2 (Rene
-Pijlman)</para></listitem>
-<listitem><para>Ajout du type bytea (Barry Lind)</para></listitem>
-<listitem><para>Ajout de isNullable() (Rene Pijlman)</para></listitem>
-<listitem><para>Corrections pour la suite de tests JDBC date/time (Liam
-Stewart)</para></listitem>
-<listitem><para>Correction sur SELECT 'id' AS xxx FROM table (Dave
-Cramer)</para></listitem>
-<listitem><para>Correction de DatabaseMetaData pour afficher la bonne précision
-(Mark Lillywhite)</para></listitem>
-<listitem><para>Nouvelles clés getImported/getExported (Jason
-Davies)</para></listitem>
-<listitem><para>Support des mots de passe cryptés MD5 (Jeremy
-Wohl)</para></listitem>
-<listitem><para>Correction pour réellement utiliser le cache des types (Ned
-Wolpert)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>ODBC</title>
-<itemizedlist>
-<listitem><para>Suppression de la limite sur la taille des requêtes
-(Hiroshi)</para></listitem>
-<listitem><para>Suppression de la limite sur la taille du champ texte
-(Hiroshi)</para></listitem>
-<listitem><para>Correction de SQLPrimaryKeys en mode multi-octets
-(Hiroshi)</para></listitem>
-<listitem><para>Autorisation des appels de procédure ODBC
-(Hiroshi)</para></listitem>
-<listitem><para>Amélioration de la gestion des booléens (Aidan
-Mountford)</para></listitem>
-<listitem><para>La plupart des options de configuration sont maintenant
-configurables via le DSN (Hiroshi)</para></listitem>
-<listitem><para>Corrections des performances du multi-octets
-(Hiroshi)</para></listitem>
-<listitem><para>Autorise l'utilisation du pilote avec iODBC ou unixODBC (Peter
-E)</para></listitem>
-<listitem><para>Support du cryptage des mots de passe MD5
-(Bruce)</para></listitem>
-<listitem><para>Ajout de plusieurs fonctions de compatibilité dans odbc.sql
-(Peter E)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title><application>ECPG</></title>
-<itemizedlist>
-<listitem><para>Implémentation de EXECUTE ... INTO (Christof
-Petig)</para></listitem>
-<listitem><para>Support du descripteur de plusieurs lignes (c'est-à-dire
-CARDINALITY) (Christof Petig)</para></listitem>
-<listitem><para>Correction pour les paramètres de GRANT (Lee
-Kindness)</para></listitem>
-<listitem><para>Correction d'un bogue sur INITIALLY DEFERRED</para></listitem>
-<listitem><para>Plusieurs corrections de bogues (Michael, Christof
-Petig)</para></listitem>
-<listitem><para>Allocation automatique pour les tableaux de variable (int
-*ind_p=NULL)</para></listitem>
-<listitem><para>Allocation automatique pour les tableaux de chaînes (char
-**foo_pp=NULL)</para></listitem>
-<listitem><para>Correction de ECPGfree_auto_mem</para></listitem>
-<listitem><para>Tous les noms de fonction avec un lien externe sont maintenant
-préfixés par ECPG</para></listitem>
-<listitem><para>Corrections pour les tableaux de structures
-(Michael)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Interfaces diverses</title>
-<itemizedlist>
-<listitem><para>Correction de fetchone() pour Python (Gerhard
-Haring)</para></listitem>
-<listitem><para>Utilisation d'UTF, Unicode dans Tcl lorsqu'approprié (Vsevolod
-Lobko, Reinhard Max)</para></listitem>
-<listitem><para>Ajout de COPY TO/FROM dans Tcl (ljb)</para></listitem>
-<listitem><para>Empêche la sortie des classes d'opérateurs d'index par défaut
-dans <application>pg_dump</> (Tom)</para></listitem>
-<listitem><para>Correction d'une perte mémoire dans libpgeasy
-(Bruce)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Construction et installation</title>
-<itemizedlist>
-<listitem><para>Corrections sur configure, le chargeur dynamique et les
-bibliothèques partagées (Peter E)</para></listitem>
-<listitem><para>Corrections dans le port QNX 4 (Bernd
-Tegge)</para></listitem>
-<listitem><para>Corrections dans les ports Cygwin et Windows (Jason
-Tishler, Gerhard Haring, Dmitry Yurtaev, Darko Prenosil, Mikhail
-Terekhov)</para></listitem>
-<listitem><para>Corrections pour les échecs de communication par socket sous
-Windows (Magnus, Mikhail Terekhov)</para></listitem>
-<listitem><para>Correction de compilation pour Hurd (Oliver
-Elphick)</para></listitem>
-<listitem><para>Corrections sur BeOS (Cyril Velter)</para></listitem>
-<listitem><para>Suppression de configure --enable-unicode-conversion, activé
-maintenant par le multi-octets (Tatsuo)</para></listitem>
-<listitem><para>Corrections pour AIX (Tatsuo, Andreas)</para></listitem>
-<listitem><para>Correction du make parallèle (Peter E)</para></listitem>
-<listitem><para>Installation des pages man du langage SQL dans des répertoires
-spécifiques aux OS (Peter E)</para></listitem>
-<listitem><para>Renommage de config.h en pg_config.h (Peter E)</para></listitem>
-<listitem><para>Réorganisation de l'emplacement d'installation des fichiers
-d'en-tête (Peter E)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Code source</title>
-<itemizedlist>
-<listitem><para>Suppression de SEP_CHAR (Bruce)</para></listitem>
-<listitem><para>Nouvelles accroches GUC (Tom)</para></listitem>
-<listitem><para>Assemblage de GUC et de la gestion de la ligne de commandes
-(Marko Kreen)</para></listitem>
-<listitem><para>Suppression de EXTEND INDEX (Martijn van Oosterhout,
-Tom)</para></listitem>
-<listitem><para>Nouvel outil pgjindent pour indenter le code java
-(Bruce)</para></listitem>
-<listitem><para>Suppression de la définition de true/false lors d'une
-compilation sous C++ (Leandro Fanzone, Tom)</para></listitem>
-<listitem><para>Corrections à pgindent (Bruce, Tom)</para></listitem>
-<listitem><para>Remplacement de strcasecmp() avec strcmp() lorsque cela est
-approprié (Peter E)</para></listitem>
-<listitem><para>Amélioration de la portabilité dynahash (Tom)</para></listitem>
-<listitem><para>Ajout de l'utilisation de 'volatile' dans les structures
-spinlock</para></listitem>
-<listitem><para>Amélioration de la logique de gestion des signaux
-(Tom)</para></listitem>
-</itemizedlist>
- </sect3>
-
- <sect3>
- <title>Contrib</title>
-<itemizedlist>
-<listitem><para>Nouveau contrib/rtree_gist (Oleg Bartunov, Teodor
-Sigaev)</para></listitem>
-<listitem><para>Nouveau contrib/tsearch, indexage de textes complets (Oleg,
-Teodor Sigaev)</para></listitem>
-<listitem><para>Ajout de contrib/dblink pour l'accès distant aux bases de
-données (Joe Conway)</para></listitem>
-<listitem><para>Outil de conversion Oracle contrib/ora2pg (Gilles
-Darold)</para></listitem>
-<listitem><para>Outil de conversion XML contrib/xml (John
-Gray)</para></listitem>
-<listitem><para>Corrections sur contrib/fulltextindex (Christopher
-Kings-Lynne)</para></listitem>
-<listitem><para>Nouveau contrib/fuzzystrmatch avec levenshtein et métaphone,
-rassemblement de soundex (Joe Conway)</para></listitem>
-<listitem><para>Ajout des requêtes booléennes dans contrib/intarray, des
-recherches binaires, et correctifs (Oleg Bartunov)</para></listitem>
-<listitem><para>Nouvel outil pg_upgrade (Bruce)</para></listitem>
-<listitem><para>Ajout de nouvelles options à pg_resetxlog (Bruce,
-Tom)</para></listitem>
-</itemizedlist>
- </sect3>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-1-3">
- <title>Sortie 7.1.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2001-08-15</simpara>
- </note>
-
- <sect2>
- <title>Migration vers la version 7.1.3</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant 7.1.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Remove unused WAL segements of large transactions (Tom)
-Multiaction rule fix (Tom)
-PL/pgSQL memory allocation fix (Jan)
-VACUUM buffer fix (Tom)
-Regression test fixes (Tom)
-pg_dump fixes for GRANT/REVOKE/comments on views, user-defined types (Tom)
-Fix subselects with DISTINCT ON or LIMIT (Tom)
-BeOS fix
-Disable COPY TO/FROM a view (Tom)
-Cygwin build (Jason Tishler)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-1-2">
- <title>Sortie 7.1.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2001-05-11</simpara>
- </note>
-
- <para>
- Il n'y a qu'une seule correction depuis la 7.1.1.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.1.2</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant 7.1.X.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Correction des SELECT qui ne renvoient aucune ligne dans PL/pgSQL
-Correction pour l'arrêt brutal suite à l'utilisation d'un antislash dans psql
-Correction du droit sur l'intégrité référentielles
-Corrections sur l'optimiseur
-Nettoyages de pg_dump
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-1-1">
- <title>Sortie 7.1.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2001-05-05</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.1.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.1.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.1.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Correction pour l'opérateur numérique MODULO (Tom)
-Corrections sur pg_dump (Philip)
-pg_dump peut sauvegarder des bases de données d'une version 7.0 (Philip)
-Corrections sur readline 4.2 (Peter E)
-Corrections sur JOIN (Tom)
-Corrections sur AIX, MSWIN, VAX, N32K (Tom)
-Corrections sur Multibytes (Tom)
-Corrections sur Unicode (Tatsuo)
-Amélioration de l'optimiseur (Tom)
-Correction pour les lignes complètes dans les fonctions (Tom)
-Correction pour pg_ctl et les chaînes d'options comprenant des espaces (Peter E)
-Corrections sur ODBC (Hiroshi)
-EXTRACT prend maintenant prendre un argument de type chaîne (Thomas)
-Corrections sur Python (Darcy)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-1">
- <title>Sortie 7.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2001-04-13</simpara>
- </note>
-
- <para>
- Cette version s'occupe principalement de la suppression des limitations
- qui ont existé dans le code de <productname>PostgreSQL</productname>
- depuis de nombreuses années.
- </para>
-
- <para>
- Modifications majeures dans cette version :
- </para>
-
- <variablelist>
- <varlistentry>
- <term>
- Write-ahead Log (WAL)
- </term>
- <listitem>
- <para>
-Pour maintenant la cohérence dans le cas d'un arrêt brutal du système
-d'exploitation, les précédentes versions de <productname>PostgreSQL</productname>
-forçaient les modifications des données sur disque avant chaque validation de
-transaction. Avec les WAL, seul un fichier de traces doit être mis sur disque,
-ce qui améliore grandement les performances. Si vous utilisiez -F dans les
-précédentes versions pour désactiver les envois sur le disque, vous pourriez
-considérer l'arrêt de l'utilisation de cette option.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- TOAST
- </term>
- <listitem>
- <para>
- TOAST - Les précédentes versions avaient une limite de longueur
-de la ligne, typiquement 8 Ko - 32 Ko. Cette limite rendait
-difficile le stockage de champs de texte longs. Avec TOAST, les longues
-lignes de longueur indéfinie peuvent être stockées avec de bonnes performances.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Jointures externes
- </term>
- <listitem>
- <para>
-Nous supportons maintenant les jointures externes. Le contournement UNION/NOT
-IN pour les jointures externes n'est plus nécessaire. Nous utilisons la syntaxe
-SQL92 des jointures externes.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Gestionnaire de fonctions
- </term>
- <listitem>
- <para>
-Le précédent gestionnaire de fonctions C ne gérait pas correctement les valeurs
-NULL, pas plus qu'il ne supportait les <acronym>CPU</acronym> 64 bits (Alpha).
-Le nouveau gestionnaire de fonctions le fait. Vous pouvez continuer à utiliser
-vos anciennes fonctions personnalisées mais vous pourriez avoir besoin de les
-réécrire dans le futur pour utiliser la nouvelle interface d'appel du
-gestionnaire de fonctions.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Requêtes complexes
- </term>
- <listitem>
- <para>
-Un grand nombre des requêtes complexes, qui n'étaient pas supportées dans les
-précédentes versions, fonctionnent maintenant. Beaucoup de combinaisons de
-vues, d'agrégats, UNION, LIMIT, de curseurs, de sous-requêtes et de tables
-héritées fonctionnent maintenant sans soucis. Les tables héritées sont
-maintenant accédées par défaut. Les sous-requêtes dans FROM sont aussi
-supportées.
- </para>
- </listitem>
- </varlistentry>
-
- </variablelist>
-
- <sect2>
- <title>Migration vers la version 7.1</title>
-
- <para>
- Une sauvegarde/restauration utilisant pg_dump est requis pour ceux
- souhaitant migrer leur données des versions précédentes.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Many multibyte/Unicode/locale fixes (Tatsuo and others)
-More reliable ALTER TABLE RENAME (Tom)
-Kerberos V fixes (David Wragg)
-Fix for INSERT INTO...SELECT where targetlist has subqueries (Tom)
-Prompt username/password on standard error (Bruce)
-Large objects inv_read/inv_write fixes (Tom)
-Fixes for to_char(), to_date(), to_ascii(), and to_timestamp() (Karel,
- Daniel Baldoni)
-Prevent query expressions from leaking memory (Tom)
-Allow UPDATE of arrays elements (Tom)
-Wake up lock waiters during cancel (Hiroshi)
-Fix rare cursor crash when using hash join (Tom)
-Fix for DROP TABLE/INDEX in rolled-back transaction (Hiroshi)
-Fix psql crash from \l+ if MULTIBYTE enabled (Peter E)
-Fix truncation of rule names during CREATE VIEW (Ross Reedstrom)
-Fix PL/perl (Alex Kapranoff)
-Disallow LOCK on views (Mark Hollomon)
-Disallow INSERT/UPDATE/DELETE on views (Mark Hollomon)
-Disallow DROP RULE, CREATE INDEX, TRUNCATE on views (Mark Hollomon)
-Allow PL/pgSQL accept non-ASCII identifiers (Tatsuo)
-Allow views to proper handle GROUP BY, aggregates, DISTINCT (Tom)
-Fix rare failure with TRUNCATE command (Tom)
-Allow UNION/INTERSECT/EXCEPT to be used with ALL, subqueries, views,
- DISTINCT, ORDER BY, SELECT...INTO (Tom)
-Fix parser failures during aborted transactions (Tom)
-Allow temporary relations to properly clean up indexes (Bruce)
-Fix VACUUM problem with moving rows in same page (Tom)
-Modify pg_dump to better handle user-defined items in template1 (Philip)
-Allow LIMIT in VIEW (Tom)
-Require cursor FETCH to honor LIMIT (Tom)
-Allow PRIMARY/FOREIGN Key definitions on inherited columns (Stephan)
-Allow ORDER BY, LIMIT in subqueries (Tom)
-Allow UNION in CREATE RULE (Tom)
-Make ALTER/DROP TABLE rollback-able (Vadim, Tom)
-Store initdb collation in pg_control so collation cannot be changed (Tom)
-Fix INSERT...SELECT with rules (Tom)
-Fix FOR UPDATE inside views and subselects (Tom)
-Fix OVERLAPS operators conform to SQL92 spec regarding NULLs (Tom)
-Fix lpad() and rpad() to handle length less than input string (Tom)
-Fix use of NOTIFY in some rules (Tom)
-Overhaul btree code (Tom)
-Fix NOT NULL use in Pl/pgSQL variables (Tom)
-Overhaul GIST code (Oleg)
-Fix CLUSTER to preserve constraints and column default (Tom)
-Improved deadlock detection handling (Tom)
-Allow multiple SERIAL columns in a table (Tom)
-Prevent occasional index corruption (Vadim)
-
-Enhancements
-------------
-Add OUTER JOINs (Tom)
-Function manager overhaul (Tom)
-Allow ALTER TABLE RENAME on indexes (Tom)
-Improve CLUSTER (Tom)
-Improve ps status display for more platforms (Peter E, Marc)
-Improve CREATE FUNCTION failure message (Ross)
-JDBC improvements (Peter, Travis Bauer, Christopher Cain, William Webber,
- Gunnar)
-Grand Unified Configuration scheme/GUC. Many options can now be set in
- data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
-Improved handling of file descriptor cache (Tom)
-New warning code about auto-created table alias entries (Bruce)
-Overhaul initdb process (Tom, Peter E)
-Overhaul of inherited tables; inherited tables now accessed by default;
- new ONLY key word prevents it (Chris Bitmead, Tom)
-ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
- Michael Fork)
-Allow renaming of temp tables (Tom)
-Overhaul memory manager contexts (Tom)
-pg_dumpall uses CREATE USER or CREATE GROUP rather using COPY (Peter E)
-Overhaul pg_dump (Philip Warner)
-Allow pg_hba.conf secondary password file to specify only username (Peter E)
-Allow TEMPORARY or TEMP key word when creating temporary tables (Bruce)
-New memory leak checker (Karel)
-New SET SESSION CHARACTERISTICS (Thomas)
-Allow nested block comments (Thomas)
-Add WITHOUT TIME ZONE type qualifier (Thomas)
-New ALTER TABLE ADD CONSTRAINT (Stephan)
-Use NUMERIC accumulators for INTEGER aggregates (Tom)
-Overhaul aggregate code (Tom)
-New VARIANCE and STDDEV() aggregates
-Improve dependency ordering of pg_dump (Philip)
-New pg_restore command (Philip)
-New pg_dump tar output option (Philip)
-New pg_dump of large objects (Philip)
-New ESCAPE option to LIKE (Thomas)
-New case-insensitive LIKE - ILIKE (Thomas)
-Allow functional indexes to use binary-compatible type (Tom)
-Allow SQL functions to be used in more contexts (Tom)
-New pg_config utility (Peter E)
-New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
- (Jan)
-New PL/pgSQL GET DIAGNOSTICS statement for SPI value access (Jan)
-New quote_identifiers() and quote_literal() functions (Jan)
-New ALTER TABLE table OWNER TO user command (Mark Hollomon)
-Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)
-Update PyGreSQL to version 3.1 (D'Arcy)
-Store tables as files named by OID (Vadim)
-New SQL function setval(seq,val,bool) for use in pg_dump (Philip)
-Require DROP VIEW to remove views, no DROP TABLE (Mark)
-Allow DROP VIEW view1, view2 (Mark)
-Allow multiple objects in DROP INDEX, DROP RULE, and DROP TYPE (Tom)
-Allow automatic conversion to/from Unicode (Tatsuo, Eiji)
-New /contrib/pgcrypto hashing functions (Marko Kreen)
-New pg_dumpall --globals-only option (Peter E)
-New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
-New AT TIME ZONE syntax (Thomas)
-Allow location of Unix domain socket to be configurable (David J. MacKenzie)
-Allow postmaster to listen on a specific IP address (David J. MacKenzie)
-Allow socket path name to be specified in hostname by using leading slash
- (David J. MacKenzie)
-Allow CREATE DATABASE to specify template database (Tom)
-New utility to convert MySQL schema dumps to SQL92 and PostgreSQL (Thomas)
-New /contrib/rserv replication toolkit (Vadim)
-New file format for COPY BINARY (Tom)
-New /contrib/oid2name to map numeric files to table names (B Palmer)
-New "idle in transaction" ps status message (Marc)
-Update to pgaccess 0.98.7 (Constantin Teodorescu)
-pg_ctl now defaults to -w (wait) on shutdown, new -l (log) option
-Add rudimentary dependency checking to pg_dump (Philip)
-
-Types
------
-Fix INET/CIDR type ordering and add new functions (Tom)
-Make OID behave as an unsigned type (Tom)
-Allow BIGINT as synonym for INT8 (Peter E)
-New int2 and int8 comparison operators (Tom)
-New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
-CHAR() no longer faster than VARCHAR() because of TOAST (Tom)
-New GIST seg/cube examples (Gene Selkov)
-Improved round(numeric) handling (Tom)
-Fix CIDR output formatting (Tom)
-New CIDR abbrev() function (Tom)
-
-Performance
------------
-Write-Ahead Log (WAL) to provide crash recovery with less performance
- overhead (Vadim)
-ANALYZE stage of VACUUM no longer exclusively locks table (Bruce)
-Reduced file seeks (Denis Perchine)
-Improve BTREE code for duplicate keys (Tom)
-Store all large objects in a single table (Denis Perchine, Tom)
-Improve memory allocation performance (Karel, Tom)
-
-Source Code
------------
-New function manager call conventions (Tom)
-SGI portability fixes (David Kaelbling)
-New configure --enable-syslog option (Peter E)
-New BSDI README (Bruce)
-configure script moved to top level, not /src (Peter E)
-Makefile/configuration/compilation overhaul (Peter E)
-New configure --with-python option (Peter E)
-Solaris cleanups (Peter E)
-Overhaul /contrib Makefiles (Karel)
-New OpenSSL configuration option (Magnus, Peter E)
-AIX fixes (Andreas)
-QNX fixes (Maurizio)
-New heap_open(), heap_openr() API (Tom)
-Remove colon and semi-colon operators (Thomas)
-New pg_class.relkind value for views (Mark Hollomon)
-Rename ichar() to chr() (Karel)
-New documentation for btrim(), ascii(), chr(), repeat() (Karel)
-Fixes for NT/Cygwin (Pete Forman)
-AIX port fixes (Andreas)
-New BeOS port (David Reid, Cyril Velter)
-Add proofreader's changes to docs (Addison-Wesley, Bruce)
-New Alpha spinlock code (Adriaan Joubert, Compaq)
-UnixWare port overhaul (Peter E)
-New Darwin/MacOS X port (Peter Bierman, Bruce Hartzler)
-New FreeBSD Alpha port (Alfred)
-Overhaul shared memory segments (Tom)
-Add IBM S/390 support (Neale Ferguson)
-Moved macmanuf to /contrib (Larry Rosenman)
-Syslog improvements (Larry Rosenman)
-New template0 database that contains no user additions (Tom)
-New /contrib/cube and /contrib/seg GIST sample code (Gene Selkov)
-Allow NetBSD's libedit instead of readline (Peter)
-Improved assembly language source code format (Bruce)
-New contrib/pg_logger
-New --template option to createdb
-New contrib/pg_control utility (Oliver)
-New FreeBSD tools ipc_check, start-scripts/freebsd
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-0-3">
- <title>Sortie 7.0.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2000-11-11</simpara>
- </note>
-
- <para>
- Cette version comporte plusieurs corrections sur la version 7.0.2.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.0.3</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant une version 7.0.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Corrections sur Jdbc (Peter)
-Corrections sur les objets larges (Tom)
-Correction d'un trou dans COPY WITH OIDS (Tom)
-Correction du parcours d'index inverse (Tom)
-Correction de SELECT ... FOR UPDATE pour qu'il vérifie les clés dupliquées
-(Hiroshi)
-Ajout de --enable-syslog à configure (Marc)
-Correction de l'annulation d'une transaction à la fin du serveur dans de rares
-cas (Tom)
-Correction sur \l+ de psql lorsque le multi-octets est activé (Tatsuo)
-Autorise PL/pgSQL à accepter les identifiants non ascii (Tatsuo)
-Fait que vacuum vide toujours les tampons (Tom)
-Correction pour autoriser l'annulation lors de l'attente d'un verrou (Hiroshi)
-Correction d'un problème d'allocation mémoire dans le code d'authentification de
-l'utilisateur (Tom)
-Suppression d'une utilisation boguée de int4out() (Tom)
-Corrections pour de nombreuses sous-requêtes dans COALESCE ou
-BETWEEN (Tom)
-Corrections pour les déclencheurs en échec sur un en-tête ouvert dans certains
-cas (Jeroen van Vianen)
-Correction pour la sélectivité erronée des différences (Tom)
-Correction pour l'utilisation erronée de strcmp() (Tom)
-Correction du bogue où le gestionnaire de stockage accède à des éléments en
-dehors de la fin du fichier (Tom)
-Correction pour inclure le message errno du noyau dans tous les messages elog
-de smgr (Tom)
-Correction pour le chemin '.' ne faisant pas partie du PATH au moment de la
-construction (SL Baur)
-Correction pour l'erreur de manque de descripteurs de fichiers (Tom)
-Correction pour sauvegarder le drapeau 'iscachable' des fonctions dans pg_dump
-(Tom)
-Correction pour les sous-requêtes dans la liste des cibles du nœud Append
-(Tom)
-Correction pour les plans de jointures assemblées (Tom)
-Correction de l'échec de TRUNCATE sur les relations avec index (Tom)
-Évite le redémarrage de toute la base de données sur une erreur d'écriture
-(Hiroshi)
-Correction de nodeMaterial pour honorer chgParam en recalculant sa sortie (Tom)
-Correction du problème de VACUUM lors du déplacement de la chaîne de mise à jour
-des versions de lignes lorsque la source et la destination d'une version de
-ligne se trouve sur la même page (Tom)
-Correction de user.c CommandCounterIncrement (Tom)
-Correction des problèmes de limite AM/PM dans to_char() (Karel Zak)
-Correction de la gestion de l'agrégat TIME (Tom)
-Correction de to_char() pour éviter la génération d'un codedump sur les
-entrées NULL (Tom)
-Correction d'un tampon (Tom)
-Correction pour les insertion/copie de chaînes multi-octets plus longues dans
-des types de données char() (Tatsuo)
-Correction sur les arrêt brutaux du moteur, à l'annulation (Tom)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-0-2">
- <title>Sortie 7.0.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2000-06-05</simpara>
- </note>
-
- <para>
- C'est un nouveau paquetage de 7.0.1 avec une documentation ajoutée.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 7.0.2</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Ajout de la documentation dans l'archive tar.
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-7-0-1">
- <title>Sortie 7.0.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2000-06-01</simpara>
- </note>
-
- <para>
- Ceci est une version nettoyée de la 7.0.
- </para>
-
- <sect2>
- <title>Migration vers la version 7.0.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 7.0.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Correction de nombreux problèmes avec CLUSTER (Tom)
-Autorise le fonctionnement de ALTER TABLE RENAME avec les index (Tom)
-Correction de plpgsql pour gérer datetime->timestamp et timespan->interval
-(Bruce)
-Nouvelle option --with-setproctitle de configure pour utiliser setproctitle()
-(Marc, Bruce)
-Correction l'erreur de décalage d'un dans ResultSet à partir de la 6.5.3 et
-ultérieur.
-Corrections sur ResultSet de jdbc (Joseph Shraibman)
-Configuration de l'optimiseur (Tom)
-Correction de la création d'un utilisateur pour pgaccess
-Correction pour les échecs d'UNLISTEN
-Corrections sur IRIX (David Kaelbling)
-Corrections sur QNX (Andreas Kardos)
-Réduction du niveau de verrou pour COPY IN (Tom)
-Modification de libpqeasy pour utiliser les paramètres de style PQconnectdb()
-(Bruce)
-Correction de pg_dump pour gérer les index sur les OID (Tom)
-Correction d'une petite perte mémoire (Tom)
-Correction de createdb/dropdb pour Solaris (Tatsuo)
-Correction pour les connexions non bloquantes (Alfred Perlstein)
-Correction pour une récupération sale après des échecs de RENAME TABLE (Tom)
-Copie de pg_ident.conf.sample dans le répertoire /lib à l'installation (Bruce)
-Ajout du support de SJIS UDC (NEC selection IBM kanji) (Eiji Tokuya)
-Correction des messages syslog trop longs (Tatsuo)
-Correction d'un problème avec les index trop longs entre guillemets (Tom)
-Correction de ResultSet.getTimestamp() pour JDBC (Gregory Krasnow & Floyd
-Marinescu)
-Modifications d'ecpg (Michael)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-7-0">
- <title>Sortie 7.0</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>2000-05-08</simpara>
- </note>
-
- <para>
- Cette version contient de nombreuses améliorations dans beaucoup de
- domaines, démontrant l'acroissement continu de
- <productname>PostgreSQL</productname>. Il y a plus d'améliorations et de
- corrections dans la 7.0 que dans n'importe quelle version précédente. Les
- développeurs ont confiance dans le fait qu'il s'agit de la meilleure version
- à ce jour ; nous avons fait de notre mieux pour sortir des versions
- solides et celle-ci ne fait pas exception.
- </para>
-
- <para>
- Modifications majeures dans cette version :
- </para>
-
- <variablelist>
- <varlistentry>
- <term>
- Clés étrangères
- </term>
- <listitem>
- <para>
- Les clés étrangères sont maintenant implémentées avec l'exception des
- clés étrangères PARTIAL MATCH. Beaucoup d'utilisateurs ont demandé cette
- fonctionnalité et nous sommes heureux de leur offrir.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Revue de l'optimiseur
- </term>
- <listitem>
- <para>
- En continuant sur un travail commencé un an auparavant, l'optimiseur a
- été amélioré, permettant la sélection de meilleurs plans de requêtes et
- de performance plus rapide avec une utilisation moindre de la mémoire.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Mise à jour de <application>psql</application>
- </term>
- <listitem>
- <para>
- <application>psql</application>, notre terminal interactif, a été mis à
- jour avec une variété de nouvelles fonctionnalités. Voir la page de
- manuel de <application>psql</application> pour les détails.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Syntaxe de jointure
- </term>
- <listitem>
- <para>
- La syntaxe de jointure SQL92 est maintenant supportée, bien qu'il ne
- s'agisse que des <literal>INNER JOIN</> actuellement. <literal>JOIN</>,
- <literal>NATURAL JOIN</>, <literal>JOIN</>/<literal>USING</> et
- <literal>JOIN</>/<literal>ON</> sont disponibles ainsi que les noms de
- corrélation des colonnes.
- </para>
- </listitem>
- </varlistentry>
-
- </variablelist>
-
- <sect2>
- <title>Migration vers la version 7.0</title>
-
- <para>
- Une sauvegarde/restauration utilisant <application>pg_dump</application>
- est requis pour ceux souhaitant migrer leur données des versions
- précédentes de <productname>PostgreSQL</productname>. Pour ceux mettant à
- jour à partir de 6.5.*, vous pourriez utiliser à la place
- <application>pg_upgrade</application> pour mettre à jour cette
- version ; néanmoins, une installation complète avec
- sauvegarde/restauration est toujours la méthode la plus robuste pour les
- mises à jour.
- </para>
-
- <para>
- Les problèmes d'interface et de compatibilité à considérer pour cette
- nouvelle version incluent :
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- Les types date/time <type>datetime</type> et
- <type>timespan</type> ont été remplacé par les types définis par SQL92
- <type>timestamp</type> et <type>interval</type>. Bien qu'il y ait eu
- quelques efforts pour faciliter la transition en permettant à
- <productname>PostgreSQL</productname> de reconnaitre les noms de type
- obsolètes et de les traduire dans les noms des nouveaux types, ce
- mécanisme n'est pas complètement transparent pour votre application
- existante.
- </para>
- </listitem>
-
- <listitem>
- <para>
- L'optimiseur a été substantiellement amélioré dans le domaine de
- l'estimation du coût d'une requête. Dans certains cas, ceci résultera en
- des temps de requêtes moindres car l'optimiseur fera un meilleur choix
- de plan de requêtes. Néanmoins, sur un petit nombre de cas, impliquant
- habituellement des distributions pathologiques de données, vos temps de
- requêtes pourraient augmenter. Si vous gérez de gros volumes de données,
- vous pourriez vouloir vérifier vos requêtes au niveau de leur
- performance.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Les interfaces <acronym>JDBC</acronym> et <acronym>ODBC</acronym> ont
- été mises à jour et étendues.
- </para>
- </listitem>
-
- <listitem>
- <para>
- La fonction de chaîne <function>CHAR_LENGTH</function> est maintenant
- une fonction native. Les versions précédentes traduisaient ceci en un
- appel à <function>LENGTH</function>, ce qui pouvait résulter en une
- ambiguïté avec les autres types implémentant <function>LENGTH</function>
- tels que les types géométriques.
- </para>
- </listitem>
- </itemizedlist>
-
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Prevent function calls exceeding maximum number of arguments (Tom)
-Improve CASE construct (Tom)
-Fix SELECT coalesce(f1,0) FROM int4_tbl GROUP BY f1 (Tom)
-Fix SELECT sentence.words[0] FROM sentence GROUP BY sentence.words[0] (Tom)
-Fix GROUP BY scan bogue (Tom)
-Improvements in SQL grammar processing (Tom)
-Fix for views involved in INSERT ... SELECT ... (Tom)
-Fix for SELECT a/2, a/2 FROM test_missing_target GROUP BY a/2 (Tom)
-Fix for subselects in INSERT ... SELECT (Tom)
-Prevent INSERT ... SELECT ... ORDER BY (Tom)
-Fixes for relations greater than 2GB, including vacuum
-Improve propagating system table changes to other backends (Tom)
-Improve propagating user table changes to other backends (Tom)
-Fix handling of temp tables in complex situations (Bruce, Tom)
-Allow table locking at table open, improving concurrent reliability (Tom)
-Properly quote sequence names in pg_dump (Ross J. Reedstrom)
-Prevent DROP DATABASE while others accessing
-Prevent any rows from being returned by GROUP BY if no rows processed (Tom)
-Fix SELECT COUNT(1) FROM table WHERE ...' if no rows matching WHERE (Tom)
-Fix pg_upgrade so it works for MVCC (Tom)
-Fix for SELECT ... WHERE x IN (SELECT ... HAVING SUM(x) > 1) (Tom)
-Fix for "f1 datetime DEFAULT 'now'" (Tom)
-Fix problems with CURRENT_DATE used in DEFAULT (Tom)
-Allow comment-only lines, and ;;; lines too. (Tom)
-Improve recovery after failed disk writes, disk full (Hiroshi)
-Fix cases where table is mentioned in FROM but not joined (Tom)
-Allow HAVING clause without aggregate functions (Tom)
-Fix for "--" comment and no trailing newline, as seen in perl interface
-Improve pg_dump failure error reports (Bruce)
-Allow sorts and hashes to exceed 2GB file sizes (Tom)
-Fix for pg_dump dumping of inherited rules (Tom)
-Fix for NULL handling comparisons (Tom)
-Fix inconsistent state caused by failed CREATE/DROP commands (Hiroshi)
-Fix for dbname with dash
-Prevent DROP INDEX from interfering with other backends (Tom)
-Fix file descriptor leak in verify_password()
-Fix for "Unable to identify an operator =$" problem
-Fix ODBC so no segfault if CommLog and Debogue enabled (Dirk Niggemann)
-Fix for recursive exit call (Massimo)
-Fix for extra-long timezones (Jeroen van Vianen)
-Make pg_dump preserve primary key information (Peter E)
-Prevent databases with single quotes (Peter E)
-Prevent DROP DATABASE inside transaction (Peter E)
-ecpg memory leak fixes (Stephen Birch)
-Fix for SELECT NULL::text, SELECT int4fac(NULL) and SELECT 2 + (NULL) (Tom)
-Y2K timestamp fix (Massimo)
-Fix for VACUUM 'HEAP_MOVED_IN was not expected' errors (Tom)
-Fix for views with tables/columns containing spaces (Tom)
-Prevent privileges on indexes (Peter E)
-Fix for spinlock stuck problem when error is generated (Hiroshi)
-Fix ipcclean on Linux
-Fix handling of NULL constraint conditions (Tom)
-Fix memory leak in odbc driver (Nick Gorham)
-Fix for privilege check on UNION tables (Tom)
-Fix to allow SELECT 'a' LIKE 'a' (Tom)
-Fix for SELECT 1 + NULL (Tom)
-Fixes to CHAR
-Fix log() on numeric type (Tom)
-Deprecate ':' and ';' operators
-Allow vacuum of temporary tables
-Disallow inherited columns with the same name as new columns
-Recover or force failure when disk space is exhausted (Hiroshi)
-Fix INSERT INTO ... SELECT with AS columns matching result columns
-Fix INSERT ... SELECT ... GROUP BY groups by target columns not source columns
-(Tom)
-Fix CREATE TABLE test (a char(5) DEFAULT text '', b int4) with INSERT (Tom)
-Fix UNION with LIMIT
-Fix CREATE TABLE x AS SELECT 1 UNION SELECT 2
-Fix CREATE TABLE test(col char(2) DEFAULT user)
-Fix mismatched types in CREATE TABLE ... DEFAULT
-Fix SELECT * FROM pg_class where oid in (0,-1)
-Fix SELECT COUNT('asdf') FROM pg_class WHERE oid=12
-Prevent user who can create databases can modifying pg_database table (Peter E)
-Fix btree to give a useful elog when key > 1/2 (page - overhead) (Tom)
-Fix INSERT of 0.0 into DECIMAL(4,4) field (Tom)
-
-Enhancements
-------------
-New CLI interface include file sqlcli.h, based on SQL3/SQL98
-Remove all limits on query length, row length limit still exists (Tom)
-Update jdbc protocol to 2.0 (Jens Glaser <email>jens at jens.de</email>)
-Add TRUNCATE command to quickly truncate relation (Mike Mascari)
-Fix to give super user and createdb user proper update catalog rights (Peter E)
-Allow ecpg bool variables to have NULL values (Christof)
-Issue ecpg error if NULL value for variable with no NULL indicator (Christof)
-Allow ^C to cancel COPY command (Massimo)
-Add SET FSYNC and SHOW PG_OPTIONS commands(Massimo)
-Function name overloading for dynamically-loaded C functions (Frankpitt)
-Add CmdTuples() to libpq++(Vince)
-New CREATE CONSTRAINT TRIGGER and SET CONSTRAINTS commands(Jan)
-Allow CREATE FUNCTION/WITH clause to be used for all language types
-configure --enable-debogue adds -g (Peter E)
-configure --disable-debogue removes -g (Peter E)
-Allow more complex default expressions (Tom)
-First real FOREIGN KEY constraint trigger functionality (Jan)
-Add FOREIGN KEY ... MATCH FULL ... ON DELETE CASCADE (Jan)
-Add FOREIGN KEY ... MATCH <unspecified> referential actions (Don Baccus)
-Allow WHERE restriction on ctid (physical heap location) (Hiroshi)
-Move pginterface from contrib to interface directory, rename to pgeasy (Bruce)
-Change pgeasy connectdb() parameter ordering (Bruce)
-Require SELECT DISTINCT target list to have all ORDER BY columns (Tom)
-Add Oracle's COMMENT ON command (Mike Mascari <email>mascarim at yahoo.com</email>)
-libpq's PQsetNoticeProcessor function now returns previous hook(Peter E)
-Prevent PQsetNoticeProcessor from being set to NULL (Peter E)
-Make USING in COPY optional (Bruce)
-Allow subselects in the target list (Tom)
-Allow subselects on the left side of comparison operators (Tom)
-New parallel regression test (Jan)
-Change backend-side COPY to write files with permissions 644 not 666 (Tom)
-Force permissions on PGDATA directory to be secure, even if it exists (Tom)
-Added psql LASTOID variable to return last inserted oid (Peter E)
-Allow concurrent vacuum and remove pg_vlock vacuum lock file (Tom)
-Add privilege check for vacuum (Peter E)
-New libpq functions to allow asynchronous connections: PQconnectStart(),
- PQconnectPoll(), PQresetStart(), PQresetPoll(), PQsetenvStart(),
- PQsetenvPoll(), PQsetenvAbort (Ewan Mellor)
-New libpq PQsetenv() function (Ewan Mellor)
-create/alter user extension (Peter E)
-New postmaster.pid and postmaster.opts under $PGDATA (Tatsuo)
-New scripts for create/drop user/db (Peter E)
-Major psql overhaul (Peter E)
-Add const to libpq interface (Peter E)
-New libpq function PQoidValue (Peter E)
-Show specific non-aggregate causing problem with GROUP BY (Tom)
-Make changes to pg_shadow recreate pg_pwd file (Peter E)
-Add aggregate(DISTINCT ...) (Tom)
-Allow flag to control COPY input/output of NULLs (Peter E)
-Make postgres user have a password by default (Peter E)
-Add CREATE/ALTER/DROP GROUP (Peter E)
-All administration scripts now support --long options (Peter E, Karel)
-Vacuumdb script now supports --all option (Peter E)
-ecpg new portable FETCH syntax
-Add ecpg EXEC SQL IFDEF, EXEC SQL IFNDEF, EXEC SQL ELSE, EXEC SQL ELIF
- and EXEC SQL ENDIF directives
-Add pg_ctl script to control backend start-up (Tatsuo)
-Add postmaster.opts.default file to store start-up flags (Tatsuo)
-Allow --with-mb=SQL_ASCII
-Increase maximum number of index keys to 16 (Bruce)
-Increase maximum number of function arguments to 16 (Bruce)
-Allow configuration of maximum number of index keys and arguments (Bruce)
-Allow unprivileged users to change their passwords (Peter E)
-Password authentication enabled; required for new users (Peter E)
-Disallow dropping a user who owns a database (Peter E)
-Change initdb option --with-mb to --enable-multibyte
-Add option for initdb to prompts for superuser password (Peter E)
-Allow complex type casts like col::numeric(9,2) and col::int2::float8 (Tom)
-Updated user interfaces on initdb, initlocation, pg_dump, ipcclean (Peter E)
-New pg_char_to_encoding() and pg_encoding_to_char() functions (Tatsuo)
-libpq non-blocking mode (Alfred Perlstein)
-Improve conversion of types in casts that don't specify a length
-New plperl internal programming language (Mark Hollomon)
-Allow COPY IN to read file that do not end with a newline (Tom)
-Indicate when long identifiers are truncated (Tom)
-Allow aggregates to use type equivalency (Peter E)
-Add Oracle's to_char(), to_date(), to_datetime(), to_timestamp(), to_number()
- conversion functions (Karel Zak <zakkr at zf.jcu.cz>)
-Add SELECT DISTINCT ON (expr [, expr ...]) targetlist ... (Tom)
-Check to be sure ORDER BY is compatible with the DISTINCT operation (Tom)
-Add NUMERIC and int8 types to ODBC
-Improve EXPLAIN results for Append, Group, Agg, Unique (Tom)
-Add ALTER TABLE ... ADD FOREIGN KEY (Stephan Szabo)
-Allow SELECT .. FOR UPDATE in PL/pgSQL (Hiroshi)
-Enable backward sequential scan even after reaching EOF (Hiroshi)
-Add btree indexing of boolean values, >= and <= (Don Baccus)
-Print current line number when COPY FROM fails (Massimo)
-Recognize POSIX time zone e.g. "PST+8" and "GMT-8" (Thomas)
-Add DEC as synonym for DECIMAL (Thomas)
-Add SESSION_USER as SQL92 key word, same as CURRENT_USER (Thomas)
-Implement SQL92 column aliases (aka correlation names) (Thomas)
-Implement SQL92 join syntax (Thomas)
-Make INTERVAL reserved word allowed as a column identifier (Thomas)
-Implement REINDEX command (Hiroshi)
-Accept ALL in aggregate function SUM(ALL col) (Tom)
-Prevent GROUP BY from using column aliases (Tom)
-New psql \encoding option (Tatsuo)
-Allow PQrequestCancel() to terminate when in waiting-for-lock state (Hiroshi)
-Allow negation of a negative number in all cases
-Add ecpg descriptors (Christof, Michael)
-Allow CREATE VIEW v AS SELECT f1::char(8) FROM tbl
-Allow casts with length, like foo::char(8)
-New libpq functions PQsetClientEncoding(), PQclientEncoding() (Tatsuo)
-Add support for SJIS user defined characters (Tatsuo)
-Larger views/rules supported
-Make libpq's PQconndefaults() thread-safe (Tom)
-Disable // as comment to be ANSI conforming, should use -- (Tom)
-Allow column aliases on views CREATE VIEW name (collist)
-Fixes for views with subqueries (Tom)
-Allow UPDATE table SET fld = (SELECT ...) (Tom)
-SET command options no longer require quotes
-Update pgaccess to 0.98.6
-New SET SEED command
-New pg_options.sample file
-New SET FSYNC command (Massimo)
-Allow pg_descriptions when creating tables
-Allow pg_descriptions when creating types, columns, and functions
-Allow psql \copy to allow delimiters (Peter E)
-Allow psql to print nulls as distinct from "" [NULL] (Peter E)
-
-Types
------
-Many array fixes (Tom)
-Allow bare column names to be subscripted as arrays (Tom)
-Improve type casting of int and float constants (Tom)
-Cleanups for int8 inputs, range checking, and type conversion (Tom)
-Fix for SELECT timespan('21:11:26'::time) (Tom)
-netmask('x.x.x.x/0') is 255.255.255.255 instead of 0.0.0.0 (Oleg Sharoiko)
-Add btree index on NUMERIC (Jan)
-Perl fix for large objects containing NUL characters (Douglas Thomson)
-ODBC fix for for large objects (free)
-Fix indexing of cidr data type
-Fix for Ethernet MAC addresses (macaddr type) comparisons
-Fix for date/time types when overflows happened in computations (Tom)
-Allow array on int8 (Peter E)
-Fix for rounding/overflow of NUMERIC type, like NUMERIC(4,4) (Tom)
-Allow NUMERIC arrays
-Fix bogues in NUMERIC ceil() and floor() functions (Tom)
-Make char_length()/octet_length including trailing blanks (Tom)
-Made abstime/reltime use int4 instead of time_t (Peter E)
-New lztext data type for compressed text fields
-Revise code to handle coercion of int and float constants (Tom)
-Start at new code to implement a BIT and BIT VARYING type (Adriaan Joubert)
-NUMERIC now accepts scientific notation (Tom)
-NUMERIC to int4 rounds (Tom)
-Convert float4/8 to NUMERIC properly (Tom)
-Allow type conversion with NUMERIC (Thomas)
-Make ISO date style (2000-02-16 09:33) the default (Thomas)
-Add NATIONAL CHAR [ VARYING ] (Thomas)
-Allow NUMERIC round and trunc to accept negative scales (Tom)
-New TIME WITH TIME ZONE type (Thomas)
-Add MAX()/MIN() on time type (Thomas)
-Add abs(), mod(), fac() for int8 (Thomas)
-Rename functions to round(), sqrt(), cbrt(), pow() for float8 (Thomas)
-Add transcendental math functions (e.g. sin(), acos()) for float8 (Thomas)
-Add exp() and ln() for NUMERIC type
-Rename NUMERIC power() to pow() (Thomas)
-Improved TRANSLATE() function (Edwin Ramirez, Tom)
-Allow X=-Y operators (Tom)
-Allow SELECT float8(COUNT(*))/(SELECT COUNT(*) FROM t) FROM t GROUP BY f1; (Tom)
-Allow LOCALE to use indexes in regular expression searches (Tom)
-Allow creation of functional indexes to use default types
-
-Performance
------------
-Prevent exponential space consumption with many AND's and OR's (Tom)
-Collect attribute selectivity values for system columns (Tom)
-Reduce memory usage of aggregates (Tom)
-Fix for LIKE optimization to use indexes with multibyte encodings (Tom)
-Fix r-tree index optimizer selectivity (Thomas)
-Improve optimizer selectivity computations and functions (Tom)
-Optimize btree searching for cases where many equal keys exist (Tom)
-Enable fast LIKE index processing only if index present (Tom)
-Re-use free space on index pages with duplicates (Tom)
-Improve hash join processing (Tom)
-Prevent descending sort if result is already sorted(Hiroshi)
-Allow commuting of index scan query qualifications (Tom)
-Prefer index scans in cases where ORDER BY/GROUP BY is required (Tom)
-Allocate large memory requests in fix-sized chunks for performance (Tom)
-Fix vacuum's performance by reducing memory allocation requests (Tom)
-Implement constant-expression simplification (Bernard Frankpitt, Tom)
-Use secondary columns to be used to determine start of index scan (Hiroshi)
-Prevent quadruple use of disk space when doing internal sorting (Tom)
-Faster sorting by calling fewer functions (Tom)
-Create system indexes to match all system caches (Bruce, Hiroshi)
-Make system caches use system indexes (Bruce)
-Make all system indexes unique (Bruce)
-Improve pg_statistics management for VACUUM speed improvement (Tom)
-Flush backend cache less frequently (Tom, Hiroshi)
-COPY now reuses previous memory allocation, improving performance (Tom)
-Improve optimization cost estimation (Tom)
-Improve optimizer estimate of range queries x > lowbound AND x < highbound
-(Tom)
-Use DNF instead of CNF where appropriate (Tom, Taral)
-Further cleanup for OR-of-AND WHERE-clauses (Tom)
-Make use of index in OR clauses (x = 1 AND y = 2) OR (x = 2 AND y = 4) (Tom)
-Smarter optimizer computations for random index page access (Tom)
-New SET variable to control optimizer costs (Tom)
-Optimizer queries based on LIMIT, OFFSET, and EXISTS qualifications (Tom)
-Reduce optimizer internal housekeeping of join paths for speedup (Tom)
-Major subquery speedup (Tom)
-Fewer fsync writes when fsync is not disabled (Tom)
-Improved LIKE optimizer estimates (Tom)
-Prevent fsync in SELECT-only queries (Vadim)
-Make index creation use psort code, because it is now faster (Tom)
-Allow creation of sort temp tables > 1 Gig
-
-Source Tree Changes
--------------------
-Fix for linux PPC compile
-New generic expression-tree-walker subroutine (Tom)
-Change form() to varargform() to prevent portability problems
-Improved range checking for large integers on Alphas
-Clean up #include in /include directory (Bruce)
-Add scripts for checking includes (Bruce)
-Remove un-needed #include's from *.c files (Bruce)
-Change #include's to use <> and "" as appropriate (Bruce)
-Enable Windows compilation of libpq
-Alpha spinlock fix from Uncle George <email>gatgul at voicenet.com</email>
-Overhaul of optimizer data structures (Tom)
-Fix to cygipc library (Yutaka Tanida)
-Allow pgsql to work on newer Cygwin snapshots (Dan)
-New catalog version number (Tom)
-Add Linux ARM
-Rename heap_replace to heap_update
-Update for QNX (Dr. Andreas Kardos)
-New platform-specific regression handling (Tom)
-Rename oid8 -> oidvector and int28 -> int2vector (Bruce)
-Included all yacc and lex files into the distribution (Peter E.)
-Remove lextest, no longer needed (Peter E)
-Fix for libpq and psql on Windows (Magnus)
-Internally change datetime and timespan into timestamp and interval (Thomas)
-Fix for plpgsql on BSD/OS
-Add SQL_ASCII test case to the regression test (Tatsuo)
-configure --with-mb now deprecated (Tatsuo)
-NT fixes
-NetBSD fixes (Johnny C. Lam <email>lamj at stat.cmu.edu</email>)
-Fixes for Alpha compiles
-New multibyte encodings
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-6-5-3">
- <title>Sortie 6.5.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1999-10-13</simpara>
- </note>
-
- <para>
- This is basically a cleanup release for 6.5.2. We have added a new
- <application>PgAccess</> that was missing in 6.5.2, and installed an
-NT-specific fix.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 6.5.3</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 6.5.*.
- </para>
- </sect2>
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Updated version of pgaccess 0.98
-NT-specific patch
-Fix dumping rules on inherited tables
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
- <sect1 id="release-6-5-2">
- <title>Sortie 6.5.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1999-09-15</simpara>
- </note>
-
- <para>
- This is basically a cleanup release for 6.5.1. We have fixed a variety of
- problems reported by 6.5.1 users.
- </para>
-
-
- <sect2>
- <title>Migration vers la version 6.5.2</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 6.5.*.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-subselect+CASE fixes(Tom)
-Add SHLIB_LINK setting for solaris_i386 and solaris_sparc ports(Daren Sefcik)
-Fixes for CASE in WHERE join clauses(Tom)
-Fix BTScan abort(Tom)
-Repair the check for redundant UNIQUE and PRIMARY KEY indexes(Thomas)
-Improve it so that it checks for multicolumn constraints(Thomas)
-Fix for Windows making problem with MB enabled(Hiroki Kataoka)
-Allow BSD yacc and bison to compile pl code(Bruce)
-Fix SET NAMES working
-int8 fixes(Thomas)
-Fix vacuum's memory consumption(Hiroshi,Tatsuo)
-Reduce the total memory consumption of vacuum(Tom)
-Fix for timestamp(datetime)
-Rule deparsing boguefixes(Tom)
-Fix quoting problems in mkMakefile.tcldefs.sh.in and
-mkMakefile.tkdefs.sh.in(Tom)
-This is to re-use space on index pages freed by vacuum(Vadim)
-document -x for pg_dump(Bruce)
-Fix for unary operators in rule deparser(Tom)
-Comment out FileUnlink of excess segments during mdtruncate()(Tom)
-IRIX linking fix from Yu Cao >yucao at falcon.kla-tencor.com<
-Repair logic error in LIKE: should not return LIKE_ABORT
- when reach end of pattern before end of text(Tom)
-Repair incorrect cleanup of heap memory allocation during transaction abort(Tom)
-Updated version of pgaccess 0.98
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-6-5-1">
- <title>Sortie 6.5.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1999-07-15</simpara>
- </note>
-
- <para>
- This is basically a cleanup release for 6.5. We have fixed a variety of
- problems reported by 6.5 users.
- </para>
-
- <sect2>
- <title>Migration vers la version 6.5.1</title>
-
- <para>
- Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour
- ceux utilisant la version 6.5.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Add NT README file
-Portability fixes for linux_ppc, IRIX, linux_alpha, OpenBSD, alpha
-Remove QUERY_LIMIT, use SELECT...LIMIT
-Fix for EXPLAIN on inheritance(Tom)
-Patch to allow vacuum on multisegment tables(Hiroshi)
-R-Tree optimizer selectivity fix(Tom)
-ACL file descriptor leak fix(Atsushi Ogawa)
-New expresssion subtree code(Tom)
-Avoid disk writes for read-only transactions(Vadim)
-Fix for removal of temp tables if last transaction was aborted(Bruce)
-Fix to prevent too large row from being created(Bruce)
-plpgsql fixes
-Allow port numbers 32k - 64k(Bruce)
-Add ^ precidence(Bruce)
-Rename sort files called pg_temp to pg_sorttemp(Bruce)
-Fix for microseconds in time values(Tom)
-Tutorial source cleanup
-New linux_m68k port
-Fix for sorting of NULL's in some cases(Tom)
-Shared library dependencies fixed (Tom)
-Fixed glitches affecting GROUP BY in subselects(Tom)
-Fix some compiler warnings (Tomoaki Nishiyama)
-Add Win1250 (Czech) support (Pavel Behal)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-6-5">
- <title>Sortie 6.5</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1999-06-09</simpara>
- </note>
-
- <para>
- This release marks a major step in the development team's mastery of the
-source
- code we inherited from Berkeley. You will see we are now easily adding
- major features, thanks to the increasing size and experience of our
- world-wide development team.
- </para>
-
- <para>
- Here is a brief summary of the more notable changes:
-
- <variablelist>
- <varlistentry>
- <term>
- Multiversion concurrency control(MVCC)
- </term>
- <listitem>
- <para>
- This removes our old table-level locking, and replaces it with
- a locking system that is superior to most commercial database
- systems. In a traditional system, each row that is modified
- is locked until committed, preventing reads by other users.
- MVCC uses the natural multiversion nature of
- <productname>PostgreSQL</productname> to allow readers to
- continue reading consistent data during writer activity.
- Writers continue to use the compact pg_log transaction system.
- This is all performed without having to allocate a lock for
- every row like traditional database systems. So, basically,
- we no longer are restricted by simple table-level locking; we
- have something better than row-level locking.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Hot backups from <application>pg_dump</application>
- </term>
- <listitem>
- <para>
- <application>pg_dump</application> takes advantage of the new
- MVCC features to give a consistent database dump/backup while
- the database stays online and available for queries.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Numeric data type
- </term>
- <listitem>
- <para>
- We now have a true numeric data type, with
- user-specified precision.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Temporary tables
- </term>
- <listitem>
- <para>
- Temporary tables are guaranteed to have unique names
- within a database session, and are destroyed on session exit.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- New SQL features
- </term>
- <listitem>
- <para>
- We now have CASE, INTERSECT, and EXCEPT statement
- support. We have new LIMIT/OFFSET, SET TRANSACTION ISOLATION LEVEL,
- SELECT ... FOR UPDATE, and an improved LOCK TABLE command.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Speedups
- </term>
- <listitem>
- <para>
- We continue to speed up PostgreSQL, thanks to the variety of
- talents within our team. We have sped up memory allocation,
- optimization, table joins, and row transfer routines.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Ports
- </term>
- <listitem>
- <para>
- We continue to expand our port list, this time including
- <systemitem class="osname">Windows NT</>/<systemitem>ix86</> and
-<systemitem class="osname">NetBSD</>/<systemitem>arm32</>.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Interfaces
- </term>
- <listitem>
- <para>
- Most interfaces have new versions, and existing functionality
- has been improved.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>
- Documentation
- </term>
- <listitem>
- <para>
- New and updated material is present throughout the
- documentation. New <acronym>FAQ</acronym>s have been
- contributed for <systemitem class="osname">SGI</> and <systemitem
-class="osname">AIX</> platforms.
- The <citetitle>Tutorial</citetitle> has introductory information
- on <acronym>SQL</acronym> from Stefan Simkovics.
- For the <citetitle>User's Guide</citetitle>, there are
- reference pages covering the postmaster and more utility
- programs, and a new appendix
- contains details on date/time behavior.
- The <citetitle>Administrator's Guide</citetitle> has a new
- chapter on troubleshooting from Tom Lane.
- And the <citetitle>Programmer's Guide</citetitle> has a
- description of query processing, also from Stefan, and details
- on obtaining the <productname>PostgreSQL</productname> source
- tree via anonymous <productname>CVS</productname> and
- <productname>CVSup</productname>.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
-
- <sect2>
- <title>Migration vers la version 6.5</title>
-
- <para>
- A dump/restore using <application>pg_dump</application>
- is required for those wishing to migrate data from any
- previous release of <productname>PostgreSQL</productname>.
- <application>pg_upgrade</application> can <emphasis>not</emphasis>
- be used to upgrade to this release because the on-disk structure
- of the tables has changed compared to previous releases.
- </para>
-
- <para>
- The new Multiversion Concurrency Control (MVCC) features can
- give somewhat different behaviors in multiuser
- environments. <emphasis>Read and understand the following section
- to ensure that your existing applications will give you the
- behavior you need.</emphasis>
- </para>
-
- <sect3>
- <title>Multiversion Concurrency Control</title>
-
- <para>
- Because readers in 6.5 don't lock data, regardless of transaction
- isolation level, data read by one transaction can be overwritten by
- another. In other words, if a row is returned by
- <command>SELECT</command> it doesn't mean that this row really exists
- at the time it is returned (i.e. sometime after the statement or
- transaction began) nor that the row is protected from being deleted or
- updated by concurrent transactions before the current transaction does
- a commit or rollback.
- </para>
-
- <para>
- To ensure the actual existence of a row and protect it against
- concurrent updates one must use <command>SELECT FOR UPDATE</command> or
- an appropriate <command>LOCK TABLE</command> statement. This should be
- taken into account when porting applications from previous releases of
- <productname>PostgreSQL</productname> and other environments.
- </para>
-
- <para>
- Keep the above in mind if you are using
- <filename>contrib/refint.*</filename> triggers for
- referential integrity. Additional techniques are required now. One way is
- to use <command>LOCK parent_table IN SHARE ROW EXCLUSIVE MODE</command>
- command if a transaction is going to update/delete a primary key and
- use <command>LOCK parent_table IN SHARE MODE</command> command if a
- transaction is going to update/insert a foreign key.
-
- <note>
- <para>
- Note that if you run a transaction in SERIALIZABLE mode then you must
- execute the <command>LOCK</command> commands above before exécution of
-any
- <acronym>DML</acronym> statement
- (<command>SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO</command>) in the
- transaction.
- </para>
- </note>
- </para>
-
- <para>
- These inconveniences will disappear in the future
- when the ability to read dirty
- (uncommitted) data (regardless of isolation level) and true referential
- integrity will be implemented.
- </para>
- </sect3>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Fix text<->float8 and text<->float4 conversion functions(Thomas)
-Fix for creating tables with mixed-case constraints(Billy)
-Change exp()/pow() behavior to generate error on underflow/overflow(Jan)
-Fix bogue in pg_dump -z
-Memory overrun cleanups(Tatsuo)
-Fix for lo_import crash(Tatsuo)
-Adjust handling of data type names to suppress double quotes(Thomas)
-Use type coercion for matching columns and DEFAULT(Thomas)
-Fix deadlock so it only checks once after one second of sleep(Bruce)
-Fixes for aggregates and PL/pgsql(Hiroshi)
-Fix for subquery crash(Vadim)
-Fix for libpq function PQfnumber and case-insensitive names(Bahman Rafatjoo)
-Fix for large object write-in-middle, no extra block, memory consumption(Tatsuo)
-Fix for pg_dump -d or -D and quote special characters in INSERT
-Repair serious problems with dynahash(Tom)
-Fix INET/CIDR portability problems
-Fix problem with selectivity error in ALTER TABLE ADD COLUMN(Bruce)
-Fix executor so mergejoin of different column types works(Tom)
-Fix for Alpha OR selectivity bogue
-Fix OR index selectivity problem(Bruce)
-Fix so \d shows proper length for char()/varchar()(Ryan)
-Fix tutorial code(Clark)
-Improve destroyuser checking(Oliver)
-Fix for Kerberos(Rodney McDuff)
-Fix for dropping database while dirty buffers(Bruce)
-Fix so sequence nextval() can be case-sensitive(Bruce)
-Fix !!= operator
-Drop buffers before destroying database files(Bruce)
-Fix case where executor evaluates functions twice(Tatsuo)
-Allow sequence nextval actions to be case-sensitive(Bruce)
-Fix optimizer indexing not working for negative numbers(Bruce)
-Fix for memory leak in executor with fjIsNull
-Fix for aggregate memory leaks(Erik Riedel)
-Allow user name containing a dash to grant privileges
-Cleanup of NULL in inet types
-Clean up system table bogues(Tom)
-Fix problems of PAGER and \? command(Masaaki Sakaida)
-Reduce default multisegment file size limit to 1GB(Peter)
-Fix for dumping of CREATE OPERATOR(Tom)
-Fix for backward scanning of cursors(Hiroshi Inoue)
-Fix for COPY FROM STDIN when using \i(Tom)
-Fix for subselect is compared inside an expression(Jan)
-Fix handling of error reporting while returning rows(Tom)
-Fix problems with reference to array types(Tom,Jan)
-Prevent UPDATE SET oid(Jan)
-Fix pg_dump so -t option can handle case-sensitive tablenames
-Fixes for GROUP BY in special cases(Tom, Jan)
-Fix for memory leak in failed queries(Tom)
-DEFAULT now supports mixed-case identifiers(Tom)
-Fix for multisegment uses of DROP/RENAME table, indexes(Ole Gjerde)
-Disable use of pg_dump with both -o and -d options(Bruce)
-Allow pg_dump to properly dump group privileges(Bruce)
-Fix GROUP BY in INSERT INTO table SELECT * FROM table2(Jan)
-Fix for computations in views(Jan)
-Fix for aggregates on array indexes(Tom)
-Fix for DEFAULT handles single quotes in value requiring too many quotes
-Fix security problem with non-super users importing/exporting large objects(Tom)
-Rollback of transaction that creates table cleaned up properly(Tom)
-Fix to allow long table and column names to generate proper serial names(Tom)
-
-Enhancements
-------------
-Add "vacuumdb" utility
-Speed up libpq by allocating memory better(Tom)
-EXPLAIN all indexes used(Tom)
-Implement CASE, COALESCE, NULLIF expression(Thomas)
-New pg_dump table output format(Constantin)
-Add string min()/max() functions(Thomas)
-Extend new type coercion techniques to aggregates(Thomas)
-New moddatetime contrib(Terry)
-Update to pgaccess 0.96(Constantin)
-Add routines for single-byte "char" type(Thomas)
-Improved substr() function(Thomas)
-Improved multibyte handling(Tatsuo)
-Multiversion concurrency control/MVCC(Vadim)
-New Serialized mode(Vadim)
-Fix for tables over 2gigs(Peter)
-New SET TRANSACTION ISOLATION LEVEL(Vadim)
-New LOCK TABLE IN ... MODE(Vadim)
-Update ODBC driver(Byron)
-New NUMERIC data type(Jan)
-New SELECT FOR UPDATE(Vadim)
-Handle "NaN" and "Infinity" for input values(Jan)
-Improved date/year handling(Thomas)
-Improved handling of backend connections(Magnus)
-New options ELOG_TIMESTAMPS and USE_SYSLOG options for log files(Massimo)
-New TCL_ARRAYS option(Massimo)
-New INTERSECT and EXCEPT(Stefan)
-New pg_index.indisprimary for primary key tracking(D'Arcy)
-New pg_dump option to allow dropping of tables before creation(Brook)
-Speedup of row output routines(Tom)
-New READ COMMITTED isolation level(Vadim)
-New TEMP tables/indexes(Bruce)
-Prevent sorting if result is already sorted(Jan)
-New memory allocation optimization(Jan)
-Allow psql to do \p\g(Bruce)
-Allow multiple rule actions(Jan)
-Added LIMIT/OFFSET functionality(Jan)
-Improve optimizer when joining a large number of tables(Bruce)
-New intro to SQL from S. Simkovics' Master's Thesis (Stefan, Thomas)
-New intro to backend processing from S. Simkovics' Master's Thesis (Stefan)
-Improved int8 support(Ryan Bradetich, Thomas, Tom)
-New routines to convert between int8 and text/varchar types(Thomas)
-New bushy plans, where meta-tables are joined(Bruce)
-Enable right-hand queries by default(Bruce)
-Allow reliable maximum number of backends to be set at configure time
- (--with-maxbackends and postmaster switch (-N backends))(Tom)
-GEQO default now 10 tables because of optimizer speedups(Tom)
-Allow NULL=Var for MS-SQL portability(Michael, Bruce)
-Modify contrib check_primary_key() so either "automatic" or "dependent"(Anand)
-Allow psql \d on a view show query(Ryan)
-Speedup for LIKE(Bruce)
-Ecpg fixes/features, see src/interfaces/ecpg/ChangeLog file(Michael)
-JDBC fixes/features, see src/interfaces/jdbc/CHANGELOG(Peter)
-Make % operator have precedence like /(Bruce)
-Add new postgres -O option to allow system table structure changes(Bruce)
-Update contrib/pginterface/findoidjoins script(Tom)
-Major speedup in vacuum of deleted rows with indexes(Vadim)
-Allow non-SQL functions to run different versions based on arguments(Tom)
-Add -E option that shows actual queries sent by \dt and friends(Masaaki Sakaida)
-Add version number in start-up banners for psql(Masaaki Sakaida)
-New contrib/vacuumlo removes large objects not referenced(Peter)
-New initialization for table sizes so non-vacuumed tables perform better(Tom)
-Improve error messages when a connection is rejected(Tom)
-Support for arrays of char() and varchar() fields(Massimo)
-Overhaul of hash code to increase reliability and performance(Tom)
-Update to PyGreSQL 2.4(D'Arcy)
-Changed debogue options so -d4 and -d5 produce different node displays(Jan)
-New pg_options: pretty_plan, pretty_parse, pretty_rewritten(Jan)
-Better optimization statistics for system table access(Tom)
-Better handling of non-default block sizes(Massimo)
-Improve GEQO optimizer memory consumption(Tom)
-UNION now suppports ORDER BY of columns not in target list(Jan)
-Major libpq++ improvements(Vince Vielhaber)
-pg_dump now uses -z(ACL's) as default(Bruce)
-backend cache, memory speedups(Tom)
-have pg_dump do everything in one snapshot transaction(Vadim)
-fix for large object memory leakage, fix for pg_dumping(Tom)
-INET type now respects netmask for comparisons
-Make VACUUM ANALYZE only use a readlock(Vadim)
-Allow VIEWs on UNIONS(Jan)
-pg_dump now can generate consistent snapshots on active databases(Vadim)
-
-Source Tree Changes
--------------------
-Improve port matching(Tom)
-Portability fixes for SunOS
-Add Windows NT backend port and enable dynamic loading(Magnus and Daniel Horak)
-New port to Cobalt Qube(Mips) running Linux(Tatsuo)
-Port to NetBSD/m68k(Mr. Mutsuki Nakajima)
-Port to NetBSD/sun3(Mr. Mutsuki Nakajima)
-Port to NetBSD/macppc(Toshimi Aoki)
-Fix for tcl/tk configuration(Vince)
-Removed CURRENT key word for rule queries(Jan)
-NT dynamic loading now works(Daniel Horak)
-Add ARM32 support(Andrew McMurry)
-Better support for HP-UX 11 and UnixWare
-Improve file handling to be more uniform, prevent file descriptor leak(Tom)
-New install commands for plpgsql(Jan)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-
-<sect1 id="release-6-4-2">
-<title>Sortie 6.4.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-12-20</simpara>
- </note>
-
-<para>
-The 6.4.1 release was improperly packaged. This also has one additional
-bogue fix.
-</para>
-
-
-<sect2>
-<title>Migration vers la version 6.4.2</title>
-
-<para>
-Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour ceux
-utilisant la version 6.4.*.
-</para>
-</sect2>
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Fix for datetime constant problem on some platforms(Thomas)
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-
-
-<sect1 id="release-6-4-1">
-<title>Sortie 6.4.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-12-18</simpara>
- </note>
-
-<para>
-This is basically a cleanup release for 6.4. We have fixed a variety of
-problems reported by 6.4 users.
-</para>
-
-
-<sect2>
-<title>Migration vers la version 6.4.1</title>
-
-<para>
-Une sauvegarde/restauration n'est <emphasis>pas</emphasis> nécessaires pour ceux
-utilisant la version 6.4.
-</para>
-</sect2>
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Add pg_dump -N flag to force double quotes around identifiers. This is
- the default(Thomas)
-Fix for NOT in where clause causing crash(Bruce)
-EXPLAIN VERBOSE coredump fix(Vadim)
-Fix shared-library problems on Linux
-Fix test for table existence to allow mixed-case and whitespace in
- the table name(Thomas)
-Fix a couple of pg_dump bogues
-Configure matches template/.similar entries better(Tom)
-Change builtin function names from SPI_* to spi_*
-OR WHERE clause fix(Vadim)
-Fixes for mixed-case table names(Billy)
-contrib/linux/postgres.init.csh/sh fix(Thomas)
-libpq memory overrun fix
-SunOS fixes(Tom)
-Change exp() behavior to generate error on underflow(Thomas)
-pg_dump fixes for memory leak, inheritance constraints, layout change
-update pgaccess to 0.93
-Fix prototype for 64-bit platforms
-Multibyte fixes(Tatsuo)
-New ecpg man page
-Fix memory overruns(Tatsuo)
-Fix for lo_import() crash(Bruce)
-Better search for install program(Tom)
-Timezone fixes(Tom)
-HP-UX fixes(Tom)
-Use implicit type coercion for matching DEFAULT values(Thomas)
-Add routines to help with single-byte (internal) character type(Thomas)
-Compilation of libpq for Windows fixes(Magnus)
-Upgrade to PyGreSQL 2.2(D'Arcy)
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-
-
-<sect1 id="release-6-4">
-<title>Sortie 6.4</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-10-30</simpara>
- </note>
-
-<para>
-There are <emphasis>many</emphasis> new features and improvements in this
-release.
-Thanks to our developers and maintainers, nearly every aspect of the system
-has received some attention since the previous release.
-Here is a brief, incomplete summary:
-
-<itemizedlist>
-<listitem>
-<para>
-Views and rules are now functional thanks to extensive new code in the
-rewrite rules system from Jan Wieck. He also wrote a chapter on it
-for the <citetitle>Programmer's Guide</citetitle>.
-</para>
-</listitem>
-<listitem>
-<para>
-Jan also contributed a second procedural language,
-<application>PL/pgSQL</application>, to go with the
-original <application>PL/pgTCL</application> procedural language he contributed
-last release.
-</para>
-</listitem>
-
-<listitem>
-<para>
-We have optional multiple-byte character set support from Tatsuo Ishii
-to complement our existing locale support.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Client/server communications has been cleaned up, with better support for
-asynchronous messages and interrupts thanks to Tom Lane.
-</para>
-</listitem>
-
-<listitem>
-<para>
-The parser will now perform automatic type coercion to match arguments
-to available operators and functions, and to match columns and expressions
-with target columns. This uses a generic mechanism which supports
-the type extensibility features of <productname>PostgreSQL</productname>.
-There is a new chapter in the <citetitle>User's Guide</citetitle>
-which covers this topic.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Three new data types have been added.
-Two types, <type>inet</type> and <type>cidr</type>, support various forms
-of IP network, subnet, and machine addressing. There is now an 8-byte integer
-type available on some platforms. See the chapter on data types
-in the <citetitle>User's Guide</citetitle> for details.
-A fourth type, <type>serial</type>, is now supported by the parser as an
-amalgam of the <type>int4</type> type, a sequence, and a unique index.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Several more <acronym>SQL92</acronym>-compatible syntax features have been
-added, including <command>INSERT DEFAULT VALUES</command>
-</para>
-</listitem>
-
-<listitem>
-<para>
-The automatic configuration and installation system has received some
-attention, and should be more robust for more platforms than it has ever
-been.
-</para>
-</listitem>
-
-</itemizedlist>
-</para>
-
-<sect2>
-<title>Migration vers la version 6.4</title>
-
-<para>
-A dump/restore using <application>pg_dump</application>
-or <application>pg_dumpall</application>
-is required for those wishing to migrate data from any
-previous release of <productname>PostgreSQL</productname>.
-</para>
-</sect2>
-
- <sect2>
-<title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Fix for a tiny memory leak in PQsetdb/PQfinish(Bryan)
-Remove char2-16 data types, use char/varchar(Darren)
-Pqfn not handles a NOTICE message(Anders)
-Reduced busywaiting overhead for spinlocks with many backends (dg)
-Stuck spinlock detection (dg)
-Fix up "ISO-style" timespan decoding and encoding(Thomas)
-Fix problem with table drop after rollback of transaction(Vadim)
-Change error message and remove non-functional update message(Vadim)
-Fix for COPY array checking
-Fix for SELECT 1 UNION SELECT NULL
-Fix for buffer leaks in large object calls(Pascal)
-Change owner from oid to int4 type(Bruce)
-Fix a bogue in the oracle compatibility functions btrim() ltrim() and rtrim()
-Fix for shared invalidation cache overflow(Massimo)
-Prevent file descriptor leaks in failed COPY's(Bruce)
-Fix memory leak in libpgtcl's pg_select(Constantin)
-Fix problems with username/passwords over 8 characters(Tom)
-Fix problems with handling of asynchronous NOTIFY in backend(Tom)
-Fix of many bad system table entries(Tom)
-
-Enhancements
-------------
-Upgrade ecpg and ecpglib,see src/interfaces/ecpc/ChangeLog(Michael)
-Show the index used in an EXPLAIN(Zeugswetter)
-EXPLAIN invokes rule system and shows plan(s) for rewritten queries(Jan)
-Multibyte awareness of many data types and functions, via configure(Tatsuo)
-New configure --with-mb option(Tatsuo)
-New initdb --pgencoding option(Tatsuo)
-New createdb -E multibyte option(Tatsuo)
-Select version(); now returns PostgreSQL version(Jeroen)
-libpq now allows asynchronous clients(Tom)
-Allow cancel from client of backend query(Tom)
-psql now cancels query with Control-C(Tom)
-libpq users need not issue dummy queries to get NOTIFY messages(Tom)
-NOTIFY now sends sender's PID, so you can tell whether it was your own(Tom)
-PGresult struct now includes associated error message, if any(Tom)
-Define "tz_hour" and "tz_minute" arguments to date_part()(Thomas)
-Add routines to convert between varchar and bpchar(Thomas)
-Add routines to allow sizing of varchar and bpchar into target columns(Thomas)
-Add bit flags to support timezonehour and minute in data retrieval(Thomas)
-Allow more variations on valid floating point numbers (e.g. ".1", "1e6")(Thomas)
-Fixes for unary minus parsing with leading spaces(Thomas)
-Implement TIMEZONE_HOUR, TIMEZONE_MINUTE per SQL92 specs(Thomas)
-Check for and properly ignore FOREIGN KEY column constraints(Thomas)
-Define USER as synonym for CURRENT_USER per SQL92 specs(Thomas)
-Enable HAVING clause but no fixes elsewhere yet.
-Make "char" type a synonym for "char(1)" (actually implemented as
-bpchar)(Thomas)
-Save string type if specified for DEFAULT clause handling(Thomas)
-Coerce operations involving different data types(Thomas)
-Allow some index use for columns of different types(Thomas)
-Add capabilities for automatic type conversion(Thomas)
-Cleanups for large objects, so file is truncated on open(Peter)
-Readline cleanups(Tom)
-Allow psql \f \ to make spaces as delimiter(Bruce)
-Pass pg_attribute.atttypmod to the frontend for column field lengths(Tom,Bruce)
-Msql compatibility library in /contrib(Aldrin)
-Remove the requirement that ORDER/GROUP BY clause identifiers be
-included in the target list(David)
-Convert columns to match columns in UNION clauses(Thomas)
-Remove fork()/exec() and only do fork()(Bruce)
-Jdbc cleanups(Peter)
-Show backend status on ps command line(only works on some platforms)(Bruce)
-Pg_hba.conf now has a sameuser option in the database field
-Make lo_unlink take oid param, not int4
-New DISABLE_COMPLEX_MACRO for compilers that can't handle our macros(Bruce)
-Libpgtcl now handles NOTIFY as a Tcl event, need not send dummy queries(Tom)
-libpgtcl cleanups(Tom)
-Add -error option to libpgtcl's pg_result command(Tom)
-New locale patch, see docs/README/locale(Oleg)
-Fix for pg_dump so CONSTRAINT and CHECK syntax is correct(ccb)
-New contrib/lo code for large object orphan removal(Peter)
-New psql command "SET CLIENT_ENCODING TO 'encoding'" for multibytes
-feature, see /doc/README.mb(Tatsuo)
-contrib/noupdate code to revoke update permission on a column
-libpq can now be compiled on Windows(Magnus)
-Add PQsetdbLogin() in libpq
-New 8-byte integer type, checked by configure for OS support(Thomas)
-Better support for quoted table/column names(Thomas)
-Surround table and column names with double-quotes in pg_dump(Thomas)
-PQreset() now works with passwords(Tom)
-Handle case of GROUP BY target list column number out of range(David)
-Allow UNION in subselects
-Add auto-size to screen to \d? commands(Bruce)
-Use UNION to show all \d? results in one query(Bruce)
-Add \d? field search feature(Bruce)
-Pg_dump issues fewer \connect requests(Tom)
-Make pg_dump -z flag work better, document it in manual page(Tom)
-Add HAVING clause with full support for subselects and unions(Stephan)
-Full text indexing routines in contrib/fulltextindex(Maarten)
-Transaction ids now stored in shared memory(Vadim)
-New PGCLIENTENCODING when issuing COPY command(Tatsuo)
-Support for SQL92 syntax "SET NAMES"(Tatsuo)
-Support for LATIN2-5(Tatsuo)
-Add UNICODE regression test case(Tatsuo)
-Lock manager cleanup, new locking modes for LLL(Vadim)
-Allow index use with OR clauses(Bruce)
-Allows "SELECT NULL ORDER BY 1;"
-Explain VERBOSE prints the plan, and now pretty-prints the plan to
-the postmaster log file(Bruce)
-Add indexes display to \d command(Bruce)
-Allow GROUP BY on functions(David)
-New pg_class.relkind for large objects(Bruce)
-New way to send libpq NOTICE messages to a different location(Tom)
-New \w write command to psql(Bruce)
-New /contrib/findoidjoins scans oid columns to find join relationships(Bruce)
-Allow binary-compatible indexes to be considered when checking for valid
-Indexes for restriction clauses containing a constant(Thomas)
-New ISBN/ISSN code in /contrib/isbn_issn
-Allow NOT LIKE, IN, NOT IN, BETWEEN, and NOT BETWEEN constraint(Thomas)
-New rewrite system fixes many problems with rules and views(Jan)
- * Rules on relations work
- * Event qualifications on insert/update/delete work
- * New OLD variable to reference CURRENT, CURRENT will be remove in
-future
- * Update rules can reference NEW and OLD in rule qualifications/actions
- * Insert/update/delete rules on views work
- * Multiple rule actions are now supported, surrounded by parenthèses
- * Regular users can create views/rules on tables they have RULE permits
- * Rules and views inherit the privileges of the creator
- * No rules at the column level
- * No UPDATE NEW/OLD rules
- * New pg_tables, pg_indexes, pg_rules and pg_views system views
- * Only a single action on SELECT rules
- * Total rewrite overhaul, perhaps for 6.5
- * handle subselects
- * handle aggregates on views
- * handle insert into select from view works
-System indexes are now multikey(Bruce)
-Oidint2, oidint4, and oidname types are removed(Bruce)
-Use system cache for more system table lookups(Bruce)
-New backend programming language PL/pgSQL in backend/pl(Jan)
-New SERIAL data type, auto-creates sequence/index(Thomas)
-Enable assert checking without a recompile(Massimo)
-User lock enhancements(Massimo)
-New setval() command to set sequence value(Massimo)
-Auto-remove unix socket file on start-up if no postmaster running(Massimo)
-Conditional trace package(Massimo)
-New UNLISTEN command(Massimo)
-psql and libpq now compile under Windows using win32.mak(Magnus)
-Lo_read no longer stores trailing NULL(Bruce)
-Identifiers are now truncated to 31 characters internally(Bruce)
-Createuser options now availble on the command line
-Code for 64-bit integer supported added, configure tested, int8 type(Thomas)
-Prevent file descriptor leaf from failed COPY(Bruce)
-New pg_upgrade command(Bruce)
-Updated /contrib directories(Massimo)
-New CREATE TABLE DEFAULT VALUES statement available(Thomas)
-New INSERT INTO TABLE DEFAULT VALUES statement available(Thomas)
-New DECLARE and FETCH feature(Thomas)
-libpq's internal structures now not exported(Tom)
-Allow up to 8 key indexes(Bruce)
-Remove ARCHIVE key word, that is no longer used(Thomas)
-pg_dump -n flag to supress quotes around indentifiers
-disable system columns for views(Jan)
-new INET and CIDR types for network addresses(TomH, Paul)
-no more double quotes in psql output
-pg_dump now dumps views(Terry)
-new SET QUERY_LIMIT(Tatsuo,Jan)
-
-Source Tree Changes
--------------------
-/contrib cleanup(Jun)
-Inline some small functions called for every row(Bruce)
-Alpha/linux fixes
-HP-UX cleanups(Tom)
-Multibyte regression tests(Soonmyung.)
-Remove --disabled options from configure
-Define PGDOC to use POSTGRESDIR by default
-Make regression optional
-Remove extra braces code to pgindent(Bruce)
-Add bsdi shared library support(Bruce)
-New --without-CXX support configure option(Brook)
-New FAQ_CVS
-Update backend flowchart in tools/backend(Bruce)
-Change atttypmod from int16 to int32(Bruce, Tom)
-Getrusage() fix for platforms that do not have it(Tom)
-Add PQconnectdb, PGUSER, PGPASSWORD to libpq man page
-NS32K platform fixes(Phil Nelson, John Buller)
-SCO 7/UnixWare 2.x fixes(Billy,others)
-Sparc/Solaris 2.5 fixes(Ryan)
-Pgbuiltin.3 is obsolete, move to doc files(Thomas)
-Even more documention(Thomas)
-Nextstep support(Jacek)
-Aix support(David)
-pginterface manual page(Bruce)
-shared libraries all have version numbers
-merged all OS-specific shared library defines into one file
-smarter TCL/TK configuration checking(Billy)
-smarter perl configuration(Brook)
-configure uses supplied install-sh if no install script found(Tom)
-new Makefile.shlib for shared library configuration(Tom)
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-6-3-2">
-<title>Sortie 6.3.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-04-07</simpara>
- </note>
-
-<para>
-This is a bogue-fix release for 6.3.x.
-Refer to the release notes for version 6.3 for a more complete summary of new
-features.
-</para>
-<para>
-Summary:
-
-<itemizedlist>
-<listitem>
-<para>
-Repairs automatic configuration support for some platforms, including Linux,
-from breakage inadvertently introduced in version 6.3.1.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Correctly handles function calls on the left side of BETWEEN and LIKE clauses.
-</para>
-</listitem>
-
-</itemizedlist>
-</para>
-<para>
-A dump/restore is NOT required for those running 6.3 or 6.3.1. A
-<literal>make distclean</>, <literal>make</>, and <literal>make install</> is
-all that is required.
-This last step should be performed while the postmaster is not running.
-You should re-link any custom applications that use
-<productname>PostgreSQL</productname> libraries.
-</para>
-<para>
-For upgrades from pre-6.3 installations,
-refer to the installation and migration instructions for version 6.3.
-</para>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Configure detection improvements for tcl/tk(Brook Milligan, Alvin)
-Manual page improvements(Bruce)
-BETWEEN and LIKE fix(Thomas)
-fix for psql \connect used by pg_dump(Oliver Elphick)
-New odbc driver
-pgaccess, version 0.86
-qsort removed, now uses libc version, cleanups(Jeroen)
-fix for buffer over-runs detected(Maurice Gittens)
-fix for buffer overrun in libpgtcl(Randy Kunkee)
-fix for UNION with DISTINCT or ORDER BY(Bruce)
-gettimeofday configure check(Doug Winterburn)
-Fix "indexes not used" bogue(Vadim)
-docs additions(Thomas)
-Fix for backend memory leak(Bruce)
-libreadline cleanup(Erwan MAS)
-Remove DISTDIR(Bruce)
-Makefile dependency cleanup(Jeroen van Vianen)
-ASSERT fixes(Bruce)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-6-3-1">
- <title>Sortie 6.3.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-03-23</simpara>
- </note>
-
- <para>
- Summary:
-
-<itemizedlist>
-<listitem>
-<para>
-Additional support for multibyte character sets.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Repair byte ordering for mixed-endian clients and servers.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Minor updates to allowed SQL syntax.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Improvements to the configuration autodetection for installation.
-</para>
-</listitem>
-
-</itemizedlist>
-</para>
-<para>
-A dump/restore is NOT required for those running 6.3. A
-<literal>make distclean</>, <literal>make</>, and <literal>make install</> is
-all that is required.
-This last step should be performed while the postmaster is not running.
-You should re-link any custom applications that use
-<productname>PostgreSQL</productname> libraries.
-</para>
-<para>
-For upgrades from pre-6.3 installations,
-refer to the installation and migration instructions for version 6.3.
-</para>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-ecpg cleanup/fixes, now version 1.1(Michael Meskes)
-pg_user cleanup(Bruce)
-large object fix for pg_dump and tclsh (alvin)
-LIKE fix for multiple adjacent underscores
-fix for redefining builtin functions(Thomas)
-ultrix4 cleanup
-upgrade to pg_access 0.83
-updated CLUSTER manual page
-multibyte character set support, see doc/README.mb(Tatsuo)
-configure --with-pgport fix
-pg_ident fix
-big-endian fix for backend communications(Kataoka)
-SUBSTR() and substring() fix(Jan)
-several jdbc fixes(Peter)
-libpgtcl improvements, see libptcl/README(Randy Kunkee)
-Fix for "Datasize = 0" error(Vadim)
-Prevent \do from wrapping(Bruce)
-Remove duplicate Russian character set entries
-Sunos4 cleanup
-Allow optional TABLE key word in LOCK and SELECT INTO(Thomas)
-CREATE SEQUENCE options to allow a negative integer(Thomas)
-Add "PASSWORD" as an allowed column identifier(Thomas)
-Add checks for UNION target fields(Bruce)
-Fix Alpha port(Dwayne Bailey)
-Fix for text arrays containing quotes(Doug Gibson)
-Solaris compile fix(Albert Chin-A-Young)
-Better identify tcl and tk libs and includes(Bruce)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
- <sect1 id="release-6-3">
- <title>Sortie 6.3</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1998-03-01</simpara>
- </note>
-
- <para>
- There are <emphasis>many</emphasis> new features and improvements in this
-release.
- Here is a brief, incomplete summary:
-
- <itemizedlist>
- <listitem>
- <para>
- Many new SQL features, including
- full <acronym>SQL92</acronym> subselect capability
- (everything is here but target-list subselects).
- </para>
- </listitem>
-
- <listitem>
- <para>
- Support for client-side environment variables to specify time zone and
-date style.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Socket interface for client/server connection. This is the default now
- so you may need to start <application>postmaster</application> with the
- <option>-i</option> flag.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Better password authorization mechanisms. Default table privileges have
-changed.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Old-style <firstterm>time travel</firstterm>
- has been removed. Performance has been improved.
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- <note>
- <para>
- Bruce Momjian wrote the following notes to introduce the new release.
- </para>
- </note>
-
- <para>
- There are some general 6.3 issues that I want to mention. These are
- only the big items that can not be described in one sentence. A review
- of the detailed changes list is still needed.
- </para>
- <para>
- First, we now have subselects. Now that we have them, I would like to
- mention that without subselects, SQL is a very limited language.
- Subselects are a major feature, and you should review your code for
- places where subselects provide a better solution for your queries. I
- think you will find that there are more uses for subselects than you may
- think. Vadim has put us on the big SQL map with subselects, and fully
- functional ones too. The only thing you can't do with subselects is to
- use them in the target list.
- </para>
- <para>
- Second, 6.3 uses Unix domain sockets rather than TCP/IP by default. To
- enable connections from other machines, you have to use the new
- postmaster -i option, and of course edit <filename>pg_hba.conf</filename>.
-Also, for this
- reason, the format of <filename>pg_hba.conf</filename> has changed.
- </para>
- <para>
- Third, <type>char()</type> fields will now allow faster access than
-<type>varchar()</type> or
- <type>text</type>. Specifically, the <type>text</> and
-<type>varchar()</type> have a penalty for access to
- any columns after the first column of this type. <type>char()</type> used
-to also
- have this access penalty, but it no longer does. This may suggest that
- you redesign some of your tables, especially if you have short character
- columns that you have defined as <type>varchar()</type> or
-<type>text</type>. This and other
- changes make 6.3 even faster than earlier releases.
- </para>
- <para>
- We now have passwords definable independent of any Unix file. There are
- new SQL USER commands.
- See the <citetitle>Administrator's Guide</citetitle> for more
- information. There is a new table, pg_shadow, which is used to store
- user information and user passwords, and it by default only SELECT-able
- by the <systemitem>postgres</systemitem> super-user. pg_user is now a view
-of pg_shadow, and is
- SELECT-able by PUBLIC. You should keep using pg_user in your
- application without changes.
- </para>
- <para>
- User-created tables now no longer have SELECT privilege to PUBLIC by
- default. This was done because the ANSI standard requires it. You can
- of course GRANT any privileges you want after the table is created.
- System tables continue to be SELECT-able by PUBLIC.
- </para>
- <para>
- We also have real deadlock detection code. No more sixty-second
- timeouts. And the new locking code implements a <acronym>FIFO</acronym>
-better, so there
- should be less resource starvation during heavy use.
- </para>
- <para>
- Many complaints have been made about inadequate documentation in previous
- releases. Thomas has put much effort into many new manuals for this
- release. Check out the doc/ directory.
- </para>
- <para>
- For performance reasons, time travel is gone, but can be implemented
- using triggers (see <filename>pgsql/contrib/spi/README</filename>). Please
-check out the new
- \d command for types, operators, etc. Also, views have their own
- privileges now, not based on the underlying tables, so privileges on
- them have to be set separately. Check
-<filename>/pgsql/interfaces</filename> for some new
- ways to talk to <productname>PostgreSQL</productname>.
- </para>
- <para>
- This is the first release that really required an explanation for
- existing users. In many ways, this was necessary because the new
- release removes many limitations, and the work-arounds people were using
- are no longer needed.
- </para>
-
- <sect2>
- <title>Migration vers la version 6.3</title>
-
- <para>
- A dump/restore using <application>pg_dump</application>
- or <application>pg_dumpall</application>
- is required for those wishing to migrate data from any
- previous release of <productname>PostgreSQL</productname>.
- </para>
- </sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Fix binary cursors broken by MOVE implementation(Vadim)
-Fix for tcl library crash(Jan)
-Fix for array handling, from Gerhard Hintermayer
-Fix acl error, and remove duplicate pqtrace(Bruce)
-Fix psql \e for empty file(Bruce)
-Fix for textcat on varchar() fields(Bruce)
-Fix for DBT Sendproc (Zeugswetter Andres)
-Fix vacuum analyze syntax problem(Bruce)
-Fix for international identifiers(Tatsuo)
-Fix aggregates on inherited tables(Bruce)
-Fix substr() for out-of-bounds data
-Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
-Fix notty output to show status result. -q option still turns it off(Bruce)
-Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
-Fix cluster(Bruce)
-Fix for PQtrace start/stop several times(Bruce)
-Fix a variety of locking problems like newer lock waiters getting
- lock before older waiters, and having readlock people not share
- locks if a writer is waiting for a lock, and waiting writers not
- getting priority over waiting readers(Bruce)
-Fix crashes in psql when executing queries from external files(James)
-Fix problem with multiple order by columns, with the first one having
- NULL values(Jeroen)
-Use correct hash table support functions for float8 and int4(Thomas)
-Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
-Change precedence for boolean operators to match expected behavior(Thomas)
-Generate elog(ERROR) on over-large integer(Bruce)
-Allow multiple-argument functions in constraint clauses(Thomas)
-Check boolean input literals for 'true','false','yes','no','1','0'
- and throw elog(ERROR) if unrecognized(Thomas)
-Major large objects fix
-Fix for GROUP BY showing duplicates(Vadim)
-Fix for index scans in MergeJion(Vadim)
-
-Enhancements
-------------
-Subselects with EXISTS, IN, ALL, ANY key words (Vadim, Bruce, Thomas)
-New User Manual(Thomas, others)
-Speedup by inlining some frequently-called functions
-Real deadlock detection, no more timeouts(Bruce)
-Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
- CURRENT_USER(Thomas)
-Modify constraint syntax to be SQL92-compliant(Thomas)
-Implement SQL92 PRIMARY KEY and UNIQUE clauses using indexes(Thomas)
-Recognize SQL92 syntax for FOREIGN KEY. Throw elog notice(Thomas)
-Allow NOT NULL UNIQUE constraint clause (each allowed separately before)(Thomas)
-Allow PostgreSQL-style casting ("::") of non-constants(Thomas)
-Add support for SQL3 TRUE and FALSE boolean constants(Thomas)
-Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
-Allow shorter strings for boolean literals (e.g. "t", "tr", "tru")(Thomas)
-Allow SQL92 delimited identifiers(Thomas)
-Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
-Support SQL92 syntax for type coercion of literal strings
- (e.g. "DATETIME 'now'")(Thomas)
-Add conversions for int2, int4, and OID types to and from text(Thomas)
-Use shared lock when building indexes(Vadim)
-Free memory allocated for an user query inside transaction block after
- this query is done, was turned off in <= 6.2.1(Vadim)
-New SQL statement CREATE PROCEDURAL LANGUAGE(Jan)
-New <productname>PostgreSQL</productname> Procedural Language (PL) backend
-interface(Jan)
-Rename pg_dump -H option to -h(Bruce)
-Add Java support for passwords, European dates(Peter)
-Use indexes for LIKE and ~, !~ operations(Bruce)
-Add hash functions for datetime and timespan(Thomas)
-Time Travel removed(Vadim, Bruce)
-Add paging for \d and \z, and fix \i(Bruce)
-Add Unix domain socket support to backend and to frontend library(Goran)
-Implement CREATE DATABASE/WITH LOCATION and initlocation utility(Thomas)
-Allow more SQL92 and/or <productname>PostgreSQL</productname> reserved words as
-column identifiers(Thomas)
-Augment support for SQL92 SET TIME ZONE...(Thomas)
-SET/SHOW/RESET TIME ZONE uses TZ backend environment variable(Thomas)
-Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
-Enable SET TIME ZONE using TZ environment variable(Thomas)
-Add PGDATESTYLE environment variable to frontend and backend
-initialization(Thomas)
-Add PGTZ, PGCOSTHEAP, PGCOSTINDEX, PGRPLANS, PGGEQO
- frontend library initialization environment variables(Thomas)
-Regression tests time zone automatically set with "setenv PGTZ PST8PDT"(Thomas)
-Add pg_description table for info on tables, columns, operators, types, and
- aggregates(Bruce)
-Increase 16 char limit on system table/index names to 32 characters(Bruce)
-Rename system indexes(Bruce)
-Add 'GERMAN' option to SET DATESTYLE(Thomas)
-Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
-Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
-Validate numeric input more carefully for delta times(Thomas)
-Implement day of year as possible input to date_part()(Thomas)
-Define timespan_finite() and text_timespan() functions(Thomas)
-Remove archive stuff(Bruce)
-Allow for a pg_password authentication database that is separate from
- the system password file(Todd)
-Dump ACLs, GRANT, REVOKE privileges(Matt)
-Define text, varchar, and bpchar string length functions(Thomas)
-Fix Query handling for inheritance, and cost computations(Bruce)
-Implement CREATE TABLE/AS SELECT (alternative to SELECT/INTO)(Thomas)
-Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
-Implement UNIONs for SELECT(Bruce)
-Add UNION, GROUP, DISTINCT to INSERT(Bruce)
-varchar() stores only necessary bytes on disk(Bruce)
-Fix for BLOBs(Peter)
-Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
-Remove unused "option" from PQconnectdb()
-New LOCK command and lock manual page describing deadlocks(Bruce)
-Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
-Enhance psql \z to show sequences(Bruce)
-Show NOT NULL and DEFAULT in psql \d table(Bruce)
-New psql .psqlrc file start-up(Andrew)
-Modify sample start-up script in contrib/linux to show syslog(Thomas)
-New types for IP and MAC addresses in contrib/ip_and_mac(TomH)
-Unix system time conversions with date/time types in contrib/unixdate(Thomas)
-Update of contrib stuff(Massimo)
-Add Unix socket support to DBD::Pg(Goran)
-New python interface (PyGreSQL 2.0)(D'Arcy)
-New frontend/backend protocol has a version number, network byte order(Phil)
-Security features in pg_hba.conf enhanced and documented, many cleanups(Phil)
-CHAR() now faster access than VARCHAR() or TEXT
-ecpg embedded SQL preprocessor
-Reduce system column overhead(Vadmin)
-Remove pg_time table(Vadim)
-Add pg_type attribute to identify types that need length (bpchar, varchar)
-Add report of offending line when COPY command fails
-Allow VIEW privileges to be set separately from the underlying tables.
- For security, use GRANT/REVOKE on views as appropriate(Jan)
-Tables now have no default GRANT SELECT TO PUBLIC. You must
- explicitly grant such privileges.
-Clean up tutorial examples(Darren)
-
-Source Tree Changes
--------------------
-Add new html development tools, and flow chart in /tools/backend
-Fix for SCO compiles
-Stratus computer port Robert Gillies
-Added support for shlib for BSD44_derived & i386_solaris
-Make configure more automated(Brook)
-Add script to check regression test results
-Break parser functions into smaller files, group together(Bruce)
-Rename heap_create to heap_create_and_catalog, rename heap_creatr
- to heap_create()(Bruce)
-Sparc/Linux patch for locking(TomS)
-Remove PORTNAME and reorganize port-specific stuff(Marc)
-Add optimizer README file(Bruce)
-Remove some recursion in optimizer and clean up some code there(Bruce)
-Fix for NetBSD locking(Henry)
-Fix for libptcl make(Tatsuo)
-AIX patch(Darren)
-Change IS TRUE, IS FALSE, ... to expressions using "=" rather than
- function calls to istrue() or isfalse() to allow optimization(Thomas)
-Various fixes NetBSD/Sparc related(TomH)
-Alpha linux locking(Travis,Ryan)
-Change elog(WARN) to elog(ERROR)(Bruce)
-FAQ for FreeBSD(Marc)
-Bring in the PostODBC source tree as part of our standard distribution(Marc)
-A minor patch for HP/UX 10 vs 9(Stan)
-New pg_attribute.atttypmod for type-specific info like varchar length(Bruce)
-UnixWare patches(Billy)
-New i386 'lock' for spinlock asm(Billy)
-Support for multiplexed backends is removed
-Start an OpenBSD port
-Start an AUX port
-Start a Cygnus port
-Add string functions to regression suite(Thomas)
-Expand a few function names formerly truncated to 16 characters(Thomas)
-Remove un-needed malloc() calls and replace with palloc()(Bruce)
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-6-2-1">
-<title>Sortie 6.2.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1997-10-17</simpara>
- </note>
-
-<para>
-6.2.1 is a bogue-fix and usability release on 6.2.
-</para>
-<para>
-Summary:
-
-<itemizedlist>
-<listitem>
-<para>
-Allow strings to span lines, per <acronym>SQL92</acronym>.
-</para>
-</listitem>
-
-<listitem>
-<para>
-Include example trigger function for inserting user names on table updates.
-</para>
-</listitem>
-
-</itemizedlist>
-</para>
-<para>
-This is a minor bogue-fix release on 6.2.
-For upgrades from pre-6.2 systems, a full dump/reload is required.
-Refer to the 6.2 release notes for instructions.
-</para>
-
-<sect2>
-<title>Migration from version 6.2 to version 6.2.1</title>
-
-<para>
-This is a minor bogue-fix release. A dump/reload is not required from version 6.2,
-but is required from any release prior to 6.2.
-</para>
-<para>
-In upgrading from version 6.2, if you choose to dump/reload you will find that
-avg(money) is now calculated correctly. All other bogue fixes take effect
-upon updating the executables.
-</para>
-<para>
-Another way to avoid dump/reload is to use the following SQL command
-from <command>psql</command> to update the existing system table:
-
-<programlisting>
- update pg_aggregate set aggfinalfn = 'cash_div_flt8'
- where aggname = 'avg' and aggbasetype = 790;
-</programlisting>
-</para>
-<para>
-This will need to be done to every existing database, including template1.
-</para>
-</sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Allow TIME and TYPE column names(Thomas)
-Allow larger range of true/false as boolean values(Thomas)
-Support output of "now" and "current"(Thomas)
-Handle DEFAULT with INSERT of NULL properly(Vadim)
-Fix for relation reference counts problem in buffer manager(Vadim)
-Allow strings to span lines, like ANSI(Thomas)
-Fix for backward cursor with ORDER BY(Vadim)
-Fix avg(cash) computation(Thomas)
-Fix for specifying a column twice in ORDER/GROUP BY(Vadim)
-Documented new libpq function to return affected rows, PQcmdTuples(Bruce)
-Trigger function for inserting user names for INSERT/UPDATE(Brook Milligan)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-<sect1 id="release-6-2">
-<title>Sortie 6.2</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1997-10-02</simpara>
- </note>
-
-<para>
-A dump/restore is required for those wishing to migrate data from
-previous releases of <productname>PostgreSQL</productname>.
-</para>
-
-<sect2>
-<title>Migration from version 6.1 to version 6.2</title>
-
-<para>
-This migration requires a complete dump of the 6.1 database and a
-restore of the database in 6.2.
-</para>
-<para>
-Note that the <command>pg_dump</command> and <command>pg_dumpall</command>
-utility from 6.2 should be used
-to dump the 6.1 database.
-</para>
-</sect2>
-
-<sect2>
-<title>Migration from version 1.<replaceable>x</> to version 6.2</title>
-
-<para>
-Those migrating from earlier 1.* releases should first upgrade to 1.09
-because the COPY output format was improved from the 1.02 release.
-</para>
-</sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-Fix problems with pg_dump for inheritance, sequences, archive tables(Bruce)
-Fix compile errors on overflow due to shifts, unsigned, and bad prototypes
- from Solaris(Diab Jerius)
-Fix bogues in geometric line arithmetic (bad intersection calculations)(Thomas)
-Check for geometric intersections at endpoints to avoid rounding
-ugliness(Thomas)
-Catch non-functional delete attempts(Vadim)
-Change time function names to be more consistent(Michael Reifenberg)
-Check for zero divides(Michael Reifenberg)
-Fix very old bogue which made rows changed/inserted by a command
- visible to the command itself (so we had multiple update of
- updated rows, etc.)(Vadim)
-Fix for SELECT NULL, 'fail' FROM pg_am (Patrick)
-SELECT NULL as EMPTY_FIELD now allowed(Patrick)
-Remove un-needed signal stuff from contrib/pginterface
-Fix OR (where x != 1 or x isnull didn't return rows with x NULL) (Vadim)
-Fix time_cmp function (Vadim)
-Fix handling of functions with non-attribute first argument in
- WHERE clauses (Vadim)
-Fix GROUP BY when order of entries is different from order
- in target list (Vadim)
-Fix pg_dump for aggregates without sfunc1 (Vadim)
-
-Enhancements
-------------
-Default genetic optimizer GEQO parameter is now 8(Bruce)
-Allow use parameters in target list having aggregates in functions(Vadim)
-Added JDBC driver as an interface(Adrian & Peter)
-pg_password utility
-Return number of rows inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
-Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
-SPI (Server Programming Interface) allows exécution of queries inside
- C-functions (Vadim)
-NOT NULL implemented (SQL92)(Robson Paniago de Miranda)
-Include reserved words for string handling, outer joins, and unions(Thomas)
-Implement extended comments ("/* ... */") using exclusive states(Thomas)
-Add "//" single-line comments(Bruce)
-Remove some restrictions on characters in operator names(Thomas)
-DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim & Thomas)
-Add text concatenation operator and function (SQL92)(Thomas)
-Support WITH TIME ZONE syntax (SQL92)(Thomas)
-Support INTERVAL unit TO unit syntax (SQL92)(Thomas)
-Define types DOUBLE PRECISION, INTERVAL, CHARACTER,
- and CHARACTER VARYING (SQL92)(Thomas)
-Define type FLOAT(p) and rudimentary DECIMAL(p,s), NUMERIC(p,s) (SQL92)(Thomas)
-Define EXTRACT(), POSITION(), SUBSTRING(), and TRIM() (SQL92)(Thomas)
-Define CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP (SQL92)(Thomas)
-Add syntax and warnings for UNION, HAVING, INNER and OUTER JOIN (SQL92)(Thomas)
-Add more reserved words, mostly for SQL92 compliance(Thomas)
-Allow hh:mm:ss time entry for timespan/reltime types(Thomas)
-Add center() routines for lseg, path, polygon(Thomas)
-Add distance() routines for circle-polygon, polygon-polygon(Thomas)
-Check explicitly for points and polygons contained within polygons
- using an axis-crossing algorithm(Thomas)
-Add routine to convert circle-box(Thomas)
-Merge conflicting operators for different geometric data types(Thomas)
-Replace distance operator "<===>" with "<->"(Thomas)
-Replace "above" operator "!^" with ">^" and "below" operator "!|" with
-"<^"(Thomas)
-Add routines for text trimming on both ends, substring, and string
-position(Thomas)
-Added conversion routines circle(box) and poly(circle)(Thomas)
-Allow internal sorts to be stored in memory rather than in files(Bruce & Vadim)
-Allow functions and operators on internally-identical types to succeed(Bruce)
-Speed up backend start-up after profiling analysis(Bruce)
-Inline frequently called functions for performance(Bruce)
-Reduce open() calls(Bruce)
-psql: Add PAGER for \h and \?,\C fix
-Fix for psql pager when no tty(Bruce)
-New entab utility(Bruce)
-General trigger functions for referential integrity (Vadim)
-General trigger functions for time travel (Vadim)
-General trigger functions for AUTOINCREMENT/IDENTITY feature (Vadim)
-MOVE implementation (Vadim)
-
-Source Tree Changes
--------------------
-HP-UX 10 patches (Vladimir Turin)
-Added SCO support, (Daniel Harris)
-MkLinux patches (Tatsuo Ishii)
-Change geometric box terminology from "length" to "width"(Thomas)
-Deprecate temporary unstored slope fields in geometric code(Thomas)
-Remove restart instructions from INSTALL(Bruce)
-Look in /usr/ucb first for install(Bruce)
-Fix c++ copy example code(Thomas)
-Add -o to psql manual page(Bruce)
-Prevent relname unallocated string length from being copied into database(Bruce)
-Cleanup for NAMEDATALEN use(Bruce)
-Fix pg_proc names over 15 chars in output(Bruce)
-Add strNcpy() function(Bruce)
-remove some (void) casts that are unnecessary(Bruce)
-new interfaces directory(Marc)
-Replace fopen() calls with calls to fd.c functions(Bruce)
-Make functions static where possible(Bruce)
-enclose unused functions in #ifdef NOT_USED(Bruce)
-Remove call to difftime() in timestamp support to fix SunOS(Bruce & Thomas)
-Changes for Digital Unix
-Portability fix for pg_dumpall(Bruce)
-Rename pg_attribute.attnvals to attdispersion(Bruce)
-"intro/unix" manual page now "pgintro"(Bruce)
-"built-in" manual page now "pgbuiltin"(Bruce)
-"drop" manual page now "drop_table"(Bruce)
-Add "create_trigger", "drop_trigger" manual pages(Thomas)
-Add constraints regression test(Vadim & Thomas)
-Add comments syntax regression test(Thomas)
-Add PGINDENT and support program(Bruce)
-Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
-Files moved to /src/tools directory(Bruce)
-SPI and Trigger programming guides (Vadim & D'Arcy)
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-6-1-1">
-<title>Sortie 6.1.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1997-07-22</simpara>
- </note>
-
-<sect2>
-<title>Migration from version 6.1 to version 6.1.1</title>
-
-<para>
-This is a minor bogue-fix release. A dump/reload is not required from version 6.1,
-but is required from any release prior to 6.1.
-Refer to the release notes for 6.1 for more details.
-</para>
-</sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-fix for SET with options (Thomas)
-allow pg_dump/pg_dumpall to preserve ownership of all tables/objects(Bruce)
-new psql \connect option allows changing usernames without changing databases
-fix for initdb --debogue option(Yoshihiko Ichikawa))
-lextest cleanup(Bruce)
-hash fixes(Vadim)
-fix date/time month boundary arithmetic(Thomas)
-fix timezone daylight handling for some ports(Thomas, Bruce, Tatsuo)
-timestamp overhauled to use standard functions(Thomas)
-other code cleanup in date/time routines(Thomas)
-psql's \d now case-insensitive(Bruce)
-psql's antislash commands can now have trailing semicolon(Bruce)
-fix memory leak in psql when using \g(Bruce)
-major fix for endian handling of communication to server(Thomas, Tatsuo)
-Fix for Solaris assembler and include files(Yoshihiko Ichikawa)
-allow underscores in usernames(Bruce)
-pg_dumpall now returns proper status, portability fix(Bruce)
- </programlisting>
- </para>
- </sect2>
- </sect1>
-
-<sect1 id="release-6-1">
-<title>Sortie 6.1</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1997-06-08</simpara>
- </note>
-
-<para>
- The regression tests have been adapted and extensively modified for the
- 6.1 release of <productname>PostgreSQL</productname>.
-</para>
-
-<para>
- Three new data types (<type>datetime</type>, <type>timespan</type>, and
-<type>circle</type>) have been added to
- the native set of <productname>PostgreSQL</productname> types. Points, boxes,
-paths, and polygons
- have had their output formats made consistent across the data types.
- The polygon output in misc.out has only been spot-checked for correctness
- relative to the original regression output.
-</para>
-
-<para>
- <productname>PostgreSQL</productname> 6.1 introduces a new, alternate
-optimizer which uses <firstterm>genetic</firstterm>
- algorithms. These algorithms introduce a random behavior in the ordering
- of query results when the query contains multiple qualifiers or multiple
- tables (giving the optimizer a choice on order of evaluation). Several
- regression tests have been modified to explicitly order the results, and
- hence are insensitive to optimizer choices. A few regression tests are
- for data types which are inherently unordered (e.g. points and time
- intervals) and tests involving those types are explicitly bracketed with
- <command>set geqo to 'off'</command> and <command>reset geqo</command>.
-</para>
-
-<para>
- The interpretation of array specifiers (the curly braces around atomic
- values) appears to have changed sometime after the original regression
- tests were generated. The current <filename>./expected/*.out</filename> files
-reflect this
- new interpretation, which may not be correct!
-</para>
-
-<para>
- The float8 regression test fails on at least some platforms. This is due
- to differences in implementations of <function>pow()</function> and
-<function>exp()</function> and the signaling
- mechanisms used for overflow and underflow conditions.
-</para>
-
-<para>
- The <quote>random</> results in the random test should cause the
- <quote>random</quote> test to be <quote>failed</quote>, since the
- regression tests are evaluated using a simple diff. However,
- <quote>random</> does not seem to produce random results on my test
- machine (Linux/<application>gcc</>/i686).
-</para>
-
-<sect2>
-<title>Migration vers la version 6.1</title>
-
-<para>
-This migration requires a complete dump of the 6.0 database and a
-restore of the database in 6.1.
-</para>
-<para>
-Those migrating from earlier 1.* releases should first upgrade to 1.09
-because the COPY output format was improved from the 1.02 release.
-</para>
-</sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-packet length checking in library routines
-lock manager priority patch
-check for under/over flow of float8(Bruce)
-multitable join fix(Vadim)
-SIGPIPE crash fix(Darren)
-large object fixes(Sven)
-allow btree indexes to handle NULLs(Vadim)
-timezone fixes(D'Arcy)
-select SUM(x) can return NULL on no rows(Thomas)
-internal optimizer, executor bogue fixes(Vadim)
-fix problem where inner loop in < or <= has no rows(Vadim)
-prevent re-commuting join index clauses(Vadim)
-fix join clauses for multiple tables(Vadim)
-fix hash, hashjoin for arrays(Vadim)
-fix btree for abstime type(Vadim)
-large object fixes(Raymond)
-fix buffer leak in hash indexes (Vadim)
-fix rtree for use in inner scan (Vadim)
-fix gist for use in inner scan, cleanups (Vadim, Andrea)
-avoid unnecessary local buffers allocation (Vadim, Massimo)
-fix local buffers leak in transaction aborts (Vadim)
-fix file manager memmory leaks, cleanups (Vadim, Massimo)
-fix storage manager memmory leaks (Vadim)
-fix btree duplicates handling (Vadim)
-fix deleted rows reincarnation caused by vacuum (Vadim)
-fix SELECT varchar()/char() INTO TABLE made zero-length fields(Bruce)
-many psql, pg_dump, and libpq memory leaks fixed using Purify (Igor)
-
-Enhancements
-------------
-attribute optimization statistics(Bruce)
-much faster new btree bulk load code(Paul)
-BTREE UNIQUE added to bulk load code(Vadim)
-new lock debogue code(Massimo)
-massive changes to libpg++(Leo)
-new GEQO optimizer speeds table multitable optimization(Martin)
-new WARN message for non-unique insert into unique key(Marc)
-update x=-3, no spaces, now valid(Bruce)
-remove case-sensitive identifier handling(Bruce,Thomas,Dan)
-debogue backend now pretty-prints tree(Darren)
-new Oracle character functions(Edmund)
-new plaintext password functions(Dan)
-no such class or insufficient privilege changed to distinct messages(Dan)
-new ANSI timestamp function(Dan)
-new ANSI Time and Date types (Thomas)
-move large chunks of data in backend(Martin)
-multicolumn btree indexes(Vadim)
-new SET var TO value command(Martin)
-update transaction status on reads(Dan)
-new locale settings for character types(Oleg)
-new SEQUENCE serial number generator(Vadim)
-GROUP BY function now possible(Vadim)
-re-organize regression test(Thomas,Marc)
-new optimizer operation weights(Vadim)
-new psql \z grant/permit option(Marc)
-new MONEY data type(D'Arcy,Thomas)
-tcp socket communication speed improved(Vadim)
-new VACUUM option for attribute statistics, and for certain columns (Vadim)
-many geometric type improvements(Thomas,Keith)
-additional regression tests(Thomas)
-new datestyle variable(Thomas,Vadim,Martin)
-more comparison operators for sorting types(Thomas)
-new conversion functions(Thomas)
-new more compact btree format(Vadim)
-allow pg_dumpall to preserve database ownership(Bruce)
-new SET GEQO=# and R_PLANS variable(Vadim)
-old (!GEQO) optimizer can use right-sided plans (Vadim)
-typechecking improvement in SQL parser(Bruce)
-new SET, SHOW, RESET commands(Thomas,Vadim)
-new \connect database USER option
-new destroydb -i option (Igor)
-new \dt and \di psql commands (Darren)
-SELECT "\n" now escapes newline (A. Duursma)
-new geometry conversion functions from old format (Thomas)
-
-Source tree changes
--------------------
-new configuration script(Marc)
-readline configuration option added(Marc)
-OS-specific configuration options removed(Marc)
-new OS-specific template files(Marc)
-no more need to edit Makefile.global(Marc)
-re-arrange include files(Marc)
-nextstep patches (Gregor Hoffleit)
-removed Windows-specific code(Bruce)
-removed postmaster -e option, now only postgres -e option (Bruce)
-merge duplicate library code in front/backends(Martin)
-now works with eBones, international Kerberos(Jun)
-more shared library support
-c++ include file cleanup(Bruce)
-warn about boguegy flex(Bruce)
-DG/UX, Ultrix, IRIX, AIX portability fixes
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-6-0">
-<title>Sortie 6.0</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1997-01-29</simpara>
- </note>
-
-<para>
-A dump/restore is required for those wishing to migrate data from
-previous releases of <productname>PostgreSQL</productname>.
-</para>
-
-<sect2>
-<title>Migration from version 1.09 to version 6.0</title>
-
-<para>
-This migration requires a complete dump of the 1.09 database and a
-restore of the database in 6.0.
-</para>
-</sect2>
-
-<sect2>
-<title>Migration from pre-1.09 to version 6.0</title>
-
-<para>
-Those migrating from earlier 1.* releases should first upgrade to 1.09
-because the COPY output format was improved from the 1.02 release.
-</para>
-</sect2>
-
- <sect2>
- <title>Modifications</title>
-
- <para>
- <programlisting>
-Bug Fixes
----------
-ALTER TABLE bogue - running postgress process needs to re-read table definition
-Allow vacuum to be run on one table or entire database(Bruce)
-Array fixes
-Fix array over-runs of memory writes(Kurt)
-Fix elusive btree range/non-range bogue(Dan)
-Fix for hash indexes on some types like time and date
-Fix for pg_log size explosion
-Fix permissions on lo_export()(Bruce)
-Fix unitialized reads of memory(Kurt)
-Fixed ALTER TABLE ... char(3) bogue(Bruce)
-Fixed a few small memory leaks
-Fixed EXPLAIN handling of options and changed full_path option name
-Fixed output of group acl privileges
-Memory leaks (hunt and destroy with tools like Purify(Kurt)
-Minor improvements to rules system
-NOTIFY fixes
-New asserts for run-checking
-Overhauled parser/analyze code to properly report errors and increase speed
-Pg_dump -d now handles NULL's properly(Bruce)
-Prevent SELECT NULL from crashing server (Bruce)
-Properly report errors when INSERT ... SELECT columns did not match
-Properly report errors when insert column names were not correct
-psql \g filename now works(Bruce)
-psql fixed problem with multiple statements on one line with multiple outputs
-Removed duplicate system OIDs
-SELECT * INTO TABLE . GROUP/ORDER BY gives unlink error if table exists(Bruce)
-Several fixes for queries that crashed the backend
-Starting quote in insert string errors(Bruce)
-Submitting an empty query now returns empty status, not just " " query(Bruce)
-
-Enhancements
-------------
-Add EXPLAIN manual page(Bruce)
-Add UNIQUE index capability(Dan)
-Add hostname/user level access control rather than just hostname and user
-Add synonym of != for <>(Bruce)
-Allow "select oid,* from table"
-Allow BY,ORDER BY to specify columns by number, or by non-alias
-table.column(Bruce)
-Allow COPY from the frontend(Bryan)
-Allow GROUP BY to use alias column name(Bruce)
-Allow actual compression, not just reuse on the same page(Vadim)
-Allow installation-configuration option to auto-add all local users(Bryan)
-Allow libpq to distinguish between text value '' and NULL(Bruce)
-Allow non-postgres users with createdb privs to destroydb's
-Allow restriction on who can create C functions(Bryan)
-Allow restriction on who can do backend COPY(Bryan)
-Can shrink tables, pg_time and pg_log(Vadim & Erich)
-Change debogue level 2 to print queries only, changed debogue heading layout(Bruce)
-Change default decimal constant representation from float4 to float8(Bruce)
-European date format now set when postmaster is started
-Execute lowercase function names if not found with exact case
-Fixes for aggregate/GROUP processing, allow 'select sum(func(x),sum(x+y) from z'
-Gist now included in the distrubution(Marc)
-Idend authentication of local users(Bryan)
-Implement BETWEEN qualifier(Bruce)
-Implement IN qualifier(Bruce)
-libpq has PQgetisnull()(Bruce)
-libpq++ improvements
-New options to initdb(Bryan)
-Pg_dump allow dump of OIDs(Bruce)
-Pg_dump create indexes after tables are loaded for speed(Bruce)
-Pg_dumpall dumps all databases, and the user table
-Pginterface additions for NULL values(Bruce)
-Prevent postmaster from being run as root
-psql \h and \? is now readable(Bruce)
-psql allow backslashed, semicolons anywhere on the line(Bruce)
-psql changed command prompt for lines in query or in quotes(Bruce)
-psql char(3) now displays as (bp)char in \d output(Bruce)
-psql return code now more accurate(Bryan?)
-psql updated help syntax(Bruce)
-Re-visit and fix vacuum(Vadim)
-Reduce size of regression diffs, remove timezone name différence(Bruce)
-Remove compile-time parameters to enable binary distributions(Bryan)
-Reverse meaning of HBA masks(Bryan)
-Secure Authentication of local users(Bryan)
-Speed up vacuum(Vadim)
-Vacuum now had VERBOSE option(Bruce)
-
-Source tree changes
--------------------
-All functions now have prototypes that are compared against the calls
-Allow asserts to be disabled easly from Makefile.global(Bruce)
-Change oid constants used in code to #define names
-Decoupled sparc and solaris defines(Kurt)
-Gcc -Wall compiles cleanly with warnings only from unfixable constructs
-Major include file reorganization/reduction(Marc)
-Make now stops on compile failure(Bryan)
-Makefile restructuring(Bryan, Marc)
-Merge bsdi_2_1 to bsdi(Bruce)
-Monitor program removed
-Name change from Postgres95 to PostgreSQL
-New config.h file(Marc, Bryan)
-PG_VERSION now set to 6.0 and used by postmaster
-Portability additions, including Ultrix, DG/UX, AIX, and Solaris
-Reduced the number of #define's, centeralized #define's
-Remove duplicate OIDS in system tables(Dan)
-Remove duplicate system catalog info or report mismatches(Dan)
-Removed many os-specific #define's
-Restructured object file generation/location(Bryan, Marc)
-Restructured port-specific file locations(Bryan, Marc)
-Unused/uninialized variables corrected
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-1-09">
-<title>Sortie 1.09</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1996-11-04</simpara>
- </note>
-
-<para>
-Sorry, we didn't keep track of changes from 1.02 to 1.09. Some of
-the changes listed in 6.0 were actually included in the 1.02.1 to 1.09
-releases.
-</para>
-</sect1>
-
-<sect1 id="release-1-02">
-<title>Sortie 1.02</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1996-08-01</simpara>
- </note>
-
-<sect2>
-<title>Migration from version 1.02 to version 1.02.1</title>
-
-<para>
-Here is a new migration file for 1.02.1. It includes the 'copy' change
-and a script to convert old <acronym>ASCII</acronym> files.
-</para>
-<note>
-<para>
-The following notes are for the benefit of users who want to migrate
-databases from <productname>Postgres95</> 1.01 and 1.02 to
-<productname>Postgres95</> 1.02.1.
-</para>
-<para>
-If you are starting afresh with <productname>Postgres95</> 1.02.1 and do not
-need
-to migrate old databases, you do not need to read any further.
-</para>
-</note>
-
-<para>
-In order to upgrade older <productname>Postgres95</> version 1.01 or 1.02
-databases to
-version 1.02.1, the following steps are required:
-</para>
-<procedure>
-<step>
-<para>
-Start up a new 1.02.1 postmaster
-</para>
-</step>
-<step>
-<para>
-Add the new built-in functions and operators of 1.02.1 to 1.01 or 1.02
- databases. This is done by running the new 1.02.1 server against
- your own 1.01 or 1.02 database and applying the queries attached at
- the end of the file. This can be done easily through <command>psql</>. If
-your
- 1.01 or 1.02 database is named <literal>testdb</literal> and you have cut the
-commands
- from the end of this file and saved them in <filename>addfunc.sql</filename>:
-<programlisting>
- % psql testdb -f addfunc.sql
-</programlisting>
-
-Those upgrading 1.02 databases will get a warning when executing the
-last two statements in the file because they are already present in 1.02. This
-is
-not a cause for concern.
-</para>
-</step>
-</procedure>
-</sect2>
-
-<sect2>
-<title>Dump/Reload Procedure</title>
-
-<para>
-If you are trying to reload a pg_dump or text-mode, <literal>copy tablename to
-stdout</literal> generated with a previous version, you will need to run the
-attached <command>sed</command> script on the ASCII file before loading it into
-the
-database. The old format used '.' as end-of-data, while '\.' is now the
-end-of-data marker. Also, empty strings are now loaded in as '' rather
-than NULL. See the copy manual page for full details.
-
-<programlisting>
- sed 's/^\.$/\\./g' <in_file >out_file
-</programlisting>
-</para>
-<para>
-If you are loading an older binary copy or non-<systemitem>stdout</> copy, there
-is no
-end-of-data character, and hence no conversion necessary.
-
-<programlisting>
--- following lines added by agc to reflect the case-insensitive
--- regexp searching for varchar (in 1.02), and bpchar (in 1.02.1)
-create operator ~* (leftarg = bpchar, rightarg = text, procedure =
-texticregexeq);
-create operator !~* (leftarg = bpchar, rightarg = text, procedure =
-texticregexne);
-create operator ~* (leftarg = varchar, rightarg = text, procedure =
-texticregexeq);
-create operator !~* (leftarg = varchar, rightarg = text, procedure =
-texticregexne);
-</programlisting>
-</para>
-</sect2>
-
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Source code maintenance and development
- * worldwide team of volunteers
- * the source tree now in CVS at ftp.ki.net
-
-Enhancements
- * psql (and underlying libpq library) now has many more options for
- formatting output, including HTML
- * pg_dump now output the schema and/or the data, with many fixes to
- enhance completeness.
- * psql used in place of monitor in administration shell scripts.
- monitor to be deprecated in next release.
- * date/time functions enhanced
- * NULL insert/update/comparison fixed/enhanced
- * TCL/TK lib and shell fixed to work with both tck7.4/tk4.0 and tcl7.5/tk4.1
-
-Bug Fixes (almost too numerous to mention)
- * indexes
- * storage management
- * check for NULL pointer before dereferencing
- * Makefile fixes
-
-New Ports
- * added SolarisX86 port
- * added BSD/OS 2.1 port
- * added DG/UX port
-</programlisting>
-</para>
<!--
-Contributors (appologies to any missed)
- * Kurt J. Lidl <lidl at va.pubnix.com>
- (missed in first run, but no less important)
- * Erich Stamberger <eberger at gewi.kfunigraz.ac.at>
- * Jason Wright <jason at shiloh.vnet.net>
- * Cees de Groot <C.deGroot at inter.NL.net>
- * ernst.molitor at uni-bonn.de
- * michael.siebenborn at ae3.Hypo.DE (Michael Siebenborn (6929))
- * Brian E. Gallew <geek+ at cmu.edu>
- * Vadim B. Mikheev <vadim at sable.krasnoyarsk.su>
- * Adam Sussman <myddryn at vidya.com>
- * Chris Dunlop <chris at onthe.net.au>
- * Marc G. Fournier <scrappy at ki.net>
- * Dan McGuirk <mcguirk at indirect.com>
- * Dr_George_D_Detlefsen <drgeorge at ilt.com>
- * Erich Stamberger <eberger at gewi.kfunigraz.ac.at>
- * Massimo Dal Zotto <dz at cs.unitn.it>
- * Randy Kunkee <kunkee at Starbase.NeoSoft.COM>
- * Rick Weldon <rick at wisetech.com>
- * Thomas van Reimersdahl <reimersd at dali.techinfo.rwth-aachen.de>
- * david bennett <dave at bensoft.com>
- * ernst.molitor at uni-bonn.de
- * Julian Assange <proff at suburbia.net>
- * Bruce Momjian <pgman at candle.pha.pa.us>
- * Paul "Shag" Walmsley <ccshag at cclabs.missouri.edu>
- * "Alistair G. Crooks" <azcb0 at sde.uts.amdahl.com>
+ To add a new major-release series, add an entry here and in filelist.sgml.
+ Follow the naming convention, or you'll confuse generate_history.pl.
+
+ The reason for splitting the release notes this way is so that appropriate
+ subsets can easily be copied into back branches.
-->
-</sect2>
-</sect1>
+&release-7.4;
+&release-old;
-<sect1 id="release-1-01">
-<title>Sortie 1.01</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1996-02-23</simpara>
- </note>
-
-
-<sect2>
-<title>Migration from version 1.0 to version 1.01</title>
-
-<para>
-The following notes are for the benefit of users who want to migrate
-databases from <productname>Postgres95</> 1.0 to <productname>Postgres95</>
-1.01.
-</para>
-<para>
-If you are starting afresh with <productname>Postgres95</> 1.01 and do not need
-to migrate old databases, you do not need to read any further.
-</para>
-<para>
-In order to <productname>Postgres95</> version 1.01 with databases created with
-<productname>Postgres95</> version 1.0, the following steps are required:
-</para>
-<procedure>
-<step>
-<para>
-Set the definition of <symbol>NAMEDATALEN</symbol> in
-<filename>src/Makefile.global</filename> to 16
- and <symbol>OIDNAMELEN</symbol> to 20.
-</para>
-</step>
-<step>
-<para>
-Decide whether you want to use Host based authentication.
-</para>
-<substeps>
-<step>
-<para>
-If you do, you must create a file name <literal>pg_hba</literal> in your
-top-level data
- directory (typically the value of your <envar>$PGDATA</envar>).
-<filename>src/libpq/pg_hba</filename>
- shows anexemple syntax.
-</para>
-</step>
-<step>
-<para>
-If you do not want host-based authentication, you can comment out
- the line
-<programlisting>
- HBA = 1
-</programlisting>
- in <filename>src/Makefile.global</filename>
-</para>
-<para>
- Note that host-based authentication is turned on by default, and if
- you do not take steps A or B above, the out-of-the-box 1.01 will
- not allow you to connect to 1.0 databases.
-</para>
-</step>
-</substeps>
-</step>
-
-<step>
-<para>
-Compile and install 1.01, but DO NOT do the <command>initdb</command> step.
-</para>
-</step>
-<step>
-<para>
-Before doing anything else, terminate your 1.0 postmaster, and
- backup your existing <envar>$PGDATA</envar> directory.
-</para>
-</step>
-<step>
-<para>
-Set your <envar>PGDATA</envar> environment variable to your 1.0 databases, but
-set up
- path up so that 1.01 binaries are being used.
-</para>
-</step>
-<step>
-<para>
-Modify the file <filename><envar>$PGDATA</envar>/PG_VERSION</filename> from 5.0
-to 5.1
-</para>
-</step>
-<step>
-<para>
-Start up a new 1.01 postmaster
-</para>
-</step>
-<step>
-<para>
-Add the new built-in functions and operators of 1.01 to 1.0
- databases. This is done by running the new 1.01 server against
- your own 1.0 database and applying the queries attached and saving
- in the file 1.0_to_1.01.sql. This can be done easily through
-<command>psql</command>.
- If your 1.0 database is name <literal>testdb</literal>:
-
-<programlisting>
- % psql testdb -f 1.0_to_1.01.sql
-</programlisting>
-
-and then execute the following commands (cut and paste from here):
-
-<programlisting>
--- add builtin functions that are new to 1.01
-
-create function int4eqoid (int4, oid) returns bool as 'foo'
-language 'internal';
-create function oideqint4 (oid, int4) returns bool as 'foo'
-language 'internal';
-create function char2icregexeq (char2, text) returns bool as 'foo'
-language 'internal';
-create function char2icregexne (char2, text) returns bool as 'foo'
-language 'internal';
-create function char4icregexeq (char4, text) returns bool as 'foo'
-language 'internal';
-create function char4icregexne (char4, text) returns bool as 'foo'
-language 'internal';
-create function char8icregexeq (char8, text) returns bool as 'foo'
-language 'internal';
-create function char8icregexne (char8, text) returns bool as 'foo'
-language 'internal';
-create function char16icregexeq (char16, text) returns bool as 'foo'
-language 'internal';
-create function char16icregexne (char16, text) returns bool as 'foo'
-language 'internal';
-create function texticregexeq (text, text) returns bool as 'foo'
-language 'internal';
-create function texticregexne (text, text) returns bool as 'foo'
-language 'internal';
-
--- add builtin functions that are new to 1.01
-
-create operator = (leftarg = int4, rightarg = oid, procedure = int4eqoid);
-create operator = (leftarg = oid, rightarg = int4, procedure = oideqint4);
-create operator ~* (leftarg = char2, rightarg = text, procedure =
-char2icregexeq);
-create operator !~* (leftarg = char2, rightarg = text, procedure =
-char2icregexne);
-create operator ~* (leftarg = char4, rightarg = text, procedure =
-char4icregexeq);
-create operator !~* (leftarg = char4, rightarg = text, procedure =
-char4icregexne);
-create operator ~* (leftarg = char8, rightarg = text, procedure =
-char8icregexeq);
-create operator !~* (leftarg = char8, rightarg = text, procedure =
-char8icregexne);
-create operator ~* (leftarg = char16, rightarg = text, procedure =
-char16icregexeq);
-create operator !~* (leftarg = char16, rightarg = text, procedure =
-char16icregexne);
-create operator ~* (leftarg = text, rightarg = text, procedure = texticregexeq);
-create operator !~* (leftarg = text, rightarg = text, procedure =
-texticregexne);
-</programlisting>
-</para>
-</step>
-</procedure>
-</sect2>
-
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Incompatibilities:
- * 1.01 is backwards compatible with 1.0 database provided the user
- follow the steps outlined in the MIGRATION_from_1.0_to_1.01 file.
- If those steps are not taken, 1.01 is not compatible with 1.0 database.
-
-Enhancements:
- * added PQdisplayTuples() to libpq and changed monitor and psql to use it
- * added NeXT port (requires SysVIPC implementation)
- * added CAST .. AS ... syntax
- * added ASC and DESC key words
- * added 'internal' as a possible language for CREATE FUNCTION
- internal functions are C functions which have been statically linked
- into the postgres backend.
- * a new type "name" has been added for system identifiers (table names,
- attribute names, etc.) This replaces the old char16 type. The
- of name is set by the NAMEDATALEN #define in src/Makefile.global
- * a readable reference manual that describes the query language.
- * added host-based access control. A configuration file ($PGDATA/pg_hba)
- is used to hold the configuration data. If host-based access control
- is not desired, comment out HBA=1 in src/Makefile.global.
- * changed regex handling to be uniform use of Henry Spencer's regex code
- regardless of platform. The regex code is included in the distribution
- * added functions and operators for case-insensitive regular expressions.
- The operators are ~* and !~*.
- * pg_dump uses COPY instead of SELECT loop for better performance
-
-Bug fixes:
- * fixed an optimizer bogue that was causing core dumps when
- functions calls were used in comparisons in the WHERE clause
- * changed all uses of getuid to geteuid so that effective uids are used
- * psql now returns non-zero status on errors when using -c
- * applied public patches 1-14
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-1-0">
-<title>Sortie 1.0</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1995-09-05</simpara>
- </note>
-
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Copyright change:
- * The copyright of <productname>Postgres</productname> 1.0 has been loosened to
-be freely modifiable
- and modifiable for any purpose. Please read the COPYRIGHT file.
- Thanks to Professor Michael Stonebraker for making this possible.
-
-Incompatibilities:
- * date formats have to be MM-DD-YYYY (or DD-MM-YYYY if you're using
- EUROPEAN STYLE). This follows SQL-92 specs.
- * "delimiters" is now a key word
-
-Enhancements:
- * sql LIKE syntax has been added
- * copy command now takes an optional USING DELIMITER specification.
- delimiters can be any single-character string.
- * IRIX 5.3 port has been added.
- Thanks to Paul Walmsley and others.
- * updated pg_dump to work with new libpq
- * \d has been added psql
- Thanks to Keith Parks
- * regexp performance for architectures that use POSIX regex has been
- improved due to caching of precompiled patterns.
- Thanks to Alistair Crooks
- * a new version of libpq++
- Thanks to William Wanders
-
-Bug fixes:
- * arbitrary userids can be specified in the createuser script
- * \c to connect to other databases in psql now works.
- * bad pg_proc entry for float4inc() is fixed
- * users with usecreatedb field set can now create databases without
- having to be usesuper
- * remove access control entries when the entry no longer has any
- privileges
- * fixed non-portable datetimes implementation
- * added kerberos flags to the src/backend/Makefile
- * libpq now works with kerberos
- * typographic errors in the user manual have been corrected.
- * btrees with multiple index never worked, now we tell you they don't
- work when you try to use them
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-0-03">
-<title><productname>Postgres95</productname> Release 0.03</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1995-07-21</simpara>
- </note>
-
-<sect2>
-<title>Modifications</title>
-<para>
-<programlisting>
-Incompatible changes:
- * BETA-0.3 IS INCOMPATIBLE WITH DATABASES CREATED WITH PREVIOUS VERSIONS
- (due to system catalog changes and indexing structure changes).
- * double-quote (") is deprecated as a quoting character for string literals;
- you need to convert them to single quotes ('). <!-- " -->
- * name of aggregates (eg. int4sum) are renamed in accordance with the
- SQL standard (eg. sum).
- * CHANGE ACL syntax is replaced by GRANT/REVOKE syntax.
- * float literals (eg. 3.14) are now of type float4 (instead of float8 in
- previous releases); you might have to do typecasting if you dépend on it
- being of type float8. If you neglect to do the typecasting and you assign
- a float literal to a field of type float8, you may get incorrect values
- stored!
- * LIBPQ has been totally revamped so that frontend applications
- can connect to multiple backends
- * the usesysid field in pg_user has been changed from int2 to int4 to
- allow wider range of Unix user ids.
- * the netbsd/freebsd/bsd o/s ports have been consolidated into a
- single BSD44_derived port. (thanks to Alistair Crooks)
-
-SQL standard-compliance (the following details changes that makes postgres95
-more compliant to the SQL-92 standard):
- * the following SQL types are now built-in: smallint, int(eger), float, real,
- char(N), varchar(N), date and time.
-
- The following are aliases to existing postgres types:
- smallint -> int2
- integer, int -> int4
- float, real -> float4
- char(N) and varchar(N) are implemented as truncated text types. In
- addition, char(N) does blank-padding.
- * single-quote (') is used for quoting string literals; '' (in addition to
- \') is supported as means of inserting a single quote in a string
- * SQL standard aggregate names (MAX, MIN, AVG, SUM, COUNT) are used
- (Also, aggregates can now be overloaded, i.e. you can define your
- own MAX aggregate to take in a user-defined type.)
- * CHANGE ACL removed. GRANT/REVOKE syntax added.
- - Privileges can be given to a group using the "GROUP" key word.
- Forexemple:
- GRANT SELECT ON foobar TO GROUP my_group;
- The key word 'PUBLIC' is also supported to mean all users.
-
- Privileges can only be granted or revoked to one user or group
- at a time.
-
- "WITH GRANT OPTION" is not supported. Only class owners can change
- access control
- - The default access control is to to grant users readonly access.
- You must explicitly grant insert/update access to users. To change
- this, modify the line in
- src/backend/utils/acl.h
- that defines ACL_WORLD_DEFAULT
-
-Bug fixes:
- * the bogue where aggregates of empty tables were not run has been fixed. Now,
- aggregates run on empty tables will return the initial conditions of the
- aggregates. Thus, COUNT of an empty table will now properly return 0.
- MAX/MIN of an empty table will return a row of value NULL.
- * allow the use of \; inside the monitor
- * the LISTEN/NOTIFY asynchronous notification mechanism now work
- * NOTIFY in rule action bodies now work
- * hash indexes work, and access methods in general should perform better.
- creation of large btree indexes should be much faster. (thanks to Paul
- Aoki)
-
-Other changes and enhancements:
- * addition of an EXPLAIN statement used for explaining the query exécution
- plan (eg. "EXPLAIN SELECT * FROM EMP" prints out the exécution plan for
- the query).
- * WARN and NOTICE messages no longer have timestamps on them. To turn on
- timestamps of error messages, uncomment the line in
- src/backend/utils/elog.h:
- /* define ELOG_TIMESTAMPS */
- * On an access control violation, the message
- "Either no such class or insufficient privilege"
- will be given. This is the same message that is returned when
- a class is not found. This dissuades non-privileged users from
- guessing the existence of privileged classes.
- * some additional system catalog changes have been made that are not
- visible to the user.
-
-libpgtcl changes:
- * The -oid option has been added to the "pg_result" tcl command.
- pg_result -oid returns oid of the last row inserted. If the
- last command was not an INSERT, then pg_result -oid returns "".
- * the large object interface is available as pg_lo* tcl commands:
- pg_lo_open, pg_lo_close, pg_lo_creat, etc.
-
-Portability enhancements and New Ports:
- * flex/lex problems have been cleared up. Now, you should be able to use
- flex instead of lex on any platforms. We no longer make assumptions of
- what lexer you use based on the platform you use.
- * The Linux-ELF port is now supported. Various configuration have been
- tested: The following configuration is known to work:
- kernel 1.2.10, gcc 2.6.3, libc 4.7.2, flex 2.5.2, bison 1.24
- with everything in ELF format,
-
-New utilities:
- * ipcclean added to the distribution
- ipcclean usually does not need to be run, but if your backend crashes
- and leaves shared memory segments hanging around, ipcclean will
- clean them up for you.
-
-New documentation:
- * the user manual has been revised and libpq documentation added.
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-0-02">
-<title><productname>Postgres95</productname> Release 0.02</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1995-05-25</simpara>
- </note>
-
-<sect2>
-<title>Modifications</title>
-
-<para>
-<programlisting>
-Incompatible changes:
- * The SQL statement for creating a database is 'CREATE DATABASE' instead
- of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead
- of 'DESTROYDB'. However, the names of the executables 'createdb' and
- 'destroydb' remain the same.
-
-New tools:
- * pgperl - a Perl (4.036) interface to Postgres95
- * pg_dump - a utility for dumping out a postgres database into a
- script file containing query commands. The script files are in a ASCII
- format and can be used to reconstruct the database, even on other
- machines and other architectures. (Also good for converting
- a Postgres 4.2 database to Postgres95 database.)
-
-The following ports have been incorporated into postgres95-beta-0.02:
- * the NetBSD port by Alistair Crooks
- * the AIX port by Mike Tung
- * the Windows NT port by Jon Forrest (more stuff but not done yet)
- * the Linux ELF port by Brian Gallew
-
-The following bogues have been fixed in postgres95-beta-0.02:
- * new lines not escaped in COPY OUT and problem with COPY OUT when first
- attribute is a '.'
- * cannot type return to use the default user id in createuser
- * SELECT DISTINCT on big tables crashes
- * Linux installation problems
- * monitor doesn't allow use of 'localhost' as PGHOST
- * psql core dumps when doing \c or \l
- * the "pgtclsh" target missing from src/bin/pgtclsh/Makefile
- * libpgtcl has a hard-wired default port number
- * SELECT DISTINCT INTO TABLE hangs
- * CREATE TYPE doesn't accept 'variable' as the internallength
- * wrong result using more than 1 aggregate in a SELECT
-</programlisting>
-</para>
-</sect2>
-</sect1>
-
-<sect1 id="release-0-01">
-<title><productname>Postgres95</productname> Release 0.01</title>
-
- <note>
- <title>Date de sortie</title>
- <simpara>1995-05-01</simpara>
- </note>
-
-<para>
-Initial release.
-</para>
-</sect1>
-
-<![IGNORE[
- <sect1 id="timing-results">
- <title>Timing Results</title>
-
- <para>
- These timing results are from running the regression test with the commands
-
- <programlisting>
-% cd src/test/regress
-% make all
-% time make runtest
- </programlisting>
- </para>
- <para>
- Timing under Linux 2.0.27 seems to have a roughly 5% variation from run
- to run, presumably due to the scheduling vagaries of multitasking systems.
- </para>
-
- <sect2>
- <title>Version 6.5</title>
-
- <para>
- As has been the case for previous releases, timing between
- releases is not directly comparable since new regression tests
- have been added. In general, 6.5 is faster than previous
- releases.
- </para>
-
- <para>
- Timing with <function>fsync()</function> disabled:
-
- <programlisting>
- Time System
- 02:00 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486
- 04:38 Sparc Ultra 1 143MHz, 64MB, Solaris 2.6
- </programlisting>
- </para>
-
- <para>
- Timing with <function>fsync()</function> enabled:
-
- <programlisting>
- Time System
- 04:21 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486
- </programlisting>
-
- For the <systemitem class="osname">Linux</systemitem> system above, using <acronym>UW-SCSI</acronym> disks rather than (older) <acronym>IDE</acronym>
- disks leads to a 50% improvement in speed on the regression test.
- </para>
- </sect2>
-
-<sect2>
-<title>Version 6.4beta</title>
-
-<para>
-The times for this release are not directly comparable to those for previous releases
-since some additional regression tests have been included.
-In general, however, 6.4 should be slightly faster than the previous release (thanks, Bruce!).
-</para>
-<para>
-<programlisting>
- Time System
- 02:26 Dual Pentium Pro 180, 96MB, UW-SCSI, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
-</programlisting>
-</para>
-</sect2>
-
-<sect2>
-<title>Version 6.3</title>
-
-<para>
-The times for this release are not directly comparable to those for previous releases
-since some additional regression tests have been included and some obsolete tests involving
-time travel have been removed.
-In general, however, 6.3 is substantially faster than previous releases (thanks, Bruce!).
-</para>
-<para>
-<programlisting>
- Time System
- 02:30 Dual Pentium Pro 180, 96MB, UW-SCSI, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
- 04:12 Dual Pentium Pro 180, 96MB, EIDE, Linux 2.0.30, gcc 2.7.2.1 -O2 -m486
-</programlisting>
-</para>
-</sect2>
-
-<sect2>
-<title>Version 6.1</title>
-
-<para>
-<programlisting>
- Time System
- 06:12 Pentium Pro 180, 32MB, EIDE, Linux 2.0.30, gcc 2.7.2 -O2 -m486
- 12:06 P-100, 48MB, Linux 2.0.29, gcc
- 39:58 Sparc IPC 32MB, Solaris 2.5, gcc 2.7.2.1 -O -g
-</programlisting>
-</para>
-</sect2>
-</sect1>
-]]>
</appendix>
-
-<!-- Keep this comment at the end of the file
-Local variables:
-mode:sgml
-sgml-omittag:nil
-sgml-shorttag:t
-sgml-minimize-attributes:nil
-sgml-always-quote-attributes:t
-sgml-indent-step:1
-sgml-indent-data:t
-sgml-parent-document:nil
-sgml-default-dtd-file:"./reference.ced"
-sgml-exposed-tags:nil
-sgml-local-catalogs:("/usr/lib/sgml/catalog")
-sgml-local-ecat-files:nil
-End:
--->
Modified: traduc/branches/bv747/manuel/version.sgml
===================================================================
--- traduc/branches/bv747/manuel/version.sgml 2009-09-08 07:51:34 UTC (rev 1388)
+++ traduc/branches/bv747/manuel/version.sgml 2009-09-08 08:33:39 UTC (rev 1389)
@@ -1,2 +1,2 @@
-<!entity version "7.4.25">
+<!entity version "7.4.26">
<!entity majorversion "7.4">
Plus d'informations sur la liste de diffusion Trad