[Trad] [svn:pgfr] r1324 - in traduc/trunk/postgresql: . ref

admin at listes.postgresql.fr admin at listes.postgresql.fr
Ven 22 Mai 12:49:15 CEST 2009


Author: gleu
Date: 2009-05-22 12:49:15 +0200 (Fri, 22 May 2009)
New Revision: 1324

Added:
   traduc/trunk/postgresql/release-7.4.xml
   traduc/trunk/postgresql/release-8.0.xml
   traduc/trunk/postgresql/release-8.1.xml
   traduc/trunk/postgresql/release-8.2.xml
   traduc/trunk/postgresql/release-8.3.xml
   traduc/trunk/postgresql/release-8.4.xml
   traduc/trunk/postgresql/release-old.xml
Modified:
   traduc/trunk/postgresql/array.xml
   traduc/trunk/postgresql/backup.xml
   traduc/trunk/postgresql/charset.xml
   traduc/trunk/postgresql/client-auth.xml
   traduc/trunk/postgresql/config.xml
   traduc/trunk/postgresql/datatype.xml
   traduc/trunk/postgresql/ddl.xml
   traduc/trunk/postgresql/dml.xml
   traduc/trunk/postgresql/filelist.xml
   traduc/trunk/postgresql/func.xml
   traduc/trunk/postgresql/history.xml
   traduc/trunk/postgresql/indices.xml
   traduc/trunk/postgresql/info.xml
   traduc/trunk/postgresql/installation.xml
   traduc/trunk/postgresql/intro.xml
   traduc/trunk/postgresql/libpq.xml
   traduc/trunk/postgresql/maintenance.xml
   traduc/trunk/postgresql/manage-ag.xml
   traduc/trunk/postgresql/monitoring.xml
   traduc/trunk/postgresql/mvcc.xml
   traduc/trunk/postgresql/perform.xml
   traduc/trunk/postgresql/pgbench.xml
   traduc/trunk/postgresql/pgbuffercache.xml
   traduc/trunk/postgresql/pgstandby.xml
   traduc/trunk/postgresql/plpgsql.xml
   traduc/trunk/postgresql/problems.xml
   traduc/trunk/postgresql/queries.xml
   traduc/trunk/postgresql/query.xml
   traduc/trunk/postgresql/ref/alter_table.xml
   traduc/trunk/postgresql/ref/create_database.xml
   traduc/trunk/postgresql/ref/declare.xml
   traduc/trunk/postgresql/ref/fetch.xml
   traduc/trunk/postgresql/ref/grant.xml
   traduc/trunk/postgresql/ref/prepare_transaction.xml
   traduc/trunk/postgresql/ref/psql-ref.xml
   traduc/trunk/postgresql/ref/select.xml
   traduc/trunk/postgresql/ref/truncate.xml
   traduc/trunk/postgresql/release.xml
   traduc/trunk/postgresql/rowtypes.xml
   traduc/trunk/postgresql/runtime.xml
   traduc/trunk/postgresql/start.xml
   traduc/trunk/postgresql/storage.xml
   traduc/trunk/postgresql/syntax.xml
   traduc/trunk/postgresql/textsearch.xml
   traduc/trunk/postgresql/typeconv.xml
   traduc/trunk/postgresql/version.xml
Log:
Merge 8.4 beta 2.


Modified: traduc/trunk/postgresql/array.xml
===================================================================
--- traduc/trunk/postgresql/array.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/array.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -56,13 +56,13 @@
     carres   integer[3][3]
 );</programlisting>
 
-  Néanmoins, les développements actuels n'imposent pas le respect de la
-  taille du tableau -- le comportement est identique à celui des tableaux dont
-  la longueur n'est pas précisée.
+  Néanmoins, l'implantation actuelle ignore toute limite fournie pour la taille
+  du tableau, c'est-à-dire que le comportement est identique à celui des
+  tableaux dont la longueur n'est pas précisée.
  </para>
 
  <para>
-  En fait, l'implantation actuelle n'oblige pas non plus à déclarer le
+  De plus, l'implantation actuelle n'oblige pas non plus à déclarer le
   nombre de dimensions. Les tableaux d'un type d'élément particulier sont tous
   considérés comme étant du même type, quelque soit leur taille ou le
   nombre de dimensions. Déclarer le nombre de dimensions ou la taille dans
@@ -71,9 +71,10 @@
  </para>
 
  <para>
-  Une autre syntaxe, conforme au standard SQL, peut être
-  utilisée pour les tableaux à une dimension.
-  <structfield>paye_par_semaine</structfield> peut être défini ainsi&nbsp;:
+  Une autre syntaxe, conforme au standard SQL utilisant le mot clé
+  <literal>ARRAY</literal>, peut être utilisée pour les tableaux à une
+  dimension. <structfield>paye_par_semaine</structfield> peut être défini
+  ainsi&nbsp;:
 <programlisting>paye_par_semaine  integer ARRAY[4],</programlisting>
   ou si aucune taille du tableau n'est spécifiée&nbsp;:
 <programlisting>
@@ -106,9 +107,9 @@
    où <replaceable>delim</replaceable> est le caractère de délimitation pour ce
    type, tel qu'il est enregistré dans son entrée <literal>pg_type</literal>.
    Parmi les types de données standard fournis par la distribution
-   <productname>PostgreSQL</productname>, le type <literal>box</literal> utilise un
-   point-virgule (<literal>;</literal>) mais tous les autres utilisent une virgule
-   (<literal>,</literal>). Chaque <replaceable>val</replaceable> est soit une constante
+   <productname>PostgreSQL</productname>, tous utilisent une virgule
+   (<literal>,</literal>), sauf pour le type <literal>box</literal> qui utilise
+   un point-virgule (<literal>;</literal>). Chaque <replaceable>val</replaceable> est soit une constante
    du type des éléments du tableau soit un sous-tableau.
   </para>
    
@@ -159,6 +160,20 @@
  </para>
 
  <para>
+  Les tableaux multi-dimensionnels doivent avoir des échelles correspondantes
+  pour chaque dimension. Une différence cause la levée d'une erreur. Par
+  exemple&nbsp;:
+
+<programlisting>
+INSERT INTO sal_emp
+    VALUES ('Bill',
+    '{10000, 10000, 10000, 10000}',
+    '{{"rendez-vous", "repas"}, {"rendez-vous"}}');
+ERROR:  multidimensional arrays must have array expressions with matching dimensions
+</programlisting>
+ </para>
+ 
+ <para>
   La syntaxe du constructeur <literal>ARRAY</literal> peut aussi être
   utilisée&nbsp;:
 <programlisting>INSERT INTO sal_emp
@@ -179,20 +194,6 @@
   <literal>ARRAY</literal> est discutée plus en profondeur dans la <xref
   linkend="sql-syntax-array-constructors"/>.
  </para>
-
- <para>
-  Les tableaux multi-dimensionnels doivent avoir des échelles correspondantes
-  pour chaque dimension. Une différence cause la levée d'une erreur. Par
-  exemple&nbsp;:
-
-<programlisting>
-INSERT INTO sal_emp
-    VALUES ('Bill',
-    '{10000, 10000, 10000, 10000}',
-    '{{"rendez-vous", "repas"}, {"rendez-vous"}}');
-ERROR:  multidimensional arrays must have array expressions with matching dimensions
-</programlisting>
- </para>
  </sect2>
 
  <sect2 id="arrays-accessing">
@@ -205,8 +206,8 @@
 
  <para>
   Quelques requêtes lancées sur la table permettent d'éclairer le propos
-  précédent. Tout d'abord, l'accès à un seul élément du tableau
-  à la fois. Cette requête retrouve le nom des employés dont la paye a
+  précédent. Tout d'abord, l'accès à un seul élément du tableau.
+  Cette requête retrouve le nom des employés dont la paye a
   changé au cours de la deuxième semaine&nbsp;:
      
 <programlisting>SELECT nom FROM sal_emp WHERE paye_par_semaine[1] &lt;&gt; paye_par_semaine[2];
@@ -290,7 +291,8 @@
   NULL. (Ceci ne correspond pas au comportement sans indice, et est fait
   pour des raisons historiques.)
   Si la partie demandée surcharge partiellement les limites du
-  tableau, alors elle est réduite silencieusement à la partie surchargée.
+  tableau, alors elle est réduite silencieusement à la partie surchargée
+  au lieu de renvoyer NULL.
  </para>
 
  <para>
@@ -575,8 +577,8 @@
    habituellement une virgule (<literal>,</literal>) mais peut différer&nbsp;:
    il est déterminé par le paramètre <literal>typdelim</literal> du type de l'élément
    tableau (parmi les types de données standards supportés par l'implantation
-   de <productname>PostgreSQL</productname>, le type <literal>box</literal> utilise un
-   point-virgule (<literal>;</literal>) mais tous les autres utilisent la virgule).
+   de <productname>PostgreSQL</productname>, seul le type <literal>box</literal> utilise un
+   point-virgule (<literal>;</literal>), tous les autres utilisant la virgule).
    Dans un tableau multidimensionnel, chaque dimension (row, plane, cube, etc.)
    utilise son propre niveau d'accolades et les délimiteurs doivent être
    utilisés entre des entités adjacentes au sein d'accolades de même niveau.
@@ -633,11 +635,11 @@
   
   <para>
    Comme indiqué précédemment, lors de l'écriture d'une valeur de tableau,
-   des guillemets doubles peuvent être positionnés autour de chaque élément
+   des guillemets doubles peuvent être utilisés autour de chaque élément
    individuel du
    tableau. Il <emphasis>faut</emphasis> le faire si leur absence autour d'un élément
    induit en erreur l'analyseur de la valeur du tableau. Par exemple, les
-   éléments contenant des crochets, virgules (ou tout caractère délimiteur),
+   éléments contenant des crochets, virgules (ou tout caractère délimiteur correspondant),
    guillemets doubles, antislashs ou espace (en début comme en fin) doivent
    avoir des guillemets doubles. Les chaînes vides et les chaînes <literal>NULL</literal>
    doivent aussi être entre guillemets. Pour placer un guillemet double ou un antislash

Modified: traduc/trunk/postgresql/backup.xml
===================================================================
--- traduc/trunk/postgresql/backup.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/backup.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -1193,6 +1193,29 @@
       </listitem>
      </varlistentry>
 
+     <varlistentry id="recovery-end-command" xreflabel="recovery_end_command">
+      <term><varname>recovery_end_command</varname> (<type>string</type>)</term>
+      <listitem>
+       <para>
+		This parameter specifies a shell command that will be executed once only
+		at the end of recovery. This parameter is optional. The purpose of the
+		recovery_end_command is to provide a mechanism for cleanup following
+		replication or recovery. 
+		Any <literal>%r</literal> is replaced by the name of the file
+		containing the last valid restart point. That is the earliest file that
+		must be kept to allow a restore to be restartable, so this information
+		can be used to truncate the archive to just the minimum required to
+		support restart of the current restore. <literal>%r</literal> would only be
+		used in a warm-standby configuration  (see <xref linkend="warm-standby"/>). 
+		Write <literal>%%</literal> to embed an actual <literal>%</literal> character
+		in the command.
+		If the command returns a non-zero exit status then a WARNING log
+		message will be written, unless signalled in which case we return
+		a FATAL error.
+       </para>
+      </listitem>
+     </varlistentry>
+     
      <varlistentry id="recovery-target-time" xreflabel="recovery_target_time">
       <term><varname>recovery_target_time</varname> (<type>timestamp</type>)
       </term>

Modified: traduc/trunk/postgresql/charset.xml
===================================================================
--- traduc/trunk/postgresql/charset.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/charset.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -24,11 +24,9 @@
 
     <listitem>
      <para>
-      la fourniture d'un certain nombre d'encodages différents définis dans le
-      serveur <productname>PostgreSQL</productname>, y compris
-      les jeux de caractères multi-octets, pour permettre le stockage de
-      texte dans toutes les langues et fournir la traduction de l'encodage 
-      entre serveur et client.
+      la fourniture d'un certain nombre d'encodages différents pour permettre
+      le stockage de texte dans toutes les langues et fournir la traduction de
+      l'encodage entre serveur et client.
      </para>
     </listitem>
    </itemizedlist>
@@ -77,8 +75,9 @@
     disponibles et leurs noms dépendent de l'éditeur du système d'exploitation
     et de ce qui est installé. Sur la plupart des systèmes Unix, la commande
     <literal>locale -a</literal> fournit la liste des locales disponibles.
-    Windows utilise des noms plus verbeux, comme <literal>German_Germany</literal>
-    ou <literal>Swedish_Sweden.1252</literal>.
+    Windows utilise des noms de locale plus verbeux, comme
+    <literal>German_Germany</literal> ou <literal>Swedish_Sweden.1252</literal>
+    mais le principe est le même.
    </para>
 
    <para>
@@ -178,7 +177,7 @@
      plupart des systèmes d'exploitation, la chose suivante&nbsp;:
      pour une catégorie de locales donnée (l'ordonnancement par exemple)
      les variables d'environnement <envar>LC_ALL</envar>,
-     <envar>LC_COLLATE</envar> (la variable qui correspond à la catégorie)
+     <envar>LC_COLLATE</envar> (ou la variable qui correspond à la catégorie)
      et <envar>LANG</envar> sont consultées dans cet ordre jusqu'à en
      trouver une qui est fixée. Si aucune de ces variables n'est fixée,
      c'est la locale par défaut, <literal>C</literal>, qui est utilisée.
@@ -196,7 +195,8 @@
    <para>
     Pour permettre la traduction des messages dans la langue préférée de
     l'utilisateur, <acronym>NLS</acronym> doit avoir été activé pendant la
-    compilation. Ce choix est indépendant du support d'autres locales.
+    compilation (<literal>configure --enable-nls</literal>). Tout autre support
+    de la locale est construit automatiquement.
    </para>
   </sect2>
 
@@ -342,6 +342,8 @@
    de données. Pour les locales <literal>C</literal> ou <literal>POSIX</literal>, tous
    les jeux de caractères sont autorisés, mais pour les locales,
    il n'y a qu'un seul jeux de caractères qui fonctionne correctement.
+   (Néanmoins, sur Windows, l'encodage UTF-8 peut être utilisé avec toute
+   locale.)
   </para>
 
    <sect2 id="multibyte-charset-supported">
@@ -781,6 +783,14 @@
 <programlisting>CREATE DATABASE korean WITH ENCODING 'EUC_KR' LC_COLLATE='ko_KR.euckr' LC_CTYPE='ko_KR.euckr' TEMPLATE=template0;
 </programlisting>
 
+     Notez que les commandes ci-dessus précisent de copier la base de données
+     <literal>template0</literal>. Lors de la copie d'une autre base, les
+     paramètres d'encodage et de locale ne peuvent pas être modifiés de ceux de
+     la base de données source car cela pourrait corrompre les données. Pour
+     plus d'informations, voir <xref linkend="manage-ag-templatedbs"/>.
+    </para>
+
+    <para>
      L'encodage de la base de données est conservé dans le catalogue système
      <literal>pg_database</literal>.  Cela est visible à l'aide de 
      l'option <option>-l</option> ou de la commande <command>\l</command> de
@@ -802,10 +812,11 @@
 
     <important>
      <para>
-      Sur la plupart des systèmes d'exploitation modernes, <productname>PostgreSQL</productname>
-      peut déterminer le jeu de caractères impliqué par la variable <envar>LC_CTYPE</envar>,
-      et s'assure que le bon encodage de la base de données est utilisé.
-      Sur les systèmes plus anciens, il est de la responsabilité de
+      Sur la plupart des systèmes d'exploitation modernes,
+      <productname>PostgreSQL</productname> peut déterminer le jeu de
+      caractères impliqué par la variable <envar>LC_CTYPE</envar>,
+      et s'assure que l'encodage correspondant de la base de données est
+      utilisé. Sur les systèmes plus anciens, il est de la responsabilité de
       l'utilisateur de s'assurer que l'encodage attendu par la locale est bien
       utilisé. Une erreur à ce niveau risque fort de conduire à un comportement
       étrange des opérations liées à la locale, tel le tri.

Modified: traduc/trunk/postgresql/client-auth.xml
===================================================================
--- traduc/trunk/postgresql/client-auth.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/client-auth.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -1283,7 +1283,7 @@
     les connexions SSL. Quand cette méthode est utilisée, le serveur
     exigera que le client fournisse un certificat. Aucune invite de saisie
     de mot de passe ne sera envoyée au client. L'attribut <literal>cn</literal>
-    du certificat sera mis en correspondance avec le nom d'utilisateur demandé,
+    du certificat sera comparé avec le nom d'utilisateur demandé,
     et s'ils correspondent la connexion sera autorisée. On peut avoir recours
     aux tables de correspondance d'identité si les noms d'utilisateur ne
     correspondent pas.

Modified: traduc/trunk/postgresql/config.xml
===================================================================
--- traduc/trunk/postgresql/config.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/config.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -821,18 +821,19 @@
 	Configure le nombre maximum de transactions simultanément dans
 	l'état <quote>préparées</quote> (voir <xref
 	linkend="sql-prepare-transaction" endterm="sql-prepare-transaction-title"/>).
-	Zéro désactive la fonctionnalité des
-	transactions préparées. La valeur par défaut est de cinq transactions.
+	Zéro, la configuration par défaut, désactive la fonctionnalité des
+	transactions préparées
 	Ce paramètre ne peut être configuré qu'au lancement du serveur.
        </para>
 
        <para>
-        Si les transactions préparées ne sont pas utilisées, ce paramètre peut
-	être positionné à zéro. Au contraire, si elles sont utilisées, il
-	peut être intéressant de positionner 
-	<varname>max_prepared_transactions</varname> au minimum à
-	<xref linkend="guc-max-connections"/> pour
-	éviter d'indésirables échecs lors de l'étape de préparation.
+        Si vous ne prévoyez pas d'utiliser les transactions préparées, ce
+	paramètre devrait être positionné à zéro pour éviter toute création
+	accidentelle de transactions préparées. Au contraire, si vous les
+	utilisez, il peut être intéressant de positionner
+	<varname>max_prepared_transactions</varname> au minimum à au moins
+	<xref linkend="guc-max-connections"/> pour que chaque session puisse
+	avoir sa transaction préparée.
        </para>
 
        <para>

Modified: traduc/trunk/postgresql/datatype.xml
===================================================================
--- traduc/trunk/postgresql/datatype.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/datatype.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -125,7 +125,7 @@
       <row>
        <entry><type>double precision</type></entry>
        <entry><type>float8</type></entry>
-       <entry>Nombre à virgule flottante de double précision</entry>
+       <entry>Nombre à virgule flottante de double précision (sur huit octets)</entry>
       </row>
 
       <row>
@@ -161,7 +161,8 @@
       <row>
        <entry><type>macaddr</type></entry>
        <entry></entry>
-       <entry>Adresse MAC</entry>
+       <entry>Adresse MAC (pour <foreignphrase>Media Access
+        Control</foreignphrase>)</entry>
       </row>
 
       <row>
@@ -199,7 +200,7 @@
       <row>
        <entry><type>real</type></entry>
        <entry><type>float4</type></entry>
-       <entry>Nombre à virgule flottante de simple précision</entry>
+       <entry>Nombre à virgule flottante de simple précision (sur quatre octets)</entry>
       </row>
 
       <row>
@@ -223,7 +224,7 @@
       <row>
        <entry><type>time [ (<replaceable>p</replaceable>) ] [ without time zone ]</type></entry>
        <entry></entry>
-       <entry>Heure du jour</entry>
+       <entry>Heure du jour (pas du fuseau horaire)</entry>
       </row>
 
       <row>
@@ -235,7 +236,7 @@
       <row>
        <entry><type>timestamp [ (<replaceable>p</replaceable>) ] [ without time zone ]</type></entry>
        <entry></entry>
-       <entry>Date et heure</entry>
+       <entry>Date et heure (pas du fuseau horaire)</entry>
       </row>
 
       <row>
@@ -456,8 +457,8 @@
     </para>
 
     <para>
-     Le type <type>bigint</type> peut ne pas fonctionner correctement
-     sur toutes les plates-formes, car il repose sur la capacité du
+     Sur les très petits systèmes, le type <type>bigint</type> peut ne pas
+     fonctionner correctement car il repose sur la capacité du
      compilateur à supporter les entiers de 8 octets.
      Sur une machine qui ne les supporte pas, <type>bigint</type> se
      comporte comme <type>integer</type> (mais prend bien huit octets
@@ -723,7 +724,7 @@
      <type>float</type> du standard SQL, ainsi que 
      <type>float(<replaceable>p</replaceable>)</type> pour indiquer
      des types numériques inexacts. <replaceable>p</replaceable>
-     indique la précision minimale acceptable en chiffres binaires.
+     indique la précision minimale acceptable en <emphasis>chiffres binaires</emphasis>.
      <productname>PostgreSQL</productname> accepte de
      <type>float(1)</type> à <type>float(24)</type>, qu'il transforme en
      type <type>real</type>, et de
@@ -738,7 +739,7 @@
      <para>
       Avant <productname>PostgreSQL</productname> 7.4, la précision
       d'un <type>float(<replaceable>p</replaceable>)</type> était
-      supposée indiquer une précision en chiffres décimaux.
+      supposée indiquer une précision en <emphasis>chiffres décimaux</emphasis>.
       Cela a été corrigé pour respecter le standard SQL, qui
       indique que la précision est indiquée en chiffres binaires.
       L'affirmation que les <type>real</type> et les
@@ -859,6 +860,8 @@
    <para>
     Le type <type>money</type> stocke un montant en devise avec
     un nombre fixe de décimales. Voir le <xref linkend="datatype-money-table"/>.
+    La précision de la partie fractionnée est contrôlée par la locale de
+    la base de données.
     De nombreux formats sont acceptés en entrée, dont les entiers et
     les nombre à virgule flottante, ainsi que les formats classiques
     de devises, comme <literal>'$1,000.00'</literal>. 
@@ -886,7 +889,8 @@
     des données du type  <type>money</type> dans une base de données qui a une
     configuration différente de <varname>lc_monetary</varname> pourrait ne pas
     fonctionner. Pour éviter les problèmes, assurez-vous, avant de restaurer une
-    sauvegarde, que la variable <varname>lc_monetary</varname> a la même valeur
+    sauvegarde dans une nouvelle base de données, que la variable
+    <varname>lc_monetary</varname> a la même valeur
     ou une valeur équivalente à celle qui était configurée lors de la
     sauvegarde.
    </para>
@@ -989,8 +993,9 @@
     <type>character(<replaceable>n</replaceable>)</type> où <replaceable>n</replaceable>
     est un entier positif.
     Ces deux types permettent de stocker des chaînes de caractères de taille
-    inférieure ou égale à <replaceable>n</replaceable>. Toute tentative
-    d'insértion d'une chaîne plus longue conduit à une erreur, à moins que les 
+    inférieure ou égale à <replaceable>n</replaceable> (ce ne sont pas des octets).
+    Toute tentative
+    d'insertion d'une chaîne plus longue conduit à une erreur, à moins que les 
     caractères en excès ne soient tous des espaces, auquel cas la chaîne 
     est tronquée à la taille maximale (cette exception étrange est imposée
     par la norme <acronym>SQL</acronym>).
@@ -1137,14 +1142,15 @@
     dans les catalogues systèmes et n'est pas destiné à être utilisé par
     les utilisateurs normaux. Sa taille est actuellement définie à 64 octets 
     (63 utilisables plus le terminateur) mais doit être référencée en
-    utilisant la constante <symbol>NAMEDATALEN</symbol>. La taille est
+    utilisant la constante <symbol>NAMEDATALEN</symbol> en code source
+    <literal>C</literal>. La taille est
     définie à la compilation (et est donc ajustable pour des besoins 
     particuliers). La taille maximale par défaut peut éventuellement être
     modifiée dans une
     prochaine version. Le type <type>"char"</type> (attention aux guillemets)
     est différent de <type>char(1)</type> car il n'utilise qu'un seul octet 
     de stockage. Il est utilisé dans les catalogues systèmes comme un type 
-    d'énumération économique.
+    d'énumération simpliste.
    </para>
 
     <table id="datatype-character-special-table">
@@ -1217,7 +1223,7 @@
 
    <para>
     Une chaîne binaire est une séquence d'octets. Les chaînes binaires
-    se distinguent des chaînes de caractères par deux caractéristiques&nbsp;:
+    se distinguent des chaînes de caractères de deux façons&nbsp;:
     tout d'abord, les chaînes binaires permettent de stocker des octets de
     valeurs zéro ainsi que les autres caractères <quote>non imprimables</quote>
     (habituellement, les octets en dehors de l'échelle de 32 à
@@ -1296,12 +1302,11 @@
    </table>
 
    <para>
-    La nécessité d'échapper les octets <quote>non affichables</quote> dépend
+    La nécessité d'échapper les octets <emphasis>non affichables</emphasis> dépend
     des paramétrages de la locale. Il est parfois possible de s'en sortir sans
     échappement. Le résultat de chacun des
     exemples du <xref linkend="datatype-binary-sqlesc"/> fait exactement
-    un octet, même si la représentation en sortie de l'octet zéro et
-    de l'antislash font plus d'un caractère.
+    un octet, même si la représentation en sortie fait plus d'un caractère.
    </para>
 
    <para>
@@ -1333,8 +1338,7 @@
    octal sur trois caractères et précédé d'un antislash.
    La plupart des caractères <quote>imprimables</quote> sont affichés 
    avec leur représentation standard dans le jeu de caractères du client.
-   Les octets de valeur décimale 92 (antislash) ont une représentation
-   spéciale. Les détails sont dans le
+   Les octets de valeur décimale 92 (antislash) sont doublés. Les détails sont dans le
    <xref linkend="datatype-binary-resesc"/>.
    </para>
 
@@ -1454,7 +1458,7 @@
        <row>
         <entry><type>timestamp [ (<replaceable>p</replaceable>) ] [ without time zone ]</type></entry>
         <entry>8 octets</entry>
-        <entry>date et heure</entry>
+        <entry>date et heure (sans fuseau horaire)</entry>
         <entry>4713 avant JC</entry>
         <entry>294276 après JC</entry>
         <entry>1 microseconde / 14 chiffres</entry>
@@ -1470,7 +1474,7 @@
        <row>
         <entry><type>date</type></entry>
         <entry>4 octets</entry>
-        <entry>date seule</entry>
+        <entry>date seule (pas d'heure)</entry>
         <entry>4713 avant JC</entry>
         <entry>5874897 après JC</entry>
         <entry>1 jour</entry>
@@ -1478,7 +1482,7 @@
        <row>
         <entry><type>time [ (<replaceable>p</replaceable>) ] [ without time zone ]</type></entry>
         <entry>8 octets</entry>
-        <entry>heure seule</entry>
+        <entry>heure seule (pas de date)</entry>
         <entry>00:00:00.00</entry>
         <entry>24:00:00</entry>
 	<entry>1 microseconde / 14 chiffres</entry>
@@ -1597,10 +1601,8 @@
    <para>
     Les types <type>abstime</type> et <type>reltime</type> sont des types de
     précision moindre, utilisés en interne. Il n'est pas recommandé de les
-    utiliser dans de nouvelles applications. Au contraire, il est souhaitable
-    de migrer l'existant vers un autre type approprié.
-    Il est probable que l'un ou l'autre (voire tous) de ces types internes 
-    disparaisse(nt) dans une future version.
+    utiliser dans de nouvelles applications car ils pourraient
+    disparaître dans une prochaine version.
    </para>
 
    <sect2 id="datatype-datetime-input">
@@ -1668,16 +1670,16 @@
            </thead>
            <tbody>
         <row>
+         <entry>1999-01-08</entry>
+         <entry>ISO-8601&nbsp;; 8 janvier, quel que soit le mode
+         (format recommandé)</entry>
+        </row>
+        <row>
          <entry>January 8, 1999</entry>
          <entry>sans ambiguïté quel que soit le style de date 
          (<varname>datestyle</varname>)</entry>
         </row>
         <row>
-         <entry>1999-01-08</entry>
-         <entry>ISO-8601&nbsp;; 8 janvier, quel que soit le mode
-         (format recommandé)</entry>
-        </row>
-        <row>
          <entry>1/8/1999</entry>
          <entry>8 janvier en mode <literal>MDY</literal>&nbsp;;
           1er août en mode <literal>DMY</literal></entry>
@@ -1810,7 +1812,7 @@
          </row>
          <row>
           <entry><literal>04:05 AM</literal></entry>
-          <entry>Identique à 04:05&nbsp;; AM n'affecte pas la valeur</entry>
+          <entry>Identique à 04:05 (AM est ignoré)</entry>
          </row>
          <row>
           <entry><literal>04:05 PM</literal></entry>
@@ -1947,8 +1949,9 @@
      <para>
       Le standard <acronym>SQL</acronym> différencie les libéllés
       <type>timestamp without time zone</type> et
-      <type>timestamp with time zone</type> par la présence d'un
-      <quote>+</quote> ou d'un <quote>-</quote>. De ce fait, d'après le
+      <type>timestamp with time zone</type> par la présence d'un symbole
+      <quote>+</quote> ou d'un <quote>-</quote> après l'indication du
+      fuseau horaire. De ce fait, d'après le
       standard, 
 <programlisting>TIMESTAMP '2004-10-19 10:23:54'</programlisting>
       est du type <type>timestamp without time zone</type> alors que
@@ -2122,11 +2125,13 @@
     <para>
      Le format de sortie des types date/heure peut être positionné à l'un des
      quatre formats de date suivants&nbsp;: ISO 8601, <acronym>SQL</acronym> 
-     (Ingres), traditionnel POSTGRES et German (germanique). Cela se fait à l'aide de la commande
+     (Ingres), traditionnel <productname>POSTGRES</productname> (date au format
+     Unix <application>date</application>) et German
+     (germanique). Cela se fait à l'aide de la commande
      <literal>SET datestyle</literal>. Le format par défaut est le format
-     <acronym>ISO</acronym>. (Le standard <acronym>SQL</acronym> impose l'utilisation du format
-     ISO 8601. Le nom du format d'affichage <quote>SQL</quote>
-     est un accident historique.) Le
+     <acronym>ISO</acronym>. (Le standard <literal>SQL</literal> impose l'utilisation du format
+     ISO 8601. Le nom du format d'affichage <quote>SQL</quote> est mal choisi,
+     un accident historique.) Le
      <xref linkend="datatype-datetime-output-table"/>  présente des exemples de
      chaque format d'affichage. La sortie d'un type <type>date</type> ou
      <type>time</type> n'est évidemment composée que de la partie date ou heure, comme
@@ -2257,8 +2262,8 @@
      <itemizedlist>
       <listitem>
        <para>
-        bien que le type <type>date</type> n'ait pas de fuseau horaire
-        associé, le type <type>heure</type> peut en avoir un.
+        bien que le type <type>date</type> ne peut pas se voir associer un
+	fuseau horaire, le type <type>heure</type> peut en avoir un.
         Les fuseaux horaires, dans le monde réel, ne peuvent avoir de sens
         qu'associés à une date et à une heure, vu que l'écart peut varier
         avec l'heure d'été&nbsp;;
@@ -2355,7 +2360,7 @@
       </listitem>
      </itemizedlist>
 
-     Il y a une différence conceptuelle et pratique entre les abréviations et
+     En résumé, il y a une différence entre les abréviations et
      les noms complets&nbsp;: les abréviations représentent toujours un décalage
      fixe par rapport à UTC alors que la plupart des noms complets impliquent une règle de
      changement d'heure et donc deux décalages possibles.
@@ -2428,8 +2433,8 @@
 
       <listitem>
        <para>
-        la variable d'environnement <envar>PGTZ</envar>, si le client la
-	positionne, est utilisée par les applications fondées sur 
+        la variable d'environnement <envar>PGTZ</envar> est utilisée par les
+	applications clientes fondées sur 
         <application>libpq</application> pour envoyer une commande 
         <command>SET TIME ZONE</command> au serveur lors de la connexion.
        </para>
@@ -2447,7 +2452,7 @@
     </indexterm>
 
      <para>
-      Les valeurs de type <type>interval</type> peuvent être saisies avec
+      Les valeurs de type <type>interval</type> peuvent être saisies en utilisant
       la syntaxe verbeuse suivante&nbsp;:
 
 <synopsis>
@@ -2798,7 +2803,7 @@
      <member><literal>'off'</literal></member>
      <member><literal>'0'</literal></member>
     </simplelist>
-    Les espaces avant et après sont ignorés.
+    Les espaces avant et après, ainsi que la casse, sont ignorés.
     Il est recommandé d'utiliser <literal>TRUE</literal> et
     <literal>FALSE</literal> (qui sont compatibles avec la norme 
     <acronym>SQL</acronym>).
@@ -2892,7 +2897,7 @@
 
      <para>
       L'ordre des valeurs dans un type enum correspond à l'ordre dans lequel
-      les valeurs sont présentées lors de la déclaration du type. Tous les
+      les valeurs sont créées lors de la déclaration du type. Tous les
       opérateurs de comparaison et les fonctions d'agrégats relatives peuvent
       être utilisés avec des types enum. Par exemple&nbsp;:
      </para>
@@ -2916,8 +2921,9 @@
  Moe   | happy
 (2 rows)
 
-SELECT nom FROM personne
-  WHERE humeur_actuelle = (SELECT MIN(humeur_actuelle) FROM personne);
+SELECT nom
+FROM personne
+WHERE humeur_actuelle = (SELECT MIN(humeur_actuelle) FROM personne);
  nom
 -------
  Larry
@@ -2930,8 +2936,8 @@
     <title>Surêté du type</title>
 
     <para>
-     Les types énumérés sont des types de données complètement séparés et
-     peuvent ne pas être comparables entre eux.
+     Chaque type de données énuméré est séparé et ne peut pas être comparé
+     aux autres types énumérés.
     </para>
 
     <example>
@@ -2939,7 +2945,7 @@
 <programlisting>
 CREATE TYPE niveau_de_joie AS ENUM ('heureux', 'très heureux', 'ecstatique');
 CREATE TABLE vacances (
-    nombre_de_semaines int,
+    nombre_de_semaines integer,
     niveau_de_joie niveau_de_joie
 );
 INSERT INTO vacances(nombre_de_semaines,niveau_de_joie) VALUES (4, 'heureux');
@@ -2986,7 +2992,7 @@
     <para>
      Les labels enum sont sensibles à la casse, donc
      <type>'heureux'</type> n'est pas identique à <type>'HEUREUX'</type>.
-     Les espaces sont aussi significatifs dans les labels.
+     Les espaces blancs sont significatifs dans les labels.
     </para>
 
     <para>
@@ -3072,7 +3078,7 @@
         <entry><type>circle</type></entry>
         <entry>24 octets</entry>
         <entry>Cercle</entry>
-        <entry>&lt;(x,y),r&gt; (centre et rayon)</entry>
+        <entry>&lt;(x,y),r&gt; (point central et rayon)</entry>
        </row>
       </tbody>
      </tgroup>
@@ -3161,10 +3167,9 @@
 
     <para>
      Les rectangles sont affichés selon la première syntaxe.
-     Les coins sont réordonnées lors de la saisie afin que le coin supérieur 
-     gauche apparaisse avant le coin inférieur droit.
-     Les autres coins peuvent être saisis, mais les coins supérieur gauche et
-     inférieur droit sont déterminés à partir de la saisie et stockés.
+     Any two opposite corners
+     can be supplied; the corners are reordered on input to store the
+     upper right and lower left corners.
     </para>
    </sect2>
 
@@ -3199,7 +3204,7 @@
     </para>
 
     <para>
-     Les chemins sont affichés selon la première syntaxe.
+     Les chemins sont affichés selon la première syntaxe appropriée.
     </para>
    </sect2>
 
@@ -3212,9 +3217,9 @@
 
     <para>
      Les polygones ( type <type>polygon</type>) sont représentés par des
-     listes de points (les vertex du polygone). Ils peuvent probablement
-     être considérés comme des chemins fermés, mais ils sont stockés différemment
-     et disposent de leurs propres routines de manipulation.
+     listes de points (les vertex du polygone). Ils sont très similaires à
+     des chemins fermés, mais ils sont stockés différemment et disposent de
+     leurs propres routines de manipulation.
     </para>
 
     <para>
@@ -3254,7 +3259,7 @@
 
      où
      <literal>(<replaceable>x</replaceable>,<replaceable>y</replaceable>)</literal>
-     est le centre et <replaceable>r</replaceable> le rayon du cercle.
+     est le point central et <replaceable>r</replaceable> le rayon du cercle.
     </para>
 
     <para>
@@ -3332,11 +3337,10 @@
     </indexterm>
 
     <para>
-     Le type <type>inet</type> stocke une adresse d'hôte IPv4 ou IPv6
-     et, optionnellement, l'identité de son sous-réseau, le tout dans un
-     seul champ. L'identité du sous-réseau est représentée en indiquant
-     combien de bits de l'adresse hôte constituent l'adresse réseau
-     (le <quote>masque réseau</quote>).
+     Le type <type>inet</type> stocke une adresse d'hôte IPv4 ou IPv6 et,
+     optionnellement, son sous-réseau, le tout dans un seul champ. Le
+     sous-réseau est représentée par le nombre de bits de l'adresse hôte
+     constituent l'adresse réseau (le <quote>masque réseau</quote>).
      Si le masque réseau est 32 et l'adresse de type IPv4,
      alors la valeur n'indique pas un sous-réseau, juste un hôte.
      En IPv6, la longueur de l'adresse est de 128 bits, si bien que 
@@ -3654,7 +3658,7 @@
     via une collection de <firstterm>documents</firstterm> en langage naturel
     pour situer ceux qui correspondent le mieux à une
     <firstterm>requête</firstterm>. Le type <type>tsvector</type> représente un
-    document dans une forme convenant à une recherche plein texte alors que le
+    document stocké dans une forme optimisé pour la recherche plein texte alors que le
     type <type>tsquery</type> représente de façon similaire une requête.
     <xref linkend="textsearch"/> fournit une explication détaillée de cette
     capacité et <xref linkend="functions-textsearch"/> résumé les fonctions
@@ -3671,8 +3675,8 @@
     <para>
      Une valeur <type>tsvector</type> est une liste triée de
      <firstterm>lexemes</firstterm> distincts, qui sont des mots qui ont été
-     <firstterm>normalisés</firstterm> pour que différentes variantes du même
-     mot apparaissent (voir <xref linkend="textsearch"/> pour plus de détails).
+     <firstterm>normalisés</firstterm> pour fusionner différentes variantes du
+     même mot apparaissent (voir <xref linkend="textsearch"/> pour plus de détails).
      Trier et éliminer les duplicats se font automatiquement lors des entrées,
      comme indiqué dans cet exemple&nbsp;:
 
@@ -3706,7 +3710,7 @@
 </programlisting>
 
      En option, les <firstterm>positions</firstterm> peuvent être attachées
-     sur un ou plusieurs lexemes&nbsp;:
+     aux lexemes&nbsp;:
 
 <programlisting>
 SELECT 'a:1 fat:2 cat:3 sat:4 on:5 a:6 mat:7 and:8 ate:9 a:10 fat:11 rat:12'::tsvector;
@@ -4304,7 +4308,8 @@
    </para>
 
    <para>
-    Une propriété supplémentaire des types alias d'OID est que, si une
+    Une propriété supplémentaire des types alias d'OID est la création de
+    dépendances. Si une
     constante d'un de ces types apparaît dans une expression stockée
     (telle que l'expression par défaut d'une colonne ou une vue), elle crée une
     dépendance sur l'objet référencé. Par exemple, si une colonne a une

Modified: traduc/trunk/postgresql/ddl.xml
===================================================================
--- traduc/trunk/postgresql/ddl.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ddl.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -550,8 +550,8 @@
    </indexterm>
 
    <para>
-	En général, une contrainte d'unicité est violée lorsqu'au moins deux
-	lignes de la table possèdent des valeurs identiques sur toutes les
+	En général, une contrainte d'unicité est violée lorsque plus d'une
+	ligne de la table possèdent des valeurs identiques sur toutes les
 	colonnes de la contrainte. En revanche, deux valeurs NULL ne sont pas
 	considérées égales. Cela signifie qu'il est possible
 	de stocker des lignes dupliquées contenant une valeur NULL
@@ -1698,7 +1698,7 @@
    <para>
     Par défaut, les utilisateurs ne peuvent pas accéder aux objets présents
     dans les schémas qui ne leur appartiennent pas. Pour le permettre, le
-    propriétaire du schéma doit granter le droit <literal>USAGE</literal> sur
+    propriétaire du schéma doit donner le droit <literal>USAGE</literal> sur
     le schéma. Pour autoriser les utilisateurs à manipuler les objets d'un
     schéma, des privilèges supplémentaires doivent éventuellement être accordés, en
     fonction de l'objet.
@@ -1968,7 +1968,7 @@
 
 <programlisting>SELECT p.relname, v.nom, v.altitude
 FROM villes v, pg_class p
-WHERE v.altitude &gt; 500 and v.tableoid = p.oid;</programlisting>
+WHERE v.altitude &gt; 500 AND v.tableoid = p.oid;</programlisting>
 
    ce qui retourne&nbsp;:
 
@@ -2151,7 +2151,7 @@
 
     Ces déficiences seront probablement corrigées dans une version future,
     mais, en attendant, il est obligatoire de réfléchir consciencieusement à l'utilité
-    de l'héritage pour un problème donné.
+    de l'héritage pour une application donnée.
   </para>
 
   <note>
@@ -2523,12 +2523,15 @@
 CREATE OR REPLACE FUNCTION mesure_insert_trigger()
 RETURNS TRIGGER AS $$
 BEGIN
-    IF ( NEW.date_trace &gt;= DATE '2006-02-01' AND NEW.date_trace &lt; DATE '2006-03-01' ) THEN
+    IF ( NEW.date_trace &gt;= DATE '2006-02-01' AND
+         NEW.date_trace &lt; DATE '2006-03-01' ) THEN
         INSERT INTO mesure_a2006m02 VALUES (NEW.*);
-    ELSIF ( NEW.date_trace &gt;= DATE '2006-03-01' AND NEW.date_trace &lt; DATE '2006-04-01' ) THEN
+    ELSIF ( NEW.date_trace &gt;= DATE '2006-03-01' AND
+            NEW.date_trace &lt; DATE '2006-04-01' ) THEN
         INSERT INTO mesure_a2006m03 VALUES (NEW.*);
     ...
-    ELSIF ( NEW.date_trace &gt;= DATE '2008-01-01' AND NEW.date_trace &lt; DATE '2008-02-01' ) THEN
+    ELSIF ( NEW.date_trace &gt;= DATE '2008-01-01' AND
+            NEW.date_trace &lt; DATE '2008-02-01' ) THEN
         INSERT INTO mesure_a2008m01 VALUES (NEW.*);
     ELSE
         RAISE EXCEPTION 'Date en dehors de l''échelle. Corrigez la fonction mesure_insert_trigger() !';
@@ -2656,10 +2659,10 @@
     Sans exclusion de contrainte, la requête ci-dessus parcourt chacune
     des partitions de la table <structname>mesure</structname>. Avec l'exclusion de
     contrainte activée, le planificateur examine les contraintes de chaque
-    partition et tente de prouver que la partition n'a pas besoin d'être
-    parcourue parce qu'elle ne peutt pas contenir de lignes correspondant à
+    partition et tente de déterminer les partitions qui n'ont pas besoin d'être
+    parcourues parce qu'elles ne peuvent pas contenir de lignes correspondant à
     la clause <literal>WHERE</literal> de la requête. Quand le planificateur peut le
-    prouver, il exclut la partition du plan de requête.
+    déterminer, il exclut la partition du plan de requête.
    </para>
 
    <para>

Modified: traduc/trunk/postgresql/dml.xml
===================================================================
--- traduc/trunk/postgresql/dml.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/dml.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -40,15 +40,15 @@
    la base de données n'est pas d'une grande utilité.
    Les données sont conceptuellement insérées ligne par ligne. Il est évidemment possible
    d'insérer plus d'une ligne, mais il n'est pas possible d'entrer moins
-   d'une ligne à la fois. Même lorsque seules les valeurs d'une
+   d'une ligne. Même lorsque seules les valeurs d'une
    partie des colonnes sont connues, une ligne complète doit être créée.
   </para>
 
   <para>
    Pour créer une nouvelle ligne, la commande <xref
    linkend="sql-insert" endterm="sql-insert-title"/> est utilisée.
-   La commande a besoin du nom de la table et d'une valeur pour
-   chaque colonne de cette table.
+   La commande a besoin du nom de la table et des valeurs de
+   colonnes.
   </para>
   <para>
    Soit la table des produits du <xref linkend="ddl"/>&nbsp;:

Modified: traduc/trunk/postgresql/filelist.xml
===================================================================
--- traduc/trunk/postgresql/filelist.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/filelist.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -142,7 +142,16 @@
 <!ENTITY errcodes   SYSTEM "errcodes.xml">
 <!ENTITY features   SYSTEM "features.xml">
 <!ENTITY keywords   SYSTEM "keywords.xml">
+
 <!ENTITY release    SYSTEM "release.xml">
+<!ENTITY release-8.4    SYSTEM "release-8.4.xml">
+<!ENTITY release-8.3    SYSTEM "release-8.3.xml">
+<!ENTITY release-8.2    SYSTEM "release-8.2.xml">
+<!ENTITY release-8.1    SYSTEM "release-8.1.xml">
+<!ENTITY release-8.0    SYSTEM "release-8.0.xml">
+<!ENTITY release-7.4    SYSTEM "release-7.4.xml">
+<!ENTITY release-old    SYSTEM "release-old.xml">
+
 <!ENTITY acronyms   SYSTEM "acronyms.xml">
 
 <!ENTITY features-supported   SYSTEM "features-supported.xml">

Modified: traduc/trunk/postgresql/func.xml
===================================================================
--- traduc/trunk/postgresql/func.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/func.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -274,13 +274,12 @@
 <synopsis><replaceable>a</replaceable> BETWEEN <replaceable>x</replaceable> AND <replaceable>y</replaceable></synopsis>
     est équivalent à
 <synopsis><replaceable>a</replaceable> &gt;= <replaceable>x</replaceable> AND <replaceable>a</replaceable> &lt;= <replaceable>y</replaceable></synopsis>
-    De même,
+    Notez que <token>BETWEEN</token> est inclusif dans sa comparaison des
+    valeurs finales. <literal>NOT BETWEEN</literal> fait la comparaison
+    inverse&nbsp;:
 <synopsis><replaceable>a</replaceable> NOT BETWEEN <replaceable>x</replaceable> AND <replaceable>y</replaceable></synopsis>
     est équivalent à
 <synopsis><replaceable>a</replaceable> &lt; <replaceable>x</replaceable> OR <replaceable>a</replaceable> &gt; <replaceable>y</replaceable></synopsis>
-    Il n'y a pas de différence entre les deux formes, si ce n'est
-    les cycles <acronym>CPU</acronym> requis pour ré-écrire en interne la
-    première en seconde.
     <indexterm>
      <primary>BETWEEN SYMMETRIC</primary>
     </indexterm>
@@ -331,8 +330,7 @@
     n'est pas possible, le paramètre de configuration <xref
     linkend="guc-transform-null-equals"/> peut être utilisé. S'il est activé,
     <productname>PostgreSQL</productname> convertit les clauses <literal>x =
-    NULL</literal> en <literal>x IS NULL</literal>. Tel était le comportement par
-    défaut dans les versions 6.5 à 7.1 de <productname>PostgreSQL</productname>.
+    NULL</literal> en <literal>x IS NULL</literal>.
    </para>
    </tip>
 
@@ -363,7 +361,8 @@
      <primary>IS NOT DISTINCT FROM</primary>
    </indexterm>
     L'opérateur standard de comparaison renvoie NULL (ce qui signifie
-    <quote>inconnu</quote>) si l'une des entrées est NULL. Une autre façon
+    <quote>inconnu</quote>) si l'une des entrées est NULL, ni true ni false,
+    c'est-à-dire <literal>7 = NULL</literal> renvoie NULL. Une autre façon
     d'effectuer les comparaisons utilise la syntaxe <literal>IS <optional>NOT</optional> DISTINCT FROM</literal>&nbsp;:
 <synopsis>
 <replaceable>expression</replaceable> IS DISTINCT FROM <replaceable>expression</replaceable>
@@ -440,8 +439,8 @@
 
    <para>
     Des opérateurs mathématiques sont fournis pour un grand nombre de types
-    <productname>PostgreSQL</productname>. Pour les types sans convention
-    mathématique commune à toutes les permutations possibles (les types
+    <productname>PostgreSQL</productname>. Pour les types qui supportent
+    seulement des opérations mathématiques limitées (les types
     dates/time, par exemple), le comportement réel est décrit dans les
     sections appropriées.
    </para>
@@ -696,7 +695,7 @@
       <row>
       
 <entry><literal><function>abs</function>(<replaceable>x</replaceable>)</literal></entry>
-       <entry>(identique à <replaceable>x</replaceable>)</entry>
+       <entry>(identique à l'entrée)</entry>
        <entry>valeur absolue</entry>
        <entry><literal>abs(-17.4)</literal></entry>
        <entry><literal>17.4</literal></entry>
@@ -845,7 +844,7 @@
       <row>
        <entry><literal><function>random</function>()</literal></entry>
        <entry><type>dp</type></entry>
-       <entry>valeur au hasard entre 0.0 et 1.0</entry>
+       <entry>valeur au hasard entre 0.0 et 1.0, inclusif</entry>
        <entry><literal>random()</literal></entry>
        <entry></entry>
       </row>
@@ -875,7 +874,7 @@
        <entry><type>void</type></entry>
        <entry>initialise les appels à
        <literal>random()</literal> à suivre
-        (valeur entre -1.0 et 1.0)</entry>
+        (valeur entre -1.0 et 1.0, inclusif)</entry>
        <entry><literal>setseed(0.54823)</literal></entry>
        <entry><literal></literal></entry>
       </row>
@@ -1482,7 +1481,7 @@
 	conversions disponibles.
        </entry>
        <entry><literal>convert( 'texte_en_utf8', 'UTF8', 'LATIN1')</literal></entry>
-       <entry><literal>texte_en_utf8</literal> représenté dans le codage ISO 8859-1</entry>
+       <entry><literal>texte_en_utf8</literal> représenté dans le codage LATIN1</entry>
       </row>
 
       <row>
@@ -2708,8 +2707,8 @@
    </para>
 
    <para>
-    <acronym>SQL</acronym> définit quelques fonctions de chaînes avec une 
-    syntaxe spéciale où certains mots clés sont employés à la place de
+    <acronym>SQL</acronym> définit quelques fonctions de chaînes qui utilise
+    une syntaxe de mots clés qui sont employés à la place de
     virgules pour séparer les arguments. Les détails sont présentés dans
     <xref linkend="functions-binarystring-sql"/>. Quelques fonctions sont aussi
     implantées avec la syntaxe habituelle de l'appel de fonction
@@ -3102,7 +3101,7 @@
     de type <acronym>POSIX</acronym>. En dehors des opérateurs basiques du style
     <quote>est-ce que cette chaîne correspond à ce modèle&nbsp;?</quote>, les
     fonctions sont disponibles pour extraire ou remplacer des sous-chaînes
-    correspondantes ou pour diviser une chaîne par rapport à ces correspondances.
+    correspondantes ou pour diviser une chaîne aux emplacements correspondants.
    </para>
 
    <tip>
@@ -3123,7 +3122,6 @@
 <replaceable>chaîne</replaceable> NOT LIKE <replaceable>motif</replaceable> <optional>ESCAPE <replaceable>caractère d'échappement</replaceable></optional></synopsis>
 
     <para>
-     Chaque <replaceable>motif</replaceable> définit un ensemble de chaînes.
      L'expression <function>LIKE</function> renvoie true si la
      <replaceable>chaîne</replaceable> est contenue dans l'ensemble de chaînes
      représenté par le <replaceable>motif</replaceable>. (L'expression
@@ -3153,7 +3151,7 @@
    
    <para>
     Le modèle <function>LIKE</function> correspond toujours à la chaîne
-    entière. Pour faire correspondre une séquence à l'intérieur d'une chaîne, le
+    entière. Du coup, pour faire correspondre une séquence à l'intérieur d'une chaîne, le
     motif doit donc commencer et finir avec un signe pourcent.
    </para>
 
@@ -3323,7 +3321,8 @@
     </para>
 
    <para>
-    Quelques exemples&nbsp;:
+    Quelques exemples, avec <literal>#"</literal> délimitant la chaîne en
+    retour&nbsp;:
 <programlisting>substring('foobar' from '%#"o_b#"%' for '#')  
 <lineannotation>oob</lineannotation>
 substring('foobar' from '#"o_b#"%' for '#')   
@@ -3594,7 +3593,7 @@
 <!-- SAS 20080723 : les exemples suivants fonctionnent avec E'\\\s+' ou
 E'\\s+'. Quelle est la différence ? N'y en a-t-il simplement pas un de trop
 dans le premier exemple ?-->
-SELECT foo FROM regexp_split_to_table('the quick brown fox jumped over the lazy dog', E'\\\s+') AS foo;
+SELECT foo FROM regexp_split_to_table('the quick brown fox jumped over the lazy dog', E'\\s+') AS foo;
   foo   
 --------
  the    
@@ -3727,8 +3726,7 @@
     Une <firstterm>contrainte</firstterm> établit une correspondance avec une
     chaîne vide, mais cette correspondance n'est établie que lorsque des
     conditions spécifiques sont remplies.
-    Une contrainte peut être utilisée là où un atome peut l'être, sauf qu'elle
-    ne peut pas être suivie d'un quantificateur.
+    Une contrainte ne peut pas être suivie d'un quantificateur.
     Les contraintes simples sont affichées dans le <xref
     linkend="posix-constraints-table"/>&nbsp;; quelques contraintes
     supplémentaires sont décrites plus loin.
@@ -3936,7 +3934,8 @@
 
    <note>
     <para>
-     Un quantificateur ne peut pas immédiatement suivre un autre quantificateur.
+     Un quantificateur ne peut pas immédiatement suivre un autre quantificateur,
+     autrement dit <literal>**</literal> est invalide.
      Il ne peut pas non plus débuter une expression ou sous-expression
      ni suivre <literal>^</literal> ou <literal>|</literal>.
     </para>
@@ -4245,7 +4244,7 @@
        <entry>(où <replaceable>wxyz</replaceable> représente exactement quatre chiffres
        hexadécimaux) le caractère UTF16 (Unicode, 16 bits)
        <literal>U+</literal><replaceable>wxyz</replaceable>
-       dans l'ordre local des octets </entry>
+       dans l'encodage local des octets</entry>
        </row>
 
        <row>
@@ -4262,10 +4261,10 @@
        </row>
 
        <row>
-       <entry><literal>\x</literal><replaceable>hhh</replaceable> </entry>
-       <entry>(où <replaceable>hhh</replaceable> représente toute séquence de chiffres
+       <entry><literal>\x</literal><replaceable>###</replaceable> </entry>
+       <entry>(où <replaceable>###</replaceable> représente toute séquence de chiffres
        hexadécimaux) le caractère dont la valeur hexadécimale est
-       <literal>0x</literal><replaceable>hhh</replaceable>
+       <literal>0x</literal><replaceable>###</replaceable>
        (un simple caractère, peu importe le nombre de chiffres hexadécimaux
        utilisés)
        </entry>
@@ -4277,19 +4276,19 @@
        </row>
 
        <row>
-       <entry><literal>\</literal><replaceable>xy</replaceable> </entry>
-       <entry>(où <replaceable>xy</replaceable> représente exactement deux chiffres
+       <entry><literal>\</literal><replaceable>##</replaceable> </entry>
+       <entry>(où <replaceable>##</replaceable> représente exactement deux chiffres
        octaux et n'est pas une <firstterm>rétro-référence</firstterm>)
        le caractère dont la valeur octale est
-       <literal>0</literal><replaceable>xy</replaceable> </entry>
+       <literal>0</literal><replaceable>##</replaceable> </entry>
        </row>
 
        <row>
-       <entry><literal>\</literal><replaceable>xyz</replaceable> </entry>
-       <entry>(où <replaceable>xyz</replaceable> représente exactement trois chiffres
+       <entry><literal>\</literal><replaceable>###</replaceable> </entry>
+       <entry>(où <replaceable>###</replaceable> représente exactement trois chiffres
        octaux et n'est pas une <firstterm>rétro-référence</firstterm>)
        le caractère dont la valeur octale est
-       <literal>0</literal><replaceable>xyz</replaceable> </entry>
+       <literal>0</literal><replaceable>###</replaceable> </entry>
        </row>
       </tbody>
      </tgroup>
@@ -4458,7 +4457,7 @@
 
    <note>
     <para>
-     Une ambiguïté historique persiste entre les échappements
+     Une ambiguïté persiste entre les échappements
      de caractère octal et les rétro-références. Cette ambiguïté est résolue par
      des heuristiques, comme montré ci-dessus. Un zéro en début de chaîne indique
      toujours un échappement octal. Un caractère seul différent de zéro, qui
@@ -4897,7 +4896,7 @@
     <title>Expressions rationnelles élémentaires</title>
 
    <para>
-    Les ERB diffèrent des ERE par plusieurs aspects.
+    Les ERB diffèrent des ERE par plusieurs aspects. Dans les BRE,
     <literal>|</literal>, <literal>+</literal> et <literal>?</literal> sont des caractères
     ordinaires et il n'existe pas d'équivalent pour leur fonctionnalité. Les
     délimiteurs de frontières sont <literal>\{</literal> et <literal>\}</literal>, avec <literal>{</literal> et
@@ -4913,7 +4912,7 @@
     <literal>^</literal>). Enfin, les rétro-références à un chiffre sont disponibles, et
     <literal>\&lt;</literal> et <literal>\&gt;</literal> sont des synonymes pour
     respectivement <literal>[[:&lt;:]]</literal> et <literal>[[:&gt;:]]</literal>&nbsp;;
-    aucun autre échappement n'est disponible.
+    aucun autre échappement n'est disponible dans les BRE.
    </para>
    </sect3>
 
@@ -4955,9 +4954,11 @@
    </para>
 
    <para>
-    La fonction <function>to_timestamp</function> peut aussi prendre un
-    argument <type>double precision</type> unique pour convertir une valeur de type
-    epoch Unix en <type>timestamp with time zone</type>.
+    La fonction <function>to_timestamp</function> à un argument est aussi
+    disponible&nbsp;; elle accepte un argument <type>double precision</type>
+    unique pour convertir une valeur de type epoch Unix en <type>timestamp
+    with time zone</type> (secondes depuis 1970-01-01 00:00:00+00) en
+    <type>timestamp with time zone</type>.
     (Les types epoch Unix (<type>entier</type>) sont implicitement convertis en
     <type>double precision</type>.)
    </para>
@@ -5042,19 +5043,19 @@
         <entry><type>timestamp with time zone</type></entry>
         <entry>convertit une valeur de type epoch UNIX en valeur de type
 	timestamp</entry>
-        <entry><literal>to_timestamp(200120400)</literal></entry>
+        <entry><literal>to_timestamp(1284352323)</literal></entry>
        </row>
       </tbody>
      </tgroup>
     </table>
 
    <para>
-    Dans une chaîne de modèle de sortie (pour <function>to_char</function>), certains
-    modèles sont reconnus et remplacés par des données proprement formatées
-    issues de la valeur à formater. Tout texte qui n'est pas un motif du modèle est
-    copié sans modification. De même, dans une chaîne modèle en entrée (pour tout
-    sauf <function>to_char</function>), les motifs du modèle identifient les parties de la
-    chaîne en entrée à rechercher et les valeurs à trouver.
+    In a <function>to_char</function> output template string, there are certain
+    patterns that are recognized and replaced with appropriately-formatted data
+    based on the value. Any text that is not a template pattern is simply
+    copied verbatim.  Similarly, in an input template string (anything but
+    <function>to_char</function>), template patterns identify the values to be
+    supplied by the input data string.
    </para>
 
   <para>
@@ -5190,7 +5191,7 @@
        </row>
        <row>
 	<entry><literal>Mon</literal></entry>
-	<entry>abréviation du nom du mois en casse mixte (trois caractères en anglais, la
+	<entry>abréviation du nom du mois en majuscule (trois caractères en anglais, la
 	 longueur des versions localisées peut varier)</entry>
        </row>
        <row>
@@ -5209,7 +5210,7 @@
        </row>
        <row>
 	<entry><literal>Day</literal></entry>
-	<entry>nom complet du jour en casse mixte (espaces de complètement pour
+	<entry>nom complet du jour en majuscule (espaces de complètement pour
          arriver à neuf caractères)</entry>
        </row>
        <row>
@@ -5224,7 +5225,7 @@
        </row>
        <row>
 	<entry><literal>Dy</literal></entry>
-	<entry>abréviation du nom du jour en casse mixte (trois caractères en anglais, la
+	<entry>abréviation du nom du jour en majuscule (trois caractères en anglais, la
 	 longueur des versions localisées peut varier)</entry>
        </row>
        <row>
@@ -5267,7 +5268,7 @@
        </row>
        <row>
 	<entry><literal>IW</literal></entry>
-	<entry>numéro ISO de la semaine dans l'année (1 - 53&nbsp;; le premier
+	<entry>numéro ISO de la semaine dans l'année (01 - 53&nbsp;; le premier
 	 jeudi de la nouvelle année est dans la semaine 1)</entry>
        </row>
        <row>
@@ -5286,28 +5287,28 @@
        </row>
        <row>
 	<entry><literal>RM</literal></entry>
-	<entry>mois en nombre romain (I-XII&nbsp;; I étant janvier) (en
+	<entry>mois en majuscule en nombre romain (I-XII&nbsp;; I étant janvier) (en
          majuscules)</entry>
        </row>
        <row>
 	<entry><literal>rm</literal></entry>
-	<entry>mois en nombre romain (i-xii; i étant janvier) (en
+	<entry>mois en minuscule en nombre romain (i-xii; i étant janvier) (en
          minuscules)</entry>
        </row>
        <row>
 	<entry><literal>TZ</literal></entry>
-	<entry>nom du fuseau horaire (en majuscules)</entry>
+	<entry>nom en majuscule du fuseau horaire (en majuscules)</entry>
        </row>
        <row>
 	<entry><literal>tz</literal></entry>
-	<entry>nom du fuseau horaire (en minuscules)</entry>
+	<entry>nom en minuscule du fuseau horaire (en minuscules)</entry>
        </row>
       </tbody>
      </tgroup>
     </table>
 
    <para>
-    Certains modificateurs peuvent être appliqués à tous les motifs pour en changer
+    Les modificateurs peuvent être appliqués à tous les motifs pour en changer
     le comportement. Par exemple, <literal>FMMonth</literal>
     est le motif <literal>Month</literal> avec le modificateur
     <literal>FM</literal>.
@@ -5339,12 +5340,14 @@
        </row>
        <row>
 	<entry>suffixe <literal>TH</literal></entry>
-	<entry>suffixe du nombre ordinal en majuscules</entry>
+	<entry>suffixe du nombre ordinal en majuscules, c'est-à-dire
+	 <literal>12TH</literal></entry>
 	<entry><literal>DDTH</literal></entry>
        </row>	
        <row>
 	<entry>suffixe <literal>th</literal></entry>
-	<entry>suffixe du nombre ordinal en minuscules</entry>
+	<entry>suffixe du nombre ordinal en minuscules, c'est-à-dire
+	 <literal>12th</literal></entry>
 	<entry><literal>DDth</literal></entry>
        </row>
        <row>
@@ -5361,7 +5364,7 @@
        </row>
        <row>
 	<entry>suffixe <literal>SP</literal></entry>
-	<entry>mode épelé (<foreignphrase>Spell Mode</foreignphrase>) (pas encore implanté)</entry>
+	<entry>mode épelé (<foreignphrase>Spell Mode</foreignphrase>) (non supporté)</entry>
 	<entry><literal>DDSP</literal></entry>
        </row>
       </tbody>
@@ -5391,13 +5394,13 @@
       <para>
        <function>to_timestamp</function> et <function>to_date</function>
        ignorent les espaces multiples de la chaîne en entrée si l'option
-       <literal>FX</literal> n'est pas utilisée. <literal>FX</literal> doit
-       être indiquée comme premier élément du modèle. Par exemple,
+       <literal>FX</literal> n'est pas utilisée. Par exemple,
        <literal>to_timestamp('2000&nbsp;&nbsp;&nbsp;&nbsp;JUN', 'YYYY
-MON')</literal> est correct mais
+MON')</literal> fonctionne mais
        <literal>to_timestamp('2000&nbsp;&nbsp;&nbsp;&nbsp;JUN', 'FXYYYY
 MON')</literal> renvoie une erreur car <function>to_timestamp</function>
        n'attend qu'une seule espace&nbsp;;
+       <literal>FX</literal> doit être indiqué comme premier élément du modèle.
       </para>
      </listitem>
 
@@ -5446,7 +5449,7 @@
      <listitem>
       <para>
        dans les conversions de chaîne en <type>timestamp</type>
-       ou <type>date</type>, le champ <literal>CC</literal> est ignoré s'il y a
+       ou <type>date</type>, le champ <literal>CC</literal> (siècle) est ignoré s'il y a
        un champ <literal>YYY</literal>, <literal>YYYY</literal> ou
        <literal>Y,YYY</literal>. Si <literal>CC</literal> est utilisé avec
        <literal>YY</literal> ou <literal>Y</literal>, alors l'année est calculée
@@ -5482,8 +5485,8 @@
        Dans le contexte d'une année ISO, le concept d'un <quote>mois</quote> ou
        du <quote>jour d'un mois</quote> n'a pas de signification. Dans le
        contexte d'une année grégorienne, la semaine ISO n'a pas de signification.
-       Les utilisateurs doivent faire attention à séparer les spécifications
-       grégoriennes et de date ISO.
+       Les utilisateurs doivent éviter de mixer les spécifications grégoriennes
+       et les dates ISO.
       </para>
      </listitem>
 
@@ -5614,7 +5617,7 @@
        </row>
        <row>
 	<entry><literal>EEEE</literal></entry>
-	<entry>notation scientifique (pas encore implantée)</entry>
+	<entry>notation scientifique (pas implantée)</entry>
        </row>
       </tbody>
      </tgroup>
@@ -5667,8 +5670,8 @@
        <literal>10^<replaceable>n</replaceable></literal>, où
        <replaceable>n</replaceable> est le nombre de chiffres qui suit
        <literal>V</literal>. <function>to_char</function> ne supporte pas
-       l'utilisation de <literal>V</literal> combiné avec un point décimal
-       (donc <literal>99.9V99</literal> n'est pas autorisé).
+       l'utilisation de <literal>V</literal> combiné avec des valeurs non
+       entières (donc <literal>99.9V99</literal> n'est pas autorisé).
       </para>
      </listitem>
     </itemizedlist>
@@ -5974,7 +5977,7 @@
        <row>
         <entry> <literal>-</literal> </entry>
         <entry><literal>date '2001-10-01' - date '2001-09-28'</literal></entry>
-        <entry><literal>integer '3'</literal></entry>
+        <entry><literal>integer '3'</literal> (jours)</entry>
        </row>
 
        <row>
@@ -6132,7 +6135,7 @@
      <row>
 	<entry><literal><function>age</function>(<type>timestamp</type>)</literal></entry>
 	<entry><type>interval</type></entry>
-	<entry>Soustrait à la date courante (<function>current_date</function>)</entry>
+	<entry>Soustrait à la date courante (<function>current_date</function> à minuit)</entry>
 	<entry><literal>age(timestamp '1957-06-13')</literal></entry>
 	<entry><literal>43 years 8 mons 3 days</literal></entry>
       </row>
@@ -6269,8 +6272,8 @@
         <entry><type>interval</type></entry>
         <entry>Ajuste l'intervalle pour que les périodes de 30 jours soient
 	représentées comme des mois</entry>
-        <entry><literal>justify_days(interval '30 days')</literal></entry>
-        <entry><literal>1 month</literal></entry>
+        <entry><literal>justify_days(interval '35 days')</literal></entry>
+        <entry><literal>1 mon 5 days</literal></entry>
        </row>
 
        <row>
@@ -6278,8 +6281,8 @@
         <entry><type>interval</type></entry>
         <entry>Ajuste l'intervalle pour que les périodes de 24 heures soient
 	représentées comme des jours</entry>
-        <entry><literal>justify_hours( interval '24 hours')</literal></entry>
-        <entry><literal>1 day</literal></entry>
+        <entry><literal>justify_hours( interval '27 hours')</literal></entry>
+        <entry><literal>1 day 03:00:00</literal></entry>
        </row>
 
        <row>
@@ -6452,7 +6455,7 @@
          Le premier siècle commence le 1er janvier de l'an 1 (0001-01-01
          00:00:00 AD) bien qu'ils ne le savaient pas à cette époque. Cette
          définition s'applique à tous les pays qui utilisent le calendrier Grégorien.
-         Le siècle 0 n'existe pas. On passe de -1 à 1.
+         Le siècle 0 n'existe pas. On passe de -1 siècle à 1 siècle.
          En cas de désaccord, adresser une plainte à&nbsp;:
          Sa Sainteté le Pape, Cathédrale Saint-Pierre de Rome, Vatican.
        </para>
@@ -6524,7 +6527,7 @@
        <para>
         Pour les valeurs de type <type>date</type> et <type>timestamp</type>,
         le nombre de secondes depuis le 1er janvier 1970 (exactement depuis le
-        1970-01-01 00:00:00-00). Ce nombre peut être négatif. Pour les valeurs de
+        1970-01-01 00:00:00-00 GMT). Ce nombre peut être négatif. Pour les valeurs de
         type <type>interval</type>, il s'agit du nombre total de secondes dans
         l'intervalle.
        </para>
@@ -6929,7 +6932,7 @@
 	<entry><type>timestamp without time zone</type></entry>
 	<entry>Convertit l'estampille donnée <emphasis>with time
 	zone</emphasis> (avec fuseau)
-	dans le nouveau fuseau horaire.</entry>
+	dans le nouveau fuseau horaire, sans désignation du fuseau.</entry>
        </row>
 
        <row>
@@ -7076,20 +7079,15 @@
     l'heure de début de l'instruction en cours, voire l'heure de l'appel de la
     fonction. La liste complète des fonctions ne faisant pas partie du standard
     SQL est&nbsp;:
-<synopsis>now()&nbsp;;
-transaction_timestamp()&nbsp;;
-statement_timestamp()&nbsp;;
-clock_timestamp()&nbsp;;
-timeofday().
+<synopsis>transaction_timestamp()
+statement_timestamp()
+clock_timestamp()
+timeofday()
+now()
 </synopsis>
    </para>
 
    <para>
-    <function>now()</function> est l'équivalent traditionnel <productname>PostgreSQL</productname>
-    de <function>CURRENT_TIMESTAMP</function>.
-    <function>transaction_timestamp()</function> est un peu l'équivalent de
-    <function>CURRENT_TIMESTAMP</function> mais est nommé ainsi pour expliciter
-    l'information retournée.
     <function>statement_timestamp()</function> renvoie l'heure de début de
     l'instruction en cours (plus exactement, l'heure de réception du
     dernier message de la commande en provenance du client).
@@ -7103,6 +7101,11 @@
     <function>clock_timestamp()</function>, elle renvoie l'heure courante, mais
     celle-ci est alors formatée comme une chaîne <type>text</type> et non comme
     une valeur de type <type>timestamp with time zone</type>.
+    <function>now()</function> est l'équivalent traditionnel <productname>PostgreSQL</productname>
+    de <function>CURRENT_TIMESTAMP</function>.
+    <function>transaction_timestamp()</function> est un peu l'équivalent de
+    <function>CURRENT_TIMESTAMP</function> mais est nommé ainsi pour expliciter
+    l'information retournée.
    </para>
 
    <para>
@@ -7899,10 +7902,10 @@
 
   <para>
    Le <xref linkend="cidr-inet-functions-table"/> affiche les fonctions
-   utilisables avec les types <type>cidr</type> et
-   <type>inet</type>. Les fonctions <function>host</function>,
-   <function>text</function> et <function>abbrev</function> ont principalement
-   pour but d'offrir des formats d'affichage alternatifs.
+   utilisables avec les types <type>cidr</type> et <type>inet</type>. Les
+   fonctions <function>abbrev</function>, <function>host</function>,
+   <function>text</function> ont principalement pour but d'offrir des formats
+   d'affichage alternatifs.
   </para>
 
     <table id="cidr-inet-functions-table">
@@ -8424,8 +8427,8 @@
     <para>
      La fonction <function>xmlcomment</function> crée une valeur XML contenant
      un commentaire XML avec, comme contenu, le texte indiqué. Le texte ne
-     peut pas contenir <literal>--</literal> ou se terminer par un
-     <literal>-</literal> de sorte que que la construction résultante
+     peut pas contenir <quote><literal>--</literal></quote> ou se terminer par un
+     <quote><literal>-</literal></quote> de sorte que que la construction résultante
      représente un commentaire XML valide. Si l'argument est NULL, le résultat
      est NULL.
     </para>
@@ -8624,7 +8627,9 @@
  <foo>abc</foo><bar>123</bar>
 
 
-SELECT xmlforest(table_name, column_name) FROM information_schema.columns WHERE table_schema = 'pg_catalog';
+SELECT xmlforest(table_name, column_name)
+FROM information_schema.columns
+WHERE table_schema = 'pg_catalog';
 
                                          xmlforest
 -------------------------------------------------------------------------------------------
@@ -8690,7 +8695,7 @@
    </indexterm>
  
  <synopsis>
- <function>xmlroot</function>(<replaceable>xml</replaceable>, version <replaceable>text</replaceable>|no value <optional>, standalone yes|no|no value</optional>)
+ <function>xmlroot</function>(<replaceable>xml</replaceable>, version <replaceable>text</replaceable> | no value <optional>, standalone yes|no|no value</optional>)
  </synopsis>
  
     <para>
@@ -8703,7 +8708,8 @@
 
     <para>
 <screen><![CDATA[
-SELECT xmlroot(xmlparse(document '<?xml version="1.1"?><content>abc</content>'), version '1.0', standalone yes);
+SELECT xmlroot(xmlparse(document '<?xml version="1.1"?><content>abc</content>'), 
+               version '1.0', standalone yes);
 
                 xmlroot
 ----------------------------------------
@@ -8822,7 +8828,9 @@
    <para>
     Exemple&nbsp;:
 <screen><![CDATA[
-SELECT xpath('/my:a/text()', '<my:a xmlns:my="http://example.com">test</my:a>', ARRAY[ARRAY['my', 'http://example.com']]);
+SELECT xpath('/my:a/text()', '<my:a xmlns:my="http://example.com">test</my:a>', 
+             ARRAY[ARRAY['my', 'http://example.com']]);
+
  xpath  
 --------
  {test}
@@ -8844,8 +8852,8 @@
 <synopsis>
 table_to_xml(tbl regclass, nulls boolean, tableforest boolean, targetns text)
 query_to_xml(query text, nulls boolean, tableforest boolean, targetns text)
-cursor_to_xml(cursor refcursor, count int, nulls boolean, tableforest boolean, targetns text)
-</synopsis>
+cursor_to_xml(cursor refcursor, count int, nulls boolean, 
+              tableforest boolean, targetns text)</synopsis>
     Le type en retour de ces fonctions est <type>xml</type>.
    </para>
 
@@ -9359,7 +9367,7 @@
   <para>
    L'expression <acronym>SQL</acronym> <token>CASE</token> est une expression
    conditionnelle générique, similaire aux instructions if/else des
-   autres langages&nbsp;:
+   autres langages de programmation&nbsp;:
 
 <synopsis>CASE WHEN <replaceable>condition</replaceable> THEN <replaceable>résultat</replaceable>
      <optional>WHEN ...</optional>
@@ -9412,8 +9420,8 @@
   </para>
 
   <para>
-   L'expression <token>CASE</token> <quote>simple</quote> qui suit est une
-   variante spécialisée de la forme générale ci-dessus&nbsp;:
+   L'expression <token>CASE</token> qui suit est une variante de la forme
+   générale ci-dessus&nbsp;:
 
 <synopsis>CASE <replaceable>expression</replaceable>
     WHEN <replaceable>valeur</replaceable> THEN
@@ -10927,8 +10935,9 @@
    mais il sort au plus une ligne pour chaque ligne de
    <literal>tab1</literal>, même s'il y a plusieurs correspondances dans les lignes de
    <literal>tab2</literal>&nbsp;:
-<screen>SELECT col1 FROM tab1
-    WHERE EXISTS(SELECT 1 FROM tab2 WHERE col2 = tab1.col2);</screen>
+<screen>SELECT col1
+FROM tab1
+WHERE EXISTS(SELECT 1 FROM tab2 WHERE col2 = tab1.col2);</screen>
   </para>
   </sect2>
 
@@ -11537,7 +11546,7 @@
     
     <para>
      Quelques exemples&nbsp;:
-      <programlisting>select * from generate_series(2,4);
+      <programlisting>SELECT * FROM generate_series(2,4);
  generate_series
 -----------------
  2
@@ -11545,7 +11554,7 @@
  4
 (3 rows)
 
-select * from generate_series(5,1,-2);
+SELECT * FROM generate_series(5,1,-2);
  generate_series
 -----------------
  5
@@ -11553,13 +11562,13 @@
  1
 (3 rows)
 
-select * from generate_series(4,3);
+SELECT * FROM generate_series(4,3);
  generate_series
 -----------------
 (0 rows)
 
 -- cet exemple se base sur l'opérateur date-plus-entier
-select current_date + s.a as dates from generate_series(0,14,7) as s(a);
+SELECT current_date + s.a AS dates FROM generate_series(0,14,7) AS s(a);
     dates
 ------------
  2004-02-05
@@ -11567,7 +11576,7 @@
  2004-02-19
 (3 rows)
 
-select * from generate_series('2008-03-01 00:00'::timestamp,
+SELECT * FROM generate_series('2008-03-01 00:00'::timestamp,
                               '2008-03-04 12:00', '10 hours');
    generate_series   
 ---------------------
@@ -12695,7 +12704,7 @@
       <row>
        <entry><literal><function>pg_get_userbyid</function>(<parameter>roleid</parameter>)</literal></entry>
        <entry><type>name</type></entry>
-       <entry>récupère le nom du rôle possédant cet ID</entry>
+       <entry>récupère le nom du rôle possédant cet OID</entry>
       </row>
       <row>
        <entry><literal><function>pg_get_viewdef</function>(<parameter>view_name</parameter>)</literal></entry>
@@ -13257,7 +13266,8 @@
     peut être trouvé dans la colonne <structfield>procpid</structfield>
     dans la vue <structname>pg_stat_activity</structname> ou en listant les
     processus <command>postgres</command> sur le serveur avec
-    <application>ps</application>.
+    <application>ps</application> sur Unix ou le <application>Gestionnaire
+    des tâches</application> sur <productname>Windows</productname>.
    </para>
 
    <para>
@@ -13379,10 +13389,10 @@
       </table>
 
     <para>
-      <function>pg_start_backup</function> accepte un paramètre texte, label
+      <function>pg_start_backup</function> accepte un label
       utilisateur de la sauvegarde (typiquement, le nom du fichier
       d'enregistrement de la sauvegarde). La fonction écrit un fichier de
-      label dans le répertoire de données du cluster, réalise un point de
+      label (<filename>backup_label</filename>) dans le répertoire de données du cluster, réalise un point de
       retournement, et renvoie la position du début de la sauvegarde dans le
       journal de transactions au format texte. Ce résultat ne nécessite pas
       qu'on s'y intéresse, mais il est fourni dans cette éventualité.
@@ -13444,7 +13454,7 @@
     <function>pg_xlogfile_name_offset</function> peut être utilisée pour
     extraire le nom du journal de transactions correspondant et le décalage en octets
     à partir du résultat de n'importe quelle fonction ci-dessus. Par exemple&nbsp;:
-<programlisting>postgres=# select * from pg_xlogfile_name_offset(pg_stop_backup());
+<programlisting>postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup());
         file_name         | file_offset 
 --------------------------+-------------
  00000001000000000000000D |     4039624

Modified: traduc/trunk/postgresql/history.xml
===================================================================
--- traduc/trunk/postgresql/history.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/history.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -16,7 +16,7 @@
   Le système de bases de données relationnel objet
   <productname>PostgreSQL</productname> est issu de
   <productname>POSTGRES</productname>, programme écrit à l'université de
-  Californie à Berkeley. Après plus d'une dizaine d'années de développement,
+  Californie à Berkeley. Après plus d'une vingtaine d'années de développement,
   <productname>PostgreSQL</productname> annonce être devenu la base de données OpenSource de 
   référence.
  </para>

Modified: traduc/trunk/postgresql/indices.xml
===================================================================
--- traduc/trunk/postgresql/indices.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/indices.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -52,11 +52,11 @@
    facilement parcourir l'index, puis aller directement à la page 
    (ou aux pages) indiquée(s). De la même façon que l'auteur doit anticiper
    les sujets que les lecteurs risquent de rechercher, il est de la
-   responsabilité du programmeur de prévoir les index qui sont avantageux.
+   responsabilité du programmeur de prévoir les index qui sont utiles.
   </para>
 
   <para>
-   La commande suivante permet de créer un index sur la colonne
+   La commande suivante peut être utilisé pour créer un index sur la colonne
    <structfield>id</structfield>&nbsp;:
 <programlisting>CREATE INDEX test1_id_index ON test1 (id);</programlisting>
    Le nom <structname>test1_id_index</structname> peut être choisi
@@ -87,7 +87,7 @@
    <command>UPDATE</command> et <command>DELETE</command> à
    conditions de recherche. De plus, les index peuvent être utilisés dans les
    jointures. Ainsi, un index défini sur une colonne qui fait partie d'une
-   condition de jointure peut accélérer significativement les requêtes avec
+   condition de jointure peut aussi accélérer significativement les requêtes avec
    jointures.
   </para>
 
@@ -392,10 +392,11 @@
    Le planificateur répond à une clause <literal>ORDER BY</literal>
    soit en parcourant un index disponible qui correspond à la
    clause, soit en parcourant la table dans l'ordre physique et en réalisant
-   un tri explicite. Pour une requête qui nécessite de parcourir une fraction importante
-   de la table, le tri explicite est probablement plus rapide car il
-   nécessite moins d'entrées/sorties disque, du fait d'un modèle d'accès mieux
-   ordonné. Les index sont plus utiles lorsqu'il s'agit de ne récupérer que
+   un tri explicite. Pour une requête qui nécessite de parcourir une fraction
+   importante de la table, le tri explicite est probablement plus rapide que
+   le parcours d'un index car il nécessite moins d'entrées/sorties disque, du
+   fait de son accès séquentiel. Les index sont plus utiles lorsqu'il s'agit
+   de ne récupérer que
    quelques lignes être récupérées. <literal>ORDER BY</literal>
    combiné à <literal>LIMIT</literal> <replaceable>n</replaceable> est un cas
    spécial très important&nbsp;:
@@ -446,7 +447,7 @@
    <literal>ORDER BY x DESC, y DESC</literal> sur un parcours inverse.
    Mais il se peut que l'application utilise fréquemment
    <literal>ORDER BY x ASC, y DESC</literal>. Il n'y a pas moyen d'obtenir cet
-   ordre à partir d'un index standard, mais c'est possible si l'index est défini
+   ordre à partir d'un index plus simple, mais c'est possible si l'index est défini
    comme <literal>(x ASC, y DESC)</literal> or <literal>(x DESC, y
    ASC)</literal>.
   </para>
@@ -455,7 +456,7 @@
    Les index d'ordre différent de celui par défaut sont visiblement une
    fonctionnalité très spécialisée, mais ils peuvent parfois être à l'origine
    d'accélérations spectaculaires des performances sur certaines requêtes.
-   L'intérêt de maintenir un tel index dépend
+   L'intérêt de créer un tel index dépend
    de la fréquence des requêtes qui nécessitent un tri particulier.
   </para>
  </sect1>
@@ -483,7 +484,7 @@
   </para>
 
   <para>
-   Depuis la version 8.1, <productname>PostgreSQL</productname> peut combiner
+   Heureusement, <productname>PostgreSQL</productname> peut combiner
    plusieurs index (y compris plusieurs utilisations du même index) pour gérer
    les cas qui ne peuvent pas être résolus par des parcours d'index
    simples. Le système peut former des conditions <literal>AND</literal>
@@ -570,7 +571,7 @@
    Lorsqu'un index est déclaré unique, il ne peut exister plusieurs lignes
    d'une table qui possèdent la même valeur indexée. Les valeurs NULL ne sont pas
    considérées égales. Un index d'unicité multi-colonnes ne rejette que les
-   cas où toutes les colonnes indexées sont égales dans deux lignes.
+   cas où toutes les colonnes indexées sont égales dans plusieurs lignes.
   </para>
 
   <para>
@@ -682,7 +683,7 @@
    d'indexer les valeurs courantes. Puisqu'une requête qui recherche une
    valeur courante (qui correspond à plus de quelques
    pourcents de toutes les lignes) n'utilise, de toute façon, pas cet index, il ne sert
-   à rien de garder ces lignes dans l'index. Cela réduit la taille de l'index,
+   à rien de garder ces lignes dans l'index. Un index partiel réduit la taille de l'index,
    ce qui accélère les requêtes qui l'utilisent. Cela accélère aussi nombre
    d'opérations de mise à jour de la table, car l'index n'a pas à être
    mis à jour à chaque fois. L'<xref linkend="indexes-partial-ex1"/> montre une
@@ -716,23 +717,27 @@
     Pour créer un index partiel qui corresponde à l'exemple, il faut utiliser 
     une commande comme celle-ci&nbsp;:
 <programlisting>CREATE INDEX access_log_client_ip_ix ON access_log (client_ip)
-    WHERE NOT (client_ip &gt; inet '192.168.100.0' AND client_ip &lt; inet '192.168.100.255');</programlisting>
+    WHERE NOT (client_ip &gt; inet '192.168.100.0' AND
+               client_ip &lt; inet '192.168.100.255');</programlisting>
    </para>
 
    <para>
     Une requête typique qui peut utiliser cet index est&nbsp;:
-<programlisting>SELECT * FROM access_log WHERE url = '/index.html' AND client_ip = inet '212.78.10.32';</programlisting>
+<programlisting>SELECT *
+FROM access_log
+WHERE url = '/index.html' AND client_ip = inet '212.78.10.32';</programlisting>
     Une requête qui ne peut pas l'utiliser est&nbsp;:
-<programlisting>SELECT * FROM access_log WHERE client_ip = inet '192.168.100.23';</programlisting>
+<programlisting>SELECT *
+FROM access_log
+WHERE client_ip = inet '192.168.100.23';</programlisting>
    </para>
 
    <para>
     Ce type d'index partiel nécessite que les valeurs courantes
-    soient prédéterminées. Si la distribution des valeurs est inhérente
-    (du fait de la nature de l'application) et statique (ne change pas dans 
-    le temps), ce n'est pas trop difficile, mais, si les valeurs courantes sont
-    simplement dues au hasard, cela peut demander beaucoup de travail de
-    maintenance pour modifier la définition de l'index de temps en temps.
+    soient prédéterminées, so such partial indexes are best used for
+    data distribution that do not change.  The indexes can be recreated
+    occasionally to adjust for new data distributions, but this adds
+    maintenance overhead.
    </para>
   </example>
 
@@ -996,7 +1001,7 @@
 
   <para>
    Bien que les index de <productname>PostgreSQL</productname> n'aient pas besoin
-   de maintenance et d'optimisation, il est important de s'assurer que les
+   de maintenance ou d'optimisation, il est important de s'assurer que les
    index sont effectivement utilisés sur un système en production.
    On vérifie l'utilisation d'un index pour une requête particulière avec
    la commande <xref linkend="sql-explain" endterm="sql-explain-title"/>.
@@ -1011,7 +1016,7 @@
    Il est difficile de donner une procédure générale pour déterminer
    les index à créer. Plusieurs cas typiques ont été
    cités dans les exemples précédents.
-   Une bonne dose d'expérimentation est nécessaire dans de nombreux cas.
+   Une bonne dose d'expérimentation est souvent nécessaire dans de nombreux cas.
    Le reste de cette section donne quelques pistes.
   </para>
 
@@ -1021,8 +1026,8 @@
      La première chose à faire est de lancer 
      <xref linkend="sql-analyze" endterm="sql-analyze-title"/>.
      Cette commande collecte les informations sur la distribution des
-     valeurs dans la table. Cette information est nécessaire pour essayer de
-     deviner le nombre de lignes retournées par une requête. L'optimiseur
+     valeurs dans la table. Cette information est nécessaire pour estimer
+     le nombre de lignes retournées par une requête. L'optimiseur
      de requêtes en a besoin pour donner des coûts réalistes aux différents
      plans de requêtes possibles. En l'absence de statistiques réelles,
      le système utilise quelques valeurs par défaut, qui ont toutes les chances

Modified: traduc/trunk/postgresql/info.xml
===================================================================
--- traduc/trunk/postgresql/info.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/info.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -13,11 +13,15 @@
 
   <variablelist>
    <varlistentry>
-    <term>FAQ</term>
+    <term>Wiki</term>
     <listitem>
      <para>
-      La FAQ <indexterm><primary>FAQ</primary></indexterm> contient des
-      réponses, mises à jours en continu, aux questions les plus fréquentes.
+      Le <ulink url="http://wiki.postgresql.org">wiki</ulink> de
+      <productname>PostgreSQL</productname> contient la <ulink
+      url="http://wiki.postgresql.org/wiki/Frequently_Asked_Questions">FAQ</ulink>
+      (liste des questions fréquemment posées), la liste <ulink
+      url="http://wiki.postgresql.org/wiki/Todo">TODO</ulink> et des
+      informations détaillées sur de nombreux autres thèmes.
      </para>
     </listitem>
    </varlistentry>

Modified: traduc/trunk/postgresql/installation.xml
===================================================================
--- traduc/trunk/postgresql/installation.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/installation.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -15,7 +15,7 @@
  <para>
   Ce <phrase>document</phrase><phrase>
   chapitre</phrase> décrit l'installation de
-  <productname>PostgreSQL</productname> à partir du code source. (Ce
+  <productname>PostgreSQL</productname> en utilisant le code source. (Ce
   <phrase>document</phrase><phrase>
   chapitre</phrase> peut être ignoré lors de l'installation d'une distribution
   pré-empaquetée, paquet RPM ou Debian, par exemple. Il est alors plus utile de
@@ -84,7 +84,8 @@
     <listitem>
      <para>
       Il est nécessaire d'avoir un compilateur C
-      <acronym>ISO</acronym>/<acronym>ANSI</acronym>. Une version récente de
+      <acronym>ISO</acronym>/<acronym>ANSI</acronym> (au minimum compatible
+      avec C89). Une version récente de
       <productname>GCC</productname> est recommandée mais
       <productname>PostgreSQL</productname> est connu pour être compilable avec de 
       nombreux compilateurs de divers vendeurs.
@@ -149,8 +150,9 @@
 
   <para>
    Les paquets suivants sont optionnels. Ils ne sont pas obligatoires lors
-   d'une compilation par défaut, mais le deviennent lorsque certaines options sont
-   utilisées, comme cela est expliqué par la suite.
+   d'une compilation par défaut de <productname>PostgreSQL</productname>,
+   mais le deviennent lorsque certaines options sont utilisées, comme cela
+   est expliqué par la suite.
 
    <itemizedlist>
     <listitem>
@@ -207,7 +209,8 @@
       <indexterm><primary>libpython</primary></indexterm>
       <filename>libpython</filename> doit l'être aussi sur la plupart des
       plateformes. Ce n'est pas le cas des installations par défaut de
-      Python. Si, après la compilation et l'installation, il existe un fichier
+      Python. Si, après la compilation et l'installation de <productname>PostgreSQL</productname>,
+      il existe un fichier
       nommé <filename>plpython.so</filename> (des extensions différentes sont
       possibles), tout va bien. Sinon, il est fort probable qu'un avertissement
       semblable à celui qui suit soit apparu&nbsp;:
@@ -270,8 +273,8 @@
 
   <para>
    En cas de compilation à partir d'une arborescence <acronym>CVS</acronym> et
-   non d'un paquet de sources publié, ou pour faire du développement, les
-   paquets suivants seront également nécessaires&nbsp;:
+   non d'un paquet de sources publié, ou pour faire du développement du moteur
+   de bases de données, les paquets suivants seront également nécessaires&nbsp;:
 
    <itemizedlist>
     <listitem>
@@ -763,8 +766,8 @@
          Permet de mettre en place le support des langues natives
          (<acronym>NLS</acronym>). C'est la possibilité d'afficher les messages
          des programmes dans une langue autre que l'anglais.
-         <replaceable>LANGUE</replaceable> est une liste de codes des langues
-         que vous voulez supporter séparés par un espace. Par 
+         <replaceable>LANGUES</replaceable> est une liste, optionnelle, des codes
+	 des langues que vous voulez supporter séparés par un espace. Par 
          exemple, <literal>--enable-nls='de fr'</literal> (l'intersection entre votre
          liste et l'ensemble des langues traduites actuellement sera calculée
          automatiquement). Si vous ne spécifiez pas de liste, alors toutes les
@@ -922,12 +925,12 @@
 	 des clients et libpq</phrase><phrase><xref
 	 linkend="libpq-ldap"/> et <xref linkend="auth-ldap"/></phrase>).
          Sur Unix, cela requiert l'installation du paquet
-	 <productname>OpenLDAP</productname>.
+	 <productname>OpenLDAP</productname>. Sur Windows, la bibliothèque
+	 <productname>WinLDAP</productname> est utilisée par défaut.
 	 <filename>configure</filename> vérifiera l'existence des fichiers d'en-tête
 	 et des bibliothèques requis pour s'assurer que votre installation
 	 d'<productname>OpenLDAP</productname> est suffisante avant de continuer.
-         Sur Windows, la bibliothèque <productname>WinLDAP</productname> est
-	 utilisée par défaut.
+         
         </para>
        </listitem>
       </varlistentry>
@@ -1635,10 +1638,10 @@
   </formalpara>
 
   <formalpara>
-   <title>Ménage&nbsp;:</title>
+   <title>Nettoyage&nbsp;:</title>
 
    <para>
-    Après l'installation, vous pouvez faire le ménage en supprimant les
+    Après l'installation, vous pouvez libérer de l'espace en supprimant les
     fichiers issus de la compilation des répertoires sources à l'aide de la
     commande <command>gmake clean</command>. Cela conservera les fichiers créés par
     la commande <command>configure</command>, ainsi vous pourrez tout recompiler
@@ -1672,7 +1675,7 @@
    </indexterm>
 
    <para>
-    Sur certains systèmes qui utilisent les bibliothèques partagées (ce que font
+    Sur plusieurs systèmes qui utilisent les bibliothèques partagées (ce que font
     de nombreux systèmes), vous avez besoin de leurs spécifier comment trouver
     les nouvelles bibliothèques partagées. Les systèmes sur lesquels ce
     <emphasis>n'est</emphasis> pas nécessaire comprennent <systemitem

Modified: traduc/trunk/postgresql/intro.xml
===================================================================
--- traduc/trunk/postgresql/intro.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/intro.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -8,10 +8,10 @@
  <title>Préface</title>
 
  <para>
-  Cet ouvrage représente l'adaptation française de la documentation officielle de
-  <productname>PostgreSQL</productname>. Celle-ci est rédigée par les développeurs de
-  <productname>PostgreSQL</productname> et quelques volontaires en
-  parallèle du développement du logiciel.
+  Cet ouvrage représente l'adaptation française de la documentation officielle
+  de <productname>PostgreSQL</productname>. Celle-ci a été rédigée par les
+  développeurs de <productname>PostgreSQL</productname> et quelques volontaires
+  en parallèle du développement du logiciel.
   Elle décrit toutes les fonctionnalités officiellement supportées par la version 
   courante de <productname>PostgreSQL</productname>.
  </para>

Modified: traduc/trunk/postgresql/libpq.xml
===================================================================
--- traduc/trunk/postgresql/libpq.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/libpq.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -260,19 +260,73 @@
      <listitem>
       <para>
        Cette option détermine si ou avec quelle priorité une connexion
-       TCP/IP <acronym>SSL</acronym> sera négociée avec le serveur. Il existe quatre
-       modes&nbsp;: <literal>disable</literal> essaiera uniquement une connexion non
-       cryptée <acronym>SSL</acronym>&nbsp;; <literal>allow</literal> négociera en essayant
-       tout d'abord une connexion sans <acronym>SSL</acronym> puis, si cela échoue, une
-       connexion <acronym>SSL</acronym>&nbsp;; <literal>prefer</literal> (la valeur par
-       défaut) négociera en essayant d'abord une connexion <acronym>SSL</acronym> puis,
-       en cas d'échec, une connexion non <acronym>SSL</acronym>&nbsp;;
-       <literal>require</literal> essaiera uniquement une connexion <acronym>SSL</acronym>.
-       <literal>sslmode</literal> est ignoré pour la communication avec des sockets de
-       domaine Unix.
+       TCP/IP <acronym>SSL</acronym> sera négociée avec le serveur. Il existe
+       six modes&nbsp;:
       </para>
+       
+       <table id="libpq-connect-sslmode-options">
+           <title><literal>sslmode</literal> options</title>
+           <tgroup cols="2">
+            <thead>
+             <row>
+              <entry>Option</entry>
+              <entry>Description</entry>
+             </row>
+            </thead>
+        
+            <tbody>
+        
+             <row>
+              <entry><literal>disable</literal></entry>
+              <entry>only try a non-<acronym>SSL</acronym> connection</entry>
+             </row>
+        
+             <row>
+              <entry><literal>allow</literal></entry>
+              <entry>first try a non-<acronym>SSL</acronym>
+               connection;  if that fails, try an <acronym>SSL</acronym>
+               connection</entry>
+             </row>
+        
+             <row>
+              <entry><literal>prefer</literal> (default)</entry>
+              <entry>first try an <acronym>SSL</acronym> connection;  if
+              that fails, try a non-<acronym>SSL</acronym>
+              connection</entry>
+             </row>
+        
+             <row>
+              <entry><literal>require</literal></entry>
+              <entry>only try an <acronym>SSL</acronym> connection</entry>
+             </row>
 
-      <para>
+             <row>
+              <entry><literal>verify-ca</literal></entry>
+              <entry>only try an <acronym>SSL</acronym> connection, and verify that
+              the server certificate is issued by a trusted <acronym>CA</acronym>.
+              </entry>
+             </row>
+
+             <row>
+              <entry><literal>verify-full</literal></entry>
+              <entry>only try an <acronym>SSL</acronym> connection, verify that
+              the server certificate is issued by a trusted <acronym>CA</acronym> and
+              that the server hostname matches that in the certificate.</entry>
+             </row>
+
+            </tbody>
+           </tgroup>
+          </table>
+
+          <para>
+           See <xref linkend="libpq-ssl"/> for a detailed description of how
+           these options work.
+          </para>
+
+          <para>
+           <literal>sslmode</literal> is ignored for Unix domain socket
+           communication.
+
        Si <productname>PostgreSQL</productname> est compilé sans le support de SSL,
        l'utilisation de l'option <literal>require</literal> causera une erreur alors
        que les options <literal>allow</literal> et <literal>prefer</literal> seront acceptées
@@ -283,43 +337,6 @@
      </listitem>
     </varlistentry>
 
-        <varlistentry id="libpq-connect-sslverify" xreflabel="sslverify">
-         <term><literal>sslverify</literal></term>
-         <listitem>
-          <para>
-           Cette option contrôle la façon dont libpq vérifie le certificat sur
-	   le serveur lors de la connexion <acronym>SSL</acronym>. Il existe
-	   trois options&nbsp;: <literal>none</literal> désactive complètement
-	   la vérification (non recommandé)&nbsp;; <literal>cert</literal>
-	   active la vérification que le certificat serveur est lié à un
-	   certificat d'autorité connu (CA)&nbsp;; <literal>cn</literal>
-	   vérifiera que le certificat est lié à un CA connu et que
-	   l'attribut <literal>cn</literal> du certificat serveur
-	   correspond au nom d'hôte du serveur (valeur par défaut).
-          </para>
-
-          <para>
-           Il est toujours recommandé d'utiliser la valeur <literal>cn</literal>
-	   pour ce paramètre car c'est la seule option qui empêche les attaques
-	   de type <foreignphrase>man-in-the-middle</foreignphrase>. Notez que
-	   ceci nécessite que le nom du serveur sur le certificat corresponde
-	   au nom d'hôte utilisé pour la connexion, et du coup ne supporte pas
-	   la connexion vers des alias. Il peut être utilisé avec des connexions
-	   d'adresses IP seulement si le certificat a aussi l'adresse IP dans
-	   le champ <literal>cn</literal>.
-          </para>
-
-          <para>
-           Si l'attribut <literal>cn</literal> dans le certificat envoyé par le
-	   serveur commence avec une étoile (<literal>*</literal>), il sera
-	   traité comme un joker. Ce joker sera seulement présent au début de
-	   la valeur et correspondra à tous les caractères
-	   <emphasis>sauf</emphasis> un point (<literal>.</literal>). Cela
-	   signifie que le certificat ne correspondra pas aux sous-domaines.
-          </para>
-         </listitem>
-        </varlistentry>
-
         <varlistentry id="libpq-connect-requiressl" xreflabel="requiressl">
      <listitem>
       <para>
@@ -5211,15 +5228,6 @@
 configuration <xref linkend="libpq-connect-sslmode"/>.
 </para>
 </listitem>
-    <listitem>
-     <para>
-      <indexterm>
-       <primary><envar>PGSSLVERIFY</envar></primary>
-      </indexterm>
-      <envar>PGSSLVERIFY</envar> se comporte de la même façon que le paramètre
-      de configuration <xref linkend="libpq-connect-sslverify"/>.
-     </para>
-    </listitem>
 
     <listitem>
      <para>
@@ -5580,29 +5588,64 @@
    souhaité.
   </para>
 
+ <sect2 id="libq-ssl-certificates">
+  <title>Certificate verification</title>
+
   <para>
-   Quand le paramètre <literal>sslverify</literal> est configuré à
-   <literal>cn</literal> ou <literal>cert</literal>, libpq vérifiera que le
-   certificat du serveur est de confiance en vérifiant la chaîne du certificat
-   jusqu'à un <acronym>CA</acronym>. Pour que cela fonctione, placez le
-   certificat d'un <acronym>CA</acronym> de confiance dans le
-   fichier <filename>~/.postgresql/root.crt</filename> dans le répertoire
-   personnel de l'utilisateur.
-   (Sur Microsoft Windows, le fichier est nommé
+   By default, <productname>PostgreSQL</productname> will not perform any verification of
+   the server certificate. This means that it is possible to spoof the server
+   identity (for example by modifying a DNS record or by taking over the server
+   IP address) without the client knowing. In order to prevent this,
+   <acronym>SSL</acronym> certificate verification must be used.
+  </para>
+
+  <para>
+   If the parameter <literal>sslmode</literal> is set to <literal>verify-ca</literal>
+   libpq will verify that the server is trustworthy by checking the certificate
+   chain up to a trusted <acronym>CA</acronym>. If <literal>sslmode</literal> is set to
+   <literal>verify-full</literal>, libpq will <emphasis>also</emphasis> verify that the server
+   hostname matches that of the certificate. The SSL connection will fail if
+   the server certificate cannot be verified. <literal>verify-full</literal> is
+   recommended in most security sensitive environments.
+  </para>
+
+  <para>
+   In <literal>verify-full</literal> mode, the <literal>cn</literal> attribute of the
+   certificate is matched against the hostname. If the <literal>cn</literal>
+   attribute starts with an asterisk (<literal>*</literal>), it will be treated as
+   a wildcard, and will match all characters <emphasis>except</emphasis> a dot
+   (<literal>.</literal>). This means the certificate will not match subdomains.
+   If the connection is made using an IP address instead of a hostname, the
+   IP address will be matched (without doing any DNS lookups).
+  </para>
+
+  <para>
+   To allow verification, the certificate of a trusted <acronym>CA</acronym> must be
+   placed in the file <filename>~/.postgresql/root.crt</filename> in the user's home
+   directory. (On Microsoft Windows the file is named
    <filename>%APPDATA%\postgresql\root.crt</filename>.)
-   <application>libpq</application> vérifiera ensuite que le certificat du
-   serveur est signé par une des autorités de confiance. La connexion SSL
-   échouera si le serveur ne présente pas un certificat de confiance.
+  </para>
+
+  <para>
+
    Les entrées de la liste de révocation des certificats (CRL) sont aussi
    vérifiées si le fichier <filename>~/.postgresql/root.crl</filename> existe
    (<filename>%APPDATA%\postgresql\root.crl</filename> sur Microsoft
    Windows).
+  </para>
+
+  <para>
    L'emplacement du certificat racine et du CRL peuvent être surchargés avec
    les paramètres de connexion <literal>sslrootcert</literal> et
    <literal>sslcrl</literal>, ou les variables d'environnement
    <envar>PGSSLROOTCERT</envar> et <envar>PGSSLCRL</envar>.
   </para>
 
+ </sect2>
+
+ <sect2 id="libpq-ssl-clientcert">
+  <title>Client certificates</title>
+
   <para>
    Si le serveur réclame un certificat de confiance du client,
    <application>libpq</application> enverra le certificat stocké dans le
@@ -5623,6 +5666,183 @@
    <envar>PGSSLCERT</envar> et <envar>PGSSLKEY</envar>.
   </para>
 
+ </sect2>
+
+ <sect2 id="libpq-ssl-protection">
+  <title>Protection provided in different modes</title>
+
+  <para>
+   The different values for the <literal>sslmode</literal> parameter provide different
+   levels of protection, in different environments. SSL itself provides
+   protection against three different types of attacks:
+  </para>
+  <table id="libpq-ssl-protect-attacks">
+   <title>SSL attacks</title>
+   <tgroup cols="2">
+    <thead>
+     <row>
+      <entry>Type</entry>
+      <entry>Description</entry>
+     </row>
+    </thead>
+
+    <tbody>
+     <row>
+      <entry>Eavesdropping</entry>
+      <entry>If a third party can listen to the network traffic between the
+       client and the server, it can read both connection information (including
+       the username and password) and the data that is passed. <acronym>SSL</acronym>
+       uses encryption to prevent this.
+      </entry>
+     </row>
+
+     <row>
+      <entry>Man in the middle (<acronym>MITM</acronym>)</entry>
+      <entry>If a third party can modify the data while passing between the
+       client and server, it can pretend to be the server and therefore see and
+       modify data <emphasis>even if it is encrypted</emphasis>. The third party can then
+       forward the connection information and data to the original server,
+       making it impossible to detect this attack. Common vectors to do this
+       include DNS poisoning and address hijacking, whereby the client is directed
+       to a different server than intended. There are also several other
+       attack methods that can accomplish this. <acronym>SSL</acronym> uses certificate
+       verification to prevent this, by authenticating the server to the client.
+      </entry>
+     </row>
+
+     <row>
+      <entry>Impersonation</entry>
+      <entry>If a third party can pretend to be an authorized client, it can
+       simply access data it should not have access to. Typically this can
+       happen through insecure password management. <acronym>SSL</acronym> uses
+       client certificates to prevent this, by making sure that only holders
+       of valid certificates can access the server.
+      </entry>
+     </row>
+    </tbody>
+   </tgroup>
+  </table>
+
+  <para>
+   For a connection to be known secure, the two first of these have to be
+   set up on <emphasis>both the client and the server</emphasis> before the connection
+   is made. If it is only configured on the server, the client may end up
+   sending sensitive information (e.g. passwords) before
+   it knows that the server requires high security. In libpq, this is controlled
+   by setting the <literal>sslmode</literal> parameter to <literal>verify-full</literal> or
+   <literal>verify-ca</literal>, and providing the system with a root certificate to
+   verify against. This is analogous to using a <literal>https</literal>
+   <acronym>URL</acronym> for encrypted web browsing.
+  </para>
+
+  <para>
+   Once the server has been authenticated, the client can pass sensitive data.
+   This means that up until this point, the client does not need to know if
+   certificates will be used for authentication, making it safe to specify this
+   only in the server configuration.
+  </para>
+
+  <para>
+   All <acronym>SSL</acronym> options carry overhead in the form of encryption and
+   key-exchange, and it is a tradeoff that has to be made between performance
+   and security. The following table illustrates the risks the different
+   <literal>sslmode</literal> values protect against, and what statement they make
+   about security and overhead:
+  </para>
+
+  <table id="libpq-ssl-sslmode-statements">
+   <title>SSL mode descriptions</title>
+   <tgroup cols="4">
+    <thead>
+     <row>
+      <entry><literal>sslmode</literal></entry>
+      <entry>Eavesdropping protection</entry>
+      <entry><acronym>MITM</acronym> protection</entry>
+      <entry>Statement</entry>
+     </row>
+    </thead>
+
+    <tbody>
+     <row>
+      <entry><literal>disabled</literal></entry>
+      <entry>No</entry>
+      <entry>No</entry>
+      <entry>I don't care about security, and I don't want to pay the overhead
+       of encryption.
+      </entry>
+     </row>
+
+     <row>
+      <entry><literal>allow</literal></entry>
+      <entry>Maybe</entry>
+      <entry>No</entry>
+      <entry>I don't care about security, but I will pay the overhead of
+       encryption if the server insists on it.
+      </entry>
+     </row>
+
+     <row>
+      <entry><literal>prefer</literal></entry>
+      <entry>Maybe</entry>
+      <entry>No</entry>
+      <entry>I don't care about encryption, but I wish to pay the overhead of
+       encryption if the server supports it.
+      </entry>
+     </row>
+
+     <row>
+      <entry><literal>require</literal></entry>
+      <entry>Yes</entry>
+      <entry>No</entry>
+      <entry>I want my data to be encrypted, and I accept the overhead. I trust
+       that the network will make sure I always connect to the server I want.
+      </entry>
+     </row>
+
+     <row>
+      <entry><literal>verify-ca</literal></entry>
+      <entry>Yes</entry>
+      <entry><literal>Depends on CA</literal>-policy</entry>
+      <entry>I want my data encrypted, and I accept the overhead. I want to be
+       sure that I connect to a server that I trust.
+      </entry>
+     </row>
+
+     <row>
+      <entry><literal>verify-full</literal></entry>
+       <entry>Yes</entry>
+       <entry>Yes</entry>
+       <entry>I want my data encrypted, and I accept the overhead. I want to be
+        sure that I connect to a server I trust, and that it's the one I
+        specify.
+       </entry>
+      </row>
+
+    </tbody>
+   </tgroup>
+  </table>
+
+  <para>
+   The difference between <literal>verify-ca</literal> and <literal>verify-full</literal>
+   depends on the policy of the root <acronym>CA</acronym>. If a public
+   <acronym>CA</acronym> is used, <literal>verify-ca</literal> allows connections to a server
+   that <emphasis>somebody else</emphasis> may have registered with the <acronym>CA</acronym>
+   to succeed. In this case, <literal>verify-full</literal> should always be used. If
+   a local <acronym>CA</acronym> is used, or even a self-signed certificate, using
+   <literal>verify-ca</literal> often provides enough protection.
+  </para>
+
+  <para>
+   The default value for <literal>sslmode</literal> is <literal>prefer</literal>. As is shown
+   in the table, this makes no sense from a security point of view, and it only
+   promises performance overhead if possible. It is only provided as the default
+   for backwards compatiblity, and not recommended in secure deployments.
+  </para>
+
+ </sect2>
+
+ <sect2 id="libpq-ssl-fileusage">
+  <title>SSL File Usage</title>
   <table id="libpq-ssl-file-usage">
    <title>Utilisation du fichier SSL libpq/client</title>
    <tgroup cols="3">
@@ -5666,7 +5886,11 @@
     </tbody>
    </tgroup>
   </table>
+ </sect2>
 
+ <sect2 id="libpq-ssl-initialize">
+  <title>SSL library initialization</title>
+
   <para>
    Si votre application initialise les bibliothèques <literal>libssl</literal>
    et/ou <literal>libcrypto</literal> et que <application>libpq</application>
@@ -5761,6 +5985,7 @@
     </varlistentry>
    </variablelist>
   </para>
+ </sect2>
 
 </sect1>
 

Modified: traduc/trunk/postgresql/maintenance.xml
===================================================================
--- traduc/trunk/postgresql/maintenance.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/maintenance.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -394,13 +394,19 @@
    </para>
 
    <para>
-    Le comportement de <command>VACUUM</command> est contrôlé par deux paramètres
-    de configuration&nbsp;: <xref linkend="guc-vacuum-freeze-min-age"/> et
-    <xref linkend="guc-vacuum-freeze-table-age"/>.
-    <varname>vacuum_freeze_table_age</varname> contrôle quand
-    <command>VACUUM</command> doit exécuter une passe sur l'ensemble de la table
-    afin de remplacer les vieilles valeurs de XID par <literal>FrozenXID</literal>.
-    <varname>vacuum_freeze_min_age</varname> contrôle l'âge que doit avoir une
+    <command>VACUUM</command> normally skips pages that don't have any dead row
+    versions, but those pages might still have tuples with old XID values.
+    To replace them too, a scan of the whole table is needed.
+    <xref linkend="guc-vacuum-freeze-table-age"/> controls when
+    <command>VACUUM</command> does that: a whole table sweep is forced if
+    the table hasn't been fully scanned for <varname>vacuum_freeze_table_age</varname>
+    - <varname>vacuum_freeze_min_age</varname> transactions. Setting it to 0
+    makes <command>VACUUM</command> to ignore the visibility map and always scan all
+    pages.
+   </para>
+
+   <para>
+    <xref linkend="guc-vacuum-freeze-min-age"/> contrôle l'âge que doit avoir une
     valeur XID avant qu'elle soit remplacée par <literal>FrozenXID</literal>. Les
     valeurs plus importantes de ces deux paramètres préservent l'information
     transactionnelle plus longtemps alors que les valeurs plus petites
@@ -436,8 +442,25 @@
    </para>
 
    <para>
-    Le seul inconvénient à augmenter <varname>vacuum_freeze_table_age</varname> et
-    <varname>autovacuum_freeze_max_age</varname>
+    The effective maximum for <varname>vacuum_table_age</varname> is 0.95 * 
+    <varname>autovacuum_freeze_max_age</varname>; a setting higher than that will be
+    capped to that maximum. A value higher than
+    <varname>autovacuum_freeze_max_age</varname> wouldn't make sense because an
+    anti-wraparound autovacuum would be triggered at that point anyway, and
+    the 0.95 multiplier leaves some breathing room to run a manual
+    <command>VACUUM</command> before that happens.  As a rule of thumb,
+    <command>vacuum_freeze_table_age</command> should be set to a value somewhat
+    below <varname>autovacuum_freeze_max_age</varname>, leaving enough gap so that
+    a regularly scheduled <command>VACUUM</command> or an autovacuum triggered by
+    normal delete and update activity is run in that window.  Setting it too
+    close could lead to anti-wraparound autovacuums, even though the table
+    was recently vacuumed to reclaim space, whereas lower values lead to more
+    frequent whole-table scans.
+   </para>
+
+   <para>
+    Le seul inconvénient à augmenter <varname>autovacuum_freeze_max_age</varname>
+    (and <varname>vacuum_freeze_table_age</varname> along with it)
     est que le sous-répertoire <filename>pg_clog</filename> du cluster prendre
     plus de place car il doit stocker le statut du COMMIT pour toutes les
     transactions depuis <varname>autovacuum_freeze_max_age</varname>. L'état de
@@ -489,24 +512,20 @@
 SELECT datname, age(datfrozenxid) FROM pg_database;</programlisting>
 
     La colonne <literal>age</literal> mesure le nombre de transactions à partir
-    du XID final vers le XID de transaction en cours. Après que
+    du XID final vers le XID de transaction en cours. <command>VACUUM</command> normally
+    only scans pages that have been modified since last vacuum, but
+    <structfield>relfrozenxid</structfield> can only be advanced when the whole table is
+    scanned. The whole table is scanned when <structfield>relfrozenxid</structfield> is
+    more than <varname>vacuum_freeze_table_age</varname> transactions old, if
+    <command>VACUUM FREEZE</command> command is used, or if all pages happen to
+    require vacuuming to remove dead row versions. Après que
     <command>VACUUM</command> ait parcouru la table complète
     <literal>age(relfrozenxid)</literal> devrait être un peu plus grande que
     le paramètre <varname>vacuum_freeze_min_age</varname> qui a été utilisé
     (la différence étant due au nombre de transactions démarrées depuis que
-    <command>VACUUM</command> a commencé son travail).
-   </para>
-
-   <para>
-    <command>VACUUM</command> n'examine normalement que les pages qui ont été
-    modifiées depuis le dernier vacuum, mais <structfield>relfrozenxid</structfield>
-    ne peut être avancé que suite à un parcours complet de la table. La table est
-    parcourue dans son ensemble quand <structfield>relfrozenxid</structfield>
-    est plus vieux (en transactions) que <varname>vacuum_freeze_table_age</varname>,
-    si <command>VACUUM FREEZE</command> est lancé, ou si toutes les pages
-    doivent être parcourues pour supprimer des enregistrements morts. Si aucune
-    commande <command>VACUUM</command> forçant un parcours complet de table n'est
-    exécuté jusqu'à ce que <varname>autovacuum_freeze_max_age</varname> soit
+    <command>VACUUM</command> a commencé son travail). If no whole-table-scanning
+    <command>VACUUM</command>
+    is issued on the table until  <varname>autovacuum_freeze_max_age</varname> soit
     atteint, un autovacuum sera rapidement forcé sur la table.
    </para>
 
@@ -620,7 +639,12 @@
     statistiques&nbsp;; c'est un nombre à peu près précis, mis à jour après
     chaque instruction <command>UPDATE</command> et <command>DELETE</command>
     (il est seulement à peu près précis car certaines informations pourraient
-    être perdues en cas de grosse charge).
+    être perdues en cas de grosse charge). If the <structfield>relfrozenxid</structfield>
+    value of the table is more
+    than <varname>vacuum_freeze_table_age</varname> transactions old, the whole
+    table is scanned to freeze old tuples and advance
+    <structfield>relfrozenxid</structfield>, otherwise only pages that have been modified
+    since last vacuum are vacuumed.
    </para>
 
    <para>

Modified: traduc/trunk/postgresql/manage-ag.xml
===================================================================
--- traduc/trunk/postgresql/manage-ag.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/manage-ag.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -216,6 +216,15 @@
   </para>
 
   <para>
+   Another common reason for copying <literal>template0</literal> instead
+   of <literal>template1</literal> is that new encoding and locale settings
+   can be specified when copying <literal>template0</literal>, whereas a copy
+   of <literal>template1</literal> must use the same settings it does.
+   This is because <literal>template1</literal> might contain encoding-specific
+   or locale-specific data, while <literal>template0</literal> is known not to.
+  </para>
+
+  <para>
    Pour créer une base de données à partir de
    <literal>template0</literal>, on écrit&nbsp;:
     <programlisting>CREATE DATABASE <replaceable>nom_base</replaceable> TEMPLATE template0;</programlisting>

Modified: traduc/trunk/postgresql/monitoring.xml
===================================================================
--- traduc/trunk/postgresql/monitoring.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/monitoring.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -983,8 +983,9 @@
      <function>pg_stat_get_blocks_fetched</function> moins
      <function>pg_stat_get_blocks_hit</function> donne le nombre d'appels
      lancés pour la table, l'index ou la base de données&nbsp;; mais le nombre 
-     réel de lectures physiques est habituellement moindre à cause des tampons
-     du noyau.
+     de lectures physiques réelles est habituellement moindre à cause des tampons
+     du noyau. The <literal>*_blks_read</literal>
+     statistics columns uses this subtraction, i.e., fetched minus hit.
     </para>
    </note>
 

Modified: traduc/trunk/postgresql/mvcc.xml
===================================================================
--- traduc/trunk/postgresql/mvcc.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/mvcc.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -381,18 +381,21 @@
    </para>
 
    <para>
-    Quand une transaction est dans le niveau sérialisable, une requête
+    Quand une transaction utilise le niveau sérialisable, une requête
     <command>SELECT</command> voit seulement les données validées avant le début
     de la transaction&nbsp;; elle ne voit jamais les données non validées et les
     modifications validées lors de l'exécution de la transaction par des
     transactions concurrentes (néanmoins, le <command>SELECT</command> voit
     bien les effets des mises à jour précédentes exécutées à l'intérieur de sa
     propre transaction même si elles ne sont pas encore validées). C'est
-    différent du niveau Read Commited dans la mesure où <command>SELECT</command>
-    voit une image du début de la transaction et non pas du début de la requête
-    en cours à l'intérieur de la transaction. Du coup, les commandes
-    <command>SELECT</command> successives à l'intérieur d'une même transaction
-    voient toujours les mêmes données.
+    différent du niveau Read Commited dans la mesure où <command>SELECT</command>,
+    dans une transaction sérialisable, voit une image du début de la transaction
+    et non pas du début de la requête en cours à l'intérieur de la transaction.
+    Du coup, les commandes <command>SELECT</command> successives à l'intérieur
+    d'une <emphasis>seule</emphasis> transaction voient toujours les mêmes données,
+    i.e. they never see changes made by
+    transactions that committed after its own transaction started.  (This
+    behavior can be ideal for reporting applications.)
    </para>
 
    <para>
@@ -420,7 +423,7 @@
    </para>
 
    <para>
-    Quand l'application reçoit ce message d'erreurs, elle devrait annuler la
+    Quand une application reçoit ce message d'erreurs, elle devrait annuler la
     transaction actuelle et ré-essayer la transaction complète. La seconde fois,
     la transaction voit les modifications déjà validées comme faisant partie de
     sa vue initiale de la base de données, donc il n'y a pas de conflit logique
@@ -440,7 +443,7 @@
     l'application doit être prête à tenter de nouvelles transactions lorsque des
     mises à jour concurrentes rendent impossibles de soutenir l'illusion d'une
     exécution en série. Comme le coût de la ré-exécution de transactions complexes
-    pourrait être significatif, ce mode est seulement recommandé lors de mise à
+    pourrait être significatif, le mode sérialisable est seulement recommandé lors de mise à
     jour contenant une logique suffisamment complexe pour donner de
     mauvaises réponses dans le mode de lecture validée. Plus communément, le
     mode sérialisable est nécessaire quand une transaction exécute plusieurs
@@ -480,11 +483,11 @@
       Supposons que la transaction sérialisable A traite
    <screen>SELECT SUM(valeur) FROM ma_table WHERE classe = 1;</screen>
       puis insère le résultat (30) comme <structfield>valeur</structfield> dans une
-      nouvelle ligne avec <structfield>classe</structfield> = 2. Simultanément, la
+      nouvelle ligne avec <structfield>classe</structfield> <literal>= 2</literal>. Simultanément, la
       transaction serialisable B traite
 <screen>SELECT SUM(valeur) FROM ma_table WHERE classe = 2;</screen>
       et obtient le résultat 300, qu'il insère dans une nouvelle ligne avec
-      <structfield>classe</structfield> = 1.  Donc, les deux transactions valident.
+      <structfield>classe</structfield> <literal>= 1</literal>.  Donc, les deux transactions valident.
       Aucun des comportements indiqués comme non désirables n'est survenu, pourtant
       nous avons un résultat qui n'aurait pû arriver dans tout ordre sériel.
       Si A a été exécuté avant B, B aurait trouvé la somme 330, et non pas 300.
@@ -604,7 +607,7 @@
 
 	<para>
 	 Les commandes <command>SELECT</command> acquièrent un verrou de ce
-	 mode avec les tables référencées. En général, tout requête lisant
+	 mode avec les tables référencées. En général, tout requête <emphasis>lisant</emphasis>
 	 seulement une table et ne la modifiant pas obtient ce mode de verrou.
 	</para>
        </listitem>
@@ -646,7 +649,7 @@
 	 <command>DELETE</command> et <command>INSERT</command> acquièrent ce
 	 mode de verrou sur la table cible (en plus des verrous <literal>ACCESS
 	 SHARE</literal> sur toutes les autres tables référencées). En général,
-	 ce mode de verrouillage sera acquis par toute commande modifiant des
+	 ce mode de verrouillage sera acquis par toute commande <emphasis>modifiant</emphasis> des
 	 données de la table.
 	</para>
        </listitem>
@@ -679,11 +682,10 @@
        </term>
        <listitem>
 	<para>
-	 En conflit avec les modes de verrous <literal>ROW EXCLUSIVE</literal>,
-	 <literal>SHARE UPDATE EXCLUSIVE</literal>, <literal>SHARE ROW
-	 EXCLUSIVE</literal>, <literal>EXCLUSIVE</literal> et
-	 <literal>ACCESS EXCLUSIVE</literal>. Ce mode protège une table contre
-	 les modifications simultanées des données.
+	 En conflit avec les modes de verrous sauf <literal>ACCESS
+	 SHARE</literal>, <literal>ROW SHARE</literal> et <literal>SHARE</literal>
+	 (il n'entre pas en conflit avec lui-même). Ce mode protège une table
+	 contre les modifications simultanées des données.
 	</para>
 
 	<para>
@@ -698,15 +700,12 @@
        </term>
        <listitem>
 	<para>
-	 En conflit avec les modes de verrous <literal>ROW EXCLUSIVE</literal>,
-	 <literal>SHARE UPDATE EXCLUSIVE</literal>,
-	 <literal>SHARE</literal>, <literal>SHARE ROW
-	 EXCLUSIVE</literal>, <literal>EXCLUSIVE</literal> et
-	 <literal>ACCESS EXCLUSIVE</literal>.
+	 En conflit avec tous les modes de verrous sauf <literal>ACCESS
+	 SHARE</literal> et <literal>ROW SHARE</literal>.
 	</para>
 
 	<para>
-     Ce mode de verrouillage n'est automatiquement acquis par aucune
+         Ce mode de verrouillage n'est automatiquement acquis par aucune
 	 commande <productname>PostgreSQL</productname>.
 	</para>
        </listitem>
@@ -718,12 +717,9 @@
        </term>
        <listitem>
 	<para>
-	 En conflit avec les modes de verrous <literal>ROW SHARE</literal>,
-	<literal>ROW EXCLUSIVE</literal>, <literal>SHARE UPDATE
-	 EXCLUSIVE</literal>, <literal>SHARE</literal>, <literal>SHARE
-	 ROW EXCLUSIVE</literal>, <literal>EXCLUSIVE</literal> et
-	 <literal>ACCESS EXCLUSIVE</literal>. Ce mode autorise uniquement les
-	verrous <literal>ACCESS SHARE</literal> concurrents, c'est-à-dire que seules les lectures à
+	 En conflit avec tous les modes de verrous sauf <literal>ACCESS
+	 SHARE</literal>. Ce mode autorise uniquement les verrous <literal>ACCESS
+	 SHARE</literal> concurrents, c'est-à-dire que seules les lectures à
 	partir de la table peuvent être effectuées en parallèle avec une transaction
 	contenant ce mode de verrouillage.
 	</para>
@@ -743,12 +739,7 @@
        </term>
        <listitem>
 	<para>
-	 Entre en conflit avec tous les modes (<literal>ACCESS
-	 SHARE</literal>, <literal>ROW SHARE</literal>, <literal>ROW
-	 EXCLUSIVE</literal>, <literal>SHARE UPDATE
-	 EXCLUSIVE</literal>, <literal>SHARE</literal>, <literal>SHARE
-	 ROW EXCLUSIVE</literal>, <literal>EXCLUSIVE</literal> et
-	 <literal>ACCESS EXCLUSIVE</literal>).
+	 Entre en conflit avec tous les modes.
 	 Ce mode garantit que le détenteur est la seule transaction à accéder à
 	 la table de quelque façon que ce soit.
 	</para>
@@ -1015,12 +1006,12 @@
      éviter en s'assurant que toutes les applications utilisant une base de
      données acquièrent des verrous sur des objets multiples dans un ordre
      cohérent. Dans l'exemple ci-dessus, si les deux transactions avaient mis
-     à jour les lignes dans le
-     même ordre, aucun blocage n'aurait eu lieu. Vous devez vous assurer que
-     le premier verrou acquis sur un objet dans une transaction est dans
-     le plus haut mode nécessaire pour cet objet. S'il n'est pas possible de
-     vérifier ceci à l'avance, alors les blocages doivent être gérés à
-     l'exécution en ré-essayant les transactions annulées à cause de blocage.
+     à jour les lignes dans le même ordre, aucun blocage n'aurait eu lieu.
+     Vous devez vous assurer que le premier verrou acquis sur un objet dans
+     une transaction est dans le mode le plus restrictif pour cet objet. S'il
+     n'est pas possible de vérifier ceci à l'avance, alors les blocages doivent
+     être gérés à l'exécution en ré-essayant les transactions annulées à cause
+     de blocage.
     </para>
 
     <para>
@@ -1126,10 +1117,11 @@
     transaction concurrente. En d'autres termes, si une ligne est renvoyée par
     <command>SELECT</command>, cela ne signifie pas que la ligne est toujours
     d'actualité au moment où elle est renvoyée (c'est-à-dire, quelque temps après
-    que notre requête ait commencé). La ligne pourrait avoir été
-    modifiée ou supprimée par une transaction validée entretemps. Même si la ligne est encore valide
-    <quote>maintenant</quote>, elle pourrait être modifiée ou supprimée avant que
-    notre transaction ne soit validée ou annulée.
+    que la requête <command>SELECT</command> ait commencé). La ligne pourrait
+    avoir été modifiée ou supprimée par une transaction validée entretemps.
+    Même si la ligne est encore valide <emphasis>maintenant</emphasis>, elle
+    pourrait être modifiée ou supprimée avant que notre transaction ne soit
+    validée ou annulée.
    </para>
 
    <para>

Modified: traduc/trunk/postgresql/perform.xml
===================================================================
--- traduc/trunk/postgresql/perform.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/perform.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -13,7 +13,7 @@
 
   <para>
    La performance des requêtes peut être affectée par un grand nombre d'éléments.
-   Certains peuvent être manipulés par l'utilisateur, d'autres sont
+   Certains peuvent être contrôlés par l'utilisateur, d'autres sont
    fondamentaux au concept sous-jacent du système. Ce chapitre fournit des
    conseils sur la compréhension et sur la configuration fine des performances
    de <productname>PostgreSQL</productname>.
@@ -35,7 +35,7 @@
     de requête</firstterm> pour chaque requête qu'il reçoit. Choisir le bon
     plan correspondant à la structure de la requête et aux propriétés des
     données est absolument critique pour de bonnes performances, donc le système
-    inclut un <firstterm>planificateur</firstterm> complexe qui tente de sélectionner
+    inclut un <firstterm>planificateur</firstterm> complexe qui tente de choisir
     les bons plans. Vous pouvez
     utiliser la commande <xref linkend="sql-explain" endterm="sql-explain-title"/>
     pour voir quel plan de requête le planificateur crée pour une requête particulière.
@@ -51,10 +51,8 @@
     d'accès aux tables&nbsp;: parcours séquentiel, parcours d'index et parcours
     d'index bitmap. Si la requête requiert des jointures, agrégations, tris
     ou d'autres opérations sur les lignes brites, ce seront des n&oelig;uds
-    supplémentaires <quote>au-dessus</quote> des n&oelig;uds de parcours qui
-    réaliseront ces opérations. De nouveau, il y a habituellement plus d'une
-    façon possible de réaliser ces opérations, donc différents types de
-    n&oelig;uds peuvent aussi apparaître ici. La sortie
+    supplémentaires au-dessus des n&oelig;uds de parcours pour réaliser ces
+    opérations. D'autres types de n&oelig;uds sont aussi supportés. La sortie
     d'<command>EXPLAIN</command> comprend une ligne pour chaque n&oelig;ud dans
     l'arbre du plan, montrant le type de n&oelig;ud basique avec les estimations
     de coût que le planificateur a fait pour l'exécution de ce n&oelig;ud du
@@ -85,7 +83,7 @@
    </para>
 
    <para>
-    Les nombres donnés par <command>EXPLAIN</command> sont&nbsp;:
+    Les nombres donnés par <command>EXPLAIN</command> sont (de gauche à droite)&nbsp;:
 
     <itemizedlist>
      <listitem>
@@ -137,13 +135,14 @@
     que le coût reflète seulement les éléments d'importance pour le
     planificateur. En particulier, le coût ne considère pas le temps
     dépensé dans la transmission des lignes de résultat au client, ce qui
-    pourrait être un facteur important dans le temps réellement passé&nbsp;; mais
+    pourrait être un facteur important dans le temps total passé&nbsp;; mais
     le planificateur l'ignore parce qu'il ne peut pas le changer en modifiant
     le plan (chaque plan correct sortira le même ensemble de lignes).
    </para>
 
    <para>
-    La sortie des lignes est un peu difficile car il ne s'agit
+    La valeur <literal>rows=</literal> de l'<command>EXPLAIN</command> est un
+    peu difficile car il ne s'agit
     <emphasis>pas</emphasis> du nombre de lignes traitées ou parcourues par le
     plan de n&oelig;uds. C'est habituellement moins, reflétant la sélectivité
     estimée des conditions de la clause <literal>WHERE</literal> qui sont appliquées au
@@ -168,7 +167,7 @@
 <programlisting>SELECT relpages, reltuples FROM pg_class WHERE relname = 'tenk1';</programlisting>
 
     vous trouverez que <classname>tenk1</classname> a 358 pages disque et 10000
-    lignes. Le coût estimé est de (nombre de pages lues *
+    lignes. Le coût estimé est calculé avec (nombre de pages lues *
     <xref linkend="guc-seq-page-cost"/>) + (lignes parcourues *
     <xref linkend="guc-cpu-tuple-cost"/>).  Par défaut,
     <varname>seq_page_cost</varname> vaut 1.0 et <varname>cpu_tuple_cost</varname>
@@ -177,7 +176,7 @@
    </para>
 
    <para>
-    Maintenant, modifions la requête pour ajouter une condition
+    Maintenant, modifions la requête originale pour ajouter une condition
     <literal>WHERE</literal>&nbsp;:
 
 <programlisting>EXPLAIN SELECT * FROM tenk1 WHERE unique1 &lt; 7000;
@@ -201,7 +200,8 @@
 
    <para>
     Le nombre réel de lignes que cette requête sélectionnera est 7000 mais
-    l'estimation est approximative. Si vous tentez de dupliquer cette
+    l'estimation <literal>rows=</literal> est approximative. Si vous tentez
+    de dupliquer cette
     expérience, vous obtiendrez probablement une estimation légèrement
     différente&nbsp;; de plus, elle changera après chaque commande
     <command>ANALYZE</command> parce que les statistiques produites par
@@ -237,7 +237,8 @@
 
    <para>
     Si la condition <literal>WHERE</literal> est assez sélective, le planificateur
-    pourrait basculer vers un plan de parcours d'index <quote>simple</quote>&nbsp;:
+    pourrait basculer vers un plan de parcours d'index
+    <emphasis>simple</emphasis>&nbsp;:
 
 <programlisting>EXPLAIN SELECT * FROM tenk1 WHERE unique1 &lt; 3;
 
@@ -275,7 +276,7 @@
    </para>
 
    <para>
-    S'il existe des index sur plusieurs colonnes utilisées dans la condition
+    S'il existe des index sur plusieurs colonnes référencées dans la condition
     <literal>WHERE</literal>, le planificateur pourrait choisir d'utiliser une
     combinaison AND ou OR des index&nbsp;:
 
@@ -301,7 +302,9 @@
     Maintenant, essayons de joindre deux tables, en utilisant les colonnes dont
     nous avons discuté&nbsp;:
 
-<programlisting>EXPLAIN SELECT * FROM tenk1 t1, tenk2 t2 WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
+<programlisting>EXPLAIN SELECT *
+FROM tenk1 t1, tenk2 t2
+WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
 
                                       QUERY PLAN
 --------------------------------------------------------------------------------------
@@ -346,13 +349,16 @@
 
    <para>
     Une façon de rechercher des plans différents est de forcer le planificateur
-    à oublier certaines stratégies qu'il aurait donné vainqueur en utilisant les
+    à oublier certaines stratégies qu'il aurait trouvé moins coûteuses en
+    utilisant les
     options d'activation (enable)/désactivation (disable) décrites dans la <xref
     linkend="runtime-config-query-enable"/> (c'est un outil complexe mais utile&nbsp;;
     voir aussi la <xref linkend="explicit-joins"/>).
 
 <programlisting>SET enable_nestloop = off;
-EXPLAIN SELECT * FROM tenk1 t1, tenk2 t2 WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
+EXPLAIN SELECT *
+FROM tenk1 t1, tenk2 t2
+WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
 
                                         QUERY PLAN
 ------------------------------------------------------------------------------------------
@@ -389,7 +395,9 @@
     ceux affichés par un simple <command>EXPLAIN</command>. Par exemple, nous
     pourrions obtenir un résultat comme celui-ci&nbsp;:
 
-<screen>EXPLAIN ANALYZE SELECT * FROM tenk1 t1, tenk2 t2 WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
+<screen>EXPLAIN ANALYZE SELECT *
+FROM tenk1 t1, tenk2 t2
+WHERE t1.unique1 &lt; 100 AND t1.unique2 = t2.unique2;
 
                                                             QUERY PLAN
 ----------------------------------------------------------------------------------------------------------------------------------
@@ -431,9 +439,10 @@
     indiqué par le no&oelig;ud du plan de haut niveau. Pour les commandes
     <command>INSERT</command>, <command>UPDATE</command> et <command>DELETE</command>, le temps total
     d'exécution pourrait être considérablement plus important parce qu'il inclut
-    le temps passé au traitement des lignes de résultat. Dans ces commandes, le
+    le temps passé au traitement des lignes de résultat. Pour ces commandes, le
     temps pour le n&oelig;ud du plan principal est essentiellement le temps
-    passé à calculer les nouvelles lignes et/ou l'emplacement des anciennes mais
+    passé à trouver l'emplacement des anciennes lignes et/ou à calculer les
+    nouvelles lignes mais
     il n'inclut pas le temps passé à faire des modifications.
     Le temps passé à lancer les déclencheurs, s'il y en a, est aussi en dehors
     du n&oelig;ud du plan principal et est affiché séparément pour chaque
@@ -480,7 +489,9 @@
    <structfield>relpages</structfield>. Nous pouvons la regarder avec des
    requêtes comme celle-ci&nbsp;:
 
-<screen>SELECT relname, relkind, reltuples, relpages FROM pg_class WHERE relname LIKE 'tenk1%';
+<screen>SELECT relname, relkind, reltuples, relpages
+FROM pg_class
+WHERE relname LIKE 'tenk1%';
 
        relname        | relkind | reltuples | relpages
 ----------------------+---------+-----------+----------
@@ -546,7 +557,9 @@
    pour afficher seulement les lignes des tables lisibles par l'utilisateur courant).
    Par exemple, nous pourrions lancer&nbsp;:
 
-<screen>SELECT attname, n_distinct, most_common_vals FROM pg_stats WHERE tablename = 'road';
+<screen>SELECT attname, n_distinct, most_common_vals
+FROM pg_stats
+WHERE tablename = 'road';
 
  attname | n_distinct |                                                                                                                                                                                  most_common_vals                                                                                                                                                                                   
 ---------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@@ -771,7 +784,8 @@
    </indexterm>
 
    <para>
-    Désactivez la validation automatique et faites une seule validation à la
+    Lors d'<command>INSERT</command>, désactivez la validation automatique et faites
+    une seule validation à la
     fin (en SQL, ceci signifie de lancer <command>BEGIN</command> au début et
    <command>COMMIT</command> à la fin. Quelques bibliothèques client pourraient
    le faire derrière votre dos auquel cas vous devez vous assurer que la
@@ -814,7 +828,7 @@
    <para>
     Notez que charger un grand nombre de lignes en utilisant
     <command>COPY</command> est pratiquement toujours plus rapide que d'utiliser
-    <command>INSERT</command>, même si <command>PREPARE</command> est utilisé lorsque
+    <command>INSERT</command>, même si <command>PREPARE ... INSERT</command> est utilisé lorsque
     de nombreuses insertions sont groupées en une seule transaction.
    </para>
 
@@ -825,7 +839,7 @@
     transactions ne sont pas impactés car, en cas d'erreur, les fichiers
     contenant les données nouvellement chargées seront supprimés de toute
     façon. Néanmoins, cette considération ne s'applique pas quand
-    <xref linkend="guc-archive-mode"/> est configuré, car toutes les
+    <xref linkend="guc-archive-mode"/> est activé, car toutes les
     commandes doivent écrire dans les journaux de transaction dans ce cas.
    </para>
 
@@ -835,7 +849,7 @@
    <title>Supprimez les index</title>
 
    <para>
-    Si vous chargez une table tout juste créée, la façon la plus rapide est de
+    Si vous chargez une table tout juste créée, la méthode la plus rapide est de
     créer la table, de charger en lot les données de cette table en utilisant
     <command>COPY</command>, puis de créer tous les index nécessaires pour la
     table. Créer un index sur des données déjà existantes est plus rapide que de
@@ -845,10 +859,9 @@
    <para>
     Si vous ajoutez beaucoup de données à une table existante, il pourrait être
     avantageux de supprimer l'index, de charger la table, puis de recréer l'index.
-    Bien sûr, les performances de la
-    base de données pour les autres utilisateurs pourraient être sévèrement
-    affectées tout le temps où l'index sera manquant. Vous devez aussi y penser
-    à deux fois avant de supprimer des index uniques car la vérification
+    Bien sûr, les performances de la base de données pour les autres utilisateurs
+    pourraient souffrir tout le temps où l'index sera manquant. Vous devez aussi
+    y penser à deux fois avant de supprimer des index uniques car la vérification
     d'erreur apportée par la contrainte unique sera perdue tout le temps où
     l'index est manquant.
    </para>

Modified: traduc/trunk/postgresql/pgbench.xml
===================================================================
--- traduc/trunk/postgresql/pgbench.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/pgbench.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -30,6 +30,7 @@
  <programlisting>
 transaction type: TPC-B (sort of)
 scaling factor: 10
+query mode: simple
 number of clients: 10
 number of transactions per client: 1000
 number of transactions actually processed: 10000/10000
@@ -37,7 +38,7 @@
 tps = 85.296346 (excluding connections establishing)
  </programlisting>
 
-  Les quatre premières lignes indiquent simplement certains des paramètres
+  Les cinq premières lignes indiquent simplement certains des paramètres
   les plus importants. La ligne suivant rapporte le nombre de transactions
   terminées et souhaitées (le dernier étant juste le produit du nombre
   de clients avec le nombre de transactions par client)&nbsp;; ils doivent être égaux
@@ -70,10 +71,11 @@
 
   <caution>
    <para>
-    <literal>pgbench -i</literal> crée quatre tables&nbsp;: <structname>accounts</structname>,
-    <structname>branches</structname>, <structname>history</structname> et
-    <structname>tellers</structname>, détruisant toutes tables existantes de
-    ce nom. Faites donc attention si vous possédez des tables de même nom&nbsp;!
+    <literal>pgbench -i</literal> crée quatre tables&nbsp;:
+    <structname>pgbench_accounts</structname>, <structname>pgbench_branches</structname>,
+    <structname>pgbench_history</structname> et <structname>pgbench_tellers</structname>,
+    détruisant toutes tables existantes de ce nom. Faites donc attention si vous
+    possédez des tables de même nom&nbsp;!
    </para>
   </caution>
 
@@ -82,12 +84,12 @@
    initialement ce nombre de lignes&nbsp;:
   </para>
   <programlisting>
-table           # de lignes
----------------------------
-branches        1
-tellers         10
-accounts        100000
-history         0
+table                   # de lignes
+-----------------------------------
+pgbench_branches        1
+pgbench_tellers         10
+pgbench_accounts        100000
+pgbench_history         0
   </programlisting>
   <para>
    Vous pouvez augmenter le nombre de lignes en utilisant l'option
@@ -144,14 +146,15 @@
       <entry>
        Multiplie le nombre de lignes générées par le facteur d'échelle. Par
        exemple, <literal>-s 100</literal> ajoute 10 millions de lignes dans
-       la table <structname>accounts</structname>. La valeur par défaut est 1.
+       la table <structname>pgbench_accounts</structname>. La valeur par défaut est 1.
       </entry>
      </row>
      <row>
       <entry><literal>-F</literal> <replaceable>fecteur_remplissage</replaceable></entry>
       <entry>
-       Crée les tables <structname>accounts</structname>, <structname>tellers</structname> et
-       <structname>branches</structname> avec le facteur de remplissage
+       Crée les tables <structname>pgbench_accounts</structname>,
+       <structname>pgbench_tellers</structname> et
+       <structname>pgbench_branches</structname> avec le facteur de remplissage
        indiqué. La valeur par défaut est 100.
       </entry>
      </row>
@@ -186,7 +189,8 @@
      <row>
       <entry><literal>-T</literal> <replaceable>secondes</replaceable></entry>
       <entry>
-       Durée du test en secondes. <literal>-t</literal> et
+       Run the test for this many seconds, rather than a fixed number of
+       transactions per client. <literal>-t</literal> et
        <literal>-T</literal> sont mutuellement exclusifs.
       </entry>
      </row>
@@ -215,8 +219,8 @@
      <row>
       <entry><literal>-N</literal></entry>
       <entry>
-       Ne met pas à jour les tables <structname>tellers</structname> et
-       <structname>branches</structname>. Ceci évitera les contentions des
+       Ne met pas à jour les tables <structname>pgbench_tellers</structname> et
+       <structname>pgbench_branches</structname>. Ceci évitera les contentions des
        mises à jour sur ces tables mais du coup pgbench ne supporte pas les
        transactions du style TPC-B.
       </entry>
@@ -243,8 +247,8 @@
        Aucun VACUUM n'est réalisé pendant l'exécution du test. Cette option
        est <emphasis>nécessaire</emphasis> si vous exécutez un scénario de tests
        personnalisé qui n'inclut pas les tables standards
-       <structname>accounts</structname>, <structname>branches</structname>,
-       <structname>history</structname> et <structname>tellers</structname>.
+       <structname>pgbench_accounts</structname>, <structname>pgbench_branches</structname>,
+       <structname>pgbench_history</structname> et <structname>pgbench_tellers</structname>.
       </entry>
      </row>
      <row>
@@ -252,8 +256,8 @@
       <entry>
        Exécute un VACUUM sur les quatres tables avant le test. Sans
        <literal>-n</literal> et <literal>-v</literal>, pgbench exécute un
-       VACUUM sur les seules tables <structname>tellers</structname> et
-       <structname>branches</structname>, et supprimera toutes les entrées de
+       VACUUM sur les seules tables <structname>pgbench_tellers</structname> et
+       <structname>pgbench_branches</structname>, et supprimera toutes les entrées de
        <structname>history</structname>.
       </entry>
      </row>
@@ -285,7 +289,7 @@
        Indique le facteur d'échelle spécifié en sortie de
        <application>pgbench</application>. Avec les tests internes, ce n'est
        pas nécessaire&nbsp;; le bon facteur d'échelle sera détecté en comptant
-       le nombre de lignes dans la table <structname>branches</structname>.
+       le nombre de lignes dans la table <structname>pgbench_branches</structname>.
        Néanmoins, lors de tests de performance personnalisés
        (option <literal>-f</literal>), le facteur d'échelle sera rapporté
        valant 1 sauf si cette option est utilisée.
@@ -339,11 +343,11 @@
 
   <orderedlist>
    <listitem><para><literal>BEGIN;</literal></para></listitem>
-   <listitem><para><literal>UPDATE accounts SET abalance = abalance + :delta WHERE aid = :aid;</literal></para></listitem>
-   <listitem><para><literal>SELECT abalance FROM accounts WHERE aid = :aid;</literal></para></listitem>
-   <listitem><para><literal>UPDATE tellers SET tbalance = tbalance + :delta WHERE tid = :tid;</literal></para></listitem>
-   <listitem><para><literal>UPDATE branches SET bbalance = bbalance + :delta WHERE bid = :bid;</literal></para></listitem>
-   <listitem><para><literal>INSERT INTO history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);</literal></para></listitem>
+   <listitem><para><literal>UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;</literal></para></listitem>
+   <listitem><para><literal>SELECT abalance FROM pgbench_accounts WHERE aid = :aid;</literal></para></listitem>
+   <listitem><para><literal>UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;</literal></para></listitem>
+   <listitem><para><literal>UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;</literal></para></listitem>
+   <listitem><para><literal>INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);</literal></para></listitem>
    <listitem><para><literal>END;</literal></para></listitem>
   </orderedlist>
 
@@ -431,7 +435,8 @@
      <para>
       Initialise la variable <replaceable>nom_variable</replaceable> à une
       valeur entière prise au hasard entre les limites
-      <replaceable>min</replaceable> et <replaceable>max</replaceable>.
+      <replaceable>min</replaceable> et <replaceable>max</replaceable>,
+      limites inclues.
       Chaque limite peut être soit une constante entière soit une référence
       <literal>:</literal><replaceable>nom_variable</replaceable> à une valeur
       entière.
@@ -485,11 +490,11 @@
 \setrandom tid 1 :ntellers
 \setrandom delta -5000 5000
 BEGIN;
-UPDATE accounts SET abalance = abalance + :delta WHERE aid = :aid;
-SELECT abalance FROM accounts WHERE aid = :aid;
-UPDATE tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
-UPDATE branches SET bbalance = bbalance + :delta WHERE bid = :bid;
-INSERT INTO history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
+UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
+SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
+UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
+UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;
+INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
 END;
    </programlisting>
 
@@ -562,7 +567,7 @@
    que le plus grand nombre de clients que vous souhaitez supporter
    (<literal>-c</literal>)&nbsp;; sinon vous ne ferez que mesurer la contention
    des mises à jour. Il n'y a que <literal>-s</literal> lignes dans la table
-   <structname>branches</structname>, et chaque transaction veut en mettre une
+   <structname>pgbench_branches</structname>, et chaque transaction veut en mettre une
    à jour, donc les valeurs <literal>-c</literal> supérieures à 
    <literal>-s</literal> résulteront sans doute en beaucoup de transactions
    bloquées, en attente d'autres transactions.

Modified: traduc/trunk/postgresql/pgbuffercache.xml
===================================================================
--- traduc/trunk/postgresql/pgbuffercache.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/pgbuffercache.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -148,7 +148,8 @@
                   b.reldatabase IN (0, (SELECT oid FROM pg_database
                                         WHERE datname = current_database()))
                GROUP BY c.relname
-               ORDER BY 2 DESC LIMIT 10;
+               ORDER BY 2 DESC
+               LIMIT 10;
                relname             | buffers
   ---------------------------------+---------
    tenk2                           |     345

Modified: traduc/trunk/postgresql/pgstandby.xml
===================================================================
--- traduc/trunk/postgresql/pgstandby.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/pgstandby.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -104,6 +104,41 @@
    doit être accessible aussi en écriture.
   </para>
 
+  <para>
+   There are two ways to fail over to a <quote>warm standby</quote> database server
+   when the master server fails:
+
+   <variablelist>
+    <varlistentry>
+     <term>Smart Failover</term>
+     <listitem>
+      <para>
+       In smart failover, the server is brought up after applying all WAL
+       files available in the archive. This results in zero data loss, even if
+       the standby server has fallen behind, but if there is a lot of
+       unapplied WAL it can be a long time before the standby server becomes
+       ready. To trigger a smart failover, create a trigger file containing
+       the word <literal>smart</literal>, or just create it and leave it empty.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term>Fast Failover</term>
+     <listitem>
+      <para>
+       In fast failover, the server is brought up immediately. Any WAL files
+       in the archive that have not yet been applied will be ignored, and
+       all transactions in those files are lost. To trigger a fast failover,
+       create a trigger file and write the word <literal>fast</literal> into it.
+       <application>pg_standby</application> can also be configured to execute a fast
+       failover automatically if no new WAL file appears within a defined
+       interval.
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+  </para>
+  
   <table>
    <title>Options de <application>pg_standby</application></title>
    <tgroup cols="3">
@@ -193,9 +228,8 @@
       <entry><literal>-t</literal> <replaceable>triggerfile</replaceable></entry>
       <entry>none</entry>
       <entry>
-       Spécifie un fichier trigger dont la présence cause l'arrêt de la
-       restauration et la disponibilité du serveur que le prochain journal
-       de transaction soit présent ou pas. Il est recommandé que vous
+       Spécifie un fichier trigger dont la présence cause une bascule du
+       serveur maître. Il est recommandé que vous
        utilisiez un nom de fichier structuré pour éviter la confusion sur le
        serveur à déclencher au cas où plusieurs serveurs existent sur un
        mêms système&nbsp;; par exemple
@@ -206,8 +240,8 @@
       <entry><literal>-w</literal> <replaceable>maxwaittime</replaceable></entry>
       <entry>0</entry>
       <entry>
-       Configure le nombre maximum de secondes à attendre pour obtenir le
-       prochain journal de transaction. Si le délai est écoulé, la restauration
+       Configure le nombre maximum de secondes après lequel une bascule du
+       maître sera exécuté. Si le délai est écoulé, la restauration
        s'arrête et le serveur en attente devient disponible. Une configuration
        à zéro (la valeur par défaut) fait qu'il attend indéfiniment. La valeur
        par défaut n'est pas forcément recommandée&nbsp;; voir
@@ -231,6 +265,8 @@
 archive_command = 'cp %p .../archive/%f'
 
 restore_command = 'pg_standby -l -d -s 2 -t /tmp/pgsql.trigger.5442 .../archive %f %p %r 2>>standby.log'
+
+recovery_end_command = 'rm -f /tmp/pgsql.trigger.5442'
   </programlisting>
   <para>
    alors que le répertoire d'archive est situé physiquement sur le serveur
@@ -259,11 +295,17 @@
    <listitem>
     <para>
      arrête l'attente seulement quand un fichier trigger nommé
-     <filename>/tmp/pgsql.trigger.5442</filename> apparaît
+     <filename>/tmp/pgsql.trigger.5442</filename> apparaît,
+     and perform failover according to its content
     </para>
    </listitem>
    <listitem>
     <para>
+     remove the trigger file when recovery ends
+   </para>
+   </listitem>
+   <listitem>
+    <para>
      supprime les fichiers inutiles du répertoire des archives
     </para>
    </listitem>
@@ -275,11 +317,14 @@
 archive_command = 'copy %p ...\\archive\\%f'
 
 restore_command = 'pg_standby -d -s 5 -t C:\pgsql.trigger.5442 ...\archive %f %p %r 2>>standby.log'
+
+recovery_end_command = 'del C:\pgsql.trigger.5442'
   </programlisting>
   <para>
    Notez que les antislashs doivent être doublés dans
    <literal>archive_command</literal>, mais <emphasis>pas</emphasis> dans
-   <literal>restore_command</literal>. Cela va&nbsp;:
+   <literal>restore_command</literal> or <literal>recovery_end_command</literal>.
+   Cela va&nbsp;:
   </para>
   <itemizedlist>
    <listitem>
@@ -302,11 +347,17 @@
    <listitem>
     <para>
      arrêter l'attente seulement quand un fichier trigger nommé
-     <filename>C:\pgsql.trigger.5442</filename> apparaît
+     <filename>C:\pgsql.trigger.5442</filename> apparaît,
+     and perform failover according to its content
     </para>
    </listitem>
    <listitem>
     <para>
+     remove the trigger file when recovery ends
+    </para>
+   </listitem>
+   <listitem>
+    <para>
      supprimer les fichiers inutiles du répertoire des archives
     </para>
    </listitem>
@@ -346,6 +397,12 @@
    est démandé. Cette option reste disponible en 8.3, mais est devenue
    obsolète.
   </para>
+  
+  <para>
+   <productname>PostgreSQL</productname> 8.4 provides the
+   <literal>recovery_end_command</literal> option.  Without this option
+   a leftover trigger file can be hazardous.
+  </para>
  </sect2>
 
  <sect2>

Modified: traduc/trunk/postgresql/plpgsql.xml
===================================================================
--- traduc/trunk/postgresql/plpgsql.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/plpgsql.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -233,10 +233,6 @@
      tiret (<literal>--</literal>) débute une ligne de commentaire qui s'étend
      jusqu'à la fin de la ligne. Un <literal>/*</literal> débute un bloc de commentaire
      qui s'étend jusqu'à la prochaine occurrence de <literal>*/</literal>.
-     Les blocs de commentaires ne peuvent pas être imbriqués, mais les commentaires de 
-     lignes (double tiret) peuvent être contenus dans un bloc de commentaire et un 
-     double tiret peut cacher les délimiteurs du bloc de commentaire
-     <literal>/*</literal> et <literal>*/</literal>.
     </para>
 
     <para>
@@ -1921,9 +1917,17 @@
        <para>
         <literal>EXIT</literal> peut être utilisé pour tous les types de
 	boucles&nbsp;; il n'est pas limité aux boucles non conditionnelles.
+       </para>
+
+       <para>
 	Lorsqu'il est utilisé avec un bloc <literal>BEGIN</literal>,
 	<literal>EXIT</literal> passe le contrôle à la prochaine instruction
-	après la fin du bloc.
+	après la fin du bloc. Note that a label must be used for this purpose;
+	an unlabelled <literal>EXIT</literal> is never considered to match a
+        <literal>BEGIN</literal> block.  (This is a change from
+        pre-8.4 releases of <productname>PostgreSQL</productname>, which
+        would allow an unlabelled <literal>EXIT</literal> to match
+        a <literal>BEGIN</literal> block.)
        </para>
 
        <para>
@@ -1940,11 +1944,13 @@
     EXIT WHEN nombre > 0;
 END LOOP;
 
+&lt;&lt;un_bloc&gt;&gt;
 BEGIN
     -- quelques traitements
     IF stocks > 100000 THEN
-        EXIT;  -- cause la sortie (EXIT) du bloc BEGIN
+        EXIT un_bloc;  -- cause la sortie (EXIT) du bloc BEGIN
     END IF;
+    -- les traitements ici seront ignorés quand stocks &gt; 100000
 END;
 </programlisting>
        </para>

Modified: traduc/trunk/postgresql/problems.xml
===================================================================
--- traduc/trunk/postgresql/problems.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/problems.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -147,8 +147,8 @@
       fichier qui peut être lancé via l'interface
       <application>psql</application> et qui montrera le problème.
       (Assurez-vous de ne rien avoir dans votre fichier de lancement
-      <filename>~/.psqlrc</filename>.) Un début facile pour ce fichier est
-      d'utiliser <application>pg_dump</application> pour récupérer les
+      <filename>~/.psqlrc</filename>.) Un moyen facile pour créer ce fichier
+      est d'utiliser <application>pg_dump</application> pour récupérer les
       déclarations des tables ainsi que les données nécessaires pour mettre en
       place la scène. Il ne reste plus qu'à ajouter la requête posant problème.
       Vous êtes encouragé à minimiser la taille de votre exemple mais ce n'est
@@ -270,7 +270,7 @@
       bibliothèque C, processeur, mémoires et ainsi de suite. Dans la plupart
       des cas, il est suffisant de rapporter le vendeur et la version mais ne
       supposez pas que tout le monde sait ce que <quote>Debian</quote> contient
-      ou que tout le monde utilise des Pentiums. Si vous avez des problèmes à
+      ou que tout le monde utilise des i386. Si vous avez des problèmes à
       l'installation, des informations sur l'ensemble des outils de votre
       machine (compilateurs, <command>make</command>, etc.) sont aussi
       nécessaires.

Modified: traduc/trunk/postgresql/queries.xml
===================================================================
--- traduc/trunk/postgresql/queries.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/queries.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -175,12 +175,13 @@
 <synopsis><replaceable>T1</replaceable> CROSS JOIN <replaceable>T2</replaceable></synopsis>
 
        <para>
-        Pour chaque combinaison de lignes provenant de
-        <replaceable>T1</replaceable> et <replaceable>T2</replaceable>, la
-        table dérivée contiendra une ligne consistant de toutes les colonnes de
-        <replaceable>T1</replaceable> suivies de toutes les colonnes de
-        <replaceable>T2</replaceable>. Si les tables ont respectivement N et M
-        lignes, la table jointe en aura N * M.
+        Produit tout combinaison possible de lignes provenant de
+        <replaceable>T1</replaceable> et <replaceable>T2</replaceable>
+	(c'est-à-dire un produit cartésien), avec des colonnes en sortie
+	consistant en toutes les colonnes de <replaceable>T1</replaceable>
+	suivies par toutes les colonnes de <replaceable>T2</replaceable>.
+	Si les tables ont respectivement N et M lignes, la table jointe en
+	aura N * M.
        </para>
 
        <para>
@@ -257,7 +258,9 @@
         <literal>ON (t1.a = t2.a AND t1.b = t2.b AND t1.c = t2.c)</literal> avec
         l'exception que si <literal>ON</literal> est utilisé, il y aura deux colonnes
         <literal>a</literal>, <literal>b</literal>, puis <literal>c</literal> dans le résultat, alors
-        qu'avec <literal>USING</literal>, il n'y en aurait eu qu'une de chaque.
+        qu'avec <literal>USING</literal>, il n'y en aurait eu qu'une de chaque
+        (et elles apparaîtront en premier si <command>SELECT *</command> est
+	utilisé).
        </para>
 
        <para>
@@ -277,7 +280,7 @@
 	</indexterm>
         Enfin, <literal>NATURAL</literal> est un format raccourci de
         <literal>USING</literal>&nbsp;: il forme une liste <literal>USING</literal>
-        consistant exactement des noms de colonnes apparaissant à la fois dans
+        consistant de tous les noms de colonnes apparaissant à la fois dans
         les deux tables en entrée. Comme avec <literal>USING</literal>, ces colonnes
         apparaissent seulement une fois dans la table de sortie.
        </para>
@@ -322,8 +325,8 @@
           <para>
            Tout d'abord, une jointure interne est réalisée. Puis, pour chaque
            ligne de T1 qui ne satisfait pas la condition de jointure avec
-           les lignes de T2, une ligne jointe est ajoutée avec des valeurs
-           NULL dans les colonnes de T2. Du coup, la table jointe a au moins
+           les lignes de T2, une ligne est ajoutée avec des valeurs
+           NULL dans les colonnes de T2. Du coup, la table jointe a toujours au moins
            une ligne pour chaque ligne de T1 quelque soient les conditions.
           </para>
          </listitem>
@@ -354,9 +357,9 @@
           <para>
            Tout d'abord, une jointure interne est réalisée. Puis, pour chaque
            ligne de T2 qui ne satisfait pas la condition de jointure avec les
-           lignes de T1, une ligne jointe est ajoutée avec des valeurs NULL
+           lignes de T1, une ligne est ajoutée avec des valeurs NULL
            dans les colonnes de T1. C'est l'inverse d'une jointure gauche&nbsp;:
-           la table résultante aura une ligne pour chaque ligne de T2 quelque
+           la table résultante aura toujours une ligne pour chaque ligne de T2 quelque
            soient les conditions.
           </para>
          </listitem>
@@ -369,9 +372,9 @@
           <para>
            Tout d'abord, une jointure interne est réalisée. Puis, pour chaque
            ligne de T1 qui ne satisfait pas la condition de jointure avec les
-           lignes de T2, une ligne jointe est ajoutée avec des valeurs NULL dans
+           lignes de T2, une ligne est ajoutée avec des valeurs NULL dans
            les colonnes de T2. De plus, pour chaque ligne de T2 qui ne satisfait
-           pas la condition de jointure avec les lignes de T1, une ligne jointe
+           pas la condition de jointure avec les lignes de T1, une ligne
            est ajoutée avec des valeurs NULL dans les colonnes de T1.
           </para>
          </listitem>
@@ -488,6 +491,19 @@
   2 | b   |    |
   3 | c   |    |
 (3 rows)</screen>
+     Notice that placing the restriction in the <literal>WHERE</literal> clause
+     produces a different result:
+<screen>
+<prompt>=&gt;</prompt> <userinput>SELECT * FROM t1 LEFT JOIN t2 ON t1.num = t2.num WHERE t2.value = 'xxx';</userinput>
+ num | name | num | value
+-----+------+-----+-------
+   1 | a    |   1 | xxx
+(1 row)
+</screen>
+     This is because a restriction placed in the <literal>ON</literal>
+     clause is processed <emphasis>before</emphasis> the join, while 
+     a restriction placed in the <literal>WHERE</literal> clause is processed
+     <emphasis>after</emphasis> the join.
     </para>
    </sect3>
 
@@ -575,13 +591,13 @@
     </para>
 
     <para>
-     Quand un alias est appliqué à la sortie d'une clause <literal>JOIN</literal> en
-utilisant n'importe laquelle de ces formes, l'alias cache le nom original à
-l'intérieur du <literal>JOIN</literal>. Par exemple&nbsp;:
+     Quand un alias est appliqué à la sortie d'une clause <literal>JOIN</literal>,
+     l'alias cache le nom original référencé à l'intérieur du
+     <literal>JOIN</literal>. Par exemple&nbsp;:
 <programlisting>SELECT a.* FROM ma_table AS a JOIN ta_table AS b ON ...</programlisting>
      est du SQL valide mais&nbsp;:
 <programlisting>SELECT a.* FROM (ma_table AS a JOIN ta_table AS b ON ...) AS c</programlisting>
-     n'est pas valide&nbsp;: l'alias de table <literal>a</literal> n'est pas visible
+     n'est pas valide&nbsp; l'alias de table <literal>a</literal> n'est pas visible
      en dehors de l'alias <literal>c</literal>.
     </para>
    </sect3>
@@ -643,10 +659,10 @@
     </para>
 
     <para>
-     Si une fonction de table renvoie un type de données de base, la colonne
-     de résultat est nommée comme la fonction. Si la fonction renvoie un type
-     composite, les colonnes résultantes ont le même nom que les attributs
-     individuels du type.
+     Si une fonction de table renvoie un type de données de base, la nom de la
+     colonne de résultat correspond à celui de la fonction. Si la fonction
+     renvoie un type composite, les colonnes résultantes ont le même nom que
+     les attributs individuels du type.
     </para>
 
     <para>
@@ -667,8 +683,10 @@
 SELECT * FROM recuptruc(1) AS t1;
 
 SELECT * FROM truc
-    WHERE trucsousid IN (select trucsousid from recuptruc(truc.trucid) z
-                           where z.trucid = truc.trucid);
+    WHERE trucsousid IN (
+                        SELECT trucsousid
+                        FROM recuptruc(truc.trucid) z
+                        WHERE z.trucid = truc.trucid);
 
 CREATE VIEW vue_recuptruc AS SELECT * FROM recuptruc(1);
 SELECT * FROM vue_recuptruc;</programlisting>
@@ -678,12 +696,13 @@
      Dans certains cas, il est utile de définir des fonctions de table pouvant
      renvoyer des ensembles de colonnes différentes suivant la façon dont elles
      sont appelées. Pour supporter ceci, la fonction de table est déclarée comme
-     renvoyant le pseudotype <type>record</type>. Quand une telle fonction est
+     renvoyant le pseudotype <type>record</type>, plutôt que <literal>SET
+     OF</literal>. Quand une telle fonction est
      utilisée dans une requête, la structure de ligne attendue doit être
      spécifiée dans la requête elle-même, de façon à ce que le système sache
      comment analyser et planifier la requête. Considérez cet exemple&nbsp;:
 <programlisting>SELECT *
-    FROM dblink('dbname=mabd', 'select proname, prosrc from pg_proc')
+    FROM dblink('dbname=mabd', 'SELECT proname, prosrc FROM pg_proc')
       AS t1(proname nom, prosrc text)
     WHERE proname LIKE 'bytea%';</programlisting>
      La fonction <literal>dblink</literal> exécute une requête distante (voir
@@ -717,7 +736,7 @@
     résultat de la vérification est positif (true), la ligne est conservée dans
     la table de sortie, sinon (c'est-à-dire si le résultat est faux ou nul), la
     ligne est abandonnée. La condition de recherche référence typiquement au
-    moins quelques colonnes de la table générée dans la clause
+    moins une colonne de la table générée dans la clause
     <literal>FROM</literal>&nbsp;; ceci n'est pas requis mais, dans le cas contraire,
     la clause <literal>WHERE</literal> n'aurait aucune utilité.
    </para>
@@ -734,9 +753,10 @@
 <programlisting>FROM a NATURAL JOIN b WHERE b.val &gt; 5</programlisting>
      Laquelle vous utilisez est plutôt une affaire de style. La syntaxe
      <literal>JOIN</literal> dans la clause <literal>FROM</literal> n'est probablement pas
-     aussi portable vers les autres systèmes de gestion de bases de données SQL.
+     aussi portable vers les autres systèmes de gestion de bases de données SQL,
+     même si cela fait partie du standard SQL.
      Pour les jointures externes, il n'y a pas d'autres choix&nbsp;: elles
-     doivent être faites dans la clause <literal>FROM</literal>. Une clause
+     doivent être faites dans la clause <literal>FROM</literal>. La clause
      <literal>ON</literal>/<literal>USING</literal> d'une jointure externe n'est
      <emphasis>pas</emphasis> équivalente à une condition <literal>WHERE</literal> parce
      qu'elle détermine l'ajout de lignes (pour les lignes qui ne correspondent
@@ -758,7 +778,7 @@
 SELECT ... FROM fdt WHERE c1 BETWEEN (SELECT c3 FROM t2 WHERE c2 = fdt.c1 + 10) AND 100
 
 SELECT ... FROM fdt WHERE EXISTS (SELECT c1 FROM t2 WHERE c2 &gt; fdt.c1)</programlisting>
-    <literal>fdt</literal> est la table dérivée dans la clause
+    <literal>fdt</literal> est la table utilisée dans la clause
     <literal>FROM</literal>. Les lignes qui ne correspondent pas à la condition de
     recherche de la clause <literal>WHERE</literal> sont éliminées de la table
     <literal>fdt</literal>. Notez l'utilisation de sous-requêtes scalaires en
@@ -801,7 +821,7 @@
 
    <para>
     La <xref linkend="sql-groupby" endterm="sql-groupby-title"/> est
-    utilisée pour regrouper les lignes d'une table partageant les mêmes valeurs
+    utilisée pour regrouper les lignes d'une table qui ont les mêmes valeurs
     dans toutes les colonnes précisées. L'ordre dans lequel ces colonnes sont
     indiquées importe peu. L'effet est de combiner chaque ensemble de lignes
     partageant des valeurs communes en un seul groupe de ligne représentant
@@ -836,7 +856,7 @@
 
    <para>
     En général, si une table est groupée, les colonnes qui ne sont pas
-    utilisées dans le regroupement ne peuvent pas être référencées sauf dans les
+    identiques dans le regroupement ne peuvent pas être référencées sauf dans les
     expressions d'agrégats. Voici un exemple d'expressions d'agrégat&nbsp;:
 <screen><prompt>=&gt;</prompt> <userinput>SELECT x, sum(y) FROM test1 GROUP BY x;</userinput>
  x | sum
@@ -895,7 +915,7 @@
     Si une table a été groupée en utilisant la clause <literal>GROUP
     BY</literal> mais que seuls certains groupes sont intéressants, la clause
     <literal>HAVING</literal> peut être utilisée, comme une clause
-    <literal>WHERE</literal>, pour éliminer les groupes d'une table groupée. Voici la
+    <literal>WHERE</literal>, pour éliminer les groupes du résultat. Voici la
     syntaxe&nbsp;:
 <synopsis>SELECT <replaceable>liste_selection</replaceable> FROM ... <optional>WHERE ...</optional> GROUP BY ... HAVING <replaceable>expression_booléenne</replaceable></synopsis>
     Les expressions de la clause <literal>HAVING</literal> peuvent référer à la fois
@@ -1068,10 +1088,9 @@
 
    <para>
     Les entrées de la liste de sélection peuvent se voir affecter des noms
-    pour la suite de l'exécution. Dans ce cas, la <quote>suite de
-    l'exécution</quote> est une spécification optionnelle du tri et
-    l'application client (c'est-à-dire les en-têtes de colonne pour
-    l'affichage). Par exemple&nbsp;:
+    pour la suite de l'exécution, peut-être pour référence dans une clause
+    <literal>ORDER BY</literal> ou pour affichage par l'application cliente.
+    Par exemple&nbsp;:
 <programlisting>SELECT a AS valeur, b + c AS sum FROM ...</programlisting>
    </para>
 
@@ -1107,8 +1126,8 @@
     <para>
      Le nom des colonnes en sortie est différent ici de ce qui est fait dans la
      clause <literal>FROM</literal> (voir la <xref linkend="queries-table-aliases"/>).
-     Ce tube vous permettra en fait de renommer deux fois la même colonne mais
-     le nom choisi dans la liste de sélection est celui qui sera passé.
+     Il est possible de renommer deux fois la même colonne mais le nom choisi
+     dans la liste de sélection est celui qui sera passé.
     </para>
    </note>
   </sect2>
@@ -1206,7 +1225,7 @@
    toutes les fonctionnalités discutées ici. Les opérations d'ensemble peuvent
    aussi être combinées et chaînées, par exemple
 <synopsis><replaceable>requete1</replaceable> UNION <replaceable>requete2</replaceable> UNION <replaceable>requete3</replaceable></synopsis>
-   signifie réellement
+   est exécuté ainsi&nbsp;:
 <synopsis>(<replaceable>requete1</replaceable> UNION <replaceable>requete2</replaceable>) UNION <replaceable>requete3</replaceable></synopsis>
   </para>
 
@@ -1305,11 +1324,11 @@
   <para>
    Les options <literal>NULLS FIRST</literal> et <literal>NULLS LAST</literal>
    sont utilisées pour déterminer si les valeurs NULL apparaissent avant ou
-   après les valeurs non NULL après un tri. Par défaut, les valeurs NULL sont
-   triées comme si elles avaient une valeur plus importante que les valeurs non
-   NULL&nbsp;; autrement dit <literal>NULLS FIRST</literal> est la valeur par
-   défaut pour un tri descendant, alors que <literal>NULLS LAST</literal> est
-   la valeur par défaut pour un tri ascendant.
+   après les valeurs non NULL après un tri. Le comportement par défaut est de
+   trier les valeurs NULL comme si elles étaient plus grosses que les autres
+   valeurs (<literal>NULLS FIRST</literal>), sauf dans un tri
+   <literal>DESC</literal> où <literal>NULLS LAST</literal> est le comportement
+   par défaut.
   </para>
 
   <para>
@@ -1320,14 +1339,13 @@
   </para>
 
   <para>
-   Pour une compatibilité ascendante avec la version SQL92 du standard,
-   une <replaceable>expression_tri</replaceable> peut être à la place le nom
-   ou le numéro d'une colonne en sortie, par exemple&nbsp;:
+   Une <replaceable>expression_tri</replaceable> peut aussi être à la place
+   le nom ou le numéro d'une colonne en sortie, par exemple&nbsp;:
 <programlisting>SELECT a + b AS sum, c FROM table1 ORDER BY sum;
 SELECT a, max(b) FROM table1 GROUP BY a ORDER BY 1;
 </programlisting>
    les deux triant par la première colonne en sortie. Notez qu'un nom de colonne
-   en sortie doit être unique, il ne doit pas faire partie d'une expression
+   en sortie doit être unique, il ne doit pas être utilisé dans une expression
    &mdash; par exemple, ceci n'est <emphasis>pas</emphasis> correct&nbsp;:
 <programlisting>
 SELECT a + b AS sum, c FROM table1 ORDER BY sum + c;          -- mauvais
@@ -1397,7 +1415,7 @@
 
   <para>
    L'optimiseur de requêtes prend <literal>LIMIT</literal> en compte lors de la
-   génération d'un plan de requêtes, de façon à ce que vous obteniez
+   génération des plans de requêtes, de façon à ce que vous obteniez
    différents plans (avec différents ordres de lignes) suivant ce que vous
    donnez à <literal>LIMIT</literal> et <literal>OFFSET</literal>. Du coup, utiliser des
    valeurs <literal>LIMIT</literal>/<literal>OFFSET</literal> différentes pour sélectionner
@@ -1431,7 +1449,7 @@
 <synopsis>
 VALUES ( <replaceable class="parameter">expression</replaceable> [, ...] ) [, ...]
 </synopsis>
-   Chaque liste d'expressions entre parenthèses génère une ligne dans la table.
+   Chaque liste d'expressions entre parenthèses génère une ligne dans l'expression de la table.
    Les listes doivent toutes avoir le même nombre d'éléments (c'est-à-dire une
    liste de colonnes dans la table), et les entrées correspondantes dans chaque
    liste doivent avoir des types compatibles. Le type réel affecté à chaque colonne

Modified: traduc/trunk/postgresql/query.xml
===================================================================
--- traduc/trunk/postgresql/query.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/query.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -54,9 +54,9 @@
 
 <prompt>ma_base=&gt;</prompt> <userinput>\i basics.sql</userinput></screen>
 
-    La commande <literal>\i</literal> lit les commandes depuis le
-    fichier spécifié.  L'option <literal>-s</literal> vous place dans
-    un mode pas à pas qui fait une pause avant d'envoyer chaque
+    La commande <literal>\i</literal> de <command>psql</command> lit les
+    commandes depuis le fichier spécifié. L'option <literal>-s</literal> vous
+    place dans un mode pas à pas qui fait une pause avant d'envoyer chaque
     instruction au serveur.  Les commandes utilisées dans cette section
     sont dans le fichier <filename>basics.sql</filename>.
    </para>
@@ -174,8 +174,8 @@
     <productname>PostgreSQL</productname> peut être personnalisé avec
     un nombre arbitraire de types de données définis par
     l'utilisateur. En conséquence, les noms des types ne sont pas des
-    mots-clé syntaxiques sauf lorsqu'il est requis de supporter des
-    cas particuliers dans la norme <acronym>SQL</acronym>.
+    mots-clé spéciaux dans la syntaxe sauf lorsqu'il est requis de supporter
+    des cas particuliers dans la norme <acronym>SQL</acronym>.
    </para>
 
    <para>
@@ -426,9 +426,9 @@
     consulte plusieurs lignes de la même ou de différentes tables en
     même temps est appelée requête de <firstterm>jointure</firstterm>.
     Comme exemple, supposez que vous souhaitez lister toutes les
-    entrées de la table temps avec la colonne des noms de toutes les lignes de
-    la table des villes et que vous choisissez les paires de lignes où
-    ces valeurs correspondent.
+    entrées de la table <literal>temps</literal> avec la colonne des noms de
+    toutes les lignes de la table <literal>villes</literal> et que vous
+    choisissez les paires de lignes où ces valeurs correspondent.
     <note>
      <para>
       Ceci est uniquement un modèle conceptuel.  La jointure est habituellement
@@ -460,7 +460,7 @@
        parce qu'il n'y a aucune entrée correspondante
        dans la table <classname>villes</classname> pour Hayward, donc
        la jointure ignore les lignes n'ayant pas de correspondance
-       avec la table temps.  Nous verrons rapidement comment cela
+       avec la table <literal>temps</literal>.  Nous verrons rapidement comment cela
        peut être résolu.
       </para>
      </listitem>
@@ -468,7 +468,7 @@
      <listitem>
       <para>
        Il y a deux colonnes contenant le nom des villes. C'est
-       correct car les listes de colonnes des tables
+       correct car les colonnes des tables
        <classname>temps</classname> et <classname>villes</classname>
        sont concaténées.  En pratique, ceci est indésirable, vous
        voudrez probablement lister les colonnes explicitement plutôt
@@ -485,7 +485,7 @@
     <title>Exercice&nbsp;:</title>
 
     <para>
-     Essayez de trouver la sémantique de cette requête quand la clause
+     Essayez de déterminer la sémantique de cette requête quand la clause
      <literal>WHERE</literal> est omise.
     </para>
    </formalpara>

Modified: traduc/trunk/postgresql/ref/alter_table.xml
===================================================================
--- traduc/trunk/postgresql/ref/alter_table.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/alter_table.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -462,12 +462,6 @@
         Si <literal>ONLY</literal> est indiqué, seule cette table
         est modifiée. Dans le cas contraire, la table
         et toutes ses tables filles (s'il y en a) sont modifiées.
-        <literal>*</literal> peut être ajouté au nom de la table pour indiquer que ses
-        tables descendantes doivent être modifiées. C'est le comportement par défaut dans la version actuelle.
-        Dans les versions antérieures à la
-        7.1, <literal>ONLY</literal> était le comportement par défaut.
-        Le comportement par défaut est modifiable par le paramètre
-        de configuration <xref linkend="guc-sql-inheritance"/>.
        </para>
       </listitem>
      </varlistentry>

Modified: traduc/trunk/postgresql/ref/create_database.xml
===================================================================
--- traduc/trunk/postgresql/ref/create_database.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/create_database.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -118,7 +118,7 @@
       </listitem>
      </varlistentry>
      <varlistentry>
-      <term><replaceable class="parameter">collate</replaceable></term>
+      <term><replaceable class="parameter">lc_collate</replaceable></term>
       <listitem>
        <para>
         L'ordre de tri (<literal>LC_COLLATE</literal>) à utiliser dans la nouvelle
@@ -131,7 +131,7 @@
       </listitem>
      </varlistentry>
      <varlistentry>
-      <term><replaceable class="parameter">ctype</replaceable></term>
+      <term><replaceable class="parameter">lc_ctype</replaceable></term>
       <listitem>
        <para>
         La classification du jeu de caractères (<literal>LC_CTYPE</literal>) à
@@ -215,11 +215,13 @@
 
   <para>
    L'encodage du jeu de caractère spécifié pour la nouvelle base de données
-   doit être compatible avec les paramètre LC_COLLATE et LC_CTYPE choisis.
-   Si <envar>LC_CTYPE</envar> est <literal>C</literal> (ou de la même façon
+   doit être compatible avec les paramètre de locale
+   (<literal>LC_COLLATE</literal> et <literal>LC_CTYPE</literal>).
+   Si la locale est <literal>C</literal> (ou de la même façon
    <literal>POSIX</literal>), alors tous les encodages sont autorisés. Pour
    d'autres paramètres de locale, il n'y a qu'un encodage qui fonctionnera
-   correctement. <command>CREATE DATABASE</command>
+   correctement. (Néanmoins, sur Windows, l'encodage UTF-8 peut être utilisée
+   avec toute locale.) <command>CREATE DATABASE</command>
    autorisera les superutilisateurs à spécifier l'encodage
    <literal>SQL_ASCII</literal> quelque soit le paramètre locale mais ce
    choix devient obsolète et peut occasionner un mauvais comportement des
@@ -228,13 +230,15 @@
   </para>
 
   <para>
-   Les paramètres <literal>LC_COLLATE</literal> et <literal>LC_CTYPE</literal> doivent
-   correspondre à ceux de la base modèle, excepté quand la base template0 est utilisée
-   comme modèle. La raison est que <literal>LC_COLLATE</literal> et 
-   <literal>LC_CTYPE</literal> affectent l'ordre dans les index, ce qui fait que tous les
-   index recopiés de la base modèle seraient invalides dans une nouvelle base au
-   paramétrage différent. <literal>template0</literal>, par contre, ne contient
-   aucun index pouvant être affecté par ces paramètres.
+   Les paramètres d'encodage et de locale doivent correspondre à ceux de la
+   base modèle, excepté quand la base template0 est utilisée comme modèle. La
+   raison en est que d'autres bases de données pourraient contenir des données
+   qui ne correspondent pas à l'encodage indiqué, ou pourraient contenir des
+   index dont l'ordre de tri est affecté par <literal>LC_COLLATE</literal> et
+   <literal>LC_CTYPE</literal>. Copier ces données peut résulter en une base de
+   données qui est corrompue suivant les nouveaux paramètres.
+   <literal>template0</literal>, par contre, ne contient aucun index pouvant
+   être affecté par ces paramètres.
   </para>
 
   <para>
@@ -269,8 +273,14 @@
    Créer une base de données <literal>musique</literal> qui supporte le jeu
    de caractères ISO-8859-1&nbsp;:
 
-<programlisting>CREATE DATABASE musique ENCODING 'LATIN1';
+<programlisting>CREATE DATABASE musique ENCODING 'LATIN1' TEMPLATE template0;
 </programlisting>
+
+   Dans cet exemple, la clause <literal>TEMPLATE template0</literal> sera
+   uniquement requise si l'encodage de <literal>template1</literal> n'est pas
+   ISO-8859-1. Notez que modifier l'encodage pourrait aussi nécessiter de
+   sélectionner de nouveaux paramètres pour <literal>LC_COLLATE</literal> et
+   <literal>LC_CTYPE</literal>.
   </para>
  </refsect1>
 

Modified: traduc/trunk/postgresql/ref/declare.xml
===================================================================
--- traduc/trunk/postgresql/ref/declare.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/declare.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -42,6 +42,15 @@
    <xref linkend="sql-fetch" endterm="sql-fetch-title"/>.
   </para>
 
+  <note>
+   <para>
+    Cette page décrit l'utilisation des curseurs au niveau de la commande SQL.
+    Si vous voulez utiliser des curseurs dans une fonction
+    <application>PL/pgSQL</application>, les règles sont différentes &mdash;
+    voir <xref linkend="plpgsql-cursors"/>.
+   </para>
+  </note>
+
  </refsect1>
 
  <refsect1>

Modified: traduc/trunk/postgresql/ref/fetch.xml
===================================================================
--- traduc/trunk/postgresql/ref/fetch.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/fetch.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -93,6 +93,15 @@
    avant la première ligne ou après la dernière ligne&nbsp;; dans ce cas, aucune
    ligne n'est renvoyée.
   </para>
+
+  <note>
+   <para>
+    Cette page décrit l'utilisation des curseurs au niveau de la commande SQL.
+    Si vous voulez utiliser des curseurs dans une fonction
+    <application>PL/pgSQL</application>, les règles sont différentes &mdash;
+    voir <xref linkend="plpgsql-cursors"/>.
+   </para>
+  </note>
  </refsect1>
 
  <refsect1>

Modified: traduc/trunk/postgresql/ref/grant.xml
===================================================================
--- traduc/trunk/postgresql/ref/grant.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/grant.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -423,26 +423,26 @@
    </para>
 
    <para>
-    <command>GRANT</command> et <command>REVOKE</command> peuvent aussi être exécutées par un
-    rôle qui n'est pas le propriétaire de l'objet considéré, mais est membre
-    du rôle propriétaire de l'objet, ou membre du rôle titulaire du privilège
-    <literal>WITH GRANT OPTION</literal> sur cet objet. Dans ce cas, les droits
-    sont enregistrés comme donnés par le rôle propriétaire de l'objet ou 
-	titulaire du privilège <literal>WITH GRANT OPTION</literal>.
-	Par exemple, si la table <literal>t1</literal> appartient au
-    rôle <literal>g1</literal>, dont le rôle <literal>u1</literal> est membre, alors
-    <literal>u1</literal> peut donner les droits sur <literal>t1</literal> à <literal>u2</literal>,
-    mais ces droits apparaissent octroyés directement par
-    <literal>g1</literal>. Tout autre membre du rôle <literal>g1</literal> peut les révoquer par
-	la suite.
+    <command>GRANT</command> et <command>REVOKE</command> peuvent aussi être
+    exécutées par un rôle qui n'est pas le propriétaire de l'objet considéré,
+    mais est membre du rôle propriétaire de l'objet, ou membre du rôle
+    titulaire du privilège <literal>WITH GRANT OPTION</literal> sur cet objet.
+    Dans ce cas, les droits sont enregistrés comme donnés par le rôle
+    propriétaire de l'objet ou titulaire du privilège <literal>WITH GRANT
+    OPTION</literal>. Par exemple, si la table <literal>t1</literal> appartient
+    au rôle <literal>g1</literal>, dont le rôle <literal>u1</literal> est
+    membre, alors <literal>u1</literal> peut donner les droits sur
+    <literal>t1</literal> à <literal>u2</literal>, mais ces droits apparaissent
+    octroyés directement par <literal>g1</literal>. Tout autre membre du rôle
+    <literal>g1</literal> peut les révoquer par la suite.
    </para>
 
    <para>
     Si le rôle qui exécute <command>GRANT</command> détient, de manière indirecte,
-	les droits souhaités à travers plus d'un niveau d'appartenance, il est difficile
-	de prévoir le rôle reconnu comme fournisseur du privilège. Dans de tels cas,
-	le meilleur moyen d'utiliser <command>SET ROLE</command> est de devenir le rôle
-	qui doit octroyer les droits.
+    les droits souhaités à travers plus d'un niveau d'appartenance, il est difficile
+    de prévoir le rôle reconnu comme fournisseur du privilège. Dans de tels cas,
+    le meilleur moyen d'utiliser <command>SET ROLE</command> est de devenir le rôle
+    qui doit octroyer les droits.
    </para>
 
    <para>

Modified: traduc/trunk/postgresql/ref/prepare_transaction.xml
===================================================================
--- traduc/trunk/postgresql/ref/prepare_transaction.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/prepare_transaction.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -114,27 +114,31 @@
    la vue système <link linkend="view-pg-prepared-xacts"><structname>pg_prepared_xacts</structname></link>.
   </para>
 
+  <caution>
   <para>
-   Pour des raisons de performances, il est préférable de ne pas
-   conserver trop longtemps des transactions préparées dans cet état&nbsp;;
-   cela compromet, par exemple, les possibilités de récupération de l'espace 
-   par <command>VACUUM</command>. 
-   Il ne faut pas oublier non plus qu'une telle transaction maintient
-   les verrous qu'elle a posé.
-   L'usage principal de cette fonctionnalité consiste à valider ou annuler une
-   transaction préparée dès lors qu'un gestionnaire de transactions externe
-   a pu s'assurer que les autres bases de données sont préparées à la validation.
+   Il est préférable de ne pas conserver trop longtemps des transactions
+   préparées dans cet état&nbsp;; cela compromet, par exemple, les
+   possibilités de récupération de l'espace par <command>VACUUM</command>, et
+   dans certains cas extrêmes peut causer l'arrêt de la base de données pour
+   empêcher une réutilisation d'identifiants de transactions (voir <xref
+   linkend="vacuum-for-wraparound"/>). Il ne faut pas oublier non plus qu'une
+   telle transaction maintient les verrous qu'elle a posé. L'usage principal
+   de cette fonctionnalité consiste à valider ou annuler une transaction
+   préparée dès lors qu'un gestionnaire de transactions externe a pu s'assurer
+   que les autres bases de données sont préparées à la validation.
   </para>
 
   <para>
-   Dans le cas où une utilisation importante des transactions préparées est
-   envisagé, il peut être utile d'augmenter la valeur de 
-   <xref linkend="guc-max-prepared-transactions"/> car sa valeur par défaut est assez
-   petite (pour éviter d'utiliser inutilement des ressources lorsqu'aucun usage
-   des transactions préparées n'est fait). Il est recommandé de mettre une valeur au moins identique à
-   <xref linkend="guc-max-connections"/>, de façon à ce que chaque session puisse
-   créer une transaction préparée.
+   Si vous n'avez pas configuré un gestionnaire de transactions externe pour
+   gérer les transactions préparées et vous assurer qu'elles sont fermées
+   rapidement, il est préférable de désactiver la fonctionnalité des
+   transactions préparées en configurant <xref
+   linkend="guc-max-prepared-transactions"/> à zéro. Ceci empêchera toute
+   création accidentelle de transactions préparées qui pourraient alors être
+   oubliées, ce qui finira par causer des problèmes.
   </para>
+  </caution>
+  
  </refsect1>
 
  <refsect1 id="sql-prepare-transaction-examples">

Modified: traduc/trunk/postgresql/ref/psql-ref.xml
===================================================================
--- traduc/trunk/postgresql/ref/psql-ref.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/psql-ref.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -1079,11 +1079,16 @@
 
 
       <varlistentry>
-        <term><literal>\df[S+] [ <replaceable class="parameter">motif</replaceable> ]</literal></term>
+        <term><literal>\df[antwS+] [ <replaceable class="parameter">motif</replaceable> ]</literal></term>
         <listitem>
         <para>
         Liste toutes les fonctions disponibles avec leurs arguments et les types
-	en retour. Si <replaceable class="parameter">motif</replaceable> est
+	en retour, et le type de fonction&nbsp;: «&nbsp;agg&nbsp;» (aggrégat),
+        «&nbsp;normal&nbsp;», «&nbsp;trigger&nbsp;» et «&nbsp;window&nbsp;».
+	Pour afficher seulement les fonctions d'un type spécifique, utilisez
+	les lettres correspondantes <literal>a</literal>, <literal>n</literal>,
+	<literal>t</literal>, or <literal>w</literal>. Si <replaceable
+	class="parameter">motif</replaceable> est
 	spécifié, seules les fonctions dont le nom correspond au motif sont
 	affichées. Si la forme <literal>\df+</literal> est utilisée, des
 	informations supplémentaires sur chaque fonction, dont la volatibilité,

Modified: traduc/trunk/postgresql/ref/select.xml
===================================================================
--- traduc/trunk/postgresql/ref/select.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/select.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -276,13 +276,7 @@
         Le nom (éventuellement qualifié par le nom du schéma) d'une table existante
 	ou d'une vue. Si <literal>ONLY</literal> est spécifié, seule cette table est
 	parcourue. Dans le cas contraire, la table et toutes ses
-	descendantes (s'il y en a) sont parcourues. <literal>*</literal> peut
-	être ajouté au nom de la table pour indiquer que les tables descendantes
-	doivent être parcourues mais, dans la version actuelle, c'est le
-	comportement par défaut. Dans les versions précédant la 7.1,
-	<literal>ONLY</literal> était le comportement par défaut.
-	Ce dernier peut être modifié à l'aide de l'option de configuration
-	<xref linkend="guc-sql-inheritance"/>.
+	descendantes (s'il y en a) sont parcourues.
        </para>
       </listitem>
      </varlistentry>

Modified: traduc/trunk/postgresql/ref/truncate.xml
===================================================================
--- traduc/trunk/postgresql/ref/truncate.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/ref/truncate.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -107,9 +107,10 @@
   </para>
 
   <para>
-   <command>TRUNCATE</command> nécessite un verrou d'accès exclusif sur les
-   tables qu'il traite, ce qui bloque toutes les autres opérations en parallèle
-   sur cette table. Si un accès concurrent est nécessaire, alors la commande
+   <command>TRUNCATE</command> nécessite un verrou d'accès exclusif
+   (<literal>ACCESS EXCLUSIVE</literal>) sur chaque table qu'il traite, ce qui
+   bloque toutes les autres opérations en parallèle sur cette table. Si un
+   accès concurrent est nécessaire, alors la commande
    <command>DELETE</command> doit être utilisée.
   </para>
 

Added: traduc/trunk/postgresql/release-7.4.xml
===================================================================
--- traduc/trunk/postgresql/release-7.4.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-7.4.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,4315 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <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.
+      (CVE-2009-0922)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
+      argument des codes de format inappropriés pour la donnée en argument
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de <literal>MUST</literal> (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</command>
+      (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</quote> 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</option>
+      (Ron Mayer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
+      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</command> par
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-22">
+  <title>Version 7.4.22</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-09-22</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 7.4.21.
+   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.22</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</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</literal> query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to estimate that <literal>GROUP BY</literal> 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>Version 7.4.21</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-06-12</simpara>
+  </note>
+
+  <para>
+   This release contains one serious bug fix over 7.4.20.
+   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.21</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
+      be <literal>(-42)::integer</literal> due to operator precedence rules.
+      Usually this would make little difference, but it could interact with
+      another recent patch to cause
+      <productname>PostgreSQL</productname> to reject what had been a valid
+      <command>SELECT DISTINCT</command> view query.  Since this could result in
+      <application>pg_dump</application> 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>Version 7.4.20</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>never released</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 7.4.19.
+   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.20</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</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.
+   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.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.
+    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.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>
+       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+       correctement (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
+       est corrigée (Tom)&nbsp;;
+      </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)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>CLUSTER</command> ne plante
+       plus en tentant de travailler sur les tables temporaires d'autres
+       sessions (Alvaro)&nbsp;;
+      </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é.
+    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.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</varname>, 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</varname>. 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</command> pour plus
+      d'informations.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue pouvant corrompre des données dans la façon
+      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
+      (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é.
+    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.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</literal> (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.
+    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.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.
+    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.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()</function> pour gérer des
+  correspondances se surchargeant pour la chaîne de séparation</para>
+<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
+</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>Ajustement 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.
+    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.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()</function> de <application>libpq</application>)
+     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
+     <foreignphrase>ad hoc</foreignphrase>.
+    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
+ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
+quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
+de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
+et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
+<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
+<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de 
+<literal>\'</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</literal> pour les modèles impliquant
+<literal>|</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.
+    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.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</command> (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à</quote> lors de la création d'un fichier pg_clog
+(Tom)</para></listitem>
+
+<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
+les paramètres <literal>UNKNOWN</literal> 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</function> et <function>isinf</function> 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.
+    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.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</command> 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</application> 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</command>
+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</application> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
+utilisation de <application>plperl</application> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</command> 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</filename>,
+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</filename> 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.
+    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.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</filename> (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</quote>.</para></listitem>
+
+<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
+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.
+    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 à 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</command>
+       de supprimer les chaînes <literal>ctid</literal> trop tôt, et ajout de
+       vérification supplémentaire dans le code qui suit les liens
+       <literal>ctid</literal></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()</type> 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()</type> é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</command></para>
+       <para>Le code empêchait <command>COPY TO</command> alors qu'il aurait dû interdire
+       <command>COPY FROM</command>.</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</literal></para></listitem>
+      <listitem><para>Rend <function>array_in</function> et <function>array_recv</function> 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...</literal> avec un index GiST sur la
+       colonne <literal>a</literal></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</literal>
+       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</literal> quand la variable est passée par
+       référence</para></listitem>
+      <listitem><para>Mise à jour de <filename>contrib/tsearch2</filename> 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 failles de sécurité.
+    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.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</filename>
+     crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</type>
+     alors qu'elles n'acceptent pas les arguments <type>internal</type>. Ceci casse
+     la sûreté des types pour toutes les fonctions utilisant des arguments
+     <type>internal</type>.
+    </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&nbsp;:
+
+<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</filename>, 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</quote>, alors soit <filename>tsearch2</filename>
+     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</emphasis>
+     base de données d'une installation, ceci incluant <literal>template1</literal>
+     et devant idéalement inclure aussi <literal>template0</literal>. 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</literal> peut
+     être corrigé de la même façon que les autres bases de données alors que
+     <literal>template0</literal> 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</literal> 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>Modification de <filename>contrib/tsearch2</filename> pour éviter une
+utilisation non sécurisée des résultats <type>INTERNAL</type> 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</type></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
+sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
+type <type>TIME WITH TIME ZONE</type></para></listitem>
+<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
+négatives dans les valeurs <type>INTERVAL</type></para>
+<para>Cette erreur est seulement survenue quand l'option de configuration
+<literal>--enable-integer-datetimes</literal> 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</application>,
+comme quoi il ne lançait pas assez fréquemment VACUUM sur les catalogues
+systèmes &mdash; 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>%</literal> (Neil)</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</filename> pour les nouvelles
+constructions d'OpenSSL (Marko Kreen)</para></listitem>
+<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
+</para></listitem>
+<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
+<type>RECORD</type></para></listitem>
+<listitem><para>Empêche <function>to_char(interval)</function> 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)</literal></para></listitem>
+<listitem><para>Correction de <function>array_map</function> pour appeler correctement
+les fonctions PL</para></listitem>
+<listitem><para>Correction de la vérification des droits dans <command>ALTER
+DATABASE RENAME</command></para></listitem>
+<listitem><para>Correction de <command>ALTER LANGUAGE RENAME</command></para></listitem>
+<listitem><para>Make <function>RemoveFromWaitQueue</function> 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</command></para></listitem>
+<listitem><para>Correction d'un échec de <command>CLUSTER</command> après
+<command>ALTER TABLE SET WITHOUT OIDS</command></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é.
+    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.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</command> 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</command> 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.
+    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.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</quote>, 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</application> 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</filename> 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</quote></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</literal> d'ajouter <literal>-D</literal>
+plusieurs fois</para></listitem>
+<listitem><para>Correction du problème de valeurs NULL dans les index
+GiST</para></listitem>
+<listitem><para><literal>::</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.
+    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.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.
+    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.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</literal>
+proprement dans COPY IN</para></listitem>
+<listitem><para><application>pg_dump</application> 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.
+    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.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 identifieurs 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</quote> 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.
+    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.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</type> a un mauvais label d'alignement&nbsp;; ceci est un
+     problème parce que le catalogue système <structname>pg_statistic</structname> utilise
+     des colonnes <type>anyarray</type>. 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</literal> sur des
+     colonnes doublement alignées doubles (telles que <type>float8</type> et
+     <type>timestamp</type>). 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</structname> devrait
+     être marquée comme ayant un accès public en mise à jour pour permettre
+     l'utilisation de <literal>UPDATE pg_settings</literal> comme substitut pour
+     <command>SET</command>. 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</literal>.
+    </para>
+
+    <para>
+     Si vous ne souhaitez pas lancer un initdb, la procédure suivante corrigera
+     <structname>pg_statistic</structname>. En tant que superutilisateur de la base de
+     données, faites&nbsp;:
+
+<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</structname>.
+    </para>
+
+    <para>
+     Pour corriger l'erreur <structname>pg_settings</structname>, faites simplement&nbsp;:
+<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</emphasis>
+     base de données d'une installation, ceci incluant <literal>template1</literal>, et
+     idéalement <literal>template0</literal>. 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</literal> peut être corrigé de la même façon que toute
+     autre base de données, mais corriger <literal>template0</literal> 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</literal> 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&nbsp;:
+</para>
+
+<itemizedlist>
+<listitem><para>Correction du bogue d'alignement de
+<structname>pg_statistics</structname> 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</structname></para></listitem>
+<listitem><para>Correction de quelques bogues de l'optimiseur, la plupart
+amenant des erreurs <quote>variable not found in subplan target lists</quote>
+errors (NdT&nbsp;: 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</quote> (manque de mémoire) lors d'une opération
+<command>COPY IN</command></para></listitem>
+<listitem><para>Correction de problèmes avec <command>SELECT INTO</command> /
+<command>CREATE TABLE AS</command> à partir de tables sans OID</para></listitem>
+<listitem><para>Correction de problèmes avec les tests de régression
+<filename>alter_table</filename> 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</literal>.</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</literal> à ecpg pour
+<literal>SELECT/INSERT/UPDATE/DELETE</literal> (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.
+    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.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&nbsp;:
+<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 &gt; 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&nbsp;:
+
+    <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&nbsp;; 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</varname>.
+       </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&oelig;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>
+   </para>
+  </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&nbsp;:
+
+    <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&nbsp;; 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</replaceable>)</type> aux types
+<type>varchar(<replaceable>n</replaceable>)</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</replaceable>)</type> mesure
+maintenant <replaceable>p</replaceable> 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</literal> était interprétée comme une
+date d'octobre même  si <varname>datestyle</varname> 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</varname>.
+      </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&nbsp;; 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>,
+<function>current_timestamp</function> 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</command> 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()</function> ou
+<function>current_timestamp</function>. Elles fonctionneront dans toutes les situations.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Le signe dollar (<literal>$</literal>) n'est plus permis dans les noms
+d'opérateurs. À la place, cela peut être un caractère dans les identifieurs, à
+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</replaceable></literal>) sont écrits adjacents à ceux des opérateurs.
+      </para>
+     </listitem>
+    </itemizedlist>
+   </para>
+  </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&nbsp;; efface avec
+<varname>zero_damaged_pages</varname> (Tom)</para></listitem>
+    <listitem><para>Nouveau protocole client/serveur&nbsp;: 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&nbsp;; 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>/<literal>NOT IN</literal> via des tables
+de découpages (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Amélioration des performances de <literal>NOT IN
+(<replaceable>subquery</replaceable>)</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</varname> et
+      <varname>log_min_messages</varname> (Bruce)</para>
+     <para>
+      Ceci a été fait pour que la plupart des paramètres contrôlant les
+      traces serveur commencent avec <literal>log_</literal>.
+     </para>
+    </listitem>
+
+    <listitem><para>Renommage de <varname>show_*_stats</varname> en
+      <varname>log_*_stats</varname> (Bruce)</para></listitem>
+    <listitem><para>Renommage de <varname>show_source_port</varname> en
+<varname>log_source_port</varname> (Bruce)</para></listitem>
+    <listitem><para>Renommage de <varname>hostname_lookup</varname> en
+<varname>log_hostname</varname> (Bruce)</para></listitem>
+
+    <listitem>
+     <para>Ajout de <varname>checkpoint_warning</varname> 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</literal> plutôt que
+      <literal>LOG</literal> (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>/<varname>client_min_messages</varname> contrôle
+      maintenant la sortie <varname>debug_*</varname> (Bruce)
+     </para>
+     <para>
+      Ceci centralise les informations de débogages du client de façon à 
+      ce que toutes les sorties de débogages 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>&nbsp;:
+      <literal>context</literal>, <literal>type</literal>, <literal>source</literal>,
+      <literal>min_val</literal>, <literal>max_val</literal> (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Par défaut, <varname>shared_buffers</varname> vaut 1000 et
+      <varname>max_connections</varname> 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</literal> 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</literal> 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>/<literal>OFFSET</literal>
+      (Tom)</para>
+     <para>
+      Dans les versions précédentes, <literal>LIMIT</literal>/<literal>OFFSET</literal>
+      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 identifieurs 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</literal> 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>,
+      <literal>LAST</literal>, <literal>ABSOLUTE <replaceable>n</replaceable></literal>,
+      <literal>RELATIVE <replaceable>n</replaceable></literal> 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</command> (Bruce)</para></listitem>
+
+    <listitem>
+     <para>
+      Interdit les retours chariot comme valeur de données, les
+      antislash-retour-chariot et <literal>\r</literal> sont toujours autorisés (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>Modifications sur <command>COPY</command> (binaire, <literal>\.</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>/<command>NOTIFY</command> (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>, <literal>pg_shadow</literal> et
+      <literal>pg_group</literal>.
+     </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>, <function>oidsrand</function> et
+      <function>userfntest</function> rarement utilisées (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>Ajout de la fonction <function>md5()</function> 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> <replaceable>op</replaceable> ANY/SOME/ALL
+      (<replaceable>array_expr</replaceable>)</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>,
+      <function>array_cat</function>, <function>array_lower</function>,
+      <function>array_prepend</function>, <function>array_to_string</function>,
+      <function>array_upper</function>, <function>string_to_array</function> (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</type> ou <type>text</type>
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que <type>float(<replaceable>p</replaceable>)</type> mesure la précision
+      <replaceable>p</replaceable> 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>, <literal>DMY</literal> et <literal>YMD</literal> pour initialiser
+      l'ordre du champ en entrée&nbsp;; honore <literal>US</literal> et
+      <literal>European</literal> 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>/<function>max()</function> (Tom)</para>
+     <para>
+      NaN était déjà trié après les valeurs numériques ordinaires dans la
+      plupart des cas, mais <function>min()</function> et <function>max()</function> 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</literal> ou
+      <literal>0405</literal> (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</literal> 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>\?</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</command> 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</command> 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>/<command>REVOKE</command> 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>,
+      <option>-s</option>, <option>-x</option> de pg_dump (Tom)
+     </para>
+    </listitem>
+
+    <listitem><para>Empêche pg_dump de mettre en minuscule les identifieurs
+      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>Conversion des scripts d'administration en C
+(Peter)</para></listitem>
+    <listitem><para>Bison &gt;= 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()</function> 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>, <envar>PGPORT</envar>, <envar>PGUSER</envar> (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'adddépend (Rod)</para></listitem>
+    <listitem><para>Mise à jour de spi/timetravel (Böjthe
+Zoltán)</para></listitem>
+    <listitem><para>Correction de l'option <option>-s</option> 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/trunk/postgresql/release-8.0.xml
===================================================================
--- traduc/trunk/postgresql/release-8.0.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-8.0.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,4665 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <sect1 id="release-8-0-21">
+  <title>Version 8.0.21</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-03-16</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.0.20.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.21</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+   </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.
+      (CVE-2009-0922)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
+      argument des codes de format inappropriés pour la donnée en argument
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de <literal>MUST</literal> (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-8-0-20">
+  <title>Version 8.0.20</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-02-02</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.0.19.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.20</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</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</command>
+      (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>
+      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>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
+      <application>tzdata</application> (pour le Kathmandou et des corrections
+      historiques de DST en Switzerland et à Cuba)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-0-19">
+  <title>Version 8.0.19</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-11-03</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.0.18.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.19</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+   </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</quote> 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 d'un crash possible lorsque des fonctions profondément
+      imbriquées sont appelées à partir d'un trigger (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
+      nouvellement définie est appelée comme une fonction normale (Tom)
+     </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</option>
+      (Ron Mayer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
+      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</command> par
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires vers la version
+      2008i de <application>tzdata</application> (pour les modifications légales de DST en
+      Argentine, au Brésil, à l'Île Maurice et en Syrie)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-0-18">
+  <title>Version 8.0.18</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-09-22</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.0.17.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.18</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
+    However, if you are upgrading from a version earlier than 8.0.6,
+    see the release notes for 8.0.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Widen local lock counters from 32 to 64 bits (Tom)
+     </para>
+
+     <para>
+      This responds to reports that the counters could overflow in
+      sufficiently long transactions, leading to unexpected <quote>lock is
+      already held</quote> errors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add checks in executor startup to ensure that the tuples produced by an
+      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
+      current rowtype (Tom)
+     </para>
+
+     <para>
+      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
+      cached plan, could produce this type of situation.  The check protects
+      against data corruption and/or crashes that could ensue.
+     </para>
+    </listitem>
+
+    <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</literal> query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to estimate that <literal>GROUP BY</literal> 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>
+      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
+      about the encoding of data sent to or from Tcl (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix PL/Python to work with Python 2.5
+     </para>
+
+     <para>
+      This is a back-port of fixes made during the 8.2 development cycle.
+     </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>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to properly preserve postmaster
+      command-line arguments across a <literal>restart</literal> (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008f (for
+      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
+      Pakistan, Palestine, and Paraguay)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-0-17">
+  <title>Version 8.0.17</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-06-12</simpara>
+  </note>
+
+  <para>
+   This release contains one serious bug fix over 8.0.16.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.17</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
+    However, if you are upgrading from a version earlier than 8.0.6,
+    see the release notes for 8.0.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
+      be <literal>(-42)::integer</literal> due to operator precedence rules.
+      Usually this would make little difference, but it could interact with
+      another recent patch to cause
+      <productname>PostgreSQL</productname> to reject what had been a valid
+      <command>SELECT DISTINCT</command> view query.  Since this could result in
+      <application>pg_dump</application> 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-8-0-16">
+  <title>Version 8.0.16</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>never released</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.0.15.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.16</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
+    However, if you are upgrading from a version earlier than 8.0.6,
+    see the release notes for 8.0.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
+      column is correctly checked to see if it's been initialized to all
+      non-nulls (Brendan Jurd)
+     </para>
+
+     <para>
+      Previous versions neglected to check this requirement at all.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible <command>CREATE TABLE</command> failure when inheriting the
+      <quote>same</quote> constraint from multiple parent relations that
+      inherited that constraint from a common ancestor (Tom)
+     </para>
+    </listitem>
+
+    <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>
+      Update time zone data files to <application>tzdata</application> release 2008c (for
+      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba,
+      Argentina/San_Luis, and Chile)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect result from <application>ecpg</application>'s
+      <function>PGTYPEStimestamp_sub()</function> function (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix core dump in <filename>contrib/xml2</filename>'s
+      <function>xpath_table()</function> function when the input query returns a
+      NULL value (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/xml2</filename>'s makefile to not override
+      <literal>CFLAGS</literal> (Tom)
+     </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 rare crash when an error occurs during a query using a hash index
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix input of datetime values for February 29 in years BC (Tom)
+     </para>
+
+     <para>
+      The former coding was mistaken about which years were leap years.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>unrecognized node type</quote> error in some variants of
+      <command>ALTER OWNER</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
+      number from command-line options (Itagaki Takahiro, Tom)
+     </para>
+
+     <para>
+      Previously, <literal>pg_ctl start -w</literal> could try to contact the
+      postmaster on the wrong port, leading to bogus reports of startup
+      failure.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use <option>-fwrapv</option> to defend against possible misoptimization
+      in recent <application>gcc</application> versions (Tom)
+     </para>
+
+     <para>
+      This is known to be necessary when building <productname>PostgreSQL</productname>
+      with <application>gcc</application> 4.3 or later.
+     </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-8-0-15">
+  <title>Version 8.0.15</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-01-07</simpara>
+  </note>
+
+  <para>
+   Cette version contient divers correctifs de la version 8.0.14,
+   et inclut des corrections pour des failles de sécurité importantes.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.0, voir <xref linkend="release-8-0"/>.
+  </para>
+
+  <para>
+   Ceci est la dernière version 8.0.X pour laquelle la communauté
+   <productname>PostgreSQL</productname> produira des paquets binaires pour
+   <productname>Windows</productname>.
+   Les utilisateurs Windows sont encouragés à migrer vers la version 8.2.X ou
+   ultérieures car il existe des corrections spécifiques à Windows dans la
+   version 8.2.X qui ne peuvent pas être portées aux anciennes versions. La
+   8.0.X continuera à être supportée sur les autres plateformes.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.0.15</title>
+
+   <para>
+    Les utilisateurs des versions 8.1.X n'ont pas besoin d'effectuer d'une
+    étape de sauvegarde/restauration. Néamoins, si vous mettez à jour à partir
+    d'une version précédant la version 8.0.6, voir les notes de version de la
+    8.0.6.
+   </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épâration 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.0.14 é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>
+      Mise à jour des fichiers de données de fuseaux horaires avec la version
+      2007k de <application>tzdata</application> (en particulier, les
+      modifications récentes en Argentine) (Tom)
+     </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>
+      Préserve les paramètres du tablespace et de stockage des index qui sont
+      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
+      TYPE</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que la restauration d'archive commence toujours une nouvelle
+      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
+      restauration ne soit utilisée (Simon)
+     </para>
+
+     <para>
+      Ceci évite un risque très particulier de tentative de ré-écriture sur
+      une copie archivée existante du dernier journal de transaction. Cela
+      semble plus simple et plus clair que la définition originale.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que le <command>VACUUM</command> n'utilise pas tout
+      <varname>maintenance_work_mem</varname> quand la table est trop petite
+      pour que cela soit utilisé (Alvaro)
+     </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/Perl pour continuer l'exécution quand le langage Perl
+      de la plateforme définit le type <literal>bool</literal> en tant que
+      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
+      (Tom)
+     </para>
+
+     <para>
+      Bien que ceci peut arriver partout, aucune construction standard de Perl
+      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
+     </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>
+      Correction de <application>pg_dump</application> pour qu'il gère
+      correctement les tables héritées qui ont des expressions par défaut
+      différentes de celles de leur parents (Tom)
+     </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-8-0-14">
+   <title>Version 8.0.14</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-09-17</simpara>
+   </note>
+
+   <para>
+    Cette version contient divers correctifs de la version 8.0.13.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.14</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+       correctement (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
+       est corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation est corrigée de sorte que les messages ne sont plus
+       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
+      </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)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la gestion incorrecte de certains cas limites de clés étrangères est
+       corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>CLUSTER</command> ne plante
+       plus en tentant de travailler sur les tables temporaires d'autres
+       sessions (Alvaro)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les règles de la base de données concernant les fuseaux horaires, en
+       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
+       à jour (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
+       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
+       avoir des incompatibilités d'encodage (Tom)&nbsp;;
+      </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-8-0-13">
+   <title>Version 8.0.13</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-04-23</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.12, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.13</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Supporte le placement explicite du schéma des tables temporaires dans
+      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
+      d'informations.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue pouvant corrompre des données dans la façon
+      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
+      (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>
+
+     <listitem>
+     <para>
+      Correction des spécifications des fuseaux horaires POSIX
+      pour suivre les nouvelles règles USA DST (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-0-12">
+   <title>Version 8.0.12</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-07</simpara>
+   </note>
+
+   <para>
+    Cette version contient une correction de la 8.0.11.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.12</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Suppression d'une vérification trop restrictive pour la longueur du type
+      dans les contraintes et les index fonctionnels (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-0-11">
+   <title>Version 8.0.11</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-05</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.10, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.11</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </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</literal> (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-8-0-10">
+   <title>Version 8.0.10</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-01-08</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.9.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.10</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </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>
+        Correction d'un cas rare de tronquage d'une grosse relation à la limite
+	du Go par <command>VACUUM</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Corrections de bogues affectant les index hash de plusieurs Go (Tom)
+       </para>
+      </listitem>
+
+     <listitem>
+      <para>
+       Correction d'un possible blocage mortel dans la gestion des signaux sous
+       Windows (Teodor)
+      </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>
+       Correction d'une perte mémoire dans ecpg lors d'une connexion (Michael)
+      </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>
+
+     <listitem>
+      <para>
+       Mise à jour de la base des fuseaux horaires
+      </para>
+
+      <para>
+       Ceci affecte les règles de changements d'heure en Australie et au Canada.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-0-9">
+   <title>Version 8.0.9</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-10-16</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.8.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.9</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Correction d'un arrêt brutal lors du référencement de valeurs
+  de <literal>NEW</literal> dans les expressions WHERE de règle (Tom)</para></listitem>
+<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 d'une mauvaise gestion des déclencheurs après quand
+  une requête contient une fonction SQL renvoyant plusieurs lignes
+  (Tom)</para></listitem>
+<listitem><para>Correction de <command>ALTER TABLE ... TYPE</command> pour qu'il vérifie
+<literal>NOT NULL</literal> dans une clause <literal>USING</literal> (Tom)</para></listitem>
+<listitem><para>Correction de <function>string_to_array()</function> pour gérer des
+  correspondances se surchargeant pour la chaîne de séparation</para>
+<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
+</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>Nombreuses corrections de fiabilité dans <application>ecpg</application> (Joachim
+Wieland)</para></listitem>
+<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
+<listitem><para>Correction de l'instabilité de la récupération de statistiques
+  sur Win32 (Tom, Andrew)</para></listitem>
+<listitem><para>Corrections pour les compilateurs <systemitem class="osname">AIX</systemitem> et
+<productname>Intel</productname> (Tom)</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-0-8">
+   <title>Version 8.0.8</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-05-23</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.7 incluant des
+    correctifs pour des problèmes de sécurité extrêmement sérieux.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.8</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </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()</function> de <application>libpq</application>)
+     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
+     <foreignphrase>ad hoc</foreignphrase>.
+    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
+ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
+quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
+de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
+et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
+<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
+<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de 
+<literal>\'</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</literal> pour les modèles impliquant
+<literal>|</literal> (Tom)</para></listitem>
+
+<listitem><para>Correction de <command>SELECT INTO</command> et <command>CREATE TABLE AS</command>
+pour créer des tables dans le tablespace par défaut, et non pas dans le répertoire
+base (Kris Jurka)</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>
+
+<listitem><para>Correction d'un problème pour la demande du mot de passe sur
+certains systèmes Win32 (Robert Kinberg)</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+  <sect1 id="release-8-0-7">
+   <title>Version 8.0.7</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-02-14</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.6.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.7</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
+SESSION AUTHORIZATION</command> (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 8.0.4, 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à</quote> lors de la création d'un fichier pg_clog
+(Tom)</para></listitem>
+
+<listitem><para>Correction des cas pouvant amener des arrêts brutaux si un
+message d'invalidation de cache arrive juste au mauvais moment (Tom)</para></listitem>
+
+<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
+les paramètres <literal>UNKNOWN</literal> dans les instructions préparées
+(Neil)</para></listitem>
+
+<listitem><para>S'assure que <command>ALTER COLUMN TYPE</command> traitera les
+contraintes <literal>FOREIGN KEY</literal>, <literal>UNIQUE</literal> et
+<literal>PRIMARY KEY</literal> dans le bon ordre (Nakano Yoshihisa)</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>Autorise <application>pg_restore</application> à continuer tranquillement
+après un échec de <command>COPY</command>&nbsp;; auparavant, il essayait de traiter
+les données restantes du <command>COPY</command> comme des commandes SQL (Stephen
+Frost)</para></listitem>
+
+<listitem><para>Correction du bogue <literal>unregister</literal> de
+<application>pg_ctl</application> quand le répertoire des données n'est pas
+spécifié (Magnus)</para></listitem>
+
+<listitem><para>Correction du bogue sur <application>ecpg</application> pour AMD64 et
+PPC (Neil)</para></listitem>
+
+<listitem><para>Récupère proprement si une erreur survient lors du passage
+des arguments en <application>PL/python</application> (Neil)</para></listitem>
+
+<listitem><para>Correction de la gestion des locales par <application>PL/perl</application>
+sur Win32 pour correspondre au moteur (Andrew)</para></listitem>
+
+<listitem><para>Correction d'un bogue quand <literal>log_min_messages</literal> est
+configuré à <literal>DEBUG3</literal> ou plus bas dans le fichier <filename>postgresql.conf</filename>
+sur Win32 (Bruce)</para></listitem>
+
+<listitem><para>Correction l'option <literal>-L</literal> de spécification du chemin
+des bibliothèques de <application>pgxs</application> pour Win32, Cygwin, OS X, AIX
+(Bruce)</para></listitem>
+
+<listitem><para>Vérification de l'activation de SID lors de la vérification
+des droits administrateur sous Win32 (Magnus)</para></listitem>
+
+<listitem><para>Rejette proprement les données de type date en dehors de la
+plage (Kris Jurka)</para></listitem>
+
+<listitem><para>Correction de portabilité pour tester la présence de
+<function>finite</function> et <function>isinf</function> lors du configure (Tom)</para></listitem>
+
+
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-0-6">
+   <title>Version 8.0.6</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-01-09</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la version 8.0.5.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.6</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
+     De plus, vous aurez sûrement besoin de lancer la commande
+     <command>REINDEX</command> 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</application> décrits ci-dessous.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un code Windows de façon à ce que postmaster
+continue au lieu de quitter s'il n'y a plus de place dans
+ShmemBackendArray (Magnus)</para>
+<para>Le comportement précédent pouvait amener à une situation de déni de
+service si trop de demandes de connexion arrivaient en même temps. Ceci
+s'applique <emphasis>seulement</emphasis> au port Windows.</para></listitem>
+
+<listitem><para>Correction d'un bogue introduit dans la version 8.0 permettant à
+ReadBuffer de renvoyer une page déjà utilisée comme nouvelle, causant
+potentiellement des pertes de données récemment validées (Tom)</para></listitem>
+
+<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</command>
+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</application> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
+utilisation de <application>plperl</application> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</command> pour corriger des
+index existant sur des colonnes de type texte si cela vous arrivait.
+</para></listitem>
+
+<listitem><para>Permet un déplacement plus simple des répertoires d'installation
+(Tom)</para>
+<para>Les anciennes versions supportaient seulement un déplacement si tous les
+chemins d'installation étaient identiques sauf pour le dernier composant.
+</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>Quelques corrections pour les fonctions renvoyant <literal>RECORD</literal>
+(Tom) </para></listitem>
+
+<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</filename>,
+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</filename> 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-8-0-5">
+   <title>Version 8.0.5</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2005-12-12</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections sur la 8.0.4.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.5</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
+    </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>Correction des problèmes du processus d'écriture en tâche de
+fond après avoir récupéré des erreurs (Tom)</para>
+<para>
+Le processus d'écriture en tâche de fond was found to leak buffer pins after write errors.
+Bien que non fatal en soi, ceci pourrait amener des blocages mystérieux sur des
+commandes VACUUM ultérieures.
+</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</filename> (Teodor)</para></listitem>
+
+<listitem><para>Corrections de compilation sur AIX et HPUX (Tom)</para></listitem>
+
+<listitem><para>Tente de nouveau les lectures et écritures de fichiers après
+une erreur NO_SYSTEM_RESOURCES sous Windows (Qingqing Zhou)</para></listitem>
+
+<listitem><para>Correction d'un échec intermittent quand <varname>log_line_prefix</varname>
+inclut <literal>%i</literal></para></listitem>
+
+<listitem><para>Correction du problème de performance de <application>psql</application>
+avec les scripts longs sur Windows (Merlin Moncure)</para></listitem>
+
+<listitem><para>Correction de mises à jour manquantes du fichier
+<filename>pg_group</filename></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</quote>.</para></listitem>
+
+<listitem><para>Retardait l'initialisation du fuseau horaire jusqu'à la création
+du fichier <filename>postmaster.pid</filename></para>
+<para>Ceci évite la confusion des scripts de démarrage qui s'attendent à voir
+apparaître rapidement le fichier pid.</para></listitem>
+
+<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
+quand une table a été supprimée</para></listitem>
+
+<listitem><para>Correction de problèmes avec des références de lignes entières
+(<literal>foo.*</literal>) pour des résultats de sous-requêtes</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+ 
+  <sect1 id="release-8-0-4">
+   <title>Version 8.0.4</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2005-10-04</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.0.3.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.4</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Fix error that allowed <command>VACUUM</command> to remove
+<literal>ctid</literal> chains too soon, and add more checking in code that follows
+<literal>ctid</literal> links</para>
+<para>This fixes a long-standing problem that could cause crashes in very rare
+circumstances.</para></listitem>
+<listitem><para>Fix <type>CHAR()</type> to properly pad spaces to the specified
+length when using a multiple-byte character set (Yoshiyuki Asaba)</para>
+<para>In prior releases, the padding of <type>CHAR()</type> was incorrect
+because it only padded to the specified number of bytes without
+considering how many characters were stored.</para></listitem>
+<listitem><para>Force a checkpoint before committing <command>CREATE
+DATABASE</command></para>
+<para>This should fix recent reports of <quote>index is not a btree</quote>
+failures when a crash occurs shortly after <command>CREATE
+DATABASE</command>.</para></listitem>
+<listitem><para>Fix the sense of the test for read-only transaction
+in <command>COPY</command></para>
+<para>The code formerly prohibited <command>COPY TO</command>, where it should
+prohibit <command>COPY FROM</command>.
+</para></listitem>
+<listitem><para>Handle consecutive embedded newlines in <command>COPY</command>
+CSV-mode input</para></listitem>
+<listitem><para>Fix <function>date_trunc(week)</function> for dates near year
+end</para></listitem>
+<listitem><para>Fix planning problem with outer-join ON clauses that reference
+only the inner-side relation</para></listitem>
+<listitem><para>Further fixes for <literal>x FULL JOIN y ON true</literal> corner
+cases</para></listitem>
+<listitem><para>Fix overenthusiastic optimization of <literal>x IN (SELECT
+DISTINCT ...)</literal> and related cases</para></listitem>
+<listitem><para>Fix mis-planning of queries with small <literal>LIMIT</literal>
+values due to poorly thought out <quote>fuzzy</quote> cost
+comparison</para></listitem>
+<listitem><para>Make <function>array_in</function> and <function>array_recv</function> more
+paranoid about validating their OID parameter</para></listitem>
+<listitem><para>Fix missing rows in queries like <literal>UPDATE a=... WHERE
+a...</literal> with GiST index on column <literal>a</literal></para></listitem>
+<listitem><para>Improve robustness of datetime parsing</para></listitem>
+<listitem><para>Improve checking for partially-written WAL
+pages</para></listitem>
+<listitem><para>Improve robustness of signal handling when SSL is
+enabled</para></listitem>
+<listitem><para>Improve MIPS and M68K spinlock code</para></listitem>
+<listitem><para>Don't try to open more than <literal>max_files_per_process</literal>
+files during postmaster startup</para></listitem>
+<listitem><para>Various memory leakage fixes</para></listitem>
+<listitem><para>Various portability improvements</para></listitem>
+<listitem><para>Update timezone data files</para></listitem>
+<listitem><para>Improve handling of DLL load failures on Windows</para></listitem>
+<listitem><para>Improve random-number generation on Windows</para></listitem>
+<listitem><para>Make <literal>psql -f filename</literal> return a nonzero exit code
+when opening the file fails</para></listitem>
+<listitem><para>Change <application>pg_dump</application> to handle inherited check
+constraints more reliably</para></listitem>
+<listitem><para>Fix password prompting in <application>pg_restore</application> on
+Windows</para></listitem>
+<listitem><para>Fix PL/PgSQL to handle <literal>var := var</literal> correctly when
+the variable is of pass-by-reference type</para></listitem>
+<listitem><para>Fix PL/Perl <literal>%_SHARED</literal> so it's actually
+shared</para></listitem>
+<listitem><para>Fix <filename>contrib/pg_autovacuum</filename> to allow sleep
+intervals over 2000 sec</para></listitem>
+<listitem><para>Update <filename>contrib/tsearch2</filename> to use current Snowball
+code</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+ 
+  <sect1 id="release-8-0-3">
+   <title>Version 8.0.3</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2005-05-09</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections sur la 8.0.2, dont des
+    correctifs sur des failles de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.3</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.0.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 8.0.X. Une séquence
+     sauvegarde/initdb/restauration utilisant le initdb de la 8.0.3 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</filename>
+     crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</type>
+     alors qu'elles n'acceptent pas les arguments <type>internal</type>. Ceci casse
+     la sûreté des types pour toutes les fonctions utilisant des arguments
+     <type>internal</type>.
+    </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 même procédure de
+     réparation manuelle que celle montrée dans les <link
+     linkend="release-7-4-8">notes de la version 7.4.8</link>.
+    </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>Modification de <filename>contrib/tsearch2</filename> pour éviter une
+utilisation non sécurisée des résultats <type>INTERNAL</type> de la fonction</para></listitem>
+<listitem><para>Prévention contre un second paramètre incorrect pour
+<function>record_out</function></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</type></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
+sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
+type <type>TIME WITH TIME ZONE</type></para></listitem>
+<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
+négatives dans les valeurs <type>INTERVAL</type></para>
+<para>Cette erreur est seulement survenue quand l'option de configuration
+<literal>--enable-integer-datetimes</literal> avait été utilisée.
+</para></listitem>
+<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
+noms des déclencheurs contenant <literal>%</literal> (Neil)</para></listitem>
+<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
+</para></listitem>
+<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
+<type>RECORD</type></para></listitem>
+<listitem><para>Empêche un arrêt brutal sur <literal>COALESCE(NULL,NULL)</literal></para></listitem>
+<listitem><para>Correction du makefile de Borland pour libpq</para></listitem>
+<listitem><para>Correction de <filename>contrib/btree_gist</filename> pour le type
+<type>timetz</type> (Teodor)</para></listitem>
+<listitem><para>Fait que <command>pg_ctl</command> vérifie le PID trouvé dans
+<filename>postmaster.pid</filename> pour voir s'il s'agit toujours d'un processus en
+vie</para></listitem>
+<listitem><para>Correction des problèmes de <command>pg_dump</command>/<command>pg_restore</command>
+causés par l'ajout de tampons horaires dans les sauvegardes</para></listitem>
+<listitem><para>Correction de l'interaction entre les curseurs et le lancement de
+déclencheurs déferrés lors de validation de transaction</para></listitem>
+<listitem><para>Correction d'une perte mémoire dans les fonctions SQL renvoyant
+des types de données passés par référence</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+ <sect1 id="release-8-0-2">
+   <title>Version 8.0.2</title>
+
+   <note>
+     <title>Date de sortie</title>
+     <simpara>2005-04-07</simpara>
+   </note>
+
+   <para>
+     Cette version contient quelques corrections de la 8.0.1.
+     Pour plus d'informations sur les nouvelles fonctionnalités de la
+     version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+     <title>Migration vers la version 8.0.2</title>
+
+     <para>
+       Une sauvegarde/restauration n'est pas requise pour ceux utilisant les
+       versions 8.0.*. Cette version met à jour le numéro de version majeure
+       des bibliothèques <productname>PostgreSQL</productname>, donc il pourrait
+       être nécessaire de re-lier certaines applications utilisateurs si elles
+       n'arrivent pas à trouver la bonne bibliothèque partagée.
+     </para>
+   </sect2>
+
+   <sect2>
+     <title>Modifications</title>
+
+     <itemizedlist>
+       <listitem><para>Incrémentation du numéro de version majeure pour toutes
+         les bibliothèques d'interface (Bruce)</para>
+         <para>
+           Ceci aurait dû être fait depuis la 8.0.0. C'est requis pour que les
+	   versions 7.4.X des applications clientes de PostgreSQL, comme
+	   <application>psql</application>, puissent être utilisées sur la même machine
+	   que les applications 8.0.X. Ceci pourrait nécessiter une nouvelle
+	   édition des liens des applications clientes utilisant ces
+	   bibliothèques.
+       </para></listitem>
+       <listitem><para>Ajout du paramètre <varname>wal_sync_method</varname>, uniquement
+	 sous Windows, pour<option>fsync_writethrough</option> (Magnus, Bruce)</para>
+         <para>
+	   Ce paramètre fait que <productname>PostgreSQL</productname> écrit
+	   les WAL via le cache d'écriture du disque. Ce comportement était
+	   appelé auparavant <option>fsync</option> mais a été renommé car il agit
+	   complètement différemment de <option>fsync</option> sur les autres
+	   plateformes.
+	 </para>
+       </listitem>
+       <listitem><para>Active la valeur <option>open_datasync</option> du paramètre
+	 <varname>wal_sync_method</varname> sur Windows et le prend par défaut sur
+	 cette plateforme (Magnus, Bruce)</para>
+         <para>
+	   Comme la valeur par défaut n'est plus <option>fsync_writethrough</option>,
+	   une perte de données est possible lors d'une coupure de courant si
+	   le disque a activé le cache en écriture. Pour désactiver ce cache sur
+	   Windows, à partir du <application>Device Manager</application>, choisissez les
+	   propriétés du disque, puis <literal>Policies</literal>.
+	 </para>
+       </listitem>
+       <listitem><para>Le nouvel algorithme de gestion du cache <acronym>2Q</acronym>
+	 remplace <acronym>ARC</acronym> (Tom)</para>
+	 <para>
+	   Ceci a été accompli pour éviter un brevet logiciel en attente sur
+	   <acronym>ARC</acronym>. Le code <acronym>2Q</acronym> pourrait être un peu plus
+	   lent qu'<acronym>ARC</acronym> pour certains charges de travail. Un meilleur
+	   algorithme de gestion de cache apparaîtra pour la version 8.1.
+	 </para></listitem>
+       <listitem><para>Ajustements du planificateur pour améliorer le comportement
+	 sur les tables nouvellement créées (Tom)</para></listitem>
+       <listitem><para>Autorise plpgsql d'affecter un élément initialement
+	 <literal>NULL</literal> à un tableau (Tom)</para>
+	 <para>
+	   Auparavant, le tableau resterait <literal>NULL</literal> mais maintenant, il
+	   devient un tableau à un seul élément. Le moteur SQL principal a été
+	   modifié pour gérer un <command>UPDATE</command> d'une valeur de tableau NULL
+	   de cette façon dans la version 8.0 mais le cas similaire dans plpgsql
+	   a été oublié.
+	 </para>
+       </listitem>
+       <listitem><para>Conversion de <literal>\r\n</literal> et <literal>\r</literal> en <literal>\n</literal>
+	 dans le corps des fonctions en plpython (Michael Fuhr)</para>
+	 <para>
+	   Ceci empêche les erreurs de syntaxe quand le code plpython a été
+	   écrit sur un client Windows ou Mac.
+	 </para>
+       </listitem>
+       <listitem><para>Autorise les curseurs SPI pour gérer les commandes outils
+	 qui renvoient des lignes comme <command>EXPLAIN</command> (Tom)</para></listitem>
+       <listitem><para>Correction de l'échec de <command>CLUSTER</command> après
+	 <command>ALTER TABLE SET WITHOUT OIDS</command> (Tom)</para></listitem>
+       <listitem><para>Réduction de l'utilisation de la mémoire d'<command>ALTER
+	 TABLE ADD COLUMN</command> (Neil)</para></listitem>
+       <listitem><para>Correction d'<command>ALTER LANGUAGE RENAME</command> (Tom)</para></listitem>
+       <listitem><para>Documentation des options <literal>register</literal> et
+	 <literal>unregister</literal> de <application>pg_ctl</application> spécifiques à Windows
+	 (Magnus)</para></listitem>
+       <listitem><para>S'assure que les opérations effectuées lors de l'arrêt
+	 du moteur sont comptées par le récupérateur de statistiques</para>
+	 <para>
+	   Ceci devrait résoudre les rapports de <application>pg_autovacuum</application>
+	   ne nettoyant pas assez fréquemment les catalogues systèmes &mdash; il
+	   n'était pas tenu au courant des suppressions de catalogues causées
+	   par la suppression de table temporaire lors de l'arrêt du moteur.
+	 </para></listitem>
+       <listitem><para>Modification de la valeur par défaut, sous Windows, pour
+	 le paramètre de configuration <varname>log_destination</varname> par
+	 <option>eventlog</option> (Magnus)</para>
+	 <para>
+	   Par défaut, un serveur fonctionnant sous Windows enverra maintenant
+	   la sortie des traces au gestionnaire des traces de Windows plutôt
+	   que sur la sortie standard des erreurs.
+	 </para></listitem>
+       <listitem><para>Rend l'authentification Kerberos fonctionnel sur Windows
+	 (Magnus)</para></listitem>
+       <listitem><para>Autorise <command>ALTER DATABASE RENAME</command> pour les
+	 superutilisateurs qui n'ont pas le droit CREATEDB (Tom)</para></listitem>
+       <listitem><para>Modification des entrées WAL pour les commandes
+	 <command>CREATE</command> et <command>DROP DATABASE</command> pour ne pas spécifier
+	 les chemins absolus (Tom)</para>
+	 <para>Ceci permet la récupération à un instant sur une machine différente
+	   avec des emplacements de bases de données pouvant être différents. Notez
+	   que <command>CREATE TABLESPACE</command> est toujours hasardeux dans certaines
+	   situations.</para></listitem>
+       <listitem><para>Correction d'un arrêt brutal suivant l'arrêt d'un serveur
+	 avec une transaction ouverte qui a créé une table et ouvert un curseur
+	 sur elle (Tom)</para></listitem>
+       <listitem><para>Correction de <function>array_map()</function> pour qu'il puisse
+	 appeler des fonctions de langages de procédures (Tom)</para></listitem>
+       <listitem><para>Plusieurs corrections pour <filename>contrib/tsearch2</filename>
+	 et <filename>contrib/btree_gist</filename> (Teodor)</para></listitem>
+       <listitem><para>Correction de quelques arrêts brutaux de certaines
+	 fonctions de <filename>contrib/pgcrypto</filename> concernant certaines
+	 plateformes (Marko Kreen)</para></listitem>
+       <listitem><para>Correction de <filename>contrib/intagg</filename> pour les
+	 plateformes 64 bits (Tom)</para></listitem>
+       <listitem><para>Correction de bogues d'ecpg dans l'analyse d'instructions
+	 <command>CREATE</command> (Michael)</para></listitem>
+       <listitem><para>Contournement d'un bogue de gcc sur powerpc et amd64 posant
+	 des problèmes sur ecpg (Christof Petig)</para></listitem>
+       <listitem><para>N'utilise pas les versions <function>upper()</function>,
+	 <function>lower()</function> et <function>initcap()</function> prenant compte de la
+	 locale utilisée lorsque la locale est <literal>C</literal> (Bruce)</para>
+	 <para>
+	   Ceci permet à ces fonctions de fonctionner sur les plateformes qui
+	   génèrent des erreurs pour les données non 7 bits lorsque la locale
+	   est <literal>C</literal>.</para></listitem>
+       <listitem><para>Correction de <function>quote_ident()</function> pour mettre entre
+	 guillemets les noms qui correspondent à des mots clés (Tom)</para></listitem>
+       <listitem><para>Correction de <function>to_date()</function> pour correspondre
+	 raisonnablement quand les champs <literal>CC</literal> et <literal>YY</literal> sont
+	 utilisées tous les deux (Karel)</para></listitem>
+       <listitem><para>Empêche <function>to_char(interval)</function> d'échouer quand
+	 lui est passée une intervalle de zéro mois (Tom)</para></listitem>
+       <listitem><para>Correction du mauvais mois renvoyé par
+	 <function>date_trunc('week')</function> (Bruce)</para>
+	 <para>
+	   <function>date_trunc('week')</function> a renvoyé la mauvaise année pour les
+	   quelques premiers jours de Janvier pour certaines années.
+	 </para></listitem>
+       <listitem><para>Utilise la longueur par défaut du masque pour la classe
+	 <literal>D</literal> d'adresses pour les types de données <type>INET</type> (Tom)
+	 </para></listitem>
+</itemizedlist>
+
+</sect2>
+</sect1>
+
+  <sect1 id="release-8-0-1">
+   <title>Version 8.0.1</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2005-01-31</simpara>
+   </note>
+
+   <para>
+    Cette version contient une grande variété de corrections provenant de la
+    version 8.0.0, incluant plusieurs problèmes relatifs sur la sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.0, voir <xref linkend="release-8-0"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.0.1</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requis pour ceux utilisant la
+     version 8.0.0.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+     <itemizedlist>
+       <listitem><para>Interdiction de <command>LOAD</command> aux utilisateurs
+	 standards</para>
+	 <para>
+	   Sur les plateformes qui exécutent 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</command> peut être
+	   utilisé pour que le serveur exécute un code arbitraire. Merci à
+	   NGS Software pour nous l'avoir indiqué.</para></listitem>
+       <listitem><para>Vérification comme le créateur d'une fonction d'agrégat
+	 a le droit d'exécutr les fonctions de transition spécifiées</para>
+         <para>
+	   Cet aperçu est rendu possible pour dépasser un déni de droit sur EXECUTE
+	   pour une fonction.</para></listitem>
+       <listitem><para>Correctif de sécurité et de problèmes pour les 64 bits
+	 dans contrib/intagg</para></listitem>
+       <listitem><para>Ajout du marquage STRICT nécessaire pour certaines
+	 fonctions de contrib functions (Kris Jurka)</para></listitem>
+       <listitem><para>Évite l'écrasement de tampon quand la déclaration de
+	 curseur de plpgsql a trop de paramètres (Neil)</para></listitem>
+       <listitem><para>Fait que <command>ALTER TABLE ADD COLUMN</command> force les
+	 contraintes de domaines dans tous les cas</para></listitem>
+       <listitem><para>Correction d'une erreur de planification pour des
+	 jointures externes FULL et RIGHT</para>
+         <para>
+	   Le résultat de la jointure a été pris par erreur pour être trié de la
+	   même façon que l'entrée gauche. This could not only deliver mis-sorted
+	   output to the user, but in case of nested merge joins could give
+	   outright wrong answers.</para></listitem>
+       <listitem><para>Amélioration de la plantification des requêtes d'agrégats
+	 groupées</para></listitem>
+       <listitem><para><command>ROLLBACK TO <replaceable>point_de_sauvegarde</replaceable></command>
+	 ferme les curseurs créés depuis le point de sauvegarde</para></listitem>
+       <listitem><para>Correction de la taille inadéquate de la pile du serveur
+	 sur Windows</para></listitem>
+       <listitem><para>Évite SHGetSpecialFolderPath() sur Windows (Magnus)</para></listitem>
+       <listitem><para>Correction de quelques problèmes lors de l'exécution de
+	 pg_autovacuum en tant que service Windows (Dave Page)</para></listitem>
+       <listitem><para>Corrections de plusieurs bogues mineurs dans pg_dump/pg_restore</para></listitem>
+       <listitem><para>Correction d'une erreur de segmentation dans ecpg avec
+	 les structures nommées utilisées dans les typedefs (Michael)</para></listitem>
+     </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-0">
+  <title>Version 8.0</title>
+
+  <note>
+   <title>Date de sortie</title>
+   <simpara>2005-01-19</simpara>
+  </note>
+
+  <sect2>
+   <title>Overview</title>
+
+   <para>
+    Major changes in this release:
+
+    <variablelist>
+     <varlistentry>
+      <term>
+       Microsoft Windows Native Server
+      </term>
+
+      <listitem>
+       <para>
+        This is the first <productname>PostgreSQL</productname> release
+        to run natively on <trademark class="registered">Microsoft Windows</trademark> as
+        a server. It can run as a <productname>Windows</productname> service. This
+        release supports NT-based Windows releases like
+        <productname>Windows 2000</productname>, <productname>Windows XP</productname>, and
+        <productname>Windows 2003</productname>. Older releases like
+        <productname>Windows 95</productname>, <productname>Windows 98</productname>, and
+        <productname>Windows ME</productname> are not supported because these operating
+        systems do not have the infrastructure to support
+        <productname>PostgreSQL</productname>. A separate installer
+        project has been created to ease installation on
+        <productname>Windows</productname> &mdash; see <ulink
+        url="http://www.postgresql.org/ftp/win32/"></ulink>.
+       </para>
+
+       <para>
+        Although tested throughout our release cycle, the Windows port
+        does not have the benefit of years of use in production
+        environments that <productname>PostgreSQL</productname> has on
+        Unix platforms.  Therefore it should be treated with the same
+        level of caution as you would a new product.
+       </para>
+
+       <para>
+        Previous releases required the Unix emulation toolkit
+        <productname>Cygwin</productname> in order to run the server on Windows
+        operating systems.  <productname>PostgreSQL</productname> has
+        supported native clients on Windows for many years.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Savepoints
+      </term>
+
+      <listitem>
+       <para>
+        Savepoints allow specific parts of a transaction to be aborted
+        without affecting the remainder of the transaction. Prior
+        releases had no such capability; there was no way to recover
+        from a statement failure within a transaction except by
+        aborting the whole transaction. This feature is valuable for
+        application writers who require error recovery within a
+        complex transaction.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Point-In-Time Recovery
+      </term>
+
+      <listitem>
+       <para>
+        In previous releases there was no way to recover from disk
+        drive failure except to restore from a previous backup or use
+        a standby replication server.  Point-in-time recovery allows
+        continuous backup of the server.  You can recover either to
+        the point of failure or to some transaction in the past.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Tablespaces
+      </term>
+
+      <listitem>
+       <para>
+        Tablespaces allow administrators to select different file systems
+        for storage of individual tables, indexes, and databases.
+        This improves performance and control over disk space
+        usage. Prior releases used <application>initlocation</application> and
+        manual symlink management for such tasks.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Improved Buffer Management, <command>CHECKPOINT</command>,
+       <command>VACUUM</command>
+      </term>
+
+      <listitem>
+       <para>
+        This release has a more intelligent buffer replacement strategy,
+        which will make better use of available shared buffers and
+        improve performance. The performance impact of vacuum and
+        checkpoints is also lessened.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Change Column Types
+      </term>
+
+      <listitem>
+       <para>
+        A column's data type can now be changed with <command>ALTER
+        TABLE</command>.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       New Perl Server-Side Language
+      </term>
+
+      <listitem>
+       <para>
+        A new version of the <application>plperl</application> server-side language now
+        supports a persistent shared storage area, triggers, returning records
+        and arrays of records, and SPI calls to access the database.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+        Comma-separated-value (CSV) support in <command>COPY</command>
+      </term>
+
+      <listitem>
+       <para>
+        <command>COPY</command> can now read and write
+        comma-separated-value files. It has the flexibility to
+        interpret non-standard quoting and separation characters too.
+       </para>
+      </listitem>
+     </varlistentry>
+
+    </variablelist>
+   </para>
+  </sect2>
+
+  <sect2>
+   <title>Migration vers la version 8.0</title>
+                                      
+   <para>
+    A dump/restore using <application>pg_dump</application> is
+    required for those wishing to migrate data from any previous
+    release.
+   </para>
+   
+   <para>
+    Observe the following incompatibilities:
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       In <option>READ COMMITTED</option> serialization mode, volatile functions
+       now see the results of concurrent transactions committed up to the
+       beginning of each statement within the function, rather than up to the
+       beginning of the interactive command that called the function.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Functions declared <option>STABLE</option> or <option>IMMUTABLE</option> always
+       use the snapshot of the calling query, and therefore do not see the
+       effects of actions taken after the calling query starts, whether in
+       their own transaction or other transactions.  Such a function must be
+       read-only, too, meaning that it cannot use any SQL commands other than
+       <command>SELECT</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Non-deferred <option>AFTER</option> triggers are now fired immediately
+       after completion of the triggering query, rather than upon
+       finishing the current interactive command. This makes a
+       différence when the triggering query occurred within a function:
+       the trigger is invoked before the function proceeds to its next
+       operation.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameters <varname>virtual_host</varname> and
+       <varname>tcpip_socket</varname> have been replaced with a more general
+       parameter <varname>listen_addresses</varname>. Also, the server now listens on
+       <literal>localhost</literal> by default, which eliminates the need for the
+       <literal>-i</literal> postmaster switch in many scenarios.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameters <varname>SortMem</varname> and
+       <varname>VacuumMem</varname> have been renamed to <varname>work_mem</varname>
+       and <varname>maintenance_work_mem</varname> to better reflect their
+       use. The original names are still supported in
+       <command>SET</command> and <command>SHOW</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameters <varname>log_pid</varname>,
+       <varname>log_timestamp</varname>, and <varname>log_source_port</varname> have been
+       replaced with a more general parameter <varname>log_line_prefix</varname>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameter <varname>syslog</varname> has been
+       replaced with a more logical <varname>log_destination</varname> variable to
+       control the log output destination.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameter <varname>log_statement</varname> has been
+       changed so it can selectively log just database modification or
+       data définition statements.  Server configuration parameter
+       <varname>log_duration</varname> now prints only when <varname>log_statement</varname>
+       prints the query.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameter <varname>max_expr_depth</varname> parameter has
+       been replaced with <varname>max_stack_depth</varname> which measures the
+       physical stack size rather than the expression nesting depth. This
+       helps prevent session termination due to stack overflow caused by
+       recursive functions.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The <function>length()</function> function no longer counts trailing spaces in
+       <type>CHAR(n)</type> values.
+      </para>
+     </listitem>
+
+    <listitem>
+     <para>
+      Casting an integer to <type>BIT(N)</type> selects the rightmost N bits of the
+      integer, not the leftmost N bits as before.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Updating an element or slice of a NULL array value now produces
+      a non-NULL array result, namely an array containing
+      just the assigned-to positions.
+     </para>
+    </listitem>
+
+     <listitem>
+      <para>
+       Syntax checking of array input values has been tightened up
+       considerably. Junk that was previously allowed in odd places with
+       odd results now causes an error. Empty-string element values
+       must now be written as <literal>""</literal>, rather than writing nothing.
+       Also changed behavior with respect to whitespace surrounding
+       array elements: trailing whitespace is now ignored, for symmetry
+       with leading whitespace (which has always been ignored).
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Overflow in integer arithmetic operations is now detected and
+       reported as an error.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The arithmetic operators associated with the single-byte
+       <type>"char"</type> data type have been removed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The <function>extract()</function> function (also called
+       <function>date_part</function>) now returns the proper year for BC dates.
+       It previously returned one less than the correct year. The
+       function now also returns the proper values for millennium and
+       century.
+      </para>
+     </listitem>
+
+    <listitem>
+     <para>
+      <type>CIDR</type> values now must have their non-masked bits be zero.
+      For exemple, we no longer allow
+      <literal>204.248.199.1/31</literal> as a <type>CIDR</type> value. Such
+      values should never have been accepted by
+      <productname>PostgreSQL</productname> and will now be rejected.
+     </para>
+    </listitem>
+
+     <listitem>
+      <para>
+       <command>EXECUTE</command> now returns a completion tag that
+       matches the executed statement.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <application>psql</application>'s <command>\copy</command> command now reads or
+       writes to the query's <literal>stdin/stdout</literal>, rather than
+       <application>psql</application>'s <literal>stdin/stdout</literal>. The previous
+       behavior can be accessed via new
+       <option>pstdin</option>/<option>pstdout</option> parameters.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+      The JDBC client interface has been removed from the core
+      distribution, and is now hosted at <ulink url=
+      "http://jdbc.postgresql.org"></ulink>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+      The Tcl client interface has also been removed. There are several
+      Tcl interfaces now hosted at <ulink url=
+      "http://gborg.postgresql.org"></ulink>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The server now uses its own time zone database, rather than the
+       one supplied by the operating system. This will provide consistent
+       behavior across all platforms.  In most cases, there should be
+       little noticeable différence in time zone behavior, except that
+       the time zone names used by <command>SET</command>/<command>SHOW</command>
+       <varname>TimeZone</varname> may
+       be different from what your platform provides.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <application>Configure</application>'s threading option no longer requires
+       users to run tests or edit configuration files; threading options
+       are now detected automatically.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Now that tablespaces have been implemented,
+       <application>initlocation</application> has been removed.
+      </para>
+     </listitem>
+
+     <listitem>
+     <para>
+     The API for user-defined GiST indexes has been changed. The
+     Union and PickSplit methods are now passed a pointer to a
+     special <structname>GistEntryVector</structname> structure,
+     rather than a <type>bytea</type>.
+     </para>
+     </listitem>
+
+
+    </itemizedlist>
+   </para>
+  </sect2>
+
+  <sect2>
+   <title>Deprecated Features</title>
+
+   <para>
+    Some aspects of <productname>PostgreSQL</productname>'s behavior
+    have been determined to be suboptimal. For the sake of backward
+    compatibility these have not been removed in 8.0, but they are
+    considered deprecated and will be removed in the next major
+    release.
+    </para>
+
+   <itemizedlist>
+    <listitem>
+     <para>
+      The 8.1 release will remove the function
+       <function>to_char()</function> for intervals.
+     </para>
+    </listitem>
+
+     <listitem>
+      <para>
+       The server now warns of empty strings passed to
+       <type>oid</type>/<type>float4</type>/<type>float8</type> data
+       types, but continues to interpret them as zeroes as before.
+       In the next major release, empty strings will be considered
+       invalid input for these data types.
+      </para>
+     </listitem>
+
+    <listitem>
+     <para>
+      By default, tables in <productname>PostgreSQL</productname> 8.0
+      and earlier are created with <type>OID</type>s. In the next release,
+      this will <emphasis>not</emphasis> be the case: to create a table
+      that contains <type>OID</type>s, the <option>WITH OIDS</option> clause must
+      be specified or the <varname>default_with_oids</varname>
+      configuration parameter must be set. Users are encouraged to
+      explicitly specify <option>WITH OIDS</option> if their tables
+      require OID for compatibility with future releases of
+      <productname>PostgreSQL</productname>.
+     </para>
+    </listitem>
+   </itemizedlist>
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <para>
+    Below you will find a detailed account of the changes between
+    release 8.0 and the previous major release.
+   </para>
+
+  <sect3>
+   <title>Performance Improvements</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Support cross-data-type index usage (Tom)
+     </para>
+     <para>
+      Before this change, many queries would not use an index if the data
+      types did not match exactly. This improvement makes index usage more
+      intuitive and consistent.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New buffer replacement strategy that improves caching (Jan)
+     </para>
+     <para>
+      Prior releases used a least-recently-used (LRU) cache to keep
+      recently referenced pages in memory. The LRU algorithm
+      did not consider the number of times a specific cache entry was
+      accessed, so large table scans could force out useful cache pages.
+      The new cache algorithm uses four separate lists to track most
+      recently used and most frequently used cache pages and dynamically 
+      optimize their replacement based on the work load. This should
+      lead to much more efficient use of the shared buffer cache.
+      Administrators who have tested shared buffer sizes in the past
+      should retest with this new cache replacement policy.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add subprocess to write dirty buffers periodically to reduce
+      checkpoint writes (Jan)
+     </para>
+     <para>
+      In previous releases, the checkpoint process, which runs every few
+      minutes, would write all dirty buffers to the operating system's
+      buffer cache then flush all dirty operating system buffers to
+      disk. This resulted in a periodic spike in disk usage that often
+      hurt performance. The new code uses a background writer to trickle
+      disk writes at a steady pace so checkpoints have far fewer dirty
+      pages to write to disk. Also, the new code does not issue a global
+      <function>sync()</function> call, but instead <function>fsync()</function>s just
+      the files written since the last checkpoint. This should improve
+      performance and minimize degradation during checkpoints.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add ability to prolong vacuum to reduce performance impact (Jan)
+     </para>
+     <para>
+      On busy systems, <command>VACUUM</command> performs many I/O
+      requests which can hurt performance for other users. This
+      release allows you to slow down <command>VACUUM</command> to
+      reduce its impact on other users, though this increases the
+      total duration of <command>VACUUM</command>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve B-tree index performance for duplicate keys (Dmitry Tkach, Tom)
+     </para>
+     <para>
+      This improves the way indexes are scanned when many duplicate
+      values exist in the index.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use dynamically-generated table size estimates while planning (Tom)
+     </para>
+     <para>
+      Formerly the planner estimated table sizes using the values seen
+      by the last <command>VACUUM</command> or <command>ANALYZE</command>,
+      both as to physical table size (number of pages) and number of rows.
+      Now, the current physical table size is obtained from the kernel,
+      and the number of rows is estimated by multiplying the table size
+      by the row density (rows per page) seen by the last
+      <command>VACUUM</command> or <command>ANALYZE</command>.  This should
+      produce more reliable estimates in cases where the table size has
+      changed significantly since the last housekeeping command.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improved index usage with <literal>OR</literal> clauses (Tom)
+     </para>
+     <para>
+      This allows the optimizer to use indexes in statements with many OR
+      clauses that would not have been indexed in the past.  It can also use
+      multi-column indexes where the first column is specified and the second
+      column is part of an <literal>OR</literal> clause.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve matching of partial index clauses (Tom)
+     </para>
+     <para>
+      The server is now smarter about using partial indexes in queries
+      involving complex <option>WHERE</option> clauses.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve performance of the GEQO optimizer (Tom)
+     </para>
+     <para>
+      The GEQO optimizer is used to plan queries involving many tables (by
+      default, twelve or more). This release speeds up the way queries are
+      analyzed to decrease time spent in optimization.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Miscellaneous optimizer improvements
+     </para>
+     <para>
+      There is not room here to list all the minor improvements made, but
+      numerous special cases work better than in prior releases.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve lookup speed for C functions (Tom)
+     </para>
+     <para>
+      This release uses a hash table to lookup information for dynamically
+      loaded C functions. This improves their speed so they perform nearly as
+      quickly as functions that are built into the server executable.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add type-specific <command>ANALYZE</command> statistics
+      capability (Mark Cave-Ayland)
+     </para>
+     <para>
+      This feature allows more flexibility in generating statistics
+      for non-standard data types.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <command>ANALYZE</command> now collects statistics for
+      expression indexes (Tom)
+     </para>
+     <para>
+      Expression indexes (also called functional indexes) allow users to
+      index not just columns but the results of expressions and function
+      calls. With this release, the optimizer can gather and use statistics
+      about the contents of expression indexes.  This will greatly improve
+      the quality of planning for queries in which an expression index is
+      relevant.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New two-stage sampling method for <command>ANALYZE</command>
+      (Manfred Koizar)
+     </para>
+     <para>
+      This gives better statistics when the density of valid rows is very
+      different in different regions of a table.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Speed up <command>TRUNCATE</command> (Tom)
+     </para>
+     <para>
+      This buys back some of the performance loss observed in 7.4, while still
+      keeping <command>TRUNCATE</command> transaction-safe.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Server Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Add WAL file archiving and point-in-time recovery (Simon Riggs)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add tablespaces so admins can control disk layout (Gavin)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add a built-in log rotation program (Andreas Pflug)
+     </para>
+     <para>
+      It is now possible to log server messages conveniently without
+      relying on either <application>syslog</application> or an external log
+      rotation program.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add new read-only server configuration parameters to show server
+      compile-time settings: <varname>block_size</varname>,
+      <varname>integer_datetimes</varname>, <varname>max_function_args</varname>,
+      <varname>max_identifier_length</varname>, <varname>max_index_keys</varname>  (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make quoting of <literal>sameuser</literal>, <literal>samegroup</literal>, and
+      <literal>all</literal> remove special meaning of these terms in
+      <filename>pg_hba.conf</filename> (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use clearer IPv6 name <literal>::1/128</literal> for
+      <literal>localhost</literal> in default <filename>pg_hba.conf</filename> (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use CIDR format in <filename>pg_hba.conf</filename> exemples (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Rename server configuration parameters <varname>SortMem</varname> and
+      <varname>VacuumMem</varname> to <varname>work_mem</varname> and
+      <varname>maintenance_work_mem</varname> (Old names still supported) (Tom)
+     </para>
+     <para>
+      This change was made to clarify that bulk operations such as index and
+      foreign key creation use <varname>maintenance_work_mem</varname>, while
+      <varname>work_mem</varname> is for workspaces used during query exécution.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow logging of session disconnections using server configuration
+      <varname>log_disconnections</varname> (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add new server configuration parameter <varname>log_line_prefix</varname> to
+      allow control of information emitted in each log line (Andrew)
+     </para>
+     <para>
+      Available information includes user name, database name, remote IP
+      address, and session start time.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove server configuration parameters <varname>log_pid</varname>,
+      <varname>log_timestamp</varname>, <varname>log_source_port</varname>; functionality
+      superseded by <varname>log_line_prefix</varname> (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Replace the <varname>virtual_host</varname> and <varname>tcpip_socket</varname>
+      parameters with a unified <varname>listen_addresses</varname> parameter
+      (Andrew, Tom)
+     </para>
+     <para>
+      <varname>virtual_host</varname> could only specify a single IP address to
+      listen on.  <varname>listen_addresses</varname> allows multiple addresses
+      to be specified.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Listen on localhost by default, which eliminates the need for the
+      <option>-i</option> postmaster switch in many scenarios (Andrew)
+     </para>
+     <para>
+      Listening on localhost (<literal>127.0.0.1</literal>) opens no new
+      security holes but allows configurations like Windows and JDBC,
+      which do not support local sockets, to work without special
+      adjustments.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove <varname>syslog</varname> server configuration parameter, and add more
+      logical <varname>log_destination</varname> variable to control log output
+      location (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Change server configuration parameter <varname>log_statement</varname> to take
+      values <varname>all</varname>, <varname>mod</varname>, <varname>ddl</varname>, or
+      <varname>none</varname> to select which queries are logged (Bruce)
+     </para>
+     <para>
+      This allows administrators to log only data définition changes or
+      only data modification statements.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Some logging-related configuration parameters could formerly be adjusted
+      by ordinary users, but only in the <quote>more verbose</quote> direction.
+      They are now treated more strictly: only superusers can set them.
+      However, a superuser may use <command>ALTER USER</command> to provide per-user
+      settings of these values for non-superusers.  Also, it is now possible
+      for superusers to set values of superuser-only configuration parameters
+      via <literal>PGOPTIONS</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow configuration files to be placed outside the data directory (mlw)
+     </para>
+     <para>
+      By default, configuration files are kept in the cluster's top directory.
+      With this addition, configuration files can be placed outside the
+      data directory, easing administration.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Plan prepared queries only when first executed so constants can be
+      used for statistics (Oliver Jowett)
+     </para>
+     <para>
+      Prepared statements plan queries once and execute them many
+      times. While prepared queries avoid the overhead of re-planning
+      on each use, the quality of the plan suffers from not knowing the exact
+      parameters to be used in the query.  In this release, planning of
+      unnamed prepared statements is delayed until the first exécution,
+      and the actual parameter values of that exécution are used as
+      optimization hints.  This allows use of out-of-line parameter passing
+      without incurring a performance penalty.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>DECLARE CURSOR</command> to take parameters
+      (Oliver Jowett)
+     </para>
+     <para>
+      It is now useful to issue <command>DECLARE CURSOR</command> in a
+      <function>Parse</function> message with parameters. The parameter values
+      sent at <function>Bind</function> time will be substituted into the
+      exécution of the cursor's query.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix hash joins and aggregates of <type>inet</type> and
+      <type>cidr</type> data types (Tom)
+     </para>
+     <para>
+      Release 7.4 handled hashing of mixed <type>inet</type> and
+      <type>cidr</type> values incorrectly.  (This bug did not exist
+      in prior releases because they wouldn't try to hash either
+      data type.)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <varname>log_duration</varname> print only when <varname>log_statement</varname>
+      prints the query (Ed L.)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Query Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Add savepoints (nested transactions) (Alvaro)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Unsupported isolation levels are now accepted and promoted to the
+      nearest supported level (Peter)
+     </para>
+     <para>
+      The SQL specification states that if a database doesn't support a
+      specific isolation level, it should use the next more restrictive level.
+      This change complies with that recommendation.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>BEGIN WORK</command> to specify transaction
+      isolation levels like <command>START TRANSACTION</command> does
+      (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix table permission checking for cases in which rules generate
+      a query type different from the originally submitted query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Implement dollar quoting to simplify single-quote usage (Andrew, Tom, 
+      David Fetter)
+     </para>
+     <para>
+      In previous releases, because single quotes had to be used to
+      quote a function's body, the use of single quotes inside the
+      function text required use of two single quotes or other error-prone
+      notations. With this release we add the ability to use "dollar
+      quoting" to quote a block of text.  The ability to use different
+      quoting delimiters at different nesting levels greatly simplifies
+      the task of quoting correctly, especially in complex functions.
+      Dollar quoting can be used anywhere quoted text is needed.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <literal>CASE val WHEN compval1 THEN ...</literal> evaluate <literal>val</literal>
+only once (Tom)
+     </para>
+     <para>
+      <option>CASE</option> no longer evaluates the tested expression multiple
+      times. This has benefits when the expression is complex or is
+      volatile.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Test <option>HAVING</option> before computing target list of an
+      aggregate query (Tom)
+     </para>
+     <para>
+      Fixes improper failure of cases such as <literal>SELECT SUM(win)/SUM(lose)
+      ... GROUP BY ... HAVING SUM(lose) &gt; 0</literal>.  This should work but
+formerly
+      could fail with divide-by-zero.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Replace <varname>max_expr_depth</varname> parameter with
+      <varname>max_stack_depth</varname> parameter, measured in kilobytes of stack
+      size (Tom)
+     </para>
+     <para>
+     This gives us a fairly bulletproof defense against crashing due to 
+     runaway recursive functions. Instead of measuring the depth of expression
+     nesting, we now directly measure the size of the exécution stack.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow arbitrary row expressions (Tom)
+     </para>
+     <para>
+      This release allows SQL expressions to contain arbitrary composite
+      types, that is, row values. It also allows functions to more easily
+      take rows as arguments and return row values.
+     </para>
+    </listitem>
+      
+    <listitem>
+     <para>
+      Allow <option>LIKE</option>/<option>ILIKE</option> to be used as the operator
+      in row and subselect comparisons (Fabien Coelho)
+     </para>
+    </listitem>
+      
+    <listitem>
+     <para>
+      Avoid locale-specific case conversion of basic ASCII letters in
+      identifiers and keywords (Tom)
+     </para>
+     <para>
+      This solves the <quote>Turkish problem</quote> with mangling of words
+      containing <literal>I</literal> and  <literal>i</literal>.  Folding of characters
+      outside the 7-bit-ASCII set is still locale-aware.
+     </para>
+    </listitem>
+      
+    <listitem>
+     <para>
+      Improve syntax error reporting (Fabien, Tom)
+     </para>
+     <para>
+      Syntax error reports are more useful than before.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Change <command>EXECUTE</command> to return a completion tag
+      matching the executed statement (Kris Jurka)
+     </para>
+     <para>
+      Previous releases return an <command>EXECUTE</command> tag for
+      any <command>EXECUTE</command> call. In this release, the tag
+      returned will reflect the command executed.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid emitting <option>NATURAL CROSS JOIN</option> in rule listings (Tom)
+     </para>
+     <para>
+      Such a clause makes no logical sense, but in some cases the rule
+      decompiler formerly produced this syntax.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Object Manipulation Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Add <command>COMMENT ON</command> for casts, conversions, languages,
+      operator classes, and large objects (Christopher)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add new server configuration parameter <varname>default_with_oids</varname> to
+      control whether tables are created with <type>OID</type>s by default (Neil)
+     </para>
+     <para>
+      This allows administrators to control whether <command>CREATE
+      TABLE</command> commands create tables with or without <type>OID</type>
+      columns by default.  (Note: the current factory default setting for
+      <varname>default_with_oids</varname> is <literal>TRUE</literal>, but the default
+      will become <literal>FALSE</literal> in future releases.)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>WITH</option> / <option>WITHOUT OIDS</option> clause to
+      <command>CREATE TABLE AS</command> (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>ALTER TABLE DROP COLUMN</command> to drop an <type>OID</type>
+      column (<command>ALTER TABLE SET WITHOUT OIDS</command> still works)
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow composite types as table columns (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>ALTER ... ADD COLUMN</command> with defaults and
+      <option>NOT NULL</option> constraints; works per SQL spec (Rod)
+     </para>
+     <para>
+      It is now possible for <option>ADD COLUMN</option> to create a column
+      that is not initially filled with NULLs, but with a specified
+      default value.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <command>ALTER COLUMN TYPE</command> to change column's type (Rod)
+     </para>
+     <para>
+      It is now possible to alter a column's data type without dropping
+      and re-adding the column.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow multiple <command>ALTER</command> actions in a single <command>ALTER
+      TABLE</command> command (Rod)
+     </para>
+     <para>
+      This is particularly useful for <command>ALTER</command> commands that
+      rewrite the table (which include <option>ALTER COLUMN TYPE</option> and
+      <option>ADD COLUMN</option> with a default). By grouping
+      <command>ALTER</command> commands together, the table need be rewritten
+      only once.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>ALTER TABLE</command> to add <type>SERIAL</type>
+      columns (Tom)
+     </para>
+     <para>
+      This falls out from the new capability of specifying defaults for new
+      columns.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow changing the owners of aggregates, conversions, databases,
+      functions, operators, operator classes, schemas, types, and tablespaces
+      (Christopher, Euler Taveira de Oliveira)
+     </para>
+     <para>
+      Previously this required modifying the system tables directly.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow temporary object creation to be limited to <option>SECURITY
+      DEFINER</option> functions (Sean Chittenden)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>ALTER TABLE ... SET WITHOUT CLUSTER</option> (Christopher)
+     </para>
+     <para>
+      Prior to this release, there was no way to clear an auto-cluster
+      specification except to modify the system tables.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Constraint/Index/<type>SERIAL</type> names are now
+      <replaceable>table_column_type</replaceable>
+      with numbers appended to guarantee uniqueness within the schema
+      (Tom)
+     </para>
+     <para>
+      The SQL specification states that such names should be unique
+      within a schema.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>pg_get_serial_sequence()</function> to return a
+      <type>SERIAL</type> column's sequence name (Christopher)
+     </para>
+     <para>
+      This allows automated scripts to reliably find the <type>SERIAL</type>
+      sequence name.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Warn when primary/foreign key data type mismatch requires costly lookup
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <command>ALTER INDEX</command> command to allow moving of indexes
+      between tablespaces (Gavin)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <command>ALTER TABLE OWNER</command> change dépendent sequence
+      ownership too (Alvaro)
+     </para>
+    </listitem>
+
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Utility Command Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Allow <command>CREATE SCHEMA</command> to create triggers,
+      indexes, and sequences (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>ALSO</option> keyword to <command>CREATE RULE</command> (Fabien
+      Coelho)
+     </para>
+     <para>
+      This allows <option>ALSO</option> to be added to rule creation to contrast it
+with
+      <option>INSTEAD</option> rules.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>NOWAIT</option> option to <command>LOCK</command> (Tatsuo)
+     </para>
+     <para>
+      This allows the <command>LOCK</command> command to fail if it
+      would have to wait for the requested lock.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <command>COPY</command> to read and write
+      comma-separated-value (CSV) files (Andrew, Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Generate error if the <command>COPY</command> delimiter and NULL
+      string conflict (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <command>GRANT</command>/<command>REVOKE</command> behavior
+      follows the SQL spec more closely
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid locking conflict between <command>CREATE INDEX</command>
+      and <command>CHECKPOINT</command> (Tom)
+     </para>
+     <para>
+      In 7.3 and 7.4, a long-running B-tree index build could block concurrent
+      <command>CHECKPOINT</command>s from completing, thereby causing WAL bloat because
+the
+      WAL log could not be recycled.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Database-wide <command>ANALYZE</command> does not hold locks
+      across tables (Tom)
+     </para>
+     <para>
+      This reduces the potential for deadlocks against other backends
+      that want exclusive locks on tables.  To get the benefit of this
+      change, do not execute database-wide <command>ANALYZE</command>
+      inside a transaction block (<command>BEGIN</command> block); it
+      must be able to commit and start a new transaction for each
+      table.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <command>REINDEX</command> does not exclusively lock the index's
+      parent table anymore
+     </para>
+     <para>
+      The index itself is still exclusively locked, but readers of the
+      table can continue if they are not using the particular index
+      being rebuilt.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Erase MD5 user passwords when a user is renamed (Bruce)
+     </para>
+     <para>
+      <productname>PostgreSQL</productname> uses the user name as salt
+      when encrypting passwords via MD5. When a user's name is changed,
+      the salt will no longer match the stored MD5 password, so the
+      stored password becomes useless.  In this release a notice is
+      generated and the password is cleared.  A new password must then
+      be assigned if the user is to be able to log in with a password.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <application>pg_ctl</application> <option>kill</option> option for Windows (Andrew)
+     </para>
+     <para>
+      Windows does not have a <literal>kill</literal> command to send signals to
+      backends so this capability was added to <application>pg_ctl</application>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Information schema improvements
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>--pwfile</option> option to
+      <application>initdb</application> so the initial password can be
+      set by GUI tools (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Detect locale/encoding mismatch in
+      <application>initdb</application> (Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>register</option> command to <application>pg_ctl</application> to
+      register Windows operating system service (Dave Page)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Data Type and Function Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      More complete support for composite types (row types)  (Tom)
+     </para>
+     <para>
+      Composite values can be used in many places where only scalar values
+      worked before.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Reject non-rectangular array values as erroneous (Joe)
+     </para>
+     <para>
+      Formerly, <function>array_in</function> would silently build a
+      surprising result.
+     </para>
+    </listitem>
+
+     <listitem>
+      <para>
+       Overflow in integer arithmetic operations is now detected (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The arithmetic operators associated with the single-byte
+       <type>"char"</type> data type have been removed.
+      </para>
+      <para>
+       Formerly, the parser would select these operators in many situations
+       where an <quote>unable to select an operator</quote> error would be more
+       appropriate, such as <literal>NULL * NULL</literal>.  If you actually want
+       to do arithmetic on a <type>"char"</type> column, you can cast it to
+       integer explicitly.
+      </para>
+     </listitem>
+
+    <listitem>
+      <para>
+       Syntax checking of array input values considerably tightened up (Joe)
+      </para>
+     <para>
+       Junk that was previously allowed in odd places with odd results
+       now causes an <literal>ERROR</literal>, for exemple, non-whitespace
+       after the closing right brace.
+      </para>
+    </listitem>
+
+    <listitem>
+      <para>
+       Empty-string array element values must now be written as
+       <literal>""</literal>, rather than writing nothing (Joe)
+      </para>
+     <para>
+       Formerly, both ways of writing an empty-string element value were
+       allowed, but now a quoted empty string is required.  The case where
+       nothing at all appears will probably be considered to be a NULL
+       element value in some future release.
+      </para>
+    </listitem>
+
+    <listitem>
+      <para>
+       Array element trailing whitespace is now ignored (Joe)
+      </para>
+     <para>
+       Formerly leading whitespace was ignored, but trailing whitespace
+       between an element value and the delimiter or right brace was
+       significant.  Now trailing whitespace is also ignored.
+      </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Emit array values with explicit array bounds when lower bound is not one
+      (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <literal>YYYY-monthname-DD</literal> as a date string (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <function>netmask</function> and <function>hostmask</function> functions
+      return maximum-length mask length (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Change factorial function to return <type>numeric</type> (Gavin)
+     </para>
+     <para>
+      Returning <type>numeric</type> allows the factorial function to
+      work for a wider range of input values.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <function>to_char</function>/<function>to_date()</function> date conversion
+      improvements (Kurt Roeckx, Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <function>length()</function> disregard trailing spaces in
+      <type>CHAR(n)</type> (Gavin)
+     </para>
+     <para>
+      This change was made to improve consistency: trailing spaces are
+      semantically insignificant in <type>CHAR(n)</type> data, so they
+      should not be counted by <function>length()</function>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Warn about empty string being passed to
+      <type>OID</type>/<type>float4</type>/<type>float8</type> data types (Neil)
+     </para>
+     <para>
+      8.1 will throw an error instead.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow leading or trailing whitespace in
+      <type>int2</type>/<type>int4</type>/<type>int8</type>/<type>float4</type>/<type>float8</type>
+      input routines
+      (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Better support for IEEE <literal>Infinity</literal> and <literal>NaN</literal>
+      values in <type>float4</type>/<type>float8</type> (Neil)
+     </para>
+     <para>
+      These should now work on all platforms that support IEEE-compliant
+      floating point arithmetic.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>week</option> option to <function>date_trunc()</function> (Robert Creager)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>to_char</function> for <literal>1 BC</literal>
+      (previously it returned <literal>1 AD</literal>) (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>date_part(year)</function> for BC dates (previously it
+      returned one less than the correct year) (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>date_part()</function> to return the proper millennium and
+      century (Fabien Coelho)
+     </para>
+     <para>
+      In previous versions, the century and millennium results had a wrong
+      number and started in the wrong year, as compared to standard
+      reckoning of such things.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>ceiling()</function> as an alias for <function>ceil()</function>,
+      and <function>power()</function> as an alias for <function>pow()</function> for
+      standards compliance (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Change <function>ln()</function>, <function>log()</function>,
+      <function>power()</function>, and <function>sqrt()</function> to emit the correct
+      <literal>SQLSTATE</literal> error codes for certain error conditions, as
+      specified by SQL:2003 (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>width_bucket()</function> function as defined by SQL:2003 (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>generate_series()</function> functions to simplify working
+      with numeric sets (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>upper/lower/initcap()</function> functions to work with
+      multibyte encodings (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add boolean and bitwise integer <option>AND</option>/<option>OR</option>
+      aggregates (Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New session information functions to return network addresses for client
+      and server (Sean Chittenden)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add function to determine the area of a closed path (Sean Chittenden)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add function to send cancel request to other backends (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <type>interval</type> plus <type>datetime</type> operators (Tom)
+     </para>
+     <para>
+      The reverse ordering, <type>datetime</type> plus <type>interval</type>,
+      was already supported, but both are required by the SQL standard.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Casting an integer to <type>BIT(N)</type> selects the rightmost N bits
+      of the integer
+      (Tom)
+     </para>
+     <para>
+      In prior releases, the leftmost N bits were selected, but this was
+      deemed unhelpful, not to mention inconsistent with casting from bit
+      to int.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Require <type>CIDR</type> values to have all non-masked bits be zero
+      (Kevin Brintnall)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Server-Side Language Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      In <literal>READ COMMITTED</literal> serialization mode, volatile functions
+      now see the results of concurrent transactions committed up to the
+      beginning of each statement within the function, rather than up to the
+      beginning of the interactive command that called the function.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Functions declared <literal>STABLE</literal> or <literal>IMMUTABLE</literal> always
+      use the snapshot of the calling query, and therefore do not see the
+      effects of actions taken after the calling query starts, whether in
+      their own transaction or other transactions.  Such a function must be
+      read-only, too, meaning that it cannot use any SQL commands other than
+      <command>SELECT</command>.  There is a considerable performance gain from
+      declaring a function <literal>STABLE</literal> or <literal>IMMUTABLE</literal>
+      rather than <literal>VOLATILE</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Non-deferred <option>AFTER</option> triggers are now fired immediately
+      after completion of the triggering query, rather than upon
+      finishing the current interactive command. This makes a différence
+      when the triggering query occurred within a function: the trigger
+      is invoked before the function proceeds to its next operation. For
+      exemple, if a function inserts a new row into a table, any
+      non-deferred foreign key checks occur before proceeding with the
+      function.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow function parameters to be declared with names (Dennis Bj&ouml;rklund)
+     </para>
+     <para>
+      This allows better documentation of functions.  Whether the names
+      actually do anything dépends on the specific function language
+      being used.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow PL/pgSQL parameter names to be referenced in the function (Dennis
+      Bj&ouml;rklund)
+     </para>
+     <para>
+      This basically creates an automatic alias for each named parameter.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Do minimal syntax checking of PL/pgSQL functions at creation time (Tom)
+     </para>
+     <para>
+      This allows us to catch simple syntax errors sooner.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      More support for composite types (row and record variables) in PL/pgSQL
+     </para>
+     <para>
+      For exemple, it now works to pass a rowtype variable to another function
+      as a single variable.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Default values for PL/pgSQL variables can now reference previously
+      declared variables
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve parsing of PL/pgSQL FOR loops (Tom)
+     </para>
+     <para>
+      Parsing is now driven by presence of <literal>".."</literal> rather than
+      data type of <option>FOR</option> variable. This makes no différence for
+      correct functions, but should result in more understandable error
+      messages when a mistake is made.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Major overhaul of PL/Perl server-side language (Command Prompt, Andrew
+Dunstan)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In PL/Tcl, SPI commands are now run in subtransactions.  If an error
+      occurs, the subtransaction is cleaned up and the error is reported
+      as an ordinary Tcl error, which can be trapped with <literal>catch</literal>.
+      Formerly, it was not possible to catch such errors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <command>ELSEIF</command> in PL/pgSQL (Neil)
+     </para>
+     <para>
+      Previously PL/pgSQL only allowed <command>ELSIF</command>, but many people
+      are accustomed to spelling this keyword <command>ELSEIF</command>.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title><application>psql</application> Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Improve <application>psql</application> information display about database
+      objects (Christopher)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <application>psql</application> to display group membership in
+      <command>\du</command> and <command>\dg</command> (Markus Bertheau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent <application>psql</application> <command>\dn</command> from showing
+      temporary schemas (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <application>psql</application> to handle tilde user expansion for file
+      names (Zach Irmen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <application>psql</application> to display fancy prompts, including
+      color, via <application>readline</application> (Reece Hart, Chet Ramey)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <application>psql</application> <command>\copy</command> match <command>COPY</command>
+command syntax
+      fully (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Show the location of syntax errors (Fabien Coelho, Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <command>CLUSTER</command> information to <application>psql</application>
+      <command>\d</command> display
+      (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Change <application>psql</application> <command>\copy stdin/stdout</command> to read
+      from command input/output (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>pstdin</option>/<option>pstdout</option> to read from
+      <application>psql</application>'s <literal>stdin</literal>/<literal>stdout</literal> (Mark
+      Feit)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add global <application>psql</application> configuration file,
+<filename>psqlrc.sample</filename>
+      (Bruce)
+     </para>
+     <para>
+      This allows a central file where global <application>psql</application> startup
+commands can
+      be stored.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Have <application>psql</application> <command>\d+</command> indicate if the table
+      has an <type>OID</type> column (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, use binary mode in <application>psql</application> when reading files so
+control-Z
+      is not seen as end-of-file
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Have <command>\dn+</command> show permissions and description for schemas (Dennis
+      Bj&ouml;rklund)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve tab completion support (Stefan Kaltenbrunn, Greg Sabino Mullane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow boolean settings to be set using upper or lower case (Michael
+Paesold)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title><application>pg_dump</application> Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Use dépendency information to improve the reliability of
+      <application>pg_dump</application> (Tom)
+     </para>
+     <para>
+      This should solve the longstanding problems with related objects
+      sometimes being dumped in the wrong order.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Have <application>pg_dump</application> output objects in alphabetical order if
+possible (Tom)
+     </para>
+     <para>
+      This should make it easier to identify changes between
+      dump files.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <application>pg_restore</application> to ignore some SQL errors (Fabien Coelho)
+     </para>
+     <para>
+      This makes <application>pg_restore</application>'s behavior similar to the
+      results of feeding a <application>pg_dump</application> output script to
+      <application>psql</application>. In most cases, ignoring errors and plowing
+      ahead is the most useful thing to do. Also added was a pg_restore
+      option to give the old behavior of exiting on an error.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <application>pg_restore</application> <option>-l</option> display now includes
+      objects' schema names
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New begin/end markers in <application>pg_dump</application> text output (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add start/stop times for
+      <application>pg_dump</application>/<application>pg_dumpall</application> in verbose mode
+      (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow most <application>pg_dump</application> options in
+      <application>pg_dumpall</application> (Christopher)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Have <application>pg_dump</application> use <command>ALTER OWNER</command> rather
+      than <command>SET SESSION AUTHORIZATION</command> by default
+      (Christopher)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>libpq Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make libpq's <option>SIGPIPE</option> handling thread-safe (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>PQmbdsplen()</function> which returns the display length
+      of a character (Tatsuo)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add thread locking to <application>SSL</application> and
+      <application>Kerberos</application> connections (Manfred Spraul)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <function>PQoidValue()</function>, <function>PQcmdTuples()</function>, and
+      <function>PQoidStatus()</function> to work on <command>EXECUTE</command>
+      commands (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>PQserverVersion()</function> to provide more convenient
+      access to the server version number (Greg Sabino Mullane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>PQprepare/PQsendPrepared()</function> functions to support
+      preparing statements without necessarily specifying the data types
+      of their parameters (Abhijit Menon-Sen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Many ECPG improvements, including <command>SET DESCRIPTOR</command> (Michael)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Source Code Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Allow the database server to run natively on Windows (Claudio, Magnus,
+Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Shell script commands converted to C versions for Windows support (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Create an extension makefile framework (Fabien Coelho, Peter)
+     </para>
+     <para>
+      This simplifies the task of building extensions outside the original
+      source tree.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support relocatable installations (Bruce)
+     </para>
+     <para>
+      Directory paths for installed files (such as the
+      <filename>/share</filename> directory) are now computed relative to the
+      actual location of the executables, so that an installation tree
+      can be moved to another place without reconfiguring and
+      rebuilding.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use <option>--with-docdir</option> to choose installation location of
+documentation; also
+      allow <option>--infodir</option> (Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <option>--without-docdir</option> to prevent installation of documentation
+(Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Upgrade to <application>DocBook</application> V4.2 SGML (Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <literal>PostgreSQL</literal> <application>CVS</application> tag (Marc)
+     </para>
+     <para>
+      This was done to make it easier for organizations to manage their
+      own copies of the <productname>PostgreSQL</productname>
+      <application>CVS</application> repository. File version stamps from the master
+      repository will not get munged by checking into or out of a copied
+      repository.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clarify locking code (Manfred Koizar)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Buffer manager cleanup (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Decouple platform tests from CPU spinlock code (Bruce, Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add inlined test-and-set code on PA-RISC for <application>gcc</application>
+      (ViSolve, Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve i386 spinlock code (Manfred Spraul)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clean up spinlock assembly code to avoid warnings from newer
+      <application>gcc</application> releases (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove JDBC from source tree; now a separate project
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove the libpgtcl client interface; now a separate project
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      More accurately estimate memory and file descriptor usage (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improvements to the Mac OS X startup scripts (Ray A.)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <function>fsync()</function> test program (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Major documentation improvements (Neil, Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove <application>pg_encoding</application>; not needed
+      anymore
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove <application>pg_id</application>; not needed anymore
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove <application>initlocation</application>; not needed
+      anymore
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Auto-detect thread flags (no more manual testing) (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use Olson's public domain <application>timezone</application> library (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      With threading enabled, use thread flags on Unixware for 
+      backend executables too (Bruce)
+     </para>
+     <para>
+      Unixware can not mix threaded and non-threaded object files in the
+      same executable, so everything must be compiled as threaded.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <application>psql</application> now uses a <application>flex</application>-generated
+      lexical analyzer to process command strings
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Reimplement the linked list data structure used throughout the
+      backend (Neil)
+     </para>
+     <para>
+      This improves performance by allowing list append and length
+      operations to be more efficient.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow dynamically loaded modules to create their own server configuration
+      parameters (Thomas Hallgren)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New Brazilian version of FAQ (Euler Taveira de Oliveira)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add French FAQ (Guillaume Lelarge)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <application>pgevent</application> for Windows logging
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make libpq and ECPG build as proper shared libraries on OS X (Tom)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+
+  <sect3>
+   <title>Contrib Changes</title>
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Overhaul of <filename>contrib/dblink</filename> (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <filename>contrib/dbmirror</filename> improvements (Steven Singer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <filename>contrib/xml2</filename> (John Gray, Torchbox)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Updated <filename>contrib/mysql</filename>
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New version of <filename>contrib/btree_gist</filename> (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New <filename>contrib/trgm</filename>, trigram matching for
+      <productname>PostgreSQL</productname> (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Many <filename>contrib/tsearch2</filename> improvements (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add double metaphone to <filename>contrib/fuzzystrmatch</filename> (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow <filename>contrib/pg_autovacuum</filename> to run as a Windows service (Dave
+Page)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add functions to <filename>contrib/dbsize</filename> (Andreas Pflug)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Removed <filename>contrib/pg_logger</filename>: obsoleted by integrated logging
+      subprocess
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Removed <filename>contrib/rserv</filename>: obsoleted by various separate projects
+     </para>
+    </listitem>
+
+   </itemizedlist>
+  </sect3>
+
+  </sect2>
+ </sect1>

Added: traduc/trunk/postgresql/release-8.1.xml
===================================================================
--- traduc/trunk/postgresql/release-8.1.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-8.1.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,4449 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <sect1 id="release-8-1-17">
+  <title>Version 8.1.17</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-03-16</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.1.16.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.17</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.1.15, voir les notes de sortie de la 8.1.15.
+   </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.
+      (CVE-2009-0922)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
+      argument des codes de format inappropriés pour la donnée en argument
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
+      cette instruction est utilisée avec une coercion explicite
+      (Tom)
+     </para>
+
+     <para>
+      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
+      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
+      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
+      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise affectation possible du propriétaire du rowtype
+      d'une table TOAST (Tom)
+     </para>
+
+     <para>
+      Si <command>CLUSTER</command> ou une variante de <command>ALTER
+      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
+      d'autre que le propriétaire de la table, l'entrée
+      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
+      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
+      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
+      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
+      opération ordinaire de la base de données. Néanmoins, cela peut amener
+      des échecs inattendus si une personne tente plus tard de supprimer le rôle
+      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
+      du type <quote>propriétaire du type de données semble invalide</quote>
+      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
+      (en 8.3).
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
+      bloc (Ashesh Vashi et Dave Page)
+     </para>
+
+     <para>
+      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
+      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
+      fonction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de <literal>MUST</literal> (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-8-1-16">
+  <title>Version 8.1.16</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-02-02</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.1.15.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.16</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changements</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Correction d'un arrêt brutal dans l'autovacuum (Alvaro)
+     </para>
+
+     <para>
+      Cet arrêt survient seulement après un VACUUM d'une base complète exécuté
+      dans le but d'éviter une ré-utilisation anormale des identifiants de
+      transactions. Donc cela arrive peut fréquemment et est difficile à
+      pister.
+     </para>
+    </listitem>
+
+    <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</command>
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
+      des tables TOAST (Tom)
+     </para>
+
+     <para>
+      Auparavant, des valeurs de champ large dans un résultat de curseur
+      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
+      un échec si la table référencée était supprimée avant la lecture du
+      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
+      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
+      un curseur qui est conservé après sa transaction de création.
+     </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>
+      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>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
+      <application>tzdata</application> (pour le Kathmandou et des corrections
+      historiques de DST en Switzerland et à Cuba)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-1-15">
+  <title>Version 8.1.15</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-11-03</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.1.14.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.15</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
+      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
+     </para>
+
+     <para>
+      Cela peut avoir comme conséquence des échecs dans les recherches par
+      index pour des lignes qu'elles auraient dû trouver.
+     </para>
+    </listitem>
+
+    <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</quote> 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 d'un crash possible lorsque des fonctions profondément
+      imbriquées sont appelées à partir d'un trigger (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise expansion de requêtes de règles quand un
+      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
+      <literal>FROM</literal>,  d'une liste <literal>VALUES</literal> multi-lignes ou
+      d'une liste <literal>RETURNING</literal> (Tom)
+     </para>
+
+     <para>
+      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
+      inconnu</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
+      nouvellement définie est appelée comme une fonction normale (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Empêche une collision possible du <structfield>relfilenode</structfield>
+      lors du déplacement d'une table vers un autre tablespace avec
+      <command>ALTER SET TABLESPACE</command> (Heikki)
+     </para>
+
+     <para>
+      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
+      prendre un qu'on sait inutilisé dans le répertoire de destination.
+     </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</option>
+      (Ron Mayer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
+      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</command> par
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires vers la version
+      2008i de <application>tzdata</application> (pour les modifications légales de DST en
+      Argentine, au Brésil, à l'Île Maurice et en Syrie)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-1-14">
+  <title>Version 8.1.14</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-09-22</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.1.13.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.14</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
+    However, if you are upgrading from a version earlier than 8.1.2,
+    see the release notes for 8.1.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Widen local lock counters from 32 to 64 bits (Tom)
+     </para>
+
+     <para>
+      This responds to reports that the counters could overflow in
+      sufficiently long transactions, leading to unexpected <quote>lock is
+      already held</quote> errors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible duplicate output of tuples during a GiST index scan (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add checks in executor startup to ensure that the tuples produced by an
+      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
+      current rowtype (Tom)
+     </para>
+
+     <para>
+      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
+      cached plan, could produce this type of situation.  The check protects
+      against data corruption and/or crashes that could ensue.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <literal>AT TIME ZONE</literal> to first try to interpret its timezone
+      argument as a timezone abbreviation, and only try it as a full timezone
+      name if that fails, rather than the other way around as formerly (Tom)
+     </para>
+
+     <para>
+      The timestamp input functions have always resolved ambiguous zone names
+      in this order.  Making <literal>AT TIME ZONE</literal> do so as well improves
+      consistency, and fixes a compatibility bug introduced in 8.1:
+      in ambiguous cases we now behave the same as 8.0 and before did,
+      since in the older versions <literal>AT TIME ZONE</literal> accepted
+      <emphasis>only</emphasis> abbreviations.
+     </para>
+    </listitem>
+
+    <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</literal> query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner bug with nested sub-select expressions (Tom)
+     </para>
+
+     <para>
+      If the outer sub-select has no direct dependency on the parent query,
+      but the inner one does, the outer value might not get recalculated
+      for new parent query rows.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to estimate that <literal>GROUP BY</literal> 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>
+      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
+      is a record containing composite-type fields (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
+      about the encoding of data sent to or from Tcl (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix PL/Python to work with Python 2.5
+     </para>
+
+     <para>
+      This is a back-port of fixes made during the 8.2 development cycle.
+     </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>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to properly preserve postmaster
+      command-line arguments across a <literal>restart</literal> (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008f (for
+      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
+      Pakistan, Palestine, and Paraguay)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+ 
+ <sect1 id="release-8-1-13">
+  <title>Version 8.1.13</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-06-12</simpara>
+  </note>
+
+  <para>
+   This release contains one serious and one minor bug fix over 8.1.12.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.13</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
+    However, if you are upgrading from a version earlier than 8.1.2,
+    see the release notes for 8.1.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
+      be <literal>(-42)::integer</literal> due to operator precedence rules.
+      Usually this would make little difference, but it could interact with
+      another recent patch to cause
+      <productname>PostgreSQL</productname> to reject what had been a valid
+      <command>SELECT DISTINCT</command> view query.  Since this could result in
+      <application>pg_dump</application> 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>
+
+    <listitem>
+     <para>
+      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
+      <structname>pg_shdepend</structname> (Tom)
+     </para>
+
+     <para>
+      This oversight could lead to problems if the aggregate was later
+      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
+      operation.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-1-12">
+  <title>Version 8.1.12</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>never released</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.1.11.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.12</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
+    However, if you are upgrading from a version earlier than 8.1.2,
+    see the release notes for 8.1.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
+      column is correctly checked to see if it's been initialized to all
+      non-nulls (Brendan Jurd)
+     </para>
+
+     <para>
+      Previous versions neglected to check this requirement at all.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible <command>CREATE TABLE</command> failure when inheriting the
+      <quote>same</quote> constraint from multiple parent relations that
+      inherited that constraint from a common ancestor (Tom)
+     </para>
+    </listitem>
+
+    <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>
+      Update time zone data files to <application>tzdata</application> release 2008c (for
+      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba,
+      Argentina/San_Luis, and Chile)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect result from <application>ecpg</application>'s
+      <function>PGTYPEStimestamp_sub()</function> function (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix core dump in <filename>contrib/xml2</filename>'s
+      <function>xpath_table()</function> function when the input query returns a
+      NULL value (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/xml2</filename>'s makefile to not override
+      <literal>CFLAGS</literal> (Tom)
+     </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>
+      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
+      prepared transaction (Tom)
+     </para>
+
+     <para>
+      This was formerly allowed but trying to do it had various unpleasant
+      consequences, notably that the originating backend could not exit
+      as long as an <command>UNLISTEN</command> remained uncommitted.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix rare crash when an error occurs during a query using a hash index
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix input of datetime values for February 29 in years BC (Tom)
+     </para>
+
+     <para>
+      The former coding was mistaken about which years were leap years.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>unrecognized node type</quote> error in some variants of
+      <command>ALTER OWNER</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
+      number from command-line options (Itagaki Takahiro, Tom)
+     </para>
+
+     <para>
+      Previously, <literal>pg_ctl start -w</literal> could try to contact the
+      postmaster on the wrong port, leading to bogus reports of startup
+      failure.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use <option>-fwrapv</option> to defend against possible misoptimization
+      in recent <application>gcc</application> versions (Tom)
+     </para>
+
+     <para>
+      This is known to be necessary when building <productname>PostgreSQL</productname>
+      with <application>gcc</application> 4.3 or later.
+     </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-8-1-11">
+  <title>Version 8.1.11</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-01-07</simpara>
+  </note>
+
+  <para>
+   Cette version contient divers correctifs de la version 8.1.10,
+   et inclut des correctifs d'importantes failles de sécurité.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+  </para>
+
+  <para>
+   Ceci est la dernière version 8.1.X pour laquelle la communauté
+   <productname>PostgreSQL</productname> produira des paquets binaires pour
+   <productname>Windows</productname>.
+   Les utilisateurs Windows sont encouragés à migrer vers la version 8.2.X ou
+   ultérieures car il existe des corrections spécifiques à Windows dans la
+   version 8.2.X qui ne peuvent pas être portées aux anciennes versions. La
+   8.1.X continuera à être supportée sur les autres plateformes.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.1.11</title>
+
+   <para>
+    Les utilisateurs des versions 8.1.X n'ont pas besoin d'effectuer d'une
+    étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour
+    depuis une version précédant la 8.1.2, lire les notes de version de la
+    8.1.2.
+   </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>
+      Correction 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.1.10 était incomplète, car elle ne corrigeait
+      la faille que pour certaines fonctions <filename>dblink</filename>. 
+      (CVE-2007-6601, CVE-2007-3278)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires avec la version
+      2007k de <application>tzdata</application> (en particulier, les
+      modifications récentes en Argentine) (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Améliore la gestion du planificateur pour les estimations de LIKE et
+      des expressions rationnelles dans les locales autres que C (Tom)
+     </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>
+      Préserve les paramètres du tablespace et de stockage des index qui sont
+      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
+      TYPE</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que la restauration d'archive commence toujours une nouvelle
+      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
+      restauration ne soit utilisée (Simon)
+     </para>
+
+     <para>
+      Ceci évite un risque très particulier de tentative de ré-écriture sur
+      une copie archivée existante du dernier journal de transaction. Cela
+      semble plus simple et plus clair que la définition originale.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <command>VACUUM</command> n'utilise pas tout
+      <varname>maintenance_work_mem</varname> lorque la table est trop petite
+      pour que cela est la moindre utilité (Alvaro)
+     </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 d'un dépassement de capacité dans <literal>extract(epoch from
+      interval)</literal> pour les intervalles excédant 68 ans (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/Perl pour qu'il n'échoue pas quand une expression
+      rationnelle UTF-8 est utilisée dans une fonction de confiance
+      (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/Perl pour continuer l'exécution quand le langage Perl
+      de la plateforme définit le type <literal>bool</literal> en tant que
+      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
+      (Tom)
+     </para>
+
+     <para>
+      Bien que ceci peut arriver partout, aucune construction standard de Perl
+      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
+     </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>
+      Correction de <application>pg_dump</application> pour qu'il gère
+      correctement les tables héritées qui ont des expressions par défaut
+      différentes de celles de leur parents (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un crash de <application>libpq</application> quand
+      <varname>PGPASSFILE</varname> fait référence à un fichier qui n'est
+      pas un fichier texte (Martin Pitt)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Corrections de l'analyseur <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction réalisée pour que <filename>contrib/pgcrypto</filename>
+      puisse se défendre contre les bibliothèques
+      <application>OpenSSL</application> qui échouent sur des clés de plus de
+      128 bits&nbsp;; ce qui est le cas sur au moins certaines versions de
+      Solaris (Marko Kreen)
+     </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-8-1-10">
+   <title>Version 8.1.10</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-09-17</simpara>
+   </note>
+
+   <para>
+    Cette version contient divers correctifs de la version 8.1.9.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.10</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+       correctement (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le type de données <type>interval</type> accepte désormais les entrées
+       constituées uniquement de millisecondes ou microsecondes (Neil)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       l'insertion des index rtree est accélérée (Teodor)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
+       est corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation est corrigée de sorte que les messages ne sont plus
+       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
+      </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)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la gestion incorrecte de certains cas limites de clés étrangères est
+       corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>REINDEX</command> et <command>CLUSTER</command> ne plantent
+       plus en tentant de travailler sur les tables temporaires d'autres
+       sessions (Alvaro)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les règles de la base de données concernant les fuseaux horaires, en
+       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
+       à jour (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
+       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
+       avoir des incompatibilités d'encodage (Tom)&nbsp;;
+      </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-8-1-9">
+   <title>Version 8.1.9</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-04-23</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.8, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.9</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Supporte le placement explicite du schéma des tables temporaires dans
+      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
+      d'informations.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Nécessite l'exécution de <command>COMMIT PREPARED</command> dans la
+      même base que celle utilisée par la transaction qui l'a préparé
+      (Heikki)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue pouvant corrompre des données dans la façon
+      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
+      (Tom, Pavan Deolasee)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Corrections du planificateur, avec des améliorations sur la logique de
+      sélection des jointures externes et des parcours de bitmap (Tom)
+     </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>
+
+     <listitem>
+     <para>
+      Correction des spécifications des fuseaux horaires POSIX
+      pour suivre les nouvelles règles USA DST (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-8">
+   <title>Version 8.1.8</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-07</simpara>
+   </note>
+
+   <para>
+    Cette version contient une correction de la 8.1.7.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.8</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Suppression d'une vérification trop restrictive pour la longueur du type
+      dans les contraintes et les index fonctionnels (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-7">
+   <title>Version 8.1.7</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-05</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.6, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.7</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Suppression de failles de sécurité qui permettent à des utilisateurs
+      connectés de lire la mémoire du serveur (backend)
+      (Tom)
+     </para>
+     <para>
+      Ces vulnérabilités impliquent de supprimer la vérification habituelle
+      qu'une fonction renvoie le type de données qu'elle a déclaré, et de
+      modifier le type de données de la colonne d'une table utilisée dans une
+      fonction SQL (CVE-2007-0555, CVE-2007-0556).
+      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 des performances de <command>VACUUM</command> pour les bases
+      de données avec de nombreuses tables (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction du autovacuum pour éviter de laisser des identifiants de
+      transaction temporaires dans les bases non connectables (Alvaro)
+     </para>
+
+     <para>
+      Ce bogue affecte seulement la branche 8.1.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</literal> (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'échecs erronées de type <quote>droit refusé</quote> survenant
+      sur Windows à cause de tentatives de fsync sur des fichiers déjà
+      supprimés (Magnus, Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux possibles lorsqu'une fonction PL/pgSQL en
+      cours d'utilisation est mise à jour (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-6">
+   <title>Version 8.1.6</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-01-08</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.5.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.6</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </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 de <application>pg_restore</application> pour gérer une
+       sauvegarde au format tar contenant les objets larges (blobs) avec
+       commentaires (Tom)
+      </para>
+     </listitem>
+
+      <listitem>
+       <para>
+        Correction des erreurs <quote>failed to re-find parent key</quote> du
+        <command>VACUUM</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Nettoyage des fichiers cache <filename>pg_internal.init</filename> lors
+	du re-démarrage du serveur (Simon)
+       </para>
+
+       <para>
+        Ceci évite que les fichiers cache contiennent des données obsolètes
+	après une récupération PITR.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Correction d'un cas rare de tronquage d'une grosse relation à la limite
+	du Go par <command>VACUUM</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Correction d'un bogue causant des erreurs de verrouillage mortelle
+	inutiles sur des verrous niveau ligne (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Corrections de bogues affectant les index hash de plusieurs Go (Tom)
+       </para>
+      </listitem>
+
+     <listitem>
+      <para>
+       Correction d'un possible blocage mortel dans la gestion des signaux sous
+       Windows (Teodor)
+      </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>
+       Correction d'une perte mémoire dans ecpg lors d'une connexion (Michael)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correction de la compilation sur Darwin (OS X) (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>
+
+     <listitem>
+      <para>
+       Mise à jour de la base des fuseaux horaires
+      </para>
+
+      <para>
+       Ceci affecte les règles de changements d'heure en Australie et au Canada.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-5">
+   <title>Version 8.1.5</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-10-16</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.4.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.4</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+<listitem><para>Interdiction des fonctions d'agrégat dans des commandes
+  <command>UPDATE</command>, sauf à l'intérieur de sous-sélections (Tom)</para>
+<para>Le comportement d'un tel agrégat est non prévisible et, dans la version 8.1.X,
+  peut causer un arrêt brutal. Donc, il a été désactivé. Le standard SQL ne le
+  permet pas non plus.</para></listitem>
+<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 d'un <quote>core dump</quote> lors des traces sur les
+  durées pour le protocole étendu de requêtes quand un <command>COMMIT</command>
+  ou un <command>ROLLBACK</command> est exécuté</para></listitem>
+<listitem><para>Correction d'une mauvaise gestion des déclencheurs après quand
+  une requête contient une fonction SQL renvoyant plusieurs lignes
+  (Tom)</para></listitem>
+<listitem><para>Correction de <command>ALTER TABLE ... TYPE</command> pour qu'il vérifie
+<literal>NOT NULL</literal> dans une clause <literal>USING</literal> (Tom)</para></listitem>
+<listitem><para>Correction de <function>string_to_array()</function> pour gérer des
+  correspondances se surchargeant pour la chaîne de séparation</para>
+<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
+</para></listitem>
+<listitem><para>Correction de <function>to_timestamp()</function> pour les formats
+<literal>AM</literal>/<literal>PM</literal> (Bruce)</para></listitem>
+<listitem><para>Correction du calcul de l'autovacuum qui décide de l'exécution
+  d'<command>ANALYZE</command> (Alvaro)</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>Nombreuses corrections de fiabilité dans <application>ecpg</application> (Joachim
+Wieland)</para></listitem>
+<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
+<listitem><para>Corrections mineures dans /contrib/dblink et /contrib/tsearch2</para>
+</listitem>
+<listitem><para>Amélioration de l'efficacité des tables hash et des parcours
+  d'index bitmap (Tom)</para></listitem>
+<listitem><para>Correction de l'instabilité de la récupération de statistiques
+  sur Windows (Tom, Andrew)</para></listitem>
+<listitem><para>Correction de <varname>statement_timeout</varname> pour utiliser
+  les bonnes unités sur Win32 (Bruce)</para>
+<para>Dans les versions précédentes de la 8.1.X sur Win32, le délai était
+  décalé d'un facteur de 100.</para></listitem>
+<listitem><para>Corrections pour les compilateurs <acronym>MSVC</acronym> et
+  <productname>Borland C++</productname> (Hiroshi Saito)</para></listitem>
+<listitem><para>Corrections pour les compilateurs <systemitem class="osname">AIX</systemitem> et
+<productname>Intel</productname> (Tom)</para></listitem>
+<listitem><para>Correction d'un bug rare dans l'archivage continu (Tom)</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-4">
+   <title>Version 8.1.4</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-05-23</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.3 incluant des
+    correctifs pour des problèmes de sécurité extrêmement sérieux.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.4</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </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()</function> de
+     <application>libpq</application>) pour réaliser l'échappement des chaînes
+     plutôt que de se fier à un code <foreignphrase>ad hoc</foreignphrase>.
+    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un
+guillemet simple ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal>
+est rejetté seulement quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
+de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</application>
+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</productname> devraient migrer vers
+<function>PQescapeStringConn()</function> et <function>PQescapeByteaConn()</function>
+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</quote> devraient être modifiées
+pour se fier à aux routines de la bibliothèques à la place.
+</para></listitem>
+
+<listitem><para>Correction de la sélection d'une clé faible dans pgcrypto (Marko Kreen)</para>
+<para>Des erreurs dans la logique de ré-échantillonage de PRNG peuvent causer
+la sélection d'une clé de session prévisible par
+<function>pgp_sym_encrypt()</function> dans certains cas.
+Ceci affecte seulement les constructions n'utilisant pas OpenSSL.
+</para></listitem>
+
+<listitem><para>Correction de quelques fonctions de conversion de codage</para>
+<para><function>win1251_to_iso</function>, <function>alt_to_iso</function>,
+<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
+<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de 
+<literal>\'</literal> dans les chaînes (Bruce, Jan)</para></listitem>
+
+<listitem><para>Make autovacuum visible in <structname>pg_stat_activity</structname>
+(Alvaro)</para></listitem>
+
+<listitem><para>Déasctivation de <literal>full_page_writes</literal> (Tom)</para>
+<para>Dans certains cas, désactiver <literal>full_page_writes</literal> sera la
+cause d'un échec de la récupération après un arrêt brutal. Une meilleure
+correction sera disponible en 8.2&nbsp;; maintenant, on ne fait que la
+désactiver.
+</para></listitem>
+
+<listitem><para>Corrections diverses sur le planificateur, en particulier pour
+les parcours d'index bitmap et l'optimisation de MIN/MAX (Tom)</para></listitem>
+
+<listitem><para>Correction d'une mauvaise optimisation dans les jointures
+d'assemblages (Tom)</para>
+<para>Les jointures externes peuvent quelque fois émettre plusieurs copies de
+lignes sans correspondance.
+</para></listitem>
+
+<listitem><para>Correction d'un arrêt brutal lors de l'utilisation et de la
+modification d'une fonction plpgsql dans la même transaction</para></listitem>
+
+<listitem><para>Correction d'un replay WAL pour le cas où un index B-Tree a été
+tronqué</para></listitem>
+
+<listitem><para>Correction de <literal>SIMILAR TO</literal> pour les modèles impliquant
+<literal>|</literal> (Tom)</para></listitem>
+
+<listitem><para>Correction de <command>SELECT INTO</command> et <command>CREATE TABLE AS</command>
+pour créer des tables dans le tablespace par défaut, et non pas dans le répertoire
+base (Kris Jurka)</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>Amélioration des performances de qsort (Dann Corbit)</para>
+<para>Actuellement, ce code est seulement utilisé sur Solaris.
+</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>
+
+<listitem><para>Correction d'un problème pour la demande du mot de passe sur
+certaines systèmes Win32 (Robert Kinberg)</para></listitem>
+
+<listitem><para>Amélioration de la gestion des valeurs par défaut dans les
+domaines pour <application>pg_dump</application></para></listitem>
+
+<listitem><para>Correction de <application>pg_dumpall</application> pour gérer
+raisonnablement les utilisateurs et les groupes nommés de façon identique
+(uniquement possible lors d'une sauvegarde d'un serveur de version antérieure
+à la 8.1) (Tom)</para>
+<para>L'utilisateur et le groupe seront assemblés en un seul rôle avec le droit
+<literal>LOGIN</literal>. Auparavant, le rôle créé n'avait pas le droit
+<literal>LOGIN</literal> le rendant inutilisable en tant que rôle de connexion.
+</para></listitem>
+
+<listitem><para>Correction de l'option <literal>-n</literal> de
+<application>pg_restore</application> pour qu'elle fonctionne comme sa
+description dans la documentation (Tom)</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+ 
+  <sect1 id="release-8-1-3">
+   <title>Version 8.1.3</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-02-14</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.1.2 et un très sérieux
+    problème de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.3</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
+     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un bogue qui permettait à tout utilisateur connecté
+d'exécuter <command>SET ROLE</command> avec tout autre identifiant utilisateur de la
+base de donnée (CVE-2006-0553)</para>
+<para>À cause d'une vérification inadéquate de la validité, un utilisateur
+pouvait exploiter le cas spécial utilisé habituellement par <command>SET
+ROLE</command> pour restaurer le paramétrage du rôle précédent après une erreur.
+Ceci permettait à des utilisateurs ordinaires d'acquérir le statut de
+superutilisateur par exemple. Le risque d'augmentation des droits existe
+seulement en 8.1.0-8.1.2. Néanmoins, dans toutes les versions y compris la
+7.3, il existe un bogue en relation dans <command>SET
+SESSION AUTHORIZATION</command> qui permet à des utilisateurs non privilégiés
+d'arrêter brutalement le serveur s'il 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 8.0.4, 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à</quote> lors de la création d'un fichier pg_clog
+(Tom)</para></listitem>
+
+<listitem><para>Correction des cas pouvant amener des arrêts brutaux si un
+message d'invalidation de cache arrive juste au mauvais moment (Tom)</para></listitem>
+
+<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
+les paramètres <literal>UNKNOWN</literal> dans les instructions préparées
+(Neil)</para></listitem>
+
+<listitem><para>S'assure que <command>ALTER COLUMN TYPE</command> traitera les
+contraintes <literal>FOREIGN KEY</literal>, <literal>UNIQUE</literal> et
+<literal>PRIMARY KEY</literal> dans le bon ordre (Nakano Yoshihisa)</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>Autorise <application>pg_restore</application> à continuer tranquillement
+après un échec de <command>COPY</command>&nbsp;; auparavant, il essayait de traiter
+les données restantes du <command>COPY</command> comme des commandes SQL (Stephen
+Frost)</para></listitem>
+
+<listitem><para>Correction du bogue <literal>unregister</literal> de
+<application>pg_ctl</application> quand le répertoire des données n'est pas
+spécifié (Magnus)</para></listitem>
+
+<listitem><para>Correction des balises HTML de <function>PQprint</function>
+dans <application>libpq</application> (Christoph Zwerschke)</para></listitem>
+
+<listitem><para>Correction du bogue sur <application>ecpg</application> pour AMD64 et
+PPC (Neil)</para></listitem>
+
+<listitem><para>Autorise l'utilisation de <literal>SETOF</literal> et de
+<literal>%TYPE</literal> ensemble dans des déclarations de type de résultat
+des fonctions</para></listitem>
+
+<listitem><para>Récupère proprement si une erreur survient lors du passage
+des arguments en <application>PL/python</application> (Neil)</para></listitem>
+
+<listitem><para>Correction d'une perte mémoire dans <function>plperl_return_next</function>
+(Neil)</para></listitem>
+
+<listitem><para>Correction de la gestion des locales par <application>PL/perl</application>
+sur Win32 pour correspondre au moteur (Andrew)</para></listitem>
+
+<listitem><para>Différentes corrections de l'optimiseur (Tom)</para></listitem>
+
+<listitem><para>Correction d'un bogue quand <literal>log_min_messages</literal> est
+configuré à <literal>DEBUG3</literal> ou plus bas dans le fichier <filename>postgresql.conf</filename>
+sur Win32 (Bruce)</para></listitem>
+
+<listitem><para>Correction l'option <literal>-L</literal> de spécification du chemin
+des bibliothèques de <application>pgxs</application> pour Win32, Cygwin, OS X, AIX
+(Bruce)</para></listitem>
+
+<listitem><para>Vérification de l'activation de SID lors de la vérification
+des droits administrateur sous Win32 (Magnus)</para></listitem>
+
+<listitem><para>Rejette proprement les données de type date en dehors de la
+plage (Kris Jurka)</para></listitem>
+
+<listitem><para>Correction de portabilité pour tester la présence de
+<function>finite</function> et <function>isinf</function> lors du configure (Tom)</para></listitem>
+
+<listitem><para>Amélioration de la rapidité de <command>COPY IN</command> via libpq,
+en évitant un appel noyau par ligne de données (Alon Goldshuv)</para></listitem>
+
+<listitem><para>Amélioration de la rapidité de création de l'index pour
+<filename>/contrib/tsearch2</filename> (Tom)</para></listitem>
+
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1-2">
+   <title>Version 8.1.2</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2006-01-09</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la version 8.1.1.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.2</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+     version 8.1.X. Néanmoins, vous pourriez avoir besoin de lancer la commande
+     <command>REINDEX</command> 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</application> décrits ci-dessous.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'un code Windows de façon à ce que postmaster
+continue au lieu de quitter s'il n'y a plus de place dans
+ShmemBackendArray (Magnus)</para>
+<para>Le comportement précédent pouvait amener à une situation de déni de
+service si trop de demandes de connexion arrivaient en même temps. Ceci
+s'applique <emphasis>seulement</emphasis> au port Windows.</para></listitem>
+
+<listitem><para>Correction d'un bogue introduit dans la version 8.0 permettant à
+ReadBuffer de renvoyer une page déjà utilisée comme nouvelle, causant
+potentiellement des pertes de données récemment validées (Tom)</para></listitem>
+
+<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</command>
+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</application> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
+utilisation de <application>plperl</application> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</command> pour corriger des
+index existant sur des colonnes de type texte si cela vous arrivait.
+</para></listitem>
+
+<listitem><para>Permet un déplacement plus simple des répertoires d'installation
+(Tom)</para>
+<para>Les anciennes versions supportaient seulement un déplacement si tous les
+chemins d'installation étaient identiques sauf pour le dernier composant.
+</para></listitem>
+
+<listitem><para>Empêche les arrêts brutaux causés par l'utilisation des codages
+<literal>ISO-8859-5</literal> et <literal>ISO-8859-9</literal> (Tatsuo)</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 où le mode COPY CSV considérait tout
+<literal>\.</literal> comme la terminaison du fichier</para>
+<para>Le nouveau code requiert que <literal>\.</literal> apparaisse seul sur une ligne,
+comme l'indique la documentation.</para></listitem>
+
+<listitem><para>Fait que le mode COPY CSV place entre guillemets la valeur
+littérale <literal>\.</literal> pour s'assurer qu'il ne puisse pas être
+interprété comme un marqueur de fin de données (Bruce)</para></listitem>
+
+<listitem><para>Quelques corrections pour les fonctions renvoyant <literal>RECORD</literal>
+(Tom) </para></listitem>
+
+<listitem><para>Correction du traitement de <filename>postgresql.conf</filename> pour
+qu'une ligne finale sans retour chariot soit traitée proprement (Tom)
+</para></listitem>
+
+<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</filename>,
+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 d'un arrêt brutal d'autovacuum lors du traitement
+des index d'expression</para></listitem>
+
+<listitem><para>Correction de <filename>/contrib/dblink</filename> 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-8-1-1">
+   <title>Version 8.1.1</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2005-12-12</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections vers la 8.1.0.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.1, voir <xref linkend="release-8-1"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.1.1</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent 8.1.X.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+<itemizedlist>
+
+<listitem><para>Correction d'optimisations incorrectes des conditions de
+jointures externes (Tom)</para></listitem>
+
+<listitem><para>Correction des problèmes avec de mauvais noms de colonne
+rapportés dans les cas impliquant des sous-sélections applaties par l'optimiseur
+(Tom)</para></listitem>
+
+<listitem><para>Correction des échecs de mise à jour dans les scénarios impliquant
+les contraintes de vérification (CHECK), les colonnes TOAST <emphasis>et</emphasis> les
+index (Tom)</para></listitem>
+
+<listitem><para>Correction des problèmes du processus d'écriture en tâche de
+fond après avoir récupéré des erreurs (Tom)</para>
+<para>
+Le processus d'écriture en tâche de fond was found to leak buffer pins after write errors.
+Bien que non fatal en soi, ceci pourrait amener des blocages mystérieux sur des
+commandes VACUUM ultérieures.
+</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/tsearch2</filename> et <filename>/contrib/ltree</filename>
+(Teodor)</para></listitem>
+
+<listitem><para>Corrections de problèmes avec les messages d'erreur traduits
+dans des langues qui requièrent un réordonnancement des mots, comme en turc&nbsp;;
+corrections de problèmes avec des troncatures inattendues de chaînes et mauvais
+affichage de la plus petite valeur bigint possible (Andrew, Tom)</para>
+<para>Ces problèmes apparaissaient seulement sur les plateformes qui utilisaient
+notre code <filename>port/snprintf.c</filename>, qui inclut des variantes BSD si
+<literal>--enable-nls</literal> était donné, et peut-être d'autres. De plus, une forme
+différente du problème de message d'erreur traduit pourrait apparaître sur
+Windows dépendant de la version de <filename>libintl</filename> utilisée.
+</para></listitem>
+
+<listitem><para>Autorise de nouveau les spécifications de format
+<literal>AM</literal>/<literal>PM</literal>, <literal>HH</literal>, <literal>HH12</literal> et <literal>D</literal>
+pour <function>to_char(time)</function> et <function>to_char(interval)</function>.
+(<function>to_char(interval)</function> devrait probablement utiliser
+<literal>HH24</literal>.) (Bruce)</para></listitem>
+
+<listitem><para>Corrections de compilation sur AIX, HPUX et MSVC (Tom, Hiroshi
+Saito)</para></listitem>
+
+<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
+
+<listitem><para>Tente de nouveau les lectures et écritures de fichiers après
+une erreur NO_SYSTEM_RESOURCES sous Windows (Qingqing Zhou)</para></listitem>
+
+<listitem><para>Correction d'un échec intermittent quand <varname>log_line_prefix</varname>
+inclut <literal>%i</literal></para></listitem>
+
+<listitem><para>Empêche <application>autovacuum</application> de s'arrêter brutalement
+lors d'une analyse (ANALYZE) d'un index d'expression (Alvaro)</para></listitem>
+
+<listitem><para>Correction de problèmes avec ON COMMIT DELETE ROWS sur des
+tables temporaires</para></listitem>
+
+<listitem><para>Correction de problèmes quand un déclencheur modifie la sortie
+d'une requête SELECT DISTINCT</para></listitem>
+
+<listitem><para>Ajout d'un élément dans les notes de sortie de la version 8.1.0
+sur la façon de migrer des séquences d'octets <literal>UTF-8</literal> invalides (Paul
+Lindner)</para></listitem>
+</itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-1">
+   <title>Version 8.1</title>
+
+   <note>
+    <title>Date de sortie</title>
+    <simpara>2005-11-08</simpara>
+   </note>
+
+   <sect2>
+    <title>Aperçu</title>
+ 
+    <para>
+     Modifications principales apportées par cette version&nbsp;:
+    </para>
+
+    <variablelist>
+
+     <varlistentry>
+      <term>
+       Amélioration des accès concurrents au cache de tampon partagé (Tom)&nbsp;;
+      </term>
+
+      <listitem>
+       <para>
+        L'accès au cache de tampon partagé posait des problèmes d'extensibilité, 
+	en particulier sur les systèmes multi-CPU. Dans cette version, la pose
+	de verrous dans le gestionnaire de tampons a été modifiée pour réduire
+	les collisions de verrous et améliorer l'extensibilité. 
+	Le gestionnaire de tampon a été changé pour une politique de
+	remplacement fonction d'un <quote>balayage horaire</quote>.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Les parcours d'index peuvent utiliser une carte en mémoire (Tom)&nbsp;;
+      </term>
+
+      <listitem>
+       <para>
+        Dans les versions précédentes, un seul index pouvait être utilisé
+	pour les recherches sur une table. Avec cette fonctionnalité, si
+	une requête contient 
+        <command>WHERE tab.col1 = 4 and tab.col2 = 9</command>, 
+	et qu'il n'y a pas d'index multi-colonnes sur <literal>col1</literal>
+	et <literal>col2</literal>, mais qu'il y a un index sur <literal>col1</literal>
+	et un autre sur <literal>col2</literal>, il est possible de parcourir les 
+	deux index et de combiner leur résultat en mémoire. La récupération
+	ne concerne alors que les lignes qui satisfont les restrictions sur 
+	<literal>col1</literal> et <literal>col2</literal> simultanément. 
+	C'est très utile dans les environnements à requêtes non-structurées
+	nombreuses et pour lesquels il est impossible de construire 
+	les index pour toutes les conditions d'accès.
+	Les parcours de cartes sont utiles même dans le cas d'index simple, 
+	puisqu'ils réduisent les accès aléatoires nécessaires. Un parcours
+	de carte d'index est efficace pour la récupération de larges
+	portions de table, contrairement aux parcours d'index pleins.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Ajout de la validation à deux-phases (two-phase commit)
+       (Heikki Linnakangas, Alvaro, Tom)&nbsp;;
+      </term>
+      
+      <listitem>
+       <para>
+        La validation à deux phases permet la
+	&laquo;&nbsp;prépartion&nbsp;&raquo; de transactions sur plusieurs 
+	ordinateurs, et lorque tous les ordinateurs ont correctement
+	préparer leurs transactions (aucune n'a échoué), toutes les
+	transactions sont validées. Si une machine tombe après la préparation, 
+	la transaction ainsi préparée peut être validée après le redémarrage de
+	la machine. La nouvelle syntaxe inclut <command>PREPARE TRANSACTION</command>
+	et <command>COMMIT/ROLLBACK PREPARED</command>. Une nouvelle vue système 
+	<literal>pg_prepared_xacts</literal> a également été ajoutée.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Création d'un nouveau système de rôle en remplacement des utilisateurs et groupes
+       (Stephen Frost)
+      </term>
+
+      <listitem>
+       <para>
+        Les rôles sont une combinaison des utilisateurs et groupes. Comme des 
+        utilisateurs, ils peuvent avoir des possibilités de connexion, et comme 
+        des groupes, un rôle peut avoir d'autres rôles comme membres.
+        Les rôles enlèvent fondamentalement la distinction 
+        entre les utilisateurs et les groupes. Par exemple, un rôle peu:
+       </para>
+
+       <itemizedlist>
+  
+        <listitem>
+         <para>
+          Avoir les possibilités de connexions (optionnel)
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Posséder des objets
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Détenir les autorisations d'accès pour des objets de base de données
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Hériter des permissions des autres rôles en tant que membre de
+         </para>
+        </listitem>
+
+       </itemizedlist>
+       <para>
+        Une fois qu'un rôle se connecte en tant qu'un autre rôle, il obtient les
+        droits du rôle de connexion et ceux des rôles hérités, et peut utiliser
+        <command>SET ROLE</command> pour basculer sur d'autres rôles dont il
+        est membre. Cette fonctionnalité est une généralisation du concept des
+        rôles dans le standard SQL.
+        Cette modification remplacer aussi <structname>pg_shadow</structname> et
+        <structname>pg_group</structname> par les catalogues spécifiques aux
+        rôles, <structname>pg_authid</structname> et
+        <structname>pg_auth_members</structname>. Les anciennes tables sont
+        redéfinies comme des vues en lecture seule qui se basent sur les
+        nouvelles tables des rôles.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Utiliser automatiquement les index pour <function>MIN()</function> et
+       <function>MAX()</function> (Tom)
+      </term>
+ 
+      <listitem>
+       <para>
+        Dans les versions précédentes, la seule manière d'utiliser un index pour
+        <function>MIN()</function> ou <function>MAX()</function> était d'écrire la requête
+        <command>SELECT col FROM tab ORDER BY col LIMIT 1</command>.
+        L'utilisation d'index se produit maintenant automatiquement. 
+       </para> 
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Déplacement de <filename>/contrib/pg_autovacuum</filename> dans le serveur principal
+       (Alvaro)
+      </term>
+
+      <listitem>
+       <para>
+        L'intégration d'autovacuum dans le serveur lui permet d'être 
+        automatiquement lancé et arrêté lors de la synchro avec le serveur
+        de base de données, et permet à l'autovacuum d'être configuré dans
+        <filename>postgresql.conf</filename>.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Ajout de verrous partagés au niveau ligne en utilisant
+       <command>SELECT ... FOR SHARE</command>
+       (Alvaro)
+      </term>
+
+      <listitem>
+       <para>
+        Bien que le système de verrous du MVCC de <productname>PostgreSQL</productname>
+        permet aux <command>SELECT</command> de ne jamais bloquer les écritures
+        et, du coup, n'a pas besoin de verrous ligne partagés pour des opérations
+        typiques, les verrous partagés sont utiles pour les applications qui
+        réclament un verrouillage partagé des lignes. En particulier, cela réduit
+        les prérequis de verrouillage imposés par les vérifications d'intégrité
+        référentielle.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Ajout de dépendances sur les objets partagés, et plus particulièrement
+       les rôles (Alvaro)
+      </term>
+
+      <listitem>
+       <para>
+        Cette extension du mécanisme de dépendances empêche la suppression de
+        rôles quand il existe dans la base des objets qui leur appartiennent.
+        Auparavant, il était possible de rendre <quote>orphelins</quote> des
+        objets en supprimant leur propriétaire. Bien qu'il était possible de
+        contourner le problème, c'était sale et déplaisant.
+       </para>
+      </listitem>
+     </varlistentry>
+
+     <varlistentry>
+      <term>
+       Amélioration des performances sur les tables partitionnées (Simon)
+      </term>
+
+      <listitem>
+       <para>
+        Le nouveau paramètre de configuration, <varname>constraint_exclusion</varname>,
+        évite la recherche de tables enfants où les contraintes indiquent
+        qu'aucune ligne n'existe dans la table enfant.
+       </para>
+       <para>
+        Ceci permet un type basique de partitionnement de tables. Si les tables
+        enfants stockent des étendues séparées de clés et qu'elles sont forcées
+        par des contraintes <command>CHECK</command> appropriées, l'optimiseur
+        ne s'occupera pas des tables enfants où la contrainte ganratie
+        qu'aucune ligne correspondante n'existe dans la table enfant.
+       </para>
+      </listitem>
+     </varlistentry>
+
+    </variablelist>
+   </sect2>
+ 
+   <sect2>
+    <title>Migration vers la version 8.1</title>
+                                       
+    <para>
+     Une sauvegarde/restauration utilisant <application>pg_dump</application>
+     est requise pour ceux qui souhaitent migrer leurs données des versions
+     précédentes.
+    </para>
+    
+    <para>
+     Les notes de la version 8.0 annonçaient la suppression de la fonction
+     <function>to_char()</function> pour les intervalles en 8.1. Néanmoins,
+     comme aucune API meilleure n'a été suggérée,
+     <function>to_char(interval)</function> a été améliorée en 8.1 et restera
+     dans le serveur.
+    </para>
+
+    <para>
+     Il existe quelques incompatibilités&nbsp;:
+    </para>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       <varname>add_missing_from</varname> est maintenant faux par défaut (Neil)
+      </para>
+      <para>
+       Par défaut, nous générons une erreur si une table est utilisé dans une
+       requête sans une référence <literal>FROM</literal>. L'ancien comportement
+       est toujours disponible mais le paramètre doit être positionné à 'true'
+       pour l'obtenir.
+      </para>
+
+      <para>
+       Il pourrait être nécessaire de configurer <varname>add_missing_from</varname>
+       à true pour charger une sauvegarde existante si la sauvegarde contient
+       des vues ou des règles créées en utilisant la syntaxe du
+       <literal>FROM</literal> implicite. Ceci n'arrivera qu'une fois car
+       <productname>PostgreSQL</productname> 8.1 convertira ces vues et ces
+       règles à la syntaxe standard du <literal>FROM</literal> explicite. Les
+       sauvegardes suivantes n'auront donc plus le problème.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Une chaîne de longueur nulle (<literal>''</literal>) pour une champ de
+       type <type>float4</type>/<type>float8</type>/<type>oid</type> causera
+       l'envoi d'une erreur. Elle ne sera plus traitée comme un zéro (Neil)
+      </para>
+      <para>
+       Cette modification est cohérente avec la gestion actuelle des chaînes de
+       longueur nulle pour les entiers. Ce changement avait été annoncé en 8.0.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <varname>default_with_oids</varname> est maintenant faux par défaut (Neil)
+      </para>
+      <para>
+       Avec cette option configurée à faux, les tables créées par l'utilisateur
+       n'ont plus de colonne OID sauf si <command>WITH OIDS</command> est
+       indiqué en option de <command>CREATE TABLE</command>. Bien que les OID
+       ont existé sur toutes les versions de
+       <productname>PostgreSQL</productname>, leut utilisation est limitée car
+       elles sont uniquement sur quatre octets et le compteur est partagé sur
+       toutes les bases installées dans le cluster. La façon préférée
+       d'identifier les lignes de façon unique est via des séquences et le
+       type <type>SERIAL</type> qui sont supportés depuis
+       <productname>PostgreSQL</productname> 6.4.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Ajout de la syntaxe <literal>E''</literal> pour que les chaînes ordinaires
+       puissent éventuellement traiter les antislash littéralement (Bruce)
+      </para>
+      <para>
+       Actuellement, <productname>PostgreSQL</productname> traite l'antislash
+       dans une constante de type chaîne comme l'introduction d'une séquence
+       d'échappement spéciale, par exemple <literal>\n</literal> ou
+       <literal>\010</literal>. Bien que cela facilite la saisie de ces
+       valeurs, c'est un comportement non standard qui rend difficile le
+       portage des applications vers d'autres SGBD. Pour cette raison, le
+       projet <productname>PostgreSQL</productname> planifie la suppression
+       de la signification spéciale des antislashs dans les chaînes. Pour une
+       compatibilité ascendante, une nouvelle syntaxe de chaîne a été créée.
+       Cette nouvelle syntaxe correspond à un <literal>E</literal> immédiatement
+       suivi d'un guillemet simple qui commence la chaîne, par exemple
+       <literal>E'hi\n'</literal>. Bien que cette version ne modifie pas la
+       gestion des antislashs dans les chaînes, elle ajoute de nouveaux
+       paramètres de configuration pour aider les utilisateurs à migrer leurs
+       applications vers les prochaines versions&nbsp;:
+      </para>
+      <itemizedlist>
+
+       <listitem>
+        <para>
+         <varname>standard_conforming_strings</varname> &mdash; cette version
+         traite-t'elle les antislashs de façon littérale dans les chaînes&nbsp;?
+        </para>
+       </listitem>
+  
+       <listitem>
+       <para>
+        <varname>escape_string_warning</varname> &mdash; avertit sur
+        l'utilisation d'antislasgs dans des chaînes ordinaires (donc sans E).
+       </para>
+      </listitem>
+
+      </itemizedlist>
+
+      <para>
+       La valeur de <varname>standard_conforming_strings</varname> est seulement
+       disponible en lecture. Les applications peuvent récupérer la valeur pour
+       savoir de quelle façon elles doivent traiter les antislashs. (La présence
+       du paramètre est en soi une indication que la syntaxe de chaîne
+       <literal>E''</literal> est supportée.)
+       Dans une prochaine version, <varname>standard_conforming_strings</varname>
+       vaudra vrai, signifiant que les antislashs devront être traités
+       littéralement dans les chaînes non E. Pour vous préparer à ce changement,
+       utilisez des chaînes <literal>E''</literal> pour celles qui nécessitent
+       un traitement spécial des antislashs et activer
+       <varname>escape_string_warning</varname> pour trouver les chaînes
+       supplémentaires qui ont besoin d'être converties pour utiliser
+       <literal>E''</literal>. De plus, utilisez deux guillemets simples
+       (<literal>''</literal>) pour intégrer un guillemet simple littéral dans
+       une chaîne plutôt que la syntaxe supportée par
+       <productname>PostgreSQL</productname> de l'antislash suivi du guillemet
+       (<literal>\'</literal>). Cette syntaxe est conforme au standard et ne
+       nécessite pas l'utilisation de la syntaxe de chaîne
+       <literal>E''</literal>. Vous pouvez aussi utiliser la syntaxe de chaîne
+       <literal>$$</literal> qui ne traitent pas spécifiquement les antislashs.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fait que <command>REINDEX DATABASE</command> ré-indexe tous les index de
+       la base (Tom)
+      </para>
+      <para>
+       Auparavant, <command>REINDEX DATABASE</command> ré-indexait seulement les
+       tables systèmes. Ce nouveau comportement semble plus intuitif. Une
+       nouvelle commande <command>REINDEX SYSTEM</command> fournit l'ancienne
+       fonctionnalité de réindexage des seules tables systèmes.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Les descripteurs des objets larges en lecture seule respectent maintenant
+       les images MVCC.
+      </para>
+      <para>
+       Quand un objet large est ouvert avec <literal>INV_READ</literal> (et non
+       pas <literal>INV_WRITE</literal>), la donnée lue du descripteur
+       correspondra maintenant à une <quote>image</quote> de l'état de l'objet
+       large au début de l'image de la transaction utilisée par la requête
+       qui a fait appel à <function>lo_open()</function>. Pour obtenir l'ancien
+       comportement renvoyant en permanence la dernière donnée validée, ajoutez
+       <literal>INV_WRITE</literal> dans les options de <function>lo_open()</function>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Ajout des bonnes dépendances pour les arguments des fonctions sur les
+       séquences (Tom)
+      </para>
+      <para>
+       Dans les anciennes versions, les noms de séquence passés à
+       <function>nextval()</function>, <function>currval()</function> et
+       <function>setval()</function> étaient stockés sous la forme de simples
+       chaînes de texte, signifiant que le renommage ou la suppression d'une
+       séquence utilisée dans une clause <literal>DEFAULT</literal> rendait la
+       clause invalide. Cette version stocke tous les arguments d'une fonction
+       d'une séquence nouvellement créée en tant qu'OID interne, leur permettant
+       de tracer le renommage des séquences et d'ajouter des informations de
+       dépendances qui empêchent une suppression erronées d'une séquence.
+       Cela assure aussi une certaine immunité des clauses
+       <literal>DEFAULT</literal> au renommage de schéma et aux modifications
+       du chemin de recherche des schémas.
+      </para>
+      <para>
+       Certaines applications pourraient se fier à l'ancien comportement de
+       recherche à l'exécution des noms de séquence. C'est toujours possible
+       en convertissant explicitement l'argument en <type>text</type>, par exemple
+       <literal>nextval('myseq'::text)</literal>.
+      </para>
+      <para>
+       Les sauvegardes de bases antérieures à la 8.1 chargées en 8.1 utiliseront
+       l'ancienne représentation textuelle et, du coup, ne bénéficieront pas
+       des fonctionnalités des arguments stockés d'après leur OID. Néanmoins,
+       il est possible de mettre à jour une base contenant des clauses
+       <literal>DEFAULT</literal> en texte. Tout d'abord, sauvegardez cette
+       requête dans un fichier, comme <filename>fixseq.sql</filename>&nbsp;:
+<programlisting>SELECT  'ALTER TABLE ' ||
+    pg_catalog.quote_ident(n.nspname) || '.' ||
+    pg_catalog.quote_ident(c.relname) ||
+    ' ALTER COLUMN ' || pg_catalog.quote_ident(a.attname) ||
+    ' SET DEFAULT ' ||
+    regexp_replace(d.adsrc,
+                   $$val\(\(('[^']*')::text\)::regclass$$,
+                   $$val\(\1$$,
+                   'g') ||
+    ';'
+FROM    pg_namespace n, pg_class c, pg_attribute a, pg_attrdef d
+WHERE   n.oid = c.relnamespace AND
+    c.oid = a.attrelid AND
+    a.attrelid = d.adrelid AND
+    a.attnum = d.adnum AND
+    d.adsrc ~ $$val\(\('[^']*'::text\)::regclass$$;
+</programlisting>
+       Ensuite, exécutez la requête sur une base pour découvrir les ajustements
+       nécessaires, comme pour cette base <literal>db1</literal>&nbsp;:
+<programlisting>psql -t -f fixseq.sql db1
+</programlisting>
+       Ceci affichera les commandes <command>ALTER TABLE</command> nécessaires
+       pour convertir la base à la représentation OID la plus récente. Si les
+       commandes semblent raisonnables, exécutez ceci pour mettre à jour la
+       base de données&nbsp;:
+<programlisting>psql -t -f fixseq.sql db1 | psql -e db1
+</programlisting>
+       Ce processus doit être répétée pour chaque base à mettre à jour.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Dans <application>psql</application>, les séquences
+       <literal>\{chiffre}+</literal> sans guillemets sont traités comme des
+       nombres codés en octal (Bruce)
+      </para>
+      <para>
+       Dans les versions précédentes, les séquences <literal>\{chiffre}+</literal>
+       étaient traitées comme des nombres codés en décimal et les séquences
+       <literal>\0{digit}+</literal> l'étaient comme des nombres codés en
+       octal. Cette modification a pour but la cohérence de traitement.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Suppression des grammaires utilisant les opérateurs <literal>%</literal>
+       et <literal>^</literal> en préfixe et en suffixe.
+       (Tom)
+      </para>
+      <para>
+       Ils n'ont jamais été documentés et compliquaient l'utilisation de
+       l'opérateur modulo (<literal>%</literal>) avec les nombres négatifs.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Rend <literal>&amp;&lt;</literal> et <literal>&amp;&gt;</literal> cohérent
+       pour les polygones abec les opérateurs "over" du type box (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>CREATE LANGUAGE</command> peut ignorer les arguments fournis
+       pour utiliser l'information provenant de <structname>pg_pltemplate</structname>
+       (Tom)
+      </para>
+      <para>
+       Un nouveau catalogue système nommé
+       <structname>pg_pltemplate</structname> a été défini pour stocker des
+       informations sur les définitions préférées des langages de procédure
+       (comme par exemple si elles ont des fonctions de validation). Quand une
+       telle entrée existe dans le catalogue pour le langage en cours de
+       création, <command>CREATE LANGUAGE</command> ignorera tous ces paramètres
+       sauf le nom du langage et utilisera à la place les informations du
+       catalogue. Cette mesure a été prise à cause des problèmes de plus en plus
+       fréquents de définition de langage obsolète chargée à partir d'anciennes
+       sauvegardes. À partir de la 8.1, <application>pg_dump</application>
+       sauvegardera les définitions de langage de procédures avec un simple
+       <command>CREATE LANGUAGE <replaceable>nom</replaceable></command>, se
+       reposant sur l'entrée modèle existant au moment du chargement. Nous nous
+       attendons à ce que cela soit une représentation plus pérenne.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fait que <function>pg_cancel_backend(int)</function> renvoit une valeur
+       de type <type>boolean</type> plutôt qu'un <type>integer</type> (Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Certains utilisateurs ont des problèmes en chargeant des données UTF-8
+       en 8.1.X. Ceci est dû aux précédentes versions qui permettaient l'ajout
+       de séquences d'octets UTF-8 invalides dans la base. Cette version
+       accepte seulement les séquences UTF-8 valides. Vous pouvez corriger une
+       sauvegarde en exécutant la commande <command>iconv -c -f UTF-8 -t
+       UTF-8 -o bonnesauvegarde.sql sauvegarde.sql</command>. L'option
+       <literal>-c</literal> supprime les séquences de caractères invalides.
+       Un diff des deux fichiers affichera les séquences invalides.
+       <command>iconv</command> lit le fichier en entrée en mémoire, donc il
+       pourrait se révéler nécessaire de <application>diviser</application> la
+       sauvegarde en plusieurs petits fichiers pour le traitement.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+   </sect2>
+ 
+   <sect2>
+    <title>Modifications supplémentaires</title>
+ 
+    <para>
+     Vous trouverez ci-dessous une liste détaillée des modifications
+     supplémentaires réalisées pour <productname>PostgreSQL</productname> 8.1.
+    </para>
+ 
+    <sect3>
+     <title>Améliorations des performances</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Amélioration des performances des index GiST et R-tree (Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de l'optimiseur, ceci incluant le redimensionnement
+        automatique des jointures hash (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Révision de l'API interne sur plusieurs domaines
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Changement des CRC, passés de 64 à 32 bits, pour l'enregistrement des
+        WAL (Tom)
+       </para>
+       <para>
+        Nous avons déterminé que le coût supplémentaire du calcul des CRC en 64
+        bits était important et que le gain en fiabilité était trop marginal pour
+        le justifier.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Empêche la création de gros trous vides dans les pages WAL (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration du comportement du spinlock sur les machines SMP,
+        particulièrement pour les Opterons (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Autorise l'utilisation de colonnes non consécutives d'un index dans
+        un index multicolonnes (Tom)
+       </para>
+       <para>
+        Par exemple, cela permet l'utilisation d'un index sur les colonnes
+        a, b, c dans une requête dont le filtre est <command>WHERE a = 4 and
+        c = 10</command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Passe la journalisation WAL pour <command>CREATE TABLE AS</command> /
+        <command>SELECT INTO</command> (Simon)
+       </para>
+       <para>
+        Comme l'arrêt brutal durant un <command>CREATE TABLE AS</command>
+        occasionnera la suppression de la table lors de l'opération de récupération,
+        il n'y a aucune raison de conserver le chargement de la table dans les
+        WAL. (Néanmoins, la journalisation se fait quand même si l'archivage des
+        WAL est activé.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Autorise l'accès en parallèle d'index GiST (Teodor, Oleg)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout d'un paramètre de configuration <varname>full_page_writes</varname>
+        pour contrôler l'écriture de pages complètes dans les WAL (Bruce)
+       </para>
+       <para>
+        Pour empêcher que des écritures disques partielles corrompent la base
+        de données, <productname>PostgreSQL</productname> écrit une copie
+        complète de chaque page disque de la base dans les WAL la première fois
+        que la page est modifiée après un point de vérification. Cette option
+        désactive cette fonctionnalité pour gagner en rapidité. Ceci ne doit
+        pas poser de problème avec des caches disques sur batterie où des
+        écritures partielles de page ne peuvent pas arriver.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Utilisation de <literal>O_DIRECT</literal> si disponible lors de
+        l'utilisation de <literal>O_SYNC</literal> pour
+        <varname>wal_sync_method</varname> (Itagaki Takahiro)
+       </para>
+       <para>
+        <literal>O_DIRECT</literal> fait que les écritures disques contournent
+        le cache du noyau et cela améliore les performances pour les écritures
+        des WAL.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des performances du <command>COPY FROM</command> (Alon Goldshuv)
+       </para>
+       <para>
+        Ceci se fait en lisant l'entrée de <command>COPY</command> par de plus
+        gros morceaux, plutôt que caractère par caractère.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des performances de <function>COUNT()</function>,
+        <function>SUM</function>, <function>AVG()</function>,
+        <function>STDDEV()</function> et
+        <function>VARIANCE()</function> (Neil, Tom)
+       </para>
+      </listitem>
+     </itemizedlist>
+    </sect3>
+
+    <sect3>
+     <title>Modifications du serveur</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Empêche les problèmes dûs à la réinitialisation de l'ID de transaction
+        (XID) (Tom)
+       </para>
+       <para>
+        Maintenant, le serveur avertira quand le compteur de transaction approche
+        du point de réinitialisation. Si le compteur s'en approche trop, le
+        serveur refusera les requêtes. Ceci permet de s'assurer que des données
+        ne seront pas perdues avant que le VACUUM nécessaire ne soit réalisé.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Correction de problèmes avec des conflits entre des identifiants d'objets
+        (OID) et des objets systèmes existants une fois que le compteur d'OID
+        s'est réinitialisé (Tom)
+       </para>
+      </listitem>
+  
+      <listitem>
+       <para>
+        Ajout d'un avertissement sur le besoin d'augmenter
+        <varname>max_fsm_relations</varname> et <varname>max_fsm_pages</varname>
+        lors des <command>VACUUM</command> (Ron Mayer)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout du paramètre de configuration <varname>temp_buffers</varname>
+        autorisant les utilisateurs à déterminer la taille du tampon local
+        pour les accès aux tables temporaires (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de l'heure de début de la session et de l'adresse IP du client
+        dans <literal>pg_stat_activity</literal> (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajustement des vues <literal>pg_stat</literal> pour les parcours de
+        bitmap (Tom)
+       </para>
+       <para>
+        La signification de certains champs a changé légèrement.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la vue <literal>pg_locks</literal> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Trace des requêtes côté client, <command>PREPARE</command> et
+        <command>EXECUTE</command> (Simon)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Autorise l'indication de la sensibilité à la casse pour le nom
+        Kerberos et le nom utilisateur dans
+        <filename>postgresql.conf</filename> (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout du paramètre de configuration <varname>krb_server_hostname</varname>
+        pour que le nom de l'hôte puisse être indiqué comme faisant parti du
+        service principal (Todd Kover)
+       </para>
+       <para>
+        S'il n'est pas configuré, aucun service principal correspondant à une
+        entrée dans la table des clés ne peut être utilisé. Ceci est le nouveau
+        comportement de Kerberos pour cette version.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout d'options pour <varname>log_line_prefix</varname> (datage à la
+        milliseconde avec <literal>%m</literal> et hôte distant avec
+        <literal>%h</literal>) (Ed L.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout des journaux WAL pour les index GiST (Teodor, Oleg)
+       </para>
+       <para>
+        Les index GiST sont maintenant fiables en ce qui concernent les arrêts
+        brutaux et la récupération à un instant donné.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression des anciens fichiers <filename>*.backup</filename> lors du
+        <function>pg_stop_backup()</function> (Bruce)
+       </para>
+       <para>
+        Ceci empêche qu'un grand nombre de fichiers <filename>*.backup</filename>
+        restent dans <filename>pg_xlog/</filename>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout des paramètres de configuration contrôlant certaines constantes
+        keep-alive de TCP/IP (idle, interval et count) (Oliver Jowett)
+       </para>
+
+       <para>
+        Ces valeurs sont modifiables pour permettre une détection plus rapide
+        de la perte de connexions clientes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de limites de connexion par utilisateur et par base de données
+        (Petr Jelinek)
+       </para>
+       <para>
+        En utilisant <command>ALTER USER</command> et <command>ALTER DATABASE</command>,
+        des limites peuvent être enregistrées sur le nombre maximum de sessions
+        connectées en même temps pour un utilisateur spécifique ou une base
+        spécifique. Configurer la limite à zéro empêche l'utilisateur de se connecter
+        ou empêche toute connexion sur cette base.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Autorise plus de 2&nbsp;Go de mémoire partagé et de work_memory par
+        processus serveur sur les machines 64 bits (Koichi Suzuki)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Le nouveau catalogue système <structname>pg_pltemplate</structname> permet
+        la surcharge des définitions obsolètes de langages de procédures dans
+        les sauvegardes (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Modifications des requêtes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Ajout des vues temporaires (Koju Iijima, Neil) 
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Correction de <command>HAVING</command> sans fonctions d'agrégat ou
+        <command>GROUP BY</command> pour que la requête ne renvoit qu'un seul
+        groupe (Tom)
+       </para>
+       <para>
+        Auparavant, la clause <command>HAVING</command> aurait été traitée comme
+        une clause <command>WHERE</command>. Ce n'était pas conforme au
+        standard.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de la clause <command>USING</command> pour indiquer des tables
+        supplémentaires dans une commande <command>DELETE</command> (Euler
+        Taveira de Oliveira, Neil)
+       </para>
+       <para>
+        Dans les versions précédentes, il n'existait pas de méthode claire pour
+        utiliser des tables supplémentaires dans des jointures sur une instruction
+        <command>DELETE</command>. <command>UPDATE</command> a déjà une clause
+        <literal>FROM</literal> pour remplir ce but.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout du support de <literal>\x</literal> pour les échappements de nombres
+        en hexadécimal dans les chaînes du moteur et dans celles d'ecpg (Bruce)
+       </para>
+       <para>
+        Cela fonctionne comme la syntaxe d'échappement <literal>\x</literal>
+        en C. Les échappements de nombres en octal sont déjà supportés.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de la syntaxe de requête <command>BETWEEN SYMMETRIC</command>
+        (Pavel Stehule)
+       </para>
+       <para>
+        Cette fonctionnalité autorise l'utilisation de comparaisons
+        <command>BETWEEN</command> sans nécessiter que la première valeur soit
+        inférieure à la seconde. Par exemple, <command>2 BETWEEN [ASYMMETRIC]
+        3 AND 1</command> renvoie faux alors que <command>2 BETWEEN SYMMETRIC
+        3 AND 1</command> renvoie vrai. <command>BETWEEN ASYMMETRIC</command>
+        était déjà supporté.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de l'option <command>NOWAIT</command> pour <command>SELECT ... FOR
+        UPDATE/SHARE</command> (Hans-Juergen Schoenig)
+       </para>
+       <para>
+        Bien que le paramètre de configuration <varname>statement_timeout</varname>
+        autorise l'annulation d'une requête prenant plus d'un certain temps à
+        s'exécuter, l'option <command>NOWAIT</command> permet l'annulation d'une
+        requête à partir du moment où la commande <command>SELECT ... FOR
+        UPDATE/SHARE</command> n'acquiert pas immédiatement un verrou de ligne.
+       </para>
+      </listitem>
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Changement des manipulations d'objets</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Trace les dépendances des objets partagés (Alvaro)
+       </para>
+       <para>
+        <productname>PostgreSQL</productname> allows global tables
+        (users, databases, tablespaces) to reference information in
+        multiple databases. This addition adds dependency information
+        for global tables, so, for example, user ownership can be
+        tracked across databases, so a user who owns something in any
+        database can no longer be removed. Dependency tracking already
+        existed for database-local objects.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow limited <command>ALTER OWNER</command> commands to be performed 
+        by the object owner (Stephen Frost)
+       </para>
+       <para>
+        Prior releases allowed only superusers to change object owners.
+        Now, ownership can be transferred if the user executing the command
+        owns the object and would be able to create it as the new owner
+        (that is, the user is a member of the new owning role and that role
+        has the CREATE permission that would be needed to create the object
+        afresh).
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>ALTER</command> object <command>SET SCHEMA</command> capability
+        for some object types (tables, functions, types) (Bernd Helmle)
+       </para>
+       <para>
+        This allows objects to be moved to different schemas.
+       </para>
+      </listitem>
+    
+      <listitem>
+       <para>
+        Ajout de <command>ALTER TABLE ENABLE/DISABLE TRIGGER</command> pour
+        désactiver les déclencheurs (Satoshi Nagayasu)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Utility Command Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Allow <command>TRUNCATE</command> to truncate multiple tables in a
+        single command (Alvaro)
+       </para>
+       <para>
+        Because of referential integrity checks, it is not allowed to
+        truncate a table that is part of a referential integrity
+        constraint. Using this new functionality, <command>TRUNCATE</command>
+        can be used to truncate such tables, if both tables involved in
+        a referential integrity constraint are truncated in a single
+        <command>TRUNCATE</command> command.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Properly process carriage returns and line feeds in
+        <command>COPY CSV</command> mode (Andrew)
+       </para>
+       <para>
+        In release 8.0, carriage returns and line feeds in <command>CSV
+        COPY TO</command> were processed in an inconsistent manner. (This was
+        documented on the TODO list.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>COPY WITH CSV HEADER</command> to allow a header line as
+        the first line in <command>COPY</command> (Andrew)
+       </para>
+       <para>
+        This allows handling of the common <command>CSV</command> usage of
+        placing the column names on the first line of the data file. For
+        <command>COPY TO</command>, the first line contains the column names,
+        and for <command>COPY FROM</command>, the first line is ignored.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        On Windows, display better sub-second precision in
+        <command>EXPLAIN ANALYZE</command> (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add trigger duration display to <command>EXPLAIN ANALYZE</command>
+        (Tom)
+       </para>
+       <para>
+        Prior releases included trigger execution time as part of the
+        total execution time, but did not show it separately.  It is now
+        possible to see how much time is spent in each trigger.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <literal>\x</literal> hex escapes in <command>COPY</command>
+        (Sergey Ten)
+       </para>
+       <para>
+        Previous releases only supported octal escapes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>SHOW ALL</command> include variable descriptions
+        (Matthias Schmidt)
+       </para>
+       <para>
+        <command>SHOW</command> varname still only displays the variable's
+        value and does not include the description.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <application>initdb</application> create a new standard
+        database called <literal>postgres</literal>, and convert utilities to
+        use <literal>postgres</literal> rather than <literal>template1</literal> for
+        standard lookups (Dave)
+       </para>
+       <para>
+        In prior releases, <literal>template1</literal> was used both as a
+        default connection for utilities like
+        <application>createuser</application>, and as a template for
+        new databases. This caused <command>CREATE DATABASE</command> to
+        sometimes fail, because a new database cannot be created if
+        anyone else is in the template database. With this change, the
+        default connection database is now <literal>postgres</literal>,
+        meaning it is much less likely someone will be using
+        <literal>template1</literal> during <command>CREATE DATABASE</command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Create new <application>reindexdb</application> command-line
+        utility by moving <filename>/contrib/reindexdb</filename> into the
+        server (Euler Taveira de Oliveira)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Data Type and Function Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Add <function>MAX()</function> and <function>MIN()</function> aggregates for
+        array types (Koju Iijima)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix <function>to_date()</function> and <function>to_timestamp()</function> to
+        behave reasonably when <literal>CC</literal> and <literal>YY</literal> fields
+        are both used (Karel Zak)
+       </para>
+       <para>
+        If the format specification contains <literal>CC</literal> and a year
+        specification is <literal>YYY</literal> or longer, ignore the
+        <literal>CC</literal>. If the year specification is <literal>YY</literal> or
+        shorter, interpret <literal>CC</literal> as the previous century.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>md5(bytea)</function> (Abhijit Menon-Sen)
+       </para>
+       <para>
+        <function>md5(text)</function> already existed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <command>numeric ^ numeric</command> based on
+        <function>power(numeric, numeric)</function>
+       </para>
+       <para>
+        The function already existed, but there was no operator assigned
+        to it.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix <type>NUMERIC</type> modulus by properly truncating the quotient
+        during computation (Bruce)
+       </para>
+       <para>
+        In previous releases, modulus for large values sometimes
+        returned negative results due to rounding of the quotient.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a function <function>lastval()</function>(Dennis Bj&ouml;rklund)
+       </para>
+       <para>
+        <function>lastval()</function> is a simplified version of
+        <function>currval()</function>. It automatically determines the proper
+        sequence name based on the most recent <function>nextval()</function> or
+        <function>setval()</function> call performed by the current session.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>to_timestamp(DOUBLE PRECISION) (Michael Glaesemann)</function>
+       </para>
+       <para>
+        Converts Unix seconds since 1970 to a <type>TIMESTAMP WITH
+        TIMEZONE</type>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_postmaster_start_time()</function> function (Euler
+        Taveira de Oliveira, Matthias Schmidt)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the full use of time zone names in <command>AT TIME
+        ZONE</command>, not just the short list previously available (Magnus)
+       </para>
+       <para>
+        Previously, only a predefined list of time zone names were
+        supported by <command>AT TIME ZONE</command>. Now any supported time
+        zone name can be used, e.g.:
+        <programlisting>         SELECT CURRENT_TIMESTAMP AT TIME ZONE 'Europe/London';
+        </programlisting>
+        In the above query, the time zone used is adjusted based on the
+        daylight saving time rules that were in effect on the supplied
+        date.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>GREATEST()</function> and <function>LEAST()</function> variadic
+        functions (Pavel Stehule)
+       </para>
+       <para>
+        These functions take a variable number of arguments and return
+        the greatest or least value among the arguments.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_column_size()</function> (Mark Kirkwood)
+       </para>
+       <para>
+        This returns storage size of a column, which might be compressed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>regexp_replace()</function> (Atsushi Ogawa)
+       </para>
+       <para>
+        This allows regular expression replacement, like sed. An optional
+        flag argument allows selection of global (replace all) and
+        case-insensitive modes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix interval division and multiplication (Bruce)
+       </para>
+       <para>
+        Previous versions sometimes returned unjustified results, like
+        <command>'4 months'::interval / 5</command> returning <command>'1 mon
+        -6 days'</command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix roundoff behavior in timestamp, time, and interval output (Tom)
+       </para>
+       <para>
+        This fixes some cases in which the seconds field would be shown as
+        <literal>60</literal> instead of incrementing the higher-order fields.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a separate day field to type <type>interval</type> so a one day
+        interval can be distinguished from a 24 hour interval (Michael
+        Glaesemann)
+       </para>
+       <para>
+        Days that contain a daylight saving time adjustment are not 24
+        hours long, but typically 23 or 25 hours.  This change creates a
+        conceptual distinction between intervals of <quote>so many days</quote>
+        and intervals of <quote>so many hours</quote>.  Adding
+        <literal>1 day</literal> to a timestamp now gives the same local time on
+        the next day even if a daylight saving time adjustment occurs
+        between, whereas adding <literal>24 hours</literal> will give a different
+        local time when this happens.  For example, under US DST rules:
+        <programlisting>         '2005-04-03 00:00:00-05' + '1 day' = '2005-04-04 00:00:00-04'
+         '2005-04-03 00:00:00-05' + '24 hours' = '2005-04-04 01:00:00-04'
+        </programlisting>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>justify_days()</function> and <function>justify_hours()</function>
+        (Michael Glaesemann)
+       </para>
+       <para>
+        These functions, respectively, adjust days to an appropriate
+        number of full months and days, and adjust hours to an
+        appropriate number of full days and hours.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Move <filename>/contrib/dbsize</filename> into the backend, and rename
+        some of the functions (Dave Page, Andreas Pflug)
+       </para>
+       <para>
+        <itemizedlist>
+  
+         <listitem>
+          <para>
+            <function>pg_tablespace_size()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_database_size()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_relation_size()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_total_relation_size()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_size_pretty()</function>
+          </para>
+         </listitem>
+ 
+        </itemizedlist>
+       </para>
+       <para>
+        <function>pg_total_relation_size()</function> includes indexes and TOAST
+        tables.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add functions for read-only file access to the cluster directory
+        (Dave Page, Andreas Pflug)
+       </para>
+       <para>
+        <itemizedlist>
+  
+         <listitem>
+          <para>
+           <function>pg_stat_file()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_read_file()</function>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <function>pg_ls_dir()</function>
+          </para>
+         </listitem>
+
+        </itemizedlist>
+       </para>
+      </listitem>
+      
+      <listitem>
+       <para>
+        Add <function>pg_reload_conf()</function> to force reloading of the
+        configuration files (Dave Page, Andreas Pflug)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_rotate_logfile()</function> to force rotation of the
+        server log file (Dave Page, Andreas Pflug)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Change <literal>pg_stat_*</literal> views to include TOAST tables (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Encoding and Locale Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Rename some encodings to be more consistent and to follow
+        international standards (Bruce)
+       </para>
+       <para>
+        <itemizedlist>
+  
+         <listitem>
+          <para>
+           <literal>UNICODE</literal> is now <literal>UTF8</literal>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <literal>ALT</literal> is now <literal>WIN866</literal>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+           <literal>WIN</literal> is now <literal>WIN1251</literal>
+          </para>
+         </listitem>
+
+         <listitem>
+          <para>
+          <literal>TCVN</literal> is now <literal>WIN1258</literal>
+          </para>
+         </listitem>
+
+        </itemizedlist>
+       </para>
+
+       <para>
+        The original names still work.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <literal>WIN1252</literal> encoding (Roland Volkmann)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for four-byte <literal>UTF8</literal> characters (John
+        Hansen)
+       </para>
+       <para>
+        Previously only one, two, and three-byte <literal>UTF8</literal> characters
+        were supported. This is particularly important for support for
+        some Chinese character sets.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow direct conversion between <literal>EUC_JP</literal> and
+        <literal>SJIS</literal> to improve performance (Atsushi Ogawa)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the UTF8 encoding to work on Windows (Magnus)
+       </para>
+       <para>
+        This is done by mapping UTF8 to the Windows-native UTF16 
+        implementation.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>General Server-Side Language Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Fix <command>ALTER LANGUAGE RENAME</command> (Sergey Yatskevich)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow function characteristics, like strictness and volatility,
+        to be modified via <command>ALTER FUNCTION</command> (Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Increase the maximum number of function arguments to 100 (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow SQL and PL/PgSQL functions to use <command>OUT</command> and
+        <command>INOUT</command> parameters (Tom)
+       </para>
+       <para>
+        <command>OUT</command> is an alternate way for a function to return
+        values. Instead of using <command>RETURN</command>, values can be
+        returned by assigning to parameters declared as <command>OUT</command> or
+        <command>INOUT</command>.  This is notationally simpler in some cases,
+        particularly so when multiple values need to be returned.
+        While returning multiple values from a function
+        was possible in previous releases, this greatly simplifies the
+        process.  (The feature will be extended to other server-side
+        languages in future releases.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Move language handler functions into the <literal>pg_catalog</literal> schema
+       </para>
+       <para>
+        This makes it easier to drop the public schema if desired.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>SPI_getnspname()</function> to SPI (Neil)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+    <sect3>
+     <title>PL/PgSQL Server-Side Language Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Overhaul the memory management of PL/PgSQL functions (Neil)
+       </para>
+       <para>
+        The parsetree of each function is now stored in a separate
+        memory context. This allows this memory to be easily reclaimed
+        when it is no longer needed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Check function syntax at <command>CREATE FUNCTION</command> time,
+        rather than at runtime (Neil)
+       </para>
+       <para>
+        Previously, most syntax errors were reported only when the
+        function was executed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <command>OPEN</command> to open non-<command>SELECT</command> queries
+        like <command>EXPLAIN</command> and <command>SHOW</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        No longer require functions to issue a <command>RETURN</command>
+        statement (Tom)
+       </para>
+       <para>
+        This is a byproduct of the newly added <command>OUT</command> and
+        <command>INOUT</command> functionality.  <command>RETURN</command> can
+        be omitted when it is not needed to provide the function's
+        return value.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for an optional <command>INTO</command> clause to
+        PL/PgSQL's <command>EXECUTE</command> statement (Pavel Stehule, Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>CREATE TABLE AS</command> set <command>ROW_COUNT</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Define <literal>SQLSTATE</literal> and <literal>SQLERRM</literal> to return
+        the <literal>SQLSTATE</literal> and error message of the current
+        exception (Pavel Stehule, Neil)
+       </para>
+       <para>
+        These variables are only defined inside exception blocks.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the parameters to the <command>RAISE</command> statement to be
+        expressions (Pavel Stehule, Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a loop <command>CONTINUE</command> statement (Pavel Stehule, Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow block and loop labels (Pavel Stehule)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>PL/Perl Server-Side Language Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow large result sets to be returned efficiently (Abhijit
+        Menon-Sen)
+       </para>
+       <para>
+        This allows functions to use <function>return_next()</function> to avoid
+        building the entire result set in memory.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow one-row-at-a-time retrieval of query results (Abhijit Menon-Sen)
+       </para>
+       <para>
+        This allows functions to use <function>spi_query()</function> and
+        <function>spi_fetchrow()</function> to avoid accumulating the entire
+        result set in memory.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Force PL/Perl to handle strings as <literal>UTF8</literal> if the
+        server encoding is <literal>UTF8</literal> (David Kamholz)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a validator function for PL/Perl (Andrew)
+       </para>
+       <para>
+        This allows syntax errors to be reported at definition time,
+        rather than execution time.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow PL/Perl to return a Perl array when the function returns
+        an array type (Andrew)
+       </para>
+       <para>
+        This basically maps <productname>PostgreSQL</productname> arrays
+        to Perl arrays.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow Perl nonfatal warnings to generate <command>NOTICE</command>
+        messages (Andrew)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow Perl's <literal>strict</literal> mode to be enabled (Andrew)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+
+
+    <sect3>
+     <title><application>psql</application> Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Add <command>\set ON_ERROR_ROLLBACK</command> to allow statements in
+        a transaction to error without affecting the rest of the
+        transaction (Greg Sabino Mullane)
+       </para>
+       <para>
+        This is basically implemented by wrapping every statement in a
+        sub-transaction.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <literal>\x</literal> hex strings in
+        <application>psql</application> variables (Bruce)
+       </para>
+       <para>
+        Octal escapes were already supported.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <command>troff -ms</command> output format (Roger
+        Leigh)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the history file location to be controlled by
+        <envar>HISTFILE</envar> (Andreas Seltenreich)
+       </para>
+       <para>
+        This allows configuration of per-database history storage.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Prevent <command>\x</command> (expanded mode) from affecting
+        the output of <command>\d tablename</command> (Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <option>-L</option> option to <application>psql</application> to
+        log sessions (Lorne Sunley)
+       </para>
+       <para>
+        This option was added because some operating systems do not have
+        simple command-line activity logging functionality.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\d</command> show the tablespaces of indexes (Qingqing
+        Zhou)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>psql</application> help (<command>\h</command>) to
+        make a best guess on the proper help information (Greg Sabino
+        Mullane)
+       </para>
+       <para>
+        This allows the user to just add <command>\h</command> to the front of
+        the syntax error query and get help on the supported syntax.
+        Previously any additional query text beyond the command name
+        had to be removed to use <command>\h</command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>\pset numericlocale</command> to allow numbers to be
+        output in a locale-aware format (Eugen Nedelcu)
+       </para>
+       <para>
+        For example, using <literal>C</literal> locale <literal>100000</literal> would
+        be output as <literal>100,000.0</literal> while a European locale might
+        output this value as <literal>100.000,0</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make startup banner show both server version number and
+        <application>psql</application>'s version number, when they are different (Bruce)
+       </para>
+       <para>
+        Also, a warning will be shown if the server and <application>psql</application>
+        are from different major releases.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title><application>pg_dump</application> Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Add <option>-n</option> / <option>--schema</option> switch to 
+        <application>pg_restore</application> (Richard van den Berg)
+       </para>
+       <para>
+        This allows just the objects in a specified schema to be restored.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>pg_dump</application> to dump large objects even in 
+        text mode (Tom)
+       </para>
+       <para>
+        With this change, large objects are now always dumped; the former
+        <option>-b</option> switch is a no-op.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>pg_dump</application> to dump a consistent snapshot of 
+        large objects (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Dump comments for large objects (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <option>--encoding</option> to <application>pg_dump</application> 
+        (Magnus Hagander)
+       </para>
+       <para>
+        This allows a database to be dumped in an encoding that is
+        different from the server's encoding. This is valuable when
+        transferring the dump to a machine with a different encoding.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Rely on <structname>pg_pltemplate</structname> for procedural languages (Tom)
+       </para>
+       <para>
+        If the call handler for a procedural language is in the
+        <literal>pg_catalog</literal> schema, <application>pg_dump</application> does not
+        dump the handler.  Instead, it dumps the language using just
+        <command>CREATE LANGUAGE <replaceable>name</replaceable></command>,
+        relying on the <structname>pg_pltemplate</structname> catalog to provide
+        the language's creation parameters at load time.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title><application>libpq</application> Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Add a <envar>PGPASSFILE</envar> environment variable to specify the
+        password file's filename (Andrew)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>lo_create()</function>, that is similar to
+        <function>lo_creat()</function> but allows the OID of the large object
+        to be specified (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <application>libpq</application> consistently return an error
+        to the client application on <function>malloc()</function>
+        failure (Neil)
+       </para>
+      </listitem>
+     </itemizedlist>
+    </sect3>
+  
+  
+    <sect3>
+     <title>Source Code Changes</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Fix <application>pgxs</application> to support building against a relocated
+        installation
+       </para>
+      </listitem>
+  
+      <listitem>
+       <para>
+        Add spinlock support for the Itanium processor using Intel
+        compiler (Vikram Kalsi)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add Kerberos 5 support for Windows (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add Chinese FAQ (laser at pgsqldb.com)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Rename Rendezvous to Bonjour to match OS/X feature renaming
+        (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <literal>fsync_writethrough</literal> on
+        Darwin (Chris Campbell)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Streamline the passing of information within the server, the
+        optimizer, and the lock system (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>pg_config</application> to be compiled using MSVC (Andrew)
+       </para>
+       <para>
+        This is required to build DBD::Pg using <application>MSVC</application>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove support for Kerberos V4 (Magnus)
+       </para>
+       <para>
+        Kerberos 4 had security vulnerabilities and is no longer
+        maintained.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Code cleanups (Coverity static analysis performed by
+        EnterpriseDB)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modify <filename>postgresql.conf</filename> to use documentation defaults
+        <literal>on</literal>/<literal>off</literal> rather than
+        <literal>true</literal>/<literal>false</literal> (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Enhance <application>pg_config</application> to be able to report more
+        build-time values (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>libpq</application> to be built thread-safe
+        on Windows (Dave Page)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow IPv6 connections to be used on Windows (Andrew)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add Server Administration documentation about I/O subsystem
+        reliability (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Move private declarations from <filename>gist.h</filename> to
+        <filename>gist_private.h</filename> (Neil)
+       </para>
+
+       <para>
+        In previous releases, <filename>gist.h</filename> contained both the
+        public GiST API (intended for use by authors of GiST index
+        implementations) as well as some private declarations used by
+        the implementation of GiST itself. The latter have been moved
+        to a separate file, <filename>gist_private.h</filename>. Most GiST
+        index implementations should be unaffected.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Overhaul GiST memory management (Neil)
+       </para>
+
+       <para>
+        GiST methods are now always invoked in a short-lived memory
+        context. Therefore, memory allocated via <function>palloc()</function>
+        will be reclaimed automatically, so GiST index implementations
+        do not need to manually release allocated memory via
+        <function>pfree()</function>.
+       </para>
+      </listitem>
+     </itemizedlist>
+    </sect3>
+
+
+    <sect3>
+     <title>Modifications des modules contrib</title>
+     <itemizedlist>
+  
+      <listitem>
+       <para>
+        Ajout du module contrib <filename>/contrib/pg_buffercache</filename>
+        (Mark Kirkwood)
+       </para>
+       <para>
+        Ceci affiche le contenu du cache tampon pour le débogage et pour des
+        tests de performance.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression de <filename>/contrib/array</filename> car il est devenu
+        obsolète (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Nettoyage du module <filename>/contrib/lo</filename> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Déplacement de <filename>/contrib/findoidjoins</filename> dans
+        <filename>/src/tools</filename> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Renommage des opérateurs <literal>&lt;&lt;</literal>, <literal>&gt;&gt;</literal>,
+        <literal>&amp;&lt;</literal> et <literal>&amp;&gt;</literal> dans
+        <filename>/contrib/cube</filename>
+       </para>
+       <para>
+        Ces opérateurs n'étaient plus utiles.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de <filename>/contrib/btree_gist</filename> (Janko Richter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de <filename>/contrib/pgbench</filename> (Tomoaki Sato, Tatsuo)
+       </para>
+       <para>
+        Il existe maintenant une fonctionnalité pour tester avec des scripts SQL
+        fournis par l'utilisateur, plutôt que par des séquences de commandes
+        codées en dur.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de <filename>/contrib/pgcrypto</filename> (Marko Kreen)
+       </para>
+
+       <itemizedlist>
+  
+        <listitem>
+         <para>
+          Implémentation du chiffrement des clés OpenPGP symétriques et public
+         </para>
+         <para>
+          Les algorithmes à clé publique RSA et Elgamal sont supportés.
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Construction autonome&nbsp;: inclut les hashs SHA256/384/512, et Fortuna PRNG
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Construction OpenSSL&nbsp;: support de 3DES, utilisation d'un AES
+          interne avec OpenSSL &lt; 0.9.7
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Prend les paramètres de constructions (OpenSSL, zlib) à partir du
+          résultat de <filename>configure</filename>
+         </para>
+         <para>
+          Il n'est plus nécessaire de modifier le fichier
+          <filename>Makefile</filename>.
+         </para>
+        </listitem>
+
+        <listitem>
+         <para>
+          Suppression du support pour <filename>libmhash</filename> et
+          <filename>libmcrypt</filename>
+         </para>
+        </listitem>
+
+       </itemizedlist>
+      </listitem>
+
+     </itemizedlist>
+    </sect3>
+  
+   </sect2>
+  </sect1>

Added: traduc/trunk/postgresql/release-8.2.xml
===================================================================
--- traduc/trunk/postgresql/release-8.2.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-8.2.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,4919 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <sect1 id="release-8-2-13">
+  <title>Version 8.2.13</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-03-16</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.2.12.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.13</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.2.11, voir les notes de sortie de la 8.2.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.
+      (CVE-2009-0922)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
+      argument des codes de format inappropriés pour la donnée en argument
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un échec possible dans <filename>contrib/tsearch2</filename>
+      lorsque la locale C est utilisée avec un encodage multi-octets (Teodor)
+     </para>
+
+     <para>
+      Les crashes étaient possibles sur les plateformes où <type>wchar_t</type>
+      est plus petit que <type>int</type>&nbsp;; Windows en particulier.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de l'inefficacité extrême dans la gestion par l'analyseur
+      <filename>contrib/tsearch2</filename> d'une chaîne de type email contenant de
+      nombreux caractères <literal>@</literal> (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
+      cette instruction est utilisée avec une coercion explicite
+      (Tom)
+     </para>
+
+     <para>
+      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
+      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
+      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
+      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise affectation possible du propriétaire du rowtype
+      d'une table TOAST (Tom)
+     </para>
+
+     <para>
+      Si <command>CLUSTER</command> ou une variante de <command>ALTER
+      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
+      d'autre que le propriétaire de la table, l'entrée
+      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
+      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
+      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
+      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
+      opération ordinaire de la base de données. Néanmoins, cela peut amener
+      des échecs inattendus si une personne tente plus tard de supprimer le rôle
+      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
+      du type <quote>propriétaire du type de données semble invalide</quote>
+      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
+      (en 8.3).
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/pgSQL pour qu'il ne traite pas <literal>INTO</literal>
+      après un <command>INSERT</command> comme une clause d'affectation de
+      variables, quelque soit son emplacement&nbsp;; en particulier, cela
+      permet d'éviter un échec sur un <command>INSERT INTO</command> compris
+      dans une commande <command>CREATE RULE</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
+      bloc (Ashesh Vashi et Dave Page)
+     </para>
+
+     <para>
+      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
+      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
+      fonction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ré-essaie d'appeler <function>CallNamedPipe()</function> après un échec
+      sur Windows (Steve Marshall, Magnus)
+     </para>
+
+     <para>
+      Il semble que cette fonction puisse échouer de temps en temps&nbsp;;
+      auparavant, nous avons traiter toute erreur comme une erreur grave
+      qui pourrait poser problème aux instructions <command>LISTEN</command>
+      / <command>NOTIFY</command> ainsi qu'à d'autres opérations.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de <literal>MUST</literal> (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-8-2-12">
+  <title>Version 8.2.12</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-02-02</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.2.11.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.12</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.2.7, voir les notes de sortie de la 8.2.7.
+   </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>
+      Empêche des échecs possibles avec Assert si une instruction exécutée en
+      PL/pgSQL est ré-écrite dans un autre type d'instruction, par exemple si
+      <command>INSERT</command> est ré-écrit en <command>UPDATE</command>
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une image de la base est disponible pour les fonctions en
+      entrée des types (Tom)
+     </para>
+
+     <para>
+      Ceci affecte principalement les domaines qui sont déclarés avec des
+      contraintes <literal>CHECK</literal> impliquant des fonctions stables
+      ou immutables définies par l'utilisateur. De telles fonctions échouent
+      typiquement si aucune image de la base n'a été réalisée.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Rend plus sûr l'utilisation des entrées/sorties de type avec les fonctions
+      SPI&nbsp;; en particulier à utiliser aves les contraintes de vérifications
+      pour les domaines (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Évite un verrou inutile des petites tables dans <command>VACUUM</command>
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un problème faisant que <literal>UPDATE RETURNING
+      tableoid</literal> renvoie zéro au lieu du bon OID (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise estimation de la sélectivité du planificateur
+      quand une égalité transitive est appliquée à une clause jointure externe
+      (Tom)
+     </para>
+
+     <para>
+      Ceci pourrait résulter en de mauvais plans pour les requêtes identiques à
+      <literal>... from a left join b on a.a1 = b.b1 where a.a1 = 42 ...</literal>
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Amélioration de la gestion des grosses listes <literal>IN</literal> par
+      l'optimiseur (Tom)
+     </para>
+
+     <para>
+      Cette modification évite de perdre beaucoup de temps sur de telles listes
+      dans la contrainte d'exclusion est activée.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
+      des tables TOAST (Tom)
+     </para>
+
+     <para>
+      Auparavant, des valeurs de champ large dans un résultat de curseur
+      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
+      un échec si la table référencée était supprimée avant la lecture du
+      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
+      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
+      un curseur qui est conservé après sa transaction de création.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une fuite mémoire lorsqu'une fonction SRF se termine sans
+      lecture du résultat complet (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la fonction <function>dblink_get_result(text,bool)</function>
+      de <filename>contrib/dblink</filename> (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais retour des fonctions de
+      <filename>contrib/sslinfo</filename> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction du script <application>configure</application> pour rapporter
+      correctement les échecs quand il est incapable d'obtenir les informations
+      de liens pour PL/Perl (Andrew)
+     </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>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
+      <application>tzdata</application> (pour le Kathmandou et des corrections
+      historiques de DST en Switzerland et à Cuba)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-11">
+  <title>Version 8.2.11</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2008-11-03</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.2.10.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.11</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.2.7, voir les notes de sortie de la 8.2.7.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
+      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
+     </para>
+
+     <para>
+      Cela peut avoir comme conséquence des échecs dans les recherches par
+      index pour des lignes qu'elles auraient dû trouver.
+     </para>
+    </listitem>
+
+    <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</quote> 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 d'un crash possible lorsque des fonctions profondément
+      imbriquées sont appelées à partir d'un trigger (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Amélioration de l'optimisation des requêtes de type
+      <replaceable>expression</replaceable> <literal>IN</literal>
+      (<replaceable>liste-expression</replaceable>) (Tom, à partir d'une idée de
+      Robert Haas)
+     </para>
+
+     <para>
+      Les cas où il se trouve des variables de requpetes dans le côté droit
+      étaient gérés moins efficacement dans les versions 8.2.x et 8.3.x que
+      dans les versions précédentes. La correction restaure le comportement
+      de la 8.1 pour ces cas.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise expansion de requêtes de règles quand un
+      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
+      <literal>FROM</literal>, d'une liste <literal>VALUES</literal> multi-lignes ou
+      d'une liste <literal>RETURNING</literal> (Tom)
+     </para>
+
+     <para>
+      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
+      inconnu</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une fuite mémoire lors du parcours d'un plan d'aggrégation
+      haché (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
+      nouvellement définie est appelée comme une fonction normale (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Empêche une collision possible du <structfield>relfilenode</structfield>
+      lors du déplacement d'une table vers un autre tablespace avec
+      <command>ALTER SET TABLESPACE</command> (Heikki)
+     </para>
+
+     <para>
+      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
+      prendre un qu'on sait inutilisé dans le répertoire de destination.
+     </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</option>
+      (Ron Mayer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
+      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</command> par
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <filename>pg_control</filename> en ouvert en mode binaire
+      seul (Itagaki Takahiro)
+     </para>
+
+     <para>
+      <application>pg_controldata</application> et <application>pg_resetxlog</application>
+      ne le faisaient pas correction, ce qui provoquait un échec sur Windows.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires vers la version
+      2008i de <application>tzdata</application> (pour les modifications légales de DST en
+      Argentine, au Brésil, à l'Île Maurice et en Syrie)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-10">
+  <title>Version 8.2.10</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-09-22</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.2.9.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.10</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
+    However, if you are upgrading from a version earlier than 8.2.7,
+    see the release notes for 8.2.7.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix bug in btree WAL recovery code (Heikki)
+     </para>
+
+     <para>
+      Recovery failed if the WAL ended partway through a page split operation.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix potential miscalculation of <structfield>datfrozenxid</structfield> (Alvaro)
+     </para>
+
+     <para>
+      This error may explain some recent reports of failure to remove old
+      <structname>pg_clog</structname> data.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Widen local lock counters from 32 to 64 bits (Tom)
+     </para>
+
+     <para>
+      This responds to reports that the counters could overflow in
+      sufficiently long transactions, leading to unexpected <quote>lock is
+      already held</quote> errors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible duplicate output of tuples during a GiST index scan (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix missed permissions checks when a view contains a simple
+      <literal>UNION ALL</literal> construct (Heikki)
+     </para>
+
+     <para>
+      Permissions for the referenced tables were checked properly, but not
+      permissions for the view itself.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add checks in executor startup to ensure that the tuples produced by an
+      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
+      current rowtype (Tom)
+     </para>
+
+     <para>
+      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
+      cached plan, could produce this type of situation.  The check protects
+      against data corruption and/or crashes that could ensue.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible repeated drops during <command>DROP OWNED</command> (Tom)
+     </para>
+
+     <para>
+      This would typically result in strange errors such as <quote>cache
+      lookup failed for relation NNN</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <literal>AT TIME ZONE</literal> to first try to interpret its timezone
+      argument as a timezone abbreviation, and only try it as a full timezone
+      name if that fails, rather than the other way around as formerly (Tom)
+     </para>
+
+     <para>
+      The timestamp input functions have always resolved ambiguous zone names
+      in this order.  Making <literal>AT TIME ZONE</literal> do so as well improves
+      consistency, and fixes a compatibility bug introduced in 8.1:
+      in ambiguous cases we now behave the same as 8.0 and before did,
+      since in the older versions <literal>AT TIME ZONE</literal> accepted
+      <emphasis>only</emphasis> abbreviations.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix datetime input functions to correctly detect integer overflow when
+      running on a 64-bit platform (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent integer overflows during units conversion when displaying a
+      configuration parameter that has units (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve performance of writing very long log messages to syslog (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow spaces in the suffix part of an LDAP URL in
+      <filename>pg_hba.conf</filename> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
+      ON</literal> query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner bug with nested sub-select expressions (Tom)
+     </para>
+
+     <para>
+      If the outer sub-select has no direct dependency on the parent query,
+      but the inner one does, the outer value might not get recalculated
+      for new parent query rows.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to estimate that <literal>GROUP BY</literal> 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>
+      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
+      is a record containing composite-type fields (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
+      about the encoding of data sent to or from Tcl (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, work around a Microsoft bug by preventing
+      <application>libpq</application> from trying to send more than 64kB per system call
+      (Magnus)
+     </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>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to properly preserve postmaster
+      command-line arguments across a <literal>restart</literal> (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008f (for
+      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
+      Pakistan, Palestine, and Paraguay)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-9">
+  <title>Version 8.2.9</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-06-12</simpara>
+  </note>
+
+  <para>
+   This release contains one serious and one minor bug fix over 8.2.8.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.9</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
+    However, if you are upgrading from a version earlier than 8.2.7,
+    see the release notes for 8.2.7.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
+      be <literal>(-42)::integer</literal> due to operator precedence rules.
+      Usually this would make little difference, but it could interact with
+      another recent patch to cause
+      <productname>PostgreSQL</productname> to reject what had been a valid
+      <command>SELECT DISTINCT</command> view query.  Since this could result in
+      <application>pg_dump</application> 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>
+
+    <listitem>
+     <para>
+      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
+      <structname>pg_shdepend</structname> (Tom)
+     </para>
+
+     <para>
+      This oversight could lead to problems if the aggregate was later
+      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
+      operation.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-8">
+  <title>Version 8.2.8</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>never released</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.2.7.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.8</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
+    However, if you are upgrading from a version earlier than 8.2.7,
+    see the release notes for 8.2.7.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix <literal>ERRORDATA_STACK_SIZE exceeded</literal> crash that
+      occurred on Windows when using UTF-8 database encoding and a different
+      client encoding (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
+      column is correctly checked to see if it's been initialized to all
+      non-nulls (Brendan Jurd)
+     </para>
+
+     <para>
+      Previous versions neglected to check this requirement at all.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible <command>CREATE TABLE</command> failure when inheriting the
+      <quote>same</quote> constraint from multiple parent relations that
+      inherited that constraint from a common ancestor (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>pg_get_ruledef()</function> to show the alias, if any, attached
+      to the target table of an <command>UPDATE</command> or <command>DELETE</command>
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GIN bug that could result in a <literal>too many LWLocks
+      taken</literal> failure (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid possible crash when decompressing corrupted data
+      (Zdenek Kotala)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Repair two places where SIGTERM exit of a backend could leave corrupted
+      state in shared memory (Tom)
+     </para>
+
+     <para>
+      Neither case is very important if SIGTERM is used to shut down the
+      whole database cluster together, but there was a problem if someone
+      tried to SIGTERM individual backends.
+     </para>
+    </listitem>
+
+    <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 several datatype input functions, notably <function>array_in()</function>,
+      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>
+      Update time zone data files to <application>tzdata</application> release 2008c (for
+      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba, and
+      Argentina/San_Luis)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect result from <application>ecpg</application>'s
+      <function>PGTYPEStimestamp_sub()</function> function (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix broken GiST comparison function for <filename>contrib/tsearch2</filename>'s
+      <type>tsquery</type> type (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes in <filename>contrib/cube</filename> functions (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix core dump in <filename>contrib/xml2</filename>'s
+      <function>xpath_table()</function> function when the input query returns a
+      NULL value (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/xml2</filename>'s makefile to not override
+      <literal>CFLAGS</literal> (Tom)
+     </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>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-7">
+  <title>Version 8.2.7</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-03-17</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.2.6.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.7</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
+    However, you might need to <command>REINDEX</command> indexes on textual
+    columns after updating, if you are affected by the Windows locale
+    issue described below.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix character string comparison for Windows locales that consider
+      different character combinations as equal (Tom)
+     </para>
+
+     <para>
+      This fix applies only on Windows and only when using UTF-8
+      database encoding.  The same fix was made for all other cases
+      over two years ago, but Windows with UTF-8 uses a separate code
+      path that was not updated.  If you are using a locale that
+      considers some non-identical strings as equal, you may need to
+      <command>REINDEX</command> to fix existing indexes on textual columns.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Repair potential deadlock between concurrent <command>VACUUM FULL</command>
+      operations on different system catalogs (Tom)
+     </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>
+      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
+      prepared transaction (Tom)
+     </para>
+
+     <para>
+      This was formerly allowed but trying to do it had various unpleasant 
+      consequences, notably that the originating backend could not exit
+      as long as an <command>UNLISTEN</command> remained uncommitted.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Disallow dropping a temporary table within a
+      prepared transaction (Heikki)
+     </para>
+
+     <para>
+      This was correctly disallowed by 8.1, but the check was inadvertently
+      broken in 8.2.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix rare crash when an error occurs during a query using a hash index
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix memory leaks in certain usages of set-returning functions (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix input of datetime values for February 29 in years BC (Tom)
+     </para>
+
+     <para>
+      The former coding was mistaken about which years were leap years.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>unrecognized node type</quote> error in some variants of
+      <command>ALTER OWNER</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure <structname>pg_stat_activity</structname>.<structfield>waiting</structfield> flag
+      is cleared when a lock wait is aborted (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix handling of process permissions on Windows Vista (Dave, Magnus)
+     </para>
+
+     <para>
+      In particular, this fix allows starting the server as the Administrator
+      user.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008a
+      (in particular, recent Chile changes); adjust timezone abbreviation
+      <literal>VET</literal> (Venezuela) to mean UTC-4:30, not UTC-4:00 (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
+      number from command-line options (Itagaki Takahiro, Tom)
+     </para>
+
+     <para>
+      Previously, <literal>pg_ctl start -w</literal> could try to contact the
+      postmaster on the wrong port, leading to bogus reports of startup
+      failure.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use <option>-fwrapv</option> to defend against possible misoptimization
+      in recent <application>gcc</application> versions (Tom)
+     </para>
+
+     <para>
+      This is known to be necessary when building <productname>PostgreSQL</productname>
+      with <application>gcc</application> 4.3 or later.
+     </para>
+    </listitem>
+
+
+    <listitem>
+     <para>
+      Correctly enforce <varname>statement_timeout</varname> values longer
+      than <literal>INT_MAX</literal> microseconds (about 35 minutes) (Tom)
+     </para>
+
+     <para>
+      This bug affects only builds with <option>--enable-integer-datetimes</option>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>unexpected PARAM_SUBLINK ID</quote> planner error when
+      constant-folding simplifies a sub-select (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix logical errors in constraint-exclusion handling of <literal>IS
+      NULL</literal> and <literal>NOT</literal> expressions (Tom)
+     </para>
+
+     <para>
+      The planner would sometimes exclude partitions that should not
+      have been excluded because of the possibility of NULL results.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix another cause of <quote>failed to build any N-way joins</quote>
+      planner errors (Tom)
+     </para>
+
+     <para>
+      This could happen in cases where a clauseless join needed to be
+      forced before a join clause could be exploited.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect constant propagation in outer-join planning (Tom)
+     </para>
+
+     <para>
+      The planner could sometimes incorrectly conclude that a variable
+      could be constrained to be equal to a constant, leading
+      to wrong query results.
+     </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
+      guaranteee it couldn't happen due to other causes.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-2-6">
+  <title>Version 8.2.6</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-01-07</simpara>
+  </note>
+
+  <para>
+   Cette version contient divers correctifs de la version 8.2.5,
+   et inclut des corrections pour des failles de sécurité importantes.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.2, voir <xref linkend="release-8-2"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.2.6</title>
+
+   <para>
+    Les utilisateurs des versions 8.2.X n'ont pas besoin d'effectuer d'une
+    étape de sauvegarde/restauration.
+   </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 de bogues dans la ré-exécution des journaux de transaction
+      pour les index GIN (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction pour que la construction d'un index GIN se fasse correctement
+      quand <varname>maintenance_work_mem</varname> vaut 4&nbsp;Go ou plus
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires avec la version
+      2007k de <application>tzdata</application> (en particulier, les
+      modifications récentes en Argentine) (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Améliore la gestion du planificateur pour les estimations de LIKE et
+      des expressions rationnelles dans les locales autres que C (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un problème de vitesse de la planification pour des
+      jointures bien imbriquées, ainsi qu'un choix faible de l'ordre de
+      jointure (Tom)
+     </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>
+      Fait que <command>CREATE TABLE ... SERIAL</command> et
+      <command>ALTER SEQUENCE ... OWNED BY</command> ne modifient pas l'état
+      <function>currval()</function> de la séquence (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Préserve les paramètres du tablespace et de stockage des index qui sont
+      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
+      TYPE</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que la restauration d'archive commence toujours une nouvelle
+      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
+      restauration ne soit utilisée (Simon)
+     </para>
+
+     <para>
+      Ceci évite un risque très particulier de tentative de ré-écriture sur
+      une copie archivée existante du dernier journal de transaction. Cela
+      semble plus simple et plus clair que la définition originale.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que le <command>VACUUM</command> n'utilise pas tout
+      <varname>maintenance_work_mem</varname> quand la table est trop petite
+      pour que cela soit utilisé (Alvaro)
+     </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>
+      Fait que <function>corr()</function> renvoie le résultat correct pour les
+      valeurs négatives de corrélation (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un dépassement de capacité dans <literal>extract(epoch from
+      interval)</literal> pour les intervalles excédant 68 ans (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/Perl pour qu'il n'échoue pas quand une expression
+      rationnelle UTF-8 est utilisée dans une fonction de confiance
+      (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/Perl pour continuer l'exécution quand le langage Perl
+      de la plateforme définit le type <literal>bool</literal> en tant que
+      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
+      (Tom)
+     </para>
+
+     <para>
+      Bien que ceci peut arriver partout, aucune construction standard de Perl
+      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/Python pour un fonctionnement correct avec Python 2.5
+      sur les machines 64-bit (Marko Kreen)
+     </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>
+      Correction de <application>pg_dump</application> pour qu'il gère
+      correctement les tables héritées qui ont des expressions par défaut
+      différentes de celles de leur parents (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un crash de <application>libpq</application> quand
+      <varname>PGPASSFILE</varname> fait référence à un fichier qui n'est
+      pas un fichier texte (Martin Pitt)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Corrections de l'analyseur <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction réalisée pour que <filename>contrib/pgcrypto</filename>
+      puisse se défendre contre les bibliothèques
+      <application>OpenSSL</application> qui échouent sur des clés de plus de
+      128 bits&nbsp;; ce qui est le cas sur au moins certaines versions de
+      Solaris (Marko Kreen)
+     </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>
+
+    <listitem>
+     <para>
+      Mise à jour de la vérification de la configuration de
+      <function>gettimeofday</function> pour que
+      <productname>PostgreSQL</productname> puisse être construit sur les
+      nouvelles versions de <productname>MinGW</productname> (Magnus)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+  <sect1 id="release-8-2-5">
+   <title>Version 8.2.5</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-09-17</simpara>
+   </note>
+
+   <para>
+    Cette version contient divers correctifs de la version 8.2.4.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.2, voir <xref linkend="release-8-2"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.2.5</title>
+
+    <para>
+     Les utilisateurs des versions 8.2.X n'ont pas besoin d'effectuer d'export/import.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       <literal>ALTER DOMAIN ADD CONSTRAINT</literal> est corrigé pour les cas qui
+       impliquent des domaines de domaines (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+       correctement (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       quelques problèmes avec les jointures externes, notamment
+       la mauvaise estimation de taille pour
+       <literal>t1 LEFT JOIN t2 WHERE t2.col IS NULL</literal>, sont corrigés (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le type de données <type>interval</type> accepte désormais les entrées
+       constituées uniquement de millisecondes ou microsecondes (Neil)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le nom du fuseau horaire peut désormais apparaître avant l'année dans
+       les saisies de type <type>timestamp</type> (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       correctif pour les index <acronym>GIN</acronym> utilisés par
+       <filename>/contrib/tsearch2</filename> (Teodor)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       l'insertion des index rtree est accélérée (Teodor)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
+       est corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la journalisation est corrigée de sorte que les messages ne sont plus
+       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
+      </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)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       la gestion incorrecte de certains cas limites de clés étrangères est
+       corrigée (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <function>stddev_pop(numeric)</function> and
+       <function>var_pop(numeric)</function> sont corrigées (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>REINDEX</command> et <command>CLUSTER</command> ne plantent
+       plus en tentant de travailler sur les tables temporaires d'autres
+       sessions (Alvaro)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les règles de la base de données concernant les fuseaux horaires, en
+       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
+       à jour (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>pg_ctl -w</command> fonctionne désormais correctement en mode
+       service pour Windows (Dave Page)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le bogue d'allocation de mémoire lors de l'utilisation de
+       <application>MIT Kerberos</application> sous Windows est corrigé
+       (Magnus)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
+       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
+       avoir des incompatibilités d'encodage (Tom)&nbsp;;
+      </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)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       seuls les superutilisateurs peuvent utiliser
+       <filename>/contrib/pgstattuple</filename>, pour des raisons de sécurité
+       (Tom)&nbsp;;
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <filename>/contrib/intarray</filename> ne peut plus utiliser sa classe
+       d'opérateurs GIN comme classe par défaut (cela causait des problèmes lors
+       des exports/imports) (Tom).
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-2-4">
+   <title>Version 8.2.4</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-04-23</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.2.3, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.2, voir <xref linkend="release-8-2"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.2.4</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
+     version 8.2.
+   </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Supporte le placement explicite du schéma des tables temporaires dans
+      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
+      d'informations.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction de <varname>shared_preload_libraries</varname> pour Windows
+      en forçant le rechargement sur chaque processus serveur (Korry Douglas)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction de <function>to_char()</function> pour qu'il localise
+      correctement les noms des jours et mois en majuscule/minuscule
+      (Pavel Stehule)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Nécessite l'exécution de <command>COMMIT PREPARED</command> dans la
+      même base que celle utilisée par la transaction qui l'a préparé
+      (Heikki)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Autorise <command>pg_dump</command> à faire des sauvegardes binaires
+      d'une taille supérieure à 2&nbsp;Go sur Windows (Magnus)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Nouvelle <acronym>FAQ</acronym> en chinois traditionel (Taiwan)
+      (Zhou Daojing)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Empêche le collecteur de statistiques d'écrire trop fréquemment
+      sur le disque (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue pouvant corrompre des données dans la façon
+      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
+      (Tom, Pavan Deolasee)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue dans les domaines qui utilisent
+      des types array (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction de <command>pg_dump</command> pour qu'il sauvegarde la
+      séquence d'une colonne de type serial lorsque l'utilisateur
+      sélectionne l'option <option>-t</option> sans sauvegarder la
+      table propriétaire (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Corrections du planificateur, avec des améliorations sur la logique de
+      sélection des jointures externes et des parcours de bitmap (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction des possibles mauvaises réponses ou arrêts brutaux quand
+      une fonction PL/pgSQL essaie de quitter (avec <literal>RETURN</literal>)
+      à l'intérieur d'un bloc <literal>EXCEPTION</literal> (Tom)
+     </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>
+
+     <listitem>
+     <para>
+      Correction des spécifications des fuseaux horaires POSIX
+      pour suivre les nouvelles règles USA DST (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-2-3">
+   <title>Version 8.2.3</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-07</simpara>
+   </note>
+
+   <para>
+    Cette version contient deux corrections de la 8.2.2.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.2, voir <xref linkend="release-8-2"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.2.3</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
+     version 8.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Suppression d'une vérification trop restrictive de la longueur du type
+      dans les contraintes et les index fonctionnels (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'une optimisation pour que MIN/MAX puissent de nouveau utiliser
+      des index dans des sous-requêtes (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-2-2">
+   <title>Version 8.2.2</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-02-05</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.2.1, dont la
+    correction d'une faille de sécurité.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.2, voir <xref linkend="release-8-2"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.2.2</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
+     version 8.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+     <para>
+      Suppression de failles de sécurité qui permettent à des utilisateurs
+      connectés de lire la mémoire du serveur (backend)
+      (Tom)
+     </para>
+     <para>
+      Ces vulnérabilités impliquent de supprimer la vérification habituelle
+      qu'une fonction renvoie le type de données qu'elle a déclaré, et de
+      modifier le type de données de la colonne d'une table utilisée dans une
+      fonction SQL (CVE-2007-0555, CVE-2007-0556).
+      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 des scripts de compilation pour Borland C (L Bayuk)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Gestion correcte par <function>to_char('CC')</function> des années finissant en
+      <literal>00</literal> (Tom)
+     </para>
+     <para>
+      L'année 2000 est dans le 20ème siècle, pas dans le 21ème.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Amélioration des régionalisations de
+      <filename>/contrib/tsearch2</filename> (Tatsuo, Teodor)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'une vérification incorrecte des droits dans la vue
+      <literal>information_schema.key_column_usage</literal> (Tom)
+     </para>
+     <para>
+      Le symptôme se déclare avec des erreurs <quote>relation with OID nnnnn
+      does not exist</quote>. Pour obtenir cette correction sans avoir à exécuter
+      un <command>initdb</command>, il convient d'utiliser 
+      <command>CREATE OR REPLACE VIEW</command> pour installer la définition
+      corrigée disponible dans
+      <filename>share/information_schema.sql</filename>. Cela devra être
+      effectué pour chaque base de données.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Amélioration des performances de <command>VACUUM</command> pour les bases
+      de données avec de nombreuses tables (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</literal> (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction de résultats potentiellement incorrects lors d'une recherche
+      par index en utilisant les conditions d'inégalités de <literal>ROW</literal>
+      (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Amélioration de la sécurité lors du traitement de caractères multi-octets
+      pour les séquences UTF8 de plus de trois octets (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'échecs erronés de type <quote>droit refusé</quote> survenant
+      sur Windows à cause de tentatives de fsync sur des fichiers déjà
+      supprimés (Magnus, Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'un bogue qui pouvait arrêter le récupérateur de statistiques
+      sur Windows (Magnus)
+     </para>
+
+     <para>
+      Ceci a pour conséquences d'empêcher le bon fonctionnement de l'autovacuum.
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'arrêts brutaux possibles quand une fonction PL/pgSQL en cours
+      d'utilisation est mise à jour (Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Amélioration de la gestion des types domaines par PL/pgSQL (Sergiy Vyshnevetskiy, Tom)
+     </para>
+     </listitem>
+
+     <listitem>
+     <para>
+      Correction d'erreurs possibles dans le traitement des blocs d'exception de
+      PL/pgSQL (Tom)
+     </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+
+  <sect1 id="release-8-2-1">
+   <title>Version 8.2.1</title>
+
+   <note>
+   <title>Date de sortie</title>
+   <simpara>2007-01-08</simpara>
+   </note>
+
+   <para>
+    Cette version contient quelques corrections de la 8.2.
+    Pour plus d'informations sur les nouvelles fonctionnalités de la
+    version majeure 8.2, voir <xref linkend="release-8-2"/>.
+   </para>
+
+   <sect2>
+    <title>Migration vers la version 8.2.1</title>
+
+    <para>
+     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
+     version 8.2.
+    </para>
+
+   </sect2>
+
+   <sect2>
+    <title>Modifications</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Correction d'arrêts brutaux avec <literal>SELECT</literal> ...
+       <literal>LIMIT ALL</literal> (ainsi qu'avec <literal>LIMIT NULL</literal>)
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Plusieurs corrections sur <filename>/contrib/tsearch2</filename> (Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Sur Windows, s'assure que les traces provenant du système d'exploitation
+       utilisent le jeu de caractères <acronym>ASCII</acronym> (Hiroshi Saito)
+      </para>
+
+      <para>
+       Ceci corrige un problème de conversion quand il y a une différence entre
+       le jeu de caractères du système d'exploitation et celui du serveur de
+       bases de données.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correction du lien Windows de <application>pg_dump</application> en utilisant
+       <filename>win32.mak</filename>
+       (Hiroshi Saito)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correction d'erreurs du planificateur pour les requêtes à jointure
+       externe (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correction de différents problèmes dans les requêtes impliquant des
+       sous-SELECT (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correction d'un arrêt brutal potentiel dans SPI lors de l'annulation
+       d'une sous-transaction (Tom)
+      </para>
+
+      <para>
+       Ceci affecte toutes les fonctions PL car elles utilisent toutes SPI.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Amélioration de la vitesse de construction de la documentation
+       <acronym>PDF</acronym> (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Nouvel ajout de l'abréviation du fuseau horaire <acronym>JST</acronym> (Japan) (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Amélioration des décisions d'optimisation relatives aux parcours d'index
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fait que <application>psql</application> affiche les caractères
+       multi-octets comme avant plutôt que de les afficher comme
+       <literal>\u</literal> (Tom)
+      </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>
+
+     <listitem>
+      <para>
+       Fait que <application>pg_dumpall</application> suppose que les bases de
+       données ont le droit <literal>CONNECT</literal> pour public lors d'une
+       sauvegarde d'un serveur antérieure à la 8.2 (Tom)
+      </para>
+
+      <para>
+       Ceci empêche le comportement précédent où tout le monde pouvait se
+       connecter à une base si le <filename>pg_hba.conf</filename> l'autorisait.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect2>
+  </sect1>
+ 
+  <sect1 id="release-8-2">
+   <title>Version 8.2</title>
+
+   <note>
+    <title>Date de sortie</title>
+    <simpara>2006-12-05</simpara>
+   </note>
+
+   <sect2>
+    <title>Overview</title>
+ 
+    <para>
+     Cette version ajoute beaucoup de nouvelles fonctionnalités et
+     d'améliorations de performances demandées par les utilisateurs. Parmi
+     celles-ci&nbsp;:
+
+    <itemizedlist>
+
+      <listitem>
+       <para>
+        Amélioration du langage de requêtes avec <command>INSERT/UPDATE/DELETE
+        RETURNING</command>, les listes <literal>VALUES</literal> multi-lignes
+        et les alias optionnels de table cible pour
+        <command>UPDATE</command>/<command>DELETE</command>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Création d'index sans blocage des opérations concurrentes
+        <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Beaucoup d'améliorations dans l'optimisation des requêtes, avec un
+	support d'un réordonnancement des jointures externes
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des performances du tri avec un usage plus restreint de la
+	mémoire
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Verrouillage plus efficace avec une meilleure gestion de la concurrence
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Un VACUUM plus efficace
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Une administration plus simple des serveurs de secours
+	semi-automatique
+	(<foreignphrase>warm standby servers</foreignphrase>)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support d'un facteur de remplissage (<literal>FILLFACTOR</literal>) pour
+	les tables et index
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout dans la configuration de la surveillance, des journaux et des
+	performances
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Plus de contrôle sur la création et la suppression des objets
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Les relations d'héritage des tables peuvent être définies et supprimées
+	sur des tables déjà existantes
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <command>COPY TO</command> peut copier le résultat de toute instruction
+        <command>SELECT</command>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Améliorations sur les tableaux, dont le support des éléments NULL
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des fonctions d'agrégat, avec les agrégats à entrées
+	multiples et les fonctions statistiques de SQL:2003
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Beaucoup d'améliorations dans les modules <filename>contrib/</filename>
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </para>
+
+   </sect2>
+ 
+   <sect2>
+    <title>Migration vers la version 8.2</title>
+
+    <para>
+     Une sauvegarde/restauration utilisant <application>pg_dump</application>
+     est requise pour ceux qui souhaitent migrer leurs données d'une version
+     précédente.
+    </para>
+
+    <para>
+     Prenez note des incompatibilités suivantes&nbsp;:
+    </para>
+
+    <itemizedlist>
+
+      <listitem>
+       <para>
+        Initialise par défaut <link
+        linkend="guc-escape-string-warning"><varname>escape_string_warning</varname></link>
+        à <literal>on</literal> (Bruce)
+       </para>
+
+       <para>
+        Un avertissement est affiché si des échappements par antislash sont
+        utilisés dans des <link linkend="sql-syntax-strings">chaînes non
+        échappées (ne commençant pas par <literal>E</literal>)</link>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modifie la <link linkend="sql-syntax-row-constructors">syntaxe du
+        constructeur de lignes</link> (<literal>ROW(...)</literal>) pour que
+        les éléments de liste <literal>foo.*</literal> soient étendues en une
+        liste de leurs champs membres, plutôt que de créer un champ de type
+        ligne imbriqué comme précédemment (Tom)
+       </para>
+
+       <para>
+        Le nouveau comportement est plus utile car il permet, par exemple, aux
+        déclencheurs de détecter les modifications de données avec
+        <literal>IF row(new.*) IS DISTINCT FROM row(old.*)</literal>.
+        L'ancien comportement est toujours disponible en oubliant <literal>.*</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fait en sorte que la <link linkend="row-wise-comparison">comparaisons
+        de lignes</link> suive la sémantique du standard
+        <acronym>SQL</acronym> et lui permettent d'être utilisée dans les
+        parcours d'index (Tom)
+       </para>
+
+       <para>
+        Auparavant, les comparaisons d'égalité et de différence de lignes
+	suivaient le standard mais les comparaisons de type &lt; &lt;= &gt;
+	&gt;= ne le faisaient pas. Une comparaison de ligne peut maintenant
+	être utilisé en tant que contrainte d'index pour un index
+	multi-colonne correspondant à la valeur de la ligne.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Les tests <link linkend="functions-comparison">row <literal>IS <optional>NOT</optional> NULL</literal></link>
+        suivent la sémantique du standard <acronym>SQL</acronym> (Tom)
+       </para>
+
+       <para>
+        Le comportement précédent se conformait au standard pour les cas
+	simples avec <literal>IS NULL</literal>, mais <literal>IS NOT NULL</literal>
+	renvoyait true si aucun champ de ligne n'était différent de NULL alors
+	que le standard demande qu'il renvoit NULL seulement quand tous les
+	champs sont différents de NULL.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <link linkend="sql-set-constraints"><command>SET
+        CONSTRAINT</command></link> affecte seulement une seule contrainte (Kris Jurka)
+       </para>
+
+       <para>
+        Dans les versions précédentes, <command>SET CONSTRAINT</command> modifiait
+	toutes les contraintes avec un nom qui correspondait. Dans cette version,
+	le chemin de recherche du schéma est utilisé pour modifier seulement la
+	première contrainte qui correspond. Une spécification du schéma est aussi
+	possible. Ceci permet un meilleur respect du standard SQL.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression de la règle <literal>RULE</literal> pour les tables pour
+	des raisons de sécurité (Tom)
+       </para>
+
+       <para>
+        À partir de cette version, seul le propriétaire d'une table peut créer
+	ou modifier les règles d'une table. Pour la compatibilité ascendante,
+	<command>GRANT</command>/<command>REVOKE RULE</command> est toujours
+	accepté mais ne fait rien.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Améliorations de la comparaison de tableau (Tom)
+       </para>
+
+       <para>
+        Maintenant, les dimensions des tableaux sont aussi comparées.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modification de la <link linkend="functions-array">concaténation de
+	tableaux</link> pour que le comportement corresponde à celui indiqué
+	dans la documentation (Tom)
+       </para>
+
+       <para>
+        Le comportement précédent est modifié quand la concaténation modifie
+	la limite basse du tableau.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Les options en ligne de commande de <application>postmaster</application>
+        et <link linkend="app-postgres"><application>postgres</application></link>
+        sont maintenant identiques (Peter)
+       </para>
+
+       <para>
+        Ceci permet au postmaster de passer les arguments à chaque processus
+        fils sans utiliser <literal>-o</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Le lien symbolique <application>postmaster</application> est maintenant
+	obsolète (Peter)
+       </para>
+
+       <para>
+        Les commandes <application>postmaster</application> et <application>postgres</application>
+        agissent maintenant de façon identique, le comportement étant déterminé
+	par les options en ligne de commande. Le lien sympbolique
+	<application>postmaster</application> est conservé pour compatibilité
+	mais n'est plus vraiment nécessaire.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <link
+        linkend="guc-log-duration"><varname>log_duration</varname></link>
+        affiche la durée même si la requête n'est pas affichée (Tom)
+       </para>
+
+       <para>
+        Dans les versions précédentes, <varname>log_duration</varname> affichait
+	seulement la durée quand la requête apparaissait auparavant dans les
+	journaux.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <link
+        linkend="functions-formatting"><function>to_char(time)</function></link>
+        et <link
+        linkend="functions-formatting"><function>to_char(interval)</function></link>
+        traitent <literal>HH</literal> et <literal>HH12</literal> comme des
+	intervals sur 12h.
+       </para>
+
+       <para>
+        La plupart des applications devrait utiliser <literal>HH24</literal> sauf
+	si elles veulent un affichage sur 12h.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Zero unmasked bits in conversion from <link
+        linkend="datatype-inet"><type>INET</type></link> to <link
+        linkend="datatype-inet"><type>CIDR</type></link> (Tom)
+       </para>
+
+       <para>
+        Ceci vous assure que la valeur convertie est réellement valide pour
+        <type>CIDR</type>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression de la variable de configuration
+	<varname>australian_timezones</varname> (Joachim Wieland)
+       </para>
+
+       <para>
+        Cette variable a été rendue obsolète par une fonctionnalité plus
+	générale dans la configuration des abréviations de fuseaux horaires.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de l'estimation du coût pour les parcours d'index
+	de boucles imbriquées (Tom)
+       </para>
+
+       <para>
+        Ceci élimine le besoin de configurer des valeurs ridiculement petites
+	de <link
+        linkend="guc-random-page-cost"><varname>random_page_cost</varname></link>.
+        Si vous avez utilisé une valeur trop petite de <varname>random_page_cost</varname>,
+        merci de vérifier vos cas de tests.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modification de <function>PQdsplen()</function> dans
+	<link linkend="libpq"><application>libpq</application></link>
+        pour que cette fonction renvoie une valeur utile (Martijn
+        van Oosterhout)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Déclare que <function>PQgetssl()</function>
+	(<link linkend="libpq"><application>libpq</application></link>)
+	renvoie <literal>void *</literal> à la place de
+        <literal>SSL *</literal> (Martijn van Oosterhout)
+       </para>
+
+       <para>
+        Ceci permet aux applications d'utiliser la fonction sans inclure les
+	en-têtes d'OpenSSL.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        les modules chargeables, en langage C, doivent maintenant inclure un
+	appel à la macro
+        <link linkend="xfunc-c-dynload"><literal>PG_MODULE_MAGIC</literal></link>
+        pour une vérification de la compatibilité de la version
+        (Martijn van Oosterhout)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Pour des raisons de sécurité, les modules utilisés par une fonction
+	PL/PerlU ne sont plus disponibles pour les fonctions PL/Perl (Andrew)
+       </para>
+       <note>
+        <para>
+         Ceci implique aussi que les données ne peuvent plus êtres partagées
+	 entre une fonction PL/Perl et une fonction PL/PerlU. Certaines
+	 installations Perl n'ont pas été compilées avec les bons drapeaux
+	 pour permettre à plusieurs interpréteurs d'exister au sein d'un
+	 même processus. Dans ce cas, PL/Perl et PL/PerlU ne peuvent pas être
+	 utilisés dans un même processus fils. La solution est d'obtenir une
+	 installation Perl qui supporte plusieurs interpréteurs.
+        </para>
+       </note>
+      </listitem>
+
+      <listitem>
+       <para>
+        Dans <filename>contrib/xml2/</filename>, renommage de
+	<function>xml_valid()</function> en
+        <function>xml_is_well_formed()</function> (Tom)
+       </para>
+
+       <para>
+        <function>xml_valid()</function> restera pour des raisons de
+	compatibilité ascendante mais son comportement changera pour réaliser
+	une vérification de schéma dans une prochaine version.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression de <filename>contrib/ora2pg/</filename>, maintenant sur
+        <ulink url="http://www.samse.fr/GPL/ora2pg"></ulink>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression des modules contrib qui ont migré sur PgFoundry&nbsp;:
+        <filename>adddepend</filename>, <filename>dbase</filename>, <filename>dbmirror</filename>,
+        <filename>fulltextindex</filename>, <filename>mac</filename>, <filename>userlock</filename>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression des modules contrib abandonnés&nbsp;:
+        <filename>mSQL-interface</filename>, <filename>tips</filename>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression des ports <acronym>QNX</acronym> et <acronym>BEOS</acronym> (Bruce)
+       </para>
+
+       <para>
+        Ces ports n'ont plus de mainteneurs actifs.
+       </para>
+      </listitem>
+
+    </itemizedlist>
+   </sect2>
+ 
+   <sect2>
+    <title>Modifications</title>
+ 
+    <para>
+     Vous trouverez ci-dessous une liste détaillée des modifications appliquées
+     à <productname>PostgreSQL</productname> 8.2.
+    </para>
+ 
+    <sect3>
+     <title>Améliorations des performances</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Autorise le planificateur à réordonner les <link
+        linkend="queries-join">jointures externes</link> dans certaines
+	circonstances (Tom)
+       </para>
+
+       <para>
+        Dans les versions précédentes, les jointures externes ont toujours été
+	évaluées dans l'ordre donné par la requête. Cette modification permet
+	à l'optimiseur de requête de considérer la modification de l'ordre des
+	jointures externes quand il peut s'assurer que ce changement peut se
+	faire sans altérer la signification de la requête. Ceci peut faire une
+	différence considérable au niveau des performances pour les requêtes
+	impliquant plusieurs jointures externes ou un mixe entre jointures
+	internes et jointures externes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de l'efficacité des clauses <link
+        linkend="functions-comparisons"><literal>IN</literal>
+        (liste d'expressions)</link> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la vitesse des tris et réduction de l'utilisation
+	mémoire (Simon, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des performances des sous-transaction (Alvaro, Itagaki Takahiro,
+        Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout de <literal>FILLFACTOR</literal> pour la création des <link
+        linkend="sql-createtable">tables</link> et <link
+        linkend="sql-createindex">index</link> (ITAGAKI Takahiro)
+       </para>
+
+       <para>
+        Ceci amène un espace libre plus important dans chaque page de table et
+	d'index, donnant des performances améliorées au fur et à mesure que la
+	base grossit. C'est tout particulièrement vrai dans le cas d'un cluster.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration des valeurs par défaut pour les paramètres <link
+        linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
+        et <varname>max_fsm_pages</varname>
+        (Andrew)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la performance des verrous en cassant les tables du
+	gestionnaire de verrous en plusieurs sections (Tom)
+       </para>
+
+       <para>
+        Le verrouillage est ainsi plus fin, réduisant du coup les problèmes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Réduction des besoins en verrou pour les parcours séquentiels (Qingqing
+        Zhou)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Réduction du verrouillage requis pour la création et la destruction de
+	bases de données (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la sélectivité de l'optimiseur pour les estimations de
+	<link linkend="functions-like"><literal>LIKE</literal></link>, <link
+        linkend="functions-like"><literal>ILIKE</literal></link> et des
+        <link linkend="functions-posix-regexp">expressions rationnelles</link>
+        (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la planification des jointures des <link
+	linkend="ddl-inherit">tables héritées</link> et des vues <link
+	linkend="queries-union"><literal>UNION ALL</literal></link> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Permet l'application de l'<link
+	linkend="guc-constraint-exclusion">exclusion des contraintes</link> aux
+	requêtes <command>UPDATE</command> et <command>DELETE</command> avec
+	<link linkend="ddl-inherit">héritage</link> (Tom)
+       </para>
+
+       <para>
+        <command>SELECT</command> honorait déjà cette exclusion.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la planification des clauses <literal>WHERE</literal>
+	constantes comme une condition qui dépend seulement des variables
+	héritées d'un niveau de requête externe (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Les instructions préparées, sans nom et au niveau protocole sont
+	re-planifiées pour chaque ensemble de valeurs <literal>BIND</literal>
+	(Tom)
+       </para>
+
+       <para>
+        Ceci améliore les performances car les valeurs exactes des paramètres
+	peuvent être utilisées dans le plan.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Accélère l'opération VACUUM des index B-Tree (Heikki Linnakangas,
+        Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Évite un parcours supplémentaire des tables sans index pendant un <link
+        linkend="sql-vacuum"><command>VACUUM</command></link> (Greg Stark)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de l'indexage multi-colonnes <link
+	linkend="gist"><acronym>GiST</acronym></link> (Oleg, Teodor)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Suppression des entrées mortes des index avant la séparation d'une
+	page B-Tree (Junji Teramoto)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Modifications serveur</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Permet de forcer un basculement vers un nouveau journal de transactions
+	(Simon, Tom)
+       </para>
+
+       <para>
+        Ceci est utile pour conserver la synchronisation des serveurs esclaves
+	en attente et du maître. Le changement du journal de transaction
+	survient aussi automatiquement lors de l'exécution de <link
+        linkend="functions-admin"><function>pg_stop_backup()</function></link>.
+        Ceci vous assure que tous les journaux de transactions nécessaires à
+	la récupération sont archivés immédiatement.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Ajout des fonctions d'information sur les <acronym>WAL</acronym> (Simon)
+       </para>
+
+       <para>
+        Ajout de fonctions d'interrogation sur le point d'insertion du journal
+	de transaction en cours et de détermination des noms des fichiers
+        <acronym>WAL</acronym> à partir des emplacements
+        <acronym>WAL</acronym> hexadécimaux affichés par la fonction <link
+        linkend="functions-admin"><function>pg_stop_backup()</function></link>
+        mais aussi par d'autres fonctions en relation.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Amélioration de la récupération après un arrêt brutal lors d'une
+	ré-exécution d'un <acronym>WAL</acronym> (Simon)
+       </para>
+
+       <para>
+        Maintenant, le serveur réalise des points de vérification durant la
+	récupération des <acronym>WAL</acronym>. Donc, en cas d'arrêt brutal,
+        la récupération des <acronym>WAL</acronym> restants est raccourcie.
+	Ceci élimine aussi le besoin pour les serveurs en attente de rejouer
+	tous les journaux depuis la sauvegarde de base s'ils s'arrêtent
+	brutalement.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve reliability of long-term <acronym>WAL</acronym> replay
+        (Heikki, Simon, Tom)
+       </para>
+
+       <para>
+        Formerly, trying to roll forward through more than 2 billion
+        transactions would not work due to XID wraparound.  This meant
+        warm standby servers had to be reloaded
+        from fresh base backups periodically.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="guc-archive-timeout"><varname>archive_timeout</varname></link>
+        to force transaction log file switches at a given interval (Simon)
+       </para>
+
+       <para>
+        This enforces a maximum replication delay for warm standby servers.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add native <link linkend="auth-ldap"><acronym>LDAP</acronym></link>
+        authentication (Magnus Hagander)
+       </para>
+
+       <para>
+        This is particularly useful for platforms that do not
+        support <acronym>PAM</acronym>, such as Windows.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-grant-description-objects"><literal>GRANT
+        CONNECT ON DATABASE</literal></link> (Gevik Babakhani)
+       </para>
+
+       <para>
+        This gives SQL-level control over database access.  It works as
+        an additional filter on top of the existing
+        <link linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>
+        controls.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <link linkend="ssl-tcp"><acronym>SSL</acronym>
+        Certificate Revocation List</link> (<acronym>CRL</acronym>) files
+        (Libor Hoho)
+       </para>
+
+       <para>
+        The server and <application>libpq</application> both recognize <acronym>CRL</acronym>
+        files now.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <link linkend="gist"><acronym>GiST</acronym></link> indexes are
+        now clusterable (Teodor)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove routine autovacuum server log entries (Bruce)
+       </para>
+
+       <para>
+        <link
+        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
+        now shows autovacuum activity.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Track maximum XID age within individual tables, instead of whole databases (Alvaro)
+       </para>
+
+       <para>
+        This reduces the overhead involved in preventing transaction
+        ID wraparound, by avoiding unnecessary VACUUMs.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add last vacuum and analyze timestamp columns to the stats
+        collector (Larry Rosenman)
+       </para>
+
+       <para>
+        These values now appear in the <link
+        linkend="monitoring-stats-views-table"><literal>pg_stat_*_tables</literal></link>
+        system views.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve performance of statistics monitoring, especially
+<!--       Fonctionnalité disparu en 8.3        -->
+<!--        <link                               -->
+<!--        linkend="guc-stats-command-string"> -->
+        <varname>stats_command_string</varname> 
+        <!-- </link> -->
+        (Tom, Bruce)
+       </para>
+
+       <para>
+        This release enables <varname>stats_command_string</varname> by
+        default, now that its overhead is minimal.  This means
+        <link
+        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
+        will now show all active queries by default.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a <literal>waiting</literal> column to <link
+        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
+        (Tom)
+       </para>
+
+       <para>
+        This allows <structname>pg_stat_activity</structname> to show all the
+        information included in the <application>ps</application> display.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add configuration parameter <link
+        linkend="guc-update-process-title"><varname>update_process_title</varname></link>
+        to control whether the <application>ps</application> display is updated
+        for every command (Bruce)
+       </para>
+
+       <para>
+        On platforms where it is expensive to update the <application>ps</application>
+        display, it may be worthwhile to turn this off and rely solely on
+        <structname>pg_stat_activity</structname> for status information.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow units to be specified in configuration settings
+        (Peter)
+       </para>
+
+       <para>
+        For example, you can now set <link
+        linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
+        to <literal>32MB</literal> rather than mentally converting sizes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <link linkend="config-setting">include
+        directives</link> in <filename>postgresql.conf</filename> (Joachim
+        Wieland)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve logging of protocol-level prepare/bind/execute
+        messages (Bruce, Tom)
+       </para>
+
+       <para>
+        Such logging now shows statement names, bind parameter
+        values, and the text of the query being executed.  Also,
+        the query text is properly included in logged error messages
+        when enabled by <varname>log_min_error_statement</varname>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Prevent <link
+        linkend="guc-max-stack-depth"><varname>max_stack_depth</varname></link>
+        from being set to unsafe values
+       </para>
+
+       <para>
+        On platforms where we can determine the actual kernel stack depth
+        limit (which is most), make sure that the initial default value of
+        <varname>max_stack_depth</varname> is safe, and reject attempts to set it
+        to unsafely large values.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Enable highlighting of error location in query in more
+        cases (Tom)
+       </para>
+
+       <para>
+        The server is now able to report a specific error location for
+        some semantic errors (such as unrecognized column name), rather
+        than just for basic syntax errors as before.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix <quote>failed to re-find parent key</quote> errors in
+        <command>VACUUM</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Clean out <filename>pg_internal.init</filename> cache files during server
+        restart (Simon)
+       </para>
+
+       <para>
+        This avoids a hazard that the cache files might contain stale
+        data after PITR recovery.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix race condition for truncation of a large relation across a
+        gigabyte boundary by <command>VACUUM</command> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix bug causing needless deadlock errors on row-level locks (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix bugs affecting multi-gigabyte hash indexes (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Each backend process is now its own process group leader (Tom)
+       </para>
+
+       <para>
+        This allows query cancel to abort subprocesses invoked from a
+        backend or archive/recovery process.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Query Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-insert"><command>INSERT</command></link>/<link
+        linkend="sql-update"><command>UPDATE</command></link>/<link
+        linkend="sql-delete"><command>DELETE</command></link>
+        <literal>RETURNING</literal> (Jonah Harris, Tom)
+       </para>
+
+       <para>
+        This allows these commands to return values, such as the
+        computed serial key for a new row.  In the <command>UPDATE</command>
+        case, values from the updated version of the row are returned.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for multiple-row <link
+        linkend="queries-values"><literal>VALUES</literal></link> clauses,
+        per SQL standard (Joe, Tom)
+       </para>
+
+       <para>
+        This allows <command>INSERT</command> to insert multiple rows of
+        constants, or queries to generate result sets using constants.
+        For example, <literal>INSERT ...  VALUES (...), (...),
+        ....</literal>, and <literal>SELECT * FROM (VALUES (...), (...),
+        ....) AS alias(f1, ...)</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-update"><command>UPDATE</command></link>
+        and <link linkend="sql-delete"><command>DELETE</command></link>
+        to use an alias for the target table (Atsushi Ogawa)
+       </para>
+
+       <para>
+        The SQL standard does not permit an alias in these commands, but
+        many database systems allow one anyway for notational convenience.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-update"><command>UPDATE</command></link>
+        to set multiple columns with a list of values (Susanne
+        Ebrecht)
+       </para>
+
+       <para>
+        This is basically a short-hand for assigning the columns
+        and values in pairs.  The syntax is <literal>UPDATE tab
+        SET (<replaceable>column</replaceable>, ...) = (<replaceable>val</replaceable>, ...)</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make row comparisons work per standard (Tom)
+       </para>
+
+       <para>
+        The forms &lt;, &lt;=, &gt;, &gt;= now compare rows lexicographically,
+        that is, compare the first elements, if equal compare the second
+        elements, and so on.  Formerly they expanded to an AND condition
+        across all the elements, which was neither standard nor very useful.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-truncate"><literal>CASCADE</literal></link>
+        option to <command>TRUNCATE</command> (Joachim Wieland)
+       </para>
+
+       <para>
+        This causes <command>TRUNCATE</command> to automatically include all tables
+        that reference the specified table(s) via foreign keys.  While
+        convenient, this is a dangerous tool &mdash; use with caution!
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support <literal>FOR UPDATE</literal> and <literal>FOR SHARE</literal>
+        in the same <link linkend="sql-insert"><literal>SELECT</literal></link>
+        command (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="functions-comparisons"><literal>IS NOT
+        DISTINCT FROM</literal></link> (Pavel Stehule)
+       </para>
+
+       <para>
+        This operator is similar to equality (<literal>=</literal>), but
+        evaluates to true when both left and right operands are
+        <literal>NULL</literal>, and to false when just one is, rather than
+        yielding <literal>NULL</literal> in these cases.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve the length output used by <link
+        linkend="queries-union"><literal>UNION</literal></link>/<literal>INTERSECT</literal>/<literal>EXCEPT</literal>
+        (Tom)
+       </para>
+
+       <para>
+        When all corresponding columns are of the same defined length, that
+        length is used for the result, rather than a generic length.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="functions-like"><literal>ILIKE</literal></link>
+        to work for multi-byte encodings (Tom)
+       </para>
+
+       <para>
+        Internally, <literal>ILIKE</literal> now calls <function>lower()</function>
+        and then uses <literal>LIKE</literal>.  Locale-specific regular
+        expression patterns still do not work in these encodings.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Enable <link
+        linkend="guc-standard-conforming-strings"><varname>standard_conforming_strings</varname></link>
+        to be turned <literal>on</literal> (Kevin Grittner)
+       </para>
+
+       <para>
+        This allows backslash escaping in strings to be disabled,
+        making <productname>PostgreSQL</productname> more
+        standards-compliant.  The default is <literal>off</literal> for backwards
+        compatibility, but future releases will default this to <literal>on</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Do not flatten subqueries that contain <literal>volatile</literal>
+        functions in their target lists (Jaime Casanova)
+       </para>
+
+       <para>
+        This prevents surprising behavior due to multiple evaluation
+        of a <literal>volatile</literal> function (such as <function>random()</function>
+        or <function>nextval()</function>).  It may cause performance
+        degradation in the presence of functions that are unnecessarily
+        marked as <literal>volatile</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add system views <link
+        linkend="view-pg-prepared-statements"><literal>pg_prepared_statements</literal></link>
+        and <link
+        linkend="view-pg-cursors"><literal>pg_cursors</literal></link>
+        to show prepared statements and open cursors (Joachim Wieland, Neil)
+       </para>
+
+       <para>
+        These are very useful in pooled connection setups.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support portal parameters in <link
+        linkend="sql-explain"><command>EXPLAIN</command></link> and <link
+        linkend="sql-execute"><command>EXECUTE</command></link> (Tom)
+       </para>
+
+       <para>
+        This allows, for example, <acronym>JDBC</acronym> <literal>?</literal> parameters to
+        work in these commands.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        If <acronym>SQL</acronym>-level <link
+        linkend="sql-prepare"><command>PREPARE</command></link> parameters
+        are unspecified, infer their types from the content of the
+        query (Neil)
+       </para>
+
+       <para>
+        Protocol-level <command>PREPARE</command> already did this.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <literal>LIMIT</literal> and <literal>OFFSET</literal> to exceed
+        two billion (Dhanaraj M)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Object Manipulation Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <literal>TABLESPACE</literal> clause to <link
+        linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
+        (Neil)
+       </para>
+
+       <para>
+        This allows a tablespace to be specified for the new table.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>ON COMMIT</literal> clause to <link
+        linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
+        (Neil)
+       </para>
+
+       <para>
+        This allows temporary tables to be truncated or dropped on
+        transaction commit.  The default behavior is for the table
+        to remain until the session ends.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>INCLUDING CONSTRAINTS</literal> to <link
+        linkend="sql-createtable"><command>CREATE TABLE LIKE</command></link>
+        (Greg Stark)
+       </para>
+
+       <para>
+        This allows easy copying of <literal>CHECK</literal> constraints to a new
+        table.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the creation of placeholder (shell) <link
+        linkend="sql-createtype">types</link> (Martijn van Oosterhout)
+       </para>
+
+       <para>
+        A shell type declaration creates a type name, without specifying
+        any of the details of the type.  Making a shell type is useful
+        because it allows cleaner declaration of the type's input/output
+        functions, which must exist before the type can be defined <quote>for
+        real</quote>.  The syntax is <command>CREATE TYPE <replaceable
+        class="parameter">typename</replaceable></command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <link linkend="sql-createaggregate">Aggregate functions</link>
+        now support multiple input parameters (Sergey Koposov, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add new aggregate creation <link
+        linkend="sql-createaggregate">syntax</link> (Tom)
+       </para>
+
+       <para>
+        The new syntax is <command>CREATE AGGREGATE
+        <replaceable>aggname</replaceable> (<replaceable>input_type</replaceable>)
+        (<replaceable>parameter_list</replaceable>)</command>.  This more
+        naturally supports the new multi-parameter aggregate
+        functionality.  The previous syntax is still supported.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="sql-alterrole"><command>ALTER ROLE PASSWORD NULL</command></link>
+        to remove a previously set role password (Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>DROP</command> object <literal>IF EXISTS</literal> for many
+        object types (Andrew)
+       </para>
+
+       <para>
+        This allows <command>DROP</command> operations on non-existent
+        objects without generating an error.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-drop-owned"><literal>DROP OWNED</literal></link>
+        to drop all objects owned by a role (Alvaro)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-reassign-owned"><literal>REASSIGN
+        OWNED</literal></link> to reassign ownership of all objects owned
+        by a role (Alvaro)
+       </para>
+
+       <para>
+        This, and <literal>DROP OWNED</literal> above, facilitate dropping
+        roles.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-grant"><command>GRANT ON SEQUENCE</command></link>
+        syntax (Bruce)
+       </para>
+
+       <para>
+        This was added for setting sequence-specific permissions.
+        <literal>GRANT ON TABLE</literal> for sequences is still supported
+        for backward compatibility.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-grant"><literal>USAGE</literal></link>
+        permission for sequences that allows only <function>currval()</function>
+        and <function>nextval()</function>, not <function>setval()</function>
+        (Bruce)
+       </para>
+
+       <para>
+        <literal>USAGE</literal> permission allows more fine-grained
+        control over sequence access.  Granting <literal>USAGE</literal>
+        allows users to increment
+        a sequence, but prevents them from setting the sequence to
+        an arbitrary value using <function>setval()</function>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-altertable"><literal>ALTER TABLE
+        [ NO ] INHERIT</literal></link> (Greg Stark)
+       </para>
+
+       <para>
+        This allows inheritance to be adjusted dynamically, rather than
+        just at table creation and destruction.  This is very valuable
+        when using inheritance to implement table partitioning.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-comment">comments</link> on global
+        objects to be stored globally (Kris Jurka)
+       </para>
+
+       <para>
+        Previously, comments attached to databases were stored in individual
+        databases, making them ineffective, and there was no provision
+        at all for comments on roles or tablespaces.  This change adds a new
+        shared catalog <link
+        linkend="catalog-pg-shdescription"><structname>pg_shdescription</structname></link>
+        and stores comments on databases, roles, and tablespaces therein.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Utility Command Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add option to allow indexes to be created without blocking
+        concurrent writes to the table (Greg Stark, Tom)
+       </para>
+
+       <para>
+        The new syntax is <link linkend="sql-createindex"><command>CREATE
+        INDEX CONCURRENTLY</command></link>.  The default behavior is
+        still to block table modification while a index is being
+        created.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Provide <link linkend="functions-advisory-locks">advisory
+        locking</link> functionality (Abhijit Menon-Sen, Tom)
+       </para>
+
+       <para>
+        This is a new locking API designed to replace what used to be
+        in /contrib/userlock.  The userlock code is now on pgfoundry.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-copy"><command>COPY</command></link> to
+        dump a <command>SELECT</command> query (Zoltan Boszormenyi, Karel
+        Zak)
+       </para>
+
+       <para>
+        This allows <command>COPY</command> to dump arbitrary <acronym>SQL</acronym>
+        queries. The syntax is <literal>COPY (SELECT ...) TO</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make the <link linkend="sql-copy"><command>COPY</command></link>
+        command return a command tag that includes the number of
+        rows copied (Volkan YAZICI)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-vacuum"><command>VACUUM</command></link>
+        to expire rows without being affected by other concurrent
+        <command>VACUUM</command> operations (Hannu Krossing, Alvaro, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <link linkend="app-initdb"><application>initdb</application></link>
+        detect the operating system locale and set the default
+        <varname>DateStyle</varname> accordingly (Peter)
+       </para>
+
+       <para>
+        This makes it more likely that the installed
+        <filename>postgresql.conf</filename> <varname>DateStyle</varname> value will
+        be as desired.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Reduce number of progress messages displayed by <application>initdb</application> (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Date/Time Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow full timezone names in <link
+        linkend="datatype-datetime"><type>timestamp</type></link> input values
+        (Joachim Wieland)
+       </para>
+
+       <para>
+        For example, <literal>'2006-05-24 21:11
+        America/New_York'::timestamptz</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support configurable timezone abbreviations (Joachim Wieland)
+       </para>
+
+       <para>
+        A desired set of timezone abbreviations can be chosen via the
+        configuration parameter <link
+        linkend="guc-timezone-abbreviations"><varname>timezone_abbreviations</varname></link>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="view-pg-timezone-abbrevs"><varname>pg_timezone_abbrevs</varname></link>
+        and <link
+        linkend="view-pg-timezone-names"><varname>pg_timezone_names</varname></link>
+        views to show supported timezones (Magnus Hagander)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="functions-datetime-table"><function>clock_timestamp()</function></link>,
+        <link
+        linkend="functions-datetime-table"><function>statement_timestamp()</function></link>,
+        and <link
+        linkend="functions-datetime-table"><function>transaction_timestamp()</function></link>
+        (Bruce)
+       </para>
+
+       <para>
+        <function>clock_timestamp()</function> is the current wall-clock time,
+        <function>statement_timestamp()</function> is the time the current
+        statement arrived at the server, and
+        <function>transaction_timestamp()</function> is an alias for
+        <function>now()</function>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link
+        linkend="functions-formatting"><function>to_char()</function></link>
+        to print localized month and day names (Euler Taveira de
+        Oliveira)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link
+        linkend="functions-formatting"><function>to_char(time)</function></link>
+        and <link
+        linkend="functions-formatting"><function>to_char(interval)</function></link>
+        to output <acronym>AM</acronym>/<acronym>PM</acronym> specifications
+        (Bruce)
+       </para>
+
+       <para>
+        Intervals and times are treated as 24-hour periods, e.g.
+        <literal>25 hours</literal> is considered <acronym>AM</acronym>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add new function <link
+        linkend="functions-datetime-table"><function>justify_interval()</function></link>
+        to adjust interval units (Mark Dilger)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow timezone offsets up to 14:59 away from GMT
+       </para>
+
+       <para>
+        Kiribati uses GMT+14, so we'd better accept that.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Interval computation improvements (Michael Glaesemann, Bruce)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Other Data Type and Function Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow arrays to contain <literal>NULL</literal> elements (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow assignment to array elements not contiguous with the existing
+        entries (Tom)
+       </para>
+
+       <para>
+        The intervening array positions will be filled with nulls.
+        This is per SQL standard.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        New built-in <link linkend="functions-array">operators</link>
+        for array-subset comparisons (<literal>@&gt;</literal>,
+        <literal>&lt;@</literal>, <literal>&amp;&amp;</literal>) (Teodor, Tom)
+       </para>
+
+       <para>
+        These operators can be indexed for many data types using
+        <acronym>GiST</acronym> or <acronym>GIN</acronym> indexes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add convenient arithmetic <link
+        linkend="cidr-inet-operators-table">operations</link> on
+        <type>INET</type>/<type>CIDR</type> values (Stephen R. van den
+        Berg)
+       </para>
+
+       <para>
+        The new operators are <literal>&amp;</literal> (and), <literal>|</literal>
+        (or), <literal>~</literal> (not), <type>inet</type> <literal>+</literal> <type>int8</type>,
+        <type>inet</type> <literal>-</literal> <type>int8</type>, and
+        <type>inet</type> <literal>-</literal> <type>inet</type>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add new <link
+        linkend="functions-aggregate-statistics-table">aggregate functions</link>
+        from SQL:2003 (Neil)
+       </para>
+
+       <para>
+        The new functions are <function>var_pop()</function>,
+        <function>var_samp()</function>, <function>stddev_pop()</function>, and
+        <function>stddev_samp()</function>.  <function>var_samp()</function> and
+        <function>stddev_samp()</function> are merely renamings of the
+        existing aggregates <function>variance()</function> and
+        <function>stddev()</function>.  The latter names remain available
+        for backward compatibility.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add SQL:2003 statistical <link
+        linkend="functions-aggregate-statistics-table">aggregates</link>
+        (Sergey Koposov)
+       </para>
+
+       <para>
+        New functions:  <function>regr_intercept()</function>,
+        <function>regr_slope()</function>, <function>regr_r2()</function>,
+        <function>corr()</function>, <function>covar_samp()</function>,
+        <function>covar_pop()</function>, <function>regr_avgx()</function>,
+        <function>regr_avgy()</function>, <function>regr_sxy()</function>,
+        <function>regr_sxx()</function>, <function>regr_syy()</function>,
+        <function>regr_count()</function>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-createdomain">domains</link> to be
+        based on other domains (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Properly enforce domain <link
+        linkend="ddl-constraints"><literal>CHECK</literal></link> constraints
+        everywhere (Neil, Tom)
+       </para>
+
+       <para>
+        For example, the result of a user-defined function that is
+        declared to return a domain type is now checked against the
+        domain's constraints. This closes a significant hole in the domain
+        implementation.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix problems with dumping renamed <link
+        linkend="datatype-serial"><type>SERIAL</type></link> columns
+        (Tom)
+       </para>
+
+       <para>
+        The fix is to dump a <type>SERIAL</type> column by explicitly
+        specifying its <literal>DEFAULT</literal> and sequence elements,
+        and reconstructing the <type>SERIAL</type> column on reload
+        using a new <link linkend="sql-altersequence"><command>ALTER
+        SEQUENCE OWNED BY</command></link> command.  This also allows
+        dropping a <type>SERIAL</type> column specification.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a server-side sleep function <link
+        linkend="functions-datetime-delay"><function>pg_sleep()</function></link>
+        (Joachim Wieland)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add all comparison operators for the <link
+        linkend="datatype-oid"><type>tid</type></link> (tuple id) data
+        type (Mark Kirkwood, Greg Stark, Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>PL/PgSQL Server-Side Language Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <literal>TG_table_name</literal> and <literal>TG_table_schema</literal> to
+        trigger parameters (Andrew)
+       </para>
+
+       <para>
+        <literal>TG_relname</literal> is now deprecated.  Comparable
+        changes have been made in the trigger parameters for the other
+        PLs as well.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <literal>FOR</literal> statements to return values to scalars
+        as well as records and row types (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a <literal>BY</literal> clause to the <literal>FOR</literal> loop,
+        to control the iteration increment (Jaime Casanova)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>STRICT</literal> to <link
+        linkend="plpgsql-statements-sql-onerow"><command>SELECT
+        INTO</command></link> (Matt Miller)
+       </para>
+
+       <para>
+        <literal>STRICT</literal> mode throws an exception if more or less
+        than one row is returned by the <command>SELECT</command>, for
+        <productname>Oracle PL/SQL</productname> compatibility.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>PL/Perl Server-Side Language Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <literal>table_name</literal> and <literal>table_schema</literal> to
+        trigger parameters (Adam Sjogren)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add prepared queries (Dmitry Karasik)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <literal>$_TD</literal> trigger data a global variable (Andrew)
+       </para>
+
+       <para>
+        Previously, it was lexical, which caused unexpected sharing
+        violations.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Run PL/Perl and PL/PerlU in separate interpreters, for security
+        reasons (Andrew)
+       </para>
+       <para>
+        In consequence, they can no longer share data nor loaded modules.
+        Also, if Perl has not been compiled with the requisite flags to
+        allow multiple interpreters, only one of these languages can be used
+        in any given backend process.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>PL/Python Server-Side Language Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Named parameters are passed as ordinary variables, as well as in the
+        <literal>args[]</literal> array (Sven Suursoho)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>table_name</literal> and <literal>table_schema</literal> to
+        trigger parameters (Andrew)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow returning of composite types and result sets (Sven Suursoho)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Return result-set as <literal>list</literal>, <literal>iterator</literal>,
+        or <literal>generator </literal>(Sven Suursoho)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow functions to return <literal>void</literal> (Neil)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Python 2.5 is now supported (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title><link linkend="app-psql"><application>psql</application></link> Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add new command <literal>\password</literal> for changing role
+        password with client-side password encryption (Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <literal>\c</literal> to connect to a new host and port
+        number (David, Volkan YAZICI)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add tablespace display to <literal>\l+</literal> (Philip Yarra)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve <literal>\df</literal> slash command to include the argument
+        names and modes (<literal>OUT</literal> or <literal>INOUT</literal>) of
+        the function (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support binary <command>COPY</command> (Andreas Pflug)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add option to run the entire session in a single transaction
+        (Simon)
+       </para>
+
+       <para>
+        Use option <literal>-1</literal> or <literal>--single-transaction</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support for automatically retrieving <command>SELECT</command>
+        results in batches using a cursor (Chris Mair)
+       </para>
+
+       <para>
+        This is enabled using <command>\set FETCH_COUNT
+        <replaceable>n</replaceable></command>. This
+        feature allows large result sets to be retrieved in
+        <application>psql</application> without attempting to buffer the entire
+        result set in memory.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make multi-line values align in the proper column
+        (Martijn van Oosterhout)
+       </para>
+
+       <para>
+        Field values containing newlines are now displayed in a more
+        readable fashion.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Save multi-line statements as a single entry, rather than
+        one line at a time (Sergey E. Koposov)
+       </para>
+
+       <para>
+        This makes up-arrow recall of queries easier.  (This is
+        not available on Windows, because that platform uses the native
+        command-line editing present in the operating system.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make the line counter 64-bit so it can handle files with more
+        than two billion lines (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Report both the returned data and the command status tag
+        for <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE
+        RETURNING</command> (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title><link linkend="app-pgdump"><application>pg_dump</application></link> Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow complex selection of objects to be included or excluded
+        by <application>pg_dump</application> (Greg Sabino Mullane)
+       </para>
+
+       <para>
+        <application>pg_dump</application> now supports multiple <literal>-n</literal>
+        (schema) and <literal>-t</literal> (table) options, and adds
+        <literal>-N</literal> and <literal>-T</literal> options to exclude objects.
+        Also, the arguments of these switches can now be wild-card expressions
+        rather than single object names, for example
+        <literal>-t 'foo*'</literal>, and a schema can be part of
+        a <literal>-t</literal> or <literal>-T</literal> switch, for example
+        <literal>-t schema1.table1</literal>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
+        <literal>--no-data-for-failed-tables</literal> option to suppress
+        loading data if table creation failed (i.e., the table already
+        exists) (Martin Pitt)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
+        option to run the entire session in a single transaction
+        (Simon)
+       </para>
+
+       <para>
+        Use option <literal>-1</literal> or <literal>--single-transaction</literal>.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title><link linkend="libpq"><application>libpq</application></link> Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="libpq-misc"><function>PQencryptPassword()</function></link>
+        to encrypt passwords (Tom)
+       </para>
+
+       <para>
+        This allows passwords to be sent pre-encrypted for commands
+        like <link linkend="sql-alterrole"><command>ALTER ROLE ...
+        PASSWORD</command></link>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add function <link
+        linkend="libpq-threading"><function>PQisthreadsafe()</function></link>
+        (Bruce)
+       </para>
+
+       <para>
+        This allows applications to query the thread-safety status
+        of the library.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="libpq-exec-main"><function>PQdescribePrepared()</function></link>,
+        <link
+        linkend="libpq-exec-main"><function>PQdescribePortal()</function></link>,
+        and related functions to return information about previously
+        prepared statements and open cursors (Volkan YAZICI)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <link linkend="libpq-ldap"><acronym>LDAP</acronym></link> lookups
+        from <link
+        linkend="libpq-pgservice"><filename>pg_service.conf</filename></link>
+        (Laurenz Albe)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow a hostname in <link
+        linkend="libpq-pgpass"><filename>~/.pgpass</filename></link>
+        to match the default socket directory (Bruce)
+       </para>
+
+       <para>
+        A blank hostname continues to match any Unix-socket connection,
+        but this addition allows entries that are specific to one of
+        several postmasters on the machine.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title><link linkend="ecpg"><application>ecpg</application></link> Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow <link linkend="sql-show"><command>SHOW</command></link> to
+        put its result into a variable (Joachim Wieland)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link linkend="sql-copy"><command>COPY TO STDOUT</command></link>
+        (Joachim Wieland)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add regression tests (Joachim Wieland, Michael)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Major source code cleanups (Joachim Wieland, Michael)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title><application>Windows</application> Port</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow <acronym>MSVC</acronym> to compile the <productname>PostgreSQL</productname>
+        server (Magnus, Hiroshi Saito)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <acronym>MSVC</acronym> support for utility commands and <link
+        linkend="app-pgdump"><application>pg_dump</application></link> (Hiroshi
+        Saito)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for Windows code pages <literal>1253</literal>,
+        <literal>1254</literal>, <literal>1255</literal>, and <literal>1257</literal>
+        (Kris Jurka)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Drop privileges on startup, so that the server can be started from 
+        an administrative account (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Stability fixes (Qingqing Zhou, Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add native semaphore implementation (Qingqing Zhou)
+       </para>
+
+       <para>
+        The previous code mimicked SysV semaphores.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Source Code Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <link linkend="GIN"><acronym>GIN</acronym></link> (Generalized
+        Inverted iNdex) index access method (Teodor, Oleg)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove R-tree indexing (Tom)
+       </para>
+
+       <para>
+        Rtree has been re-implemented using <link
+        linkend="gist"><acronym>GiST</acronym></link>. Among other
+        differences, this means that rtree indexes now have support
+        for crash recovery via write-ahead logging (WAL).
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Reduce libraries needlessly linked into the backend (Martijn
+        van Oosterhout, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a configure flag to allow libedit to be preferred over
+        <acronym>GNU</acronym> readline (Bruce)
+       </para>
+
+       <para>
+        Use configure <link
+        linkend="configure"><literal>--with-libedit-preferred</literal></link>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow installation into directories containing spaces
+        (Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve ability to relocate installation directories (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <productname>Solaris x86_64</productname> using the
+        <productname>Solaris</productname> compiler (Pierre Girard, Theo
+        Schlossnagle, Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <application>DTrace</application> support (Robert Lor)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>PG_VERSION_NUM</literal> for use by third-party
+        applications wanting to test the backend version in C using &gt;
+        and &lt; comparisons (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>XLOG_BLCKSZ</literal> as independent from <literal>BLCKSZ</literal>
+        (Mark Wong)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>LWLOCK_STATS</literal> define to report locking
+        activity (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Emit warnings for unknown <application>configure</application> options
+        (Martijn van Oosterhout)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add server support for <quote>plugin</quote> libraries
+        that can be used for add-on tasks such as debugging and performance
+        measurement (Korry Douglas)
+       </para>
+
+       <para>
+        This consists of two features: a table of <quote>rendezvous
+        variables</quote> that allows separately-loaded shared libraries to
+        communicate, and a new configuration parameter <link
+        linkend="guc-local-preload-libraries"><varname>local_preload_libraries</varname></link>
+        that allows libraries to be loaded into specific sessions without
+        explicit cooperation from the client application.  This allows
+        external add-ons to implement features such as a PL/PgSQL debugger.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Rename existing configuration parameter
+        <varname>preload_libraries</varname> to <link
+        linkend="guc-shared-preload-libraries"><varname>shared_preload_libraries</varname></link>
+        (Tom)
+       </para>
+
+       <para>
+        This was done for clarity in comparison to
+        <varname>local_preload_libraries</varname>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add new configuration parameter <link
+        linkend="guc-server-version-num"><varname>server_version_num</varname></link>
+        (Greg Sabino Mullane)
+       </para>
+
+       <para>
+        This is like <varname>server_version</varname>, but is an
+        integer, e.g.  <literal>80200</literal>. This allows applications to
+        make version checks more easily.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a configuration parameter <link
+        linkend="guc-seq-page-cost"><varname>seq_page_cost</varname></link>
+        (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Re-implement the <link linkend="regress">regression test</link> script as a C program
+        (Magnus, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow loadable modules to allocate shared memory and
+        lightweight locks (Marc Munro)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add automatic initialization and finalization of dynamically
+        loaded libraries (Ralf Engelschall, Tom)
+       </para>
+
+       <para>
+        New <link linkend="xfunc-c-dynload">functions</link>
+        <function>_PG_init()</function> and <function>_PG_fini()</function> are
+        called if the library defines such symbols.  Hence we no
+        longer need to specify an initialization function in
+        <varname>shared_preload_libraries</varname>; we can assume that
+        the library used the <function>_PG_init()</function> convention
+        instead.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <link
+        linkend="xfunc-c-dynload"><literal>PG_MODULE_MAGIC</literal></link>
+        header block to all shared object files (Martijn van
+        Oosterhout)
+       </para>
+
+       <para>
+        The magic block prevents version mismatches between loadable object
+        files and servers.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+         Add shared library support for AIX (Laurenz Albe)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        New <link linkend="datatype-xml"><acronym>XML</acronym></link>
+        documentation section (Bruce)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Contrib Changes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Major tsearch2 improvements (Oleg, Teodor)
+       </para>
+
+       <itemizedlist>
+
+        <listitem>
+         <para>
+          multibyte encoding support, including <acronym>UTF8</acronym>
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          query rewriting support
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          improved ranking functions
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          thesaurus dictionary support
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          Ispell dictionaries now recognize <application>MySpell</application>
+          format, used by <application>OpenOffice</application>
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          <acronym>GIN</acronym> support
+         </para>
+        </listitem>
+
+       </itemizedlist>
+
+      </listitem>
+
+      <listitem>
+       <para>
+        Add adminpack module containing <application>Pgadmin</application> administration
+        functions (Dave)
+       </para>
+
+       <para>
+        These functions provide additional file system access
+        routines not present in the default <productname>PostgreSQL</productname>
+        server.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add sslinfo module (Victor Wagner)
+       </para>
+
+       <para>
+        Reports information about the current connection's <acronym>SSL</acronym>
+        certificate.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add pgrowlocks module (Tatsuo)
+       </para>
+
+       <para>
+        This shows row locking information for a specified table.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add hstore module (Oleg, Teodor)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add isn module, replacing isbn_issn (Jeremy Kronuz)
+       </para>
+
+       <para>
+        This new implementation supports <acronym>EAN13</acronym>, <acronym>UPC</acronym>,
+        <acronym>ISBN</acronym> (books), <acronym>ISMN</acronym> (music), and
+        <acronym>ISSN</acronym> (serials).
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add index information functions to pgstattuple (ITAGAKI Takahiro,
+        Satoshi Nagayasu)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add pg_freespacemap module to display free space map information
+        (Mark Kirkwood)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        pgcrypto now has all planned functionality (Marko Kreen)
+       </para>
+       <itemizedlist>
+        <listitem>
+         <para>
+          Include iMath library in pgcrypto to have the public-key encryption
+          functions always available.
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          Add SHA224 algorithm that was missing in OpenBSD code.
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          Activate builtin code for SHA224/256/384/512 hashes on older
+          OpenSSL to have those algorithms always available.
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          New function gen_random_bytes() that returns cryptographically strong 
+          randomness.  Useful for generating encryption keys.
+         </para>
+        </listitem>
+        <listitem>
+         <para>
+          Remove digest_exists(), hmac_exists() and cipher_exists() functions.
+         </para>
+        </listitem>
+       </itemizedlist>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improvements to cube module (Joshua Reich)
+       </para>
+
+       <para>
+        New functions are <function>cube(float[])</function>,
+        <function>cube(float[], float[])</function>, and
+        <function>cube_subset(cube, int4[])</function>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add async query capability to dblink (Kai Londenberg,
+        Joe Conway)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        New operators for array-subset comparisons (<literal>@&gt;</literal>,
+        <literal>&lt;@</literal>, <literal>&amp;&amp;</literal>) (Tom)
+       </para>
+
+       <para>
+        Various contrib packages already had these operators for their
+        datatypes, but the naming wasn't consistent.  We have now added
+        consistently named array-subset comparison operators to the core code
+        and all the contrib packages that have such functionality.
+        (The old names remain available, but are deprecated.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add uninstall scripts for all contrib packages that have install
+        scripts (David, Josh Drake)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect3>
+
+   </sect2>
+  </sect1>

Added: traduc/trunk/postgresql/release-8.3.xml
===================================================================
--- traduc/trunk/postgresql/release-8.3.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-8.3.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,4547 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <sect1 id="release-8-3-7">
+  <title>Version 8.3.7</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-03-16</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.3.6.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration to Version 8.3.7</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.3.5, voir les notes de sortie de la 8.3.5.
+   </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</command> 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 de <function>xpath()</function> pour ne modifier l'expression
+      du chemin que si nécessaire, et de faire une tentative plus saine quand
+      c'est nécessaire (Andrew)
+     </para>
+
+     <para>
+      Le standard SQL suggère que <function>xpath</function> devrait fonctionner
+      sur des données qui sont un fragment de document mais
+      <application>libxml</application> ne supporte pas cela et il n'est pas
+      clair que ce soit intéressant d'après le standard XPatch.
+      <function>xpath</function> tentait de contourner cette différence en
+      modifiant les données et l'expression du chemin mais la modification était
+      erronnée et pouvait causer l'échec de recherches valides. Maintenant,
+      <function>xpath</function> vérifie sir les données sont en fait un
+      document bien formé et, dans ce cas, appelle
+      <application>libxml</application> sans modification des données ou de
+      l'expression du chemin. Sinon, une méthode différente de modification
+      qui est moins sujette à l'échec est utilisée.
+     </para>
+
+     <note>
+      <para>
+       La nouvelle méthode de modification n'est pas satisfaisante à 100% et il
+       semble qu'il n'existe pas de solution réelle. Ce correctif doit donc
+       etre vu seulement comme une aide pour ne pas casser les applications
+       existantes. Il est probable que <productname>PostgreSQL</productname>
+       8.4 rejettera simplement l'utilisation de <function>xpath</function>
+       sur des données qui ne constituent pas un document bien formé.
+      </para>
+     </note>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un crash lorsque <function>to_char()</function> a pour
+      argument des codes de format inappropriés pour la donnée en argument
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un échec possible dans <filename>contrib/tsearch2</filename>
+      lorsque la locale C est utilisée avec un encodage multi-octets (Teodor)
+     </para>
+
+     <para>
+      Les crashes étaient possibles sur les plateformes où <type>wchar_t</type>
+      est plus petit que <type>int</type>&nbsp;; Windows en particulier.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de l'inefficacité extrême dans la gestion par l'analyseur
+      <filename>contrib/tsearch2</filename> d'une chaîne de type email contenant de
+      nombreux caractères <literal>@</literal> (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un problème du planificateur avec les
+      sous-<command>SELECT</command> dans la liste en sortie d'une sous-requête
+      importante (Tom)
+     </para>
+
+     <para>
+      Le symptôme connu de ce bogue est une erreur <quote>failed to locate
+      grouping columns</quote> dépendant du type de donnée impliqué mais il
+      pourrait y avoir d'autres problèmes.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
+      cette instruction est utilisée avec une coercion explicite
+      (Tom)
+     </para>
+
+     <para>
+      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
+      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
+      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
+      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise affectation possible du propriétaire du rowtype
+      d'une table TOAST (Tom)
+     </para>
+
+     <para>
+      Si <command>CLUSTER</command> ou une variante de <command>ALTER
+      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
+      d'autre que le propriétaire de la table, l'entrée
+      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
+      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
+      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
+      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
+      opération ordinaire de la base de données. Néanmoins, cela peut amener
+      des échecs inattendus si une personne tente plus tard de supprimer le rôle
+      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
+      du type <quote>propriétaire du type de données semble invalide</quote>
+      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
+      (en 8.3).
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Modification de <command>UNLISTEN</command> pour qu'il quitte rapidement
+      si la session en cours n'a jamais exécuté de commande
+      <command>LISTEN</command> (Tom)
+     </para>
+
+     <para>
+      La plupart du temps, cela n'est pas une optimisation particulièrement
+      utile mais comme <command>DISCARD ALL</command> appelle
+      <command>UNLISTEN</command>, le codage précédent causait un problème de
+      performances substantiel pour les applications utilisant beaucoup
+      <command>DISCARD ALL</command>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de PL/pgSQL pour qu'il ne traite pas <literal>INTO</literal>
+      après un <command>INSERT</command> comme une clause d'affectation de
+      variables, quelque soit son emplacement&nbsp;; en particulier, cela
+      permet d'éviter un échec sur un <command>INSERT INTO</command> compris
+      dans une commande <command>CREATE RULE</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
+      bloc (Ashesh Vashi et Dave Page)
+     </para>
+
+     <para>
+      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
+      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
+      fonction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ré-essaie d'appeler <function>CallNamedPipe()</function> après un échec
+      sur Windows (Steve Marshall, Magnus)
+     </para>
+
+     <para>
+      Il semble que cette fonction puisse échouer de temps en temps&nbsp;;
+      auparavant, nous avons traiter toute erreur comme une erreur grave
+      qui pourrait poser problème aux instructions <command>LISTEN</command>
+      / <command>NOTIFY</command> ainsi qu'à d'autres opérations.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de <literal>MUST</literal> (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-8-3-6">
+  <title>Version 8.3.6</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2009-02-02</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.3.5.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.6</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.3.5, voir les notes de sortie de la 8.3.5.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changements</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      <command>DISCARD ALL</command> lâche aussi les verrous informatifs, en
+      plus de tout ce qu'il faisait déjà (Tom)
+     </para>
+
+     <para>
+      Il a été décidé que c'est le comportement le plus approprié. Néanmoins,
+      cela pourrait affecter les applications existantes.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction des parcours complets d'index GiST (Teodor)
+     </para>
+
+     <para>
+      Cette erreur peut faire que des lignes soient perdues si CLUSTER est
+      utilisé avec une table et son index GiST.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de l'arrêt brutal de <literal>xmlconcat(NULL)</literal> (Peter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un arrêt brutal possible dans le dictionnaire
+      <literal>ispell</literal> si des caractères avec le bit de poids fort
+      levé sont utilisés comme des drapeaux (Teodor)
+     </para>
+
+     <para>
+      C'est survenu avec le dictionnaire norvégien disponible mais ces conditions
+      pourraient en affecter d'autres.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais ordre dans la sortie de
+      <application>pg_dump</application> pour les types composites (Tom)
+     </para>
+
+     <para>
+      Le problème le plus fréquent concernait des classes d'opérateur définies
+      par l'utilisateur, qui sont sauvegardées après les index et vues qui les
+      utilisent.
+     </para>
+    </listitem>
+
+    <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>
+      Empêche des échecs possibles avec Assert si une instruction exécutée en
+      PL/pgSQL est ré-écrite dans un autre type d'instruction, par exemple si
+      <command>INSERT</command> est ré-écrit en <command>UPDATE</command>
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une image de la base est disponible pour les fonctions en
+      entrée des types (Tom)
+     </para>
+
+     <para>
+      Ceci affecte principalement les domaines qui sont déclarés avec des
+      contraintes <literal>CHECK</literal> impliquant des fonctions stables
+      ou immutables définies par l'utilisateur. De telles fonctions échouent
+      typiquement si aucune image de la base n'a été réalisée.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Rend plus sûr l'utilisation des entrées/sorties de type avec les fonctions
+      SPI&nbsp;; en particulier à utiliser aves les contraintes de vérifications
+      pour les domaines (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Évite un verrou inutile des petites tables dans <command>VACUUM</command>
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un problème qui empêche quelque fois <command>ALTER TABLE
+      ENABLE/DISABLE RULE</command> d'être reconnu par les sessions actives
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un problème faisant que <literal>UPDATE RETURNING
+      tableoid</literal> renvoie zéro au lieu du bon OID (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Permet aux fonctions déclarées comme prenant <type>ANYARRAY</type> en
+      argument de fonctionner avec les colonnes de ce type dans la table
+      <structname>pg_statistic</structname> (Tom)
+     </para>
+
+     <para>
+      Ceci fonctionnait mais a été cassé par erreur en 8.3.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise estimation de la sélectivité du planificateur
+      quand une égalité transitive est appliquée à une clause jointure externe
+      (Tom)
+     </para>
+
+     <para>
+      Ceci pourrait résulter en de mauvais plans pour les requêtes identiques à
+      <literal>... from a left join b on a.a1 = b.b1 where a.a1 = 42 ...</literal>
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Amélioration de la gestion des grosses listes <literal>IN</literal> par
+      l'optimiseur (Tom)
+     </para>
+
+     <para>
+      Cette modification évite de perdre beaucoup de temps sur de telles listes
+      dans la contrainte d'exclusion est activée.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Empêche le parcours synchrone lors de la construction d'un index GIN
+      (Tom)
+     </para>
+
+     <para>
+      Comme GIN est optimisé pour insérer les lignes dans l'ordre croissant
+      des TID, l'utilisation d'un parcours synchrone pourrait ralentir la
+      construction par un facteur de trois, voire plus.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
+      des tables TOAST (Tom)
+     </para>
+
+     <para>
+      Auparavant, des valeurs de champ large dans un résultat de curseur
+      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
+      un échec si la table référencée était supprimée avant la lecture du
+      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
+      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
+      un curseur qui est conservé après sa transaction de création.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une fuite mémoire lorsqu'une fonction SRF se termine sans
+      lecture du résultat complet (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de problèmes de conversion dans les fonctions XML quand
+      l'encodage de la base de données n'est pas UTF-8 (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la fonction <function>dblink_get_result(text,bool)</function>
+      de <filename>contrib/dblink</filename> (Joe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais retour des fonctions de
+      <filename>contrib/sslinfo</filename> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais comportement du trigger de compatibilité de
+      <filename>contrib/tsearch2</filename> lorsqu'il est exécuté plus d'une
+      fois dans une commande (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais signal possible dans l'autovacuum (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support de l'utilisation d'un service avec Windows 7 beta (Dave et Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de la gestion des structures varchar avec
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction du script <application>configure</application> pour rapporter
+      correctement les échecs quand il est incapable d'obtenir les informations
+      de liens pour PL/Perl (Andrew)
+     </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>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
+      <application>tzdata</application> (pour le Kathmandou et des corrections
+      historiques de DST en Switzerland et à Cuba)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3-5">
+  <title>Version 8.3.5</title>
+
+  <note>
+  <title>Date de version</title>
+  <simpara>2008-11-03</simpara>
+  </note>
+
+  <para>
+   Cette version contient des corrections de la version 8.3.4.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.5</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
+    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
+    antérieure à la 8.3.1, voir les notes de sortie de la 8.3.1.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
+      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
+     </para>
+
+     <para>
+      Cela peut avoir comme conséquence des échecs dans les recherches par
+      index pour des lignes qu'elles auraient dû trouver.
+     </para>
+    </listitem>
+
+    <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</quote> 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 d'un crash possible dans la correspondance
+      <type>bytea</type>-vers-XML (Michael McMaster)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un crash possible lorsque des fonctions profondément
+      imbriquées sont appelées à partir d'un trigger (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Amélioration de l'optimisation des requêtes de type
+      <replaceable>expression</replaceable> <literal>IN</literal>
+      (<replaceable>liste-expression</replaceable>) (Tom, à partir d'une idée de
+      Robert Haas)
+     </para>
+
+     <para>
+      Les cas où il se trouve des variables de requpetes dans le côté droit
+      étaient gérés moins efficacement dans les versions 8.2.x et 8.3.x que
+      dans les versions précédentes. La correction restaure le comportement
+      de la 8.1 pour ces cas.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une mauvaise expansion de requêtes de règles quand un
+      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
+      <literal>FROM</literal>, d'une liste <literal>VALUES</literal>
+      multi-lignes ou d'une liste <literal>RETURNING</literal> (Tom)
+     </para>
+
+     <para>
+      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
+      inconnu</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un échec Assert lors du parcours <literal>IS NULL</literal>
+      pour une recherche dans un index GiST (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une fuite mémoire lors du parcours d'un plan d'aggrégation
+      haché (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
+      nouvellement définie est appelée comme une fonction normale (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Force un point de vérification quand <command>CREATE DATABASE</command>
+      commence à copier les fichiers (Heikki)
+     </para>
+
+     <para>
+      Ceci empêche un échec possible si des fichiers ont récemment été supprimés
+      de la base de données source.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Empêche une collision possible du <structfield>relfilenode</structfield>
+      lors du déplacement d'une table vers un autre tablespace avec
+      <command>ALTER SET TABLESPACE</command> (Heikki)
+     </para>
+
+     <para>
+      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
+      prendre un qu'on sait inutilisé dans le répertoire de destination.
+     </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</option>
+      (Ron Mayer)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fait que <literal>ILIKE</literal> compare les caractères sans attention à
+      la casse même lorsqu'ils sont échappés (Andrew)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <command>DISCARD</command> est géré correctement par les
+      traces des instructions (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une trace incorrecte du moment de la dernière transaction
+      restaurée lors d'une restauration PITR (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
+      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>
+      Marque <varname>SessionReplicationRole</varname> comme
+      <literal>PGDLLIMPORT</literal> pour qu'il puisse être utilisé par
+      <application>Slony</application> sur Windows (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une petite fuite mémoire lors de l'utilisation du paramètre
+      <literal>gsslib</literal> de <application>libpq</application> (Magnus)
+     </para>
+
+     <para>
+      L'espace utilisée par la chaîne de paramètres n'était pas libérée à la
+      fermeture de la connexion.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <application>libgssapi</application> est liée à
+      <application>libpq</application> si nécessaire (Markus Schaaf)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de l'analyse de <command>CREATE USER</command> par
+      <application>ecpg</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      S'assure que <filename>pg_control</filename> en ouvert en mode binaire
+      seul (Itagaki Takahiro)
+     </para>
+
+     <para>
+      <application>pg_controldata</application> et <application>pg_resetxlog</application>
+      ne le faisaient pas correction, ce qui provoquait un échec sur Windows.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Mise à jour des fichiers de données de fuseaux horaires vers la version
+      2008i de <application>tzdata</application> (pour les modifications légales de DST en
+      Argentine, au Brésil, à l'Île Maurice et en Syrie)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3-4">
+  <title>Version 8.3.4</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-09-22</simpara>
+  </note>
+
+  <para>
+   Cette version contient quelques correctifs de la version 8.3.3.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.4</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
+    version 8.3.X.
+    Néanmoins, si vous mettez à jour à partir d'une version antérieure à la
+    version 8.3.1, voir les notes de sortie de la 8.3.1.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Correction d'un bogue dans le code de restauration d'un enregistrement
+      btree (Heikki)
+     </para>
+
+     <para>
+      La restauration échouait si l'enregistrement du journal se terminait à
+      moitié lors d'une opération de division de page.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une utilisation potentielle d'un XID limite lors de la
+      réduction des pages HOT (Alvaro)
+     </para>
+
+     <para>
+      Cette erreur crée un risque de corruption dans les catalogues système
+      qui sont consultés par <command>VACUUM</command>&nbsp;: les versions de
+      lignes mortes pourraient être supprimées trop rapidement. L'impact de
+      ceci sur les opérations actuelles de la base de données serait minimale
+      car le système ne suit pas les règles MVCC lors de l'examen des
+      catalogues, mais pourrait résultat en de mauvaises sorties temporaires
+      de programmes clients comme <application>pg_dump</application>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un mauvais calcul potentiel de
+      <structfield>datfrozenxid</structfield> (Alvaro)
+     </para>
+
+     <para>
+      Cette erreur pourrait expliquer certains rapports récents de suppression
+      de vieilles données dans le répertoire <structname>pg_clog</structname>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de mises à jour incorrectes de HOT après que
+      <structname>pg_class</structname> soit ré-indexé (Tom)
+     </para>
+
+     <para>
+      Une corruption de <structname>pg_class</structname> pourrait survenir si
+      <literal>REINDEX TABLE pg_class</literal> était suivi dans la même
+      session par une commande <literal>ALTER TABLE RENAME</literal> ou
+      <literal>ALTER TABLE SET SCHEMA</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'une casse manquante <quote>combo cid</quote> (Karl Schnaitter)
+     </para>
+
+     <para>
+      Cette erreur faisait que des lignes se trouvaient invisibles par erreur
+      dans une transaction. Elles avaient été supprimées par plusieurs
+      sous-transactions toutes annulées.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Empêche l'autovacuum de s'arrêter inoppunément si la table qu'il vérifie
+      est supprimée au mauvais moment (Alvaro)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Augmentation du compteur de verrou local en le passant de 32 à 64 bits (Tom)
+     </para>
+
+     <para>
+      Ceci est une réponse aux rapports indiquant que la capacité des
+      compteurs pouvait être dépassée dans des transactions suffisamment
+      longues, amenant à des erreurs inattendues du style <quote>le verrou
+      est déjà détenu</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction d'un affichage dupliqué des lignes lors d'un parcours d'index
+      GiST (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Regénération des requêtes de vérification des clés étrangères quand
+      une des tables est modifiée (Tom)
+     </para>
+
+     <para>
+      Auparavant, la version 8.3 essayait de replanifier la requête mais
+      travaillait à partir des requêtes précédemment générées. Ceci pouvait
+      amener des échecs si une table ou une colonne était renommée.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction des vérifications de droits oubliées quand une vue contient
+      une construction <literal>UNION ALL</literal> simple (Heikki)
+     </para>
+
+     <para>
+      Les droits pour les tables référencées étaient vérifiés correctement,
+      mais pas les droits pour la vue elle-même.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ajout de vérifications dans le démarrage de l'exécuteur pour s'assurer
+      que les lignes produites par une instruction <command>INSERT</command>
+      ou <command>UPDATE</command> correspondront au type de ligne actuel de
+      la table cible (Tom)
+     </para>
+
+     <para>
+      Cette situation semblait impossible en 8.3, mais elle peut arriver dans
+      les versions précédentes, donc une vérification est plus prudente.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction des suppressions possibles répétées durant un
+      <command>DROP OWNED</command> (Tom)
+     </para>
+
+     <para>
+      Ceci pourrait résulter en des erreurs étranges comme <quote>recherche
+      échouée dans le cache pour la relation NNN</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Corrections de plusieurs pertes mémoire dans les opérations XML
+      (Kris Jurka, Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de <function>xmlserialize()</function> pour augmenter le
+      niveau d'erreur correctement pour les types de données cibles non
+      acceptables (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de plusieurs places gérant mal les caractères multi-octets
+      dans l'analyse des fichiers de configuration pour la recherche plein
+      texte (Tom)
+     </para>
+
+     <para>
+      Certains caractères des fichiers de configuration pouvaient toujours
+      causer des échecs de type <quote>séquence d'octets invalide pour
+      l'encodage</quote>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fournit un nom de fichier et le numéro de ligne pour toutes les erreurs
+      rapportées dans des fichiers de configuration de la recherche plein texte
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Correction de <literal>AT TIME ZONE</literal> pour essayer tout d'abord
+      d'interpréter son argument de fuseau horaire en tant qu'abréviation de
+      fuseau horaire, et essaiera seulement en tant que nom complet de fuseau
+      horaire si la première tentative échoue (auparavant, c'était le
+      contraire (Tom)
+     </para>
+
+     <para>
+      Les fonctions de saisie des dates et heures ont toujours tenté de
+      résoudre les noms de fuseaux horaires ambigus dans cet ordre.
+      Faire en sorte que <literal>AT TIME ZONE</literal> fasse de même
+      améliore la cohérence et corrige un bogue de compatibilité introduit
+      en version 8.1&nbsp;: dans les cas ambigus, nous nous comportons
+      maintenant comme en 8.0 car dans les anciennes versions <literal>AT
+      TIME ZONE</literal> acceptaient <emphasis>seulement</emphasis> les
+      abréviations.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix datetime input functions to correctly detect integer overflow when
+      running on a 64-bit platform (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent integer overflows during units conversion when displaying a
+      configuration parameter that has units (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve performance of writing very long log messages to syslog (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow spaces in the suffix part of an LDAP URL in
+      <filename>pg_hba.conf</filename> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
+      ON</literal> query (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner bug that could improperly push down <literal>IS NULL</literal>
+      tests below an outer join (Tom)
+     </para>
+
+     <para>
+      This was triggered by occurrence of <literal>IS NULL</literal> tests for
+      the same relation in all arms of an upper <literal>OR</literal> clause.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner bug with nested sub-select expressions (Tom)
+     </para>
+
+     <para>
+      If the outer sub-select has no direct dependency on the parent query,
+      but the inner one does, the outer value might not get recalculated
+      for new parent query rows.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to estimate that <literal>GROUP BY</literal> 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>
+      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
+      is a record containing composite-type fields (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
+      about the encoding of data sent to or from Tcl (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve performance of <function>PQescapeBytea()</function> (Rudolf Leitgeb)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, work around a Microsoft bug by preventing
+      <application>libpq</application> from trying to send more than 64kB per system call
+      (Magnus)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</application> to handle variables properly in <command>SET</command>
+      commands (Michael)
+     </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>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to properly preserve postmaster
+      command-line arguments across a <literal>restart</literal> (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix erroneous WAL file cutoff point calculation in
+      <application>pg_standby</application> (Simon)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008f (for
+      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
+      Pakistan, Palestine, and Paraguay)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3-3">
+  <title>Version 8.3.3</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-06-12</simpara>
+  </note>
+
+  <para>
+   This release contains one serious and one minor bug fix over 8.3.2.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.3</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
+    However, if you are upgrading from a version earlier than 8.3.1,
+    see the release notes for 8.3.1.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
+      be <literal>(-42)::integer</literal> due to operator precedence rules.
+      Usually this would make little difference, but it could interact with
+      another recent patch to cause
+      <productname>PostgreSQL</productname> to reject what had been a valid
+      <command>SELECT DISTINCT</command> view query.  Since this could result in
+      <application>pg_dump</application> 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>
+
+    <listitem>
+     <para>
+      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
+      <structname>pg_shdepend</structname> (Tom)
+     </para>
+
+     <para>
+      This oversight could lead to problems if the aggregate was later
+      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
+      operation.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3-2">
+  <title>Version 8.3.2</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>never released</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.3.1.
+   Pour plus d'informations sur les nouvelles fonctionnalités de la
+   version majeure 8.3, voir <xref linkend="release-8-3"/>.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.2</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
+    However, if you are upgrading from a version earlier than 8.3.1,
+    see the release notes for 8.3.1.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix <literal>ERRORDATA_STACK_SIZE exceeded</literal> crash that
+      occurred on Windows when using UTF-8 database encoding and a different
+      client encoding (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect archive truncation point calculation for the
+      <literal>%r</literal> macro in <varname>recovery_command</varname> parameters
+      (Simon)
+     </para>
+
+     <para>
+      This could lead to data loss if a warm-standby script relied on
+      <literal>%r</literal> to decide when to throw away WAL segment files.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
+      column is correctly checked to see if it's been initialized to all
+      non-nulls (Brendan Jurd)
+     </para>
+
+     <para>
+      Previous versions neglected to check this requirement at all.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</command> so that it works on procedural
+      languages too (Alvaro)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix problems with <command>SELECT FOR UPDATE/SHARE</command> occurring as a
+      subquery in a query with a non-<command>SELECT</command> top-level operation
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible <command>CREATE TABLE</command> failure when inheriting the
+      <quote>same</quote> constraint from multiple parent relations that
+      inherited that constraint from a common ancestor (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>pg_get_ruledef()</function> to show the alias, if any, attached
+      to the target table of an <command>UPDATE</command> or <command>DELETE</command>
+      (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Restore the pre-8.3 behavior that an out-of-range block number in a
+      TID being used in a TidScan plan results in silently not matching any
+      rows (Tom)
+     </para>
+
+     <para>
+      8.3.0 and 8.3.1 threw an error instead.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GIN bug that could result in a <literal>too many LWLocks
+      taken</literal> failure (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix broken GiST comparison function for <type>tsquery</type> (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>tsvector_update_trigger()</function> and <function>ts_stat()</function>
+      to accept domains over the types they expect to work with (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure to support enum data types as foreign keys (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid possible crash when decompressing corrupted data
+      (Zdenek Kotala)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions between delayed unlinks and <command>DROP
+      DATABASE</command> (Heikki)
+     </para>
+
+     <para>
+      In the worst case this could result in deleting a newly created table
+      in a new database that happened to get the same OID as the
+      recently-dropped one; but of course that is an extremely
+      low-probability scenario.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Repair two places where SIGTERM exit of a backend could leave corrupted
+      state in shared memory (Tom)
+     </para>
+
+     <para>
+      Neither case is very important if SIGTERM is used to shut down the
+      whole database cluster together, but there was a problem if someone
+      tried to SIGTERM individual backends.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash due to incorrect plan generated for an
+      <literal><replaceable>x</replaceable> IN (SELECT <replaceable>y</replaceable>
+      FROM ...)</literal> clause when <replaceable>x</replaceable> and <replaceable>y</replaceable>
+      have different data types; and make sure the behavior is semantically
+      correct when the conversion from <replaceable>y</replaceable>'s type to
+      <replaceable>x</replaceable>'s type is lossy (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix oversight that prevented the planner from substituting known Param
+      values as if they were constants (Tom)
+     </para>
+
+     <para>
+      This mistake partially disabled optimization of unnamed
+      extended-Query statements in 8.3.0 and 8.3.1: in particular the
+      LIKE-to-indexscan optimization would never be applied if the LIKE
+      pattern was passed as a parameter, and constraint exclusion
+      depending on a parameter value didn't work either.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner failure when an indexable <function>MIN</function> or
+      <function>MAX</function> aggregate is used with <literal>DISTINCT</literal> or
+      <literal>ORDER BY</literal> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner to ensure it never uses a <quote>physical tlist</quote> for a
+      plan node that is feeding a Sort node (Tom)
+     </para>
+
+     <para>
+      This led to the sort having to push around more data than it really
+      needed to, since unused column values were included in the sorted
+      data.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid unnecessary copying of query strings (Tom)
+     </para>
+
+     <para>
+      This fixes a performance problem introduced in 8.3.0 when a very large
+      number of commands are submitted as a single query string.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <function>TransactionIdIsCurrentTransactionId()</function> use binary
+      search instead of linear search when checking child-transaction XIDs
+      (Heikki)
+     </para>
+
+     <para>
+      This fixes some cases in which 8.3.0 was significantly
+      slower than earlier releases.
+     </para>
+    </listitem>
+
+    <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 several datatype input functions, notably <function>array_in()</function>,
+      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>
+      Prevent cancellation of an auto-vacuum that was launched to prevent
+      XID wraparound (Alvaro)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve <command>ANALYZE</command>'s handling of in-doubt tuples (those
+      inserted or deleted by a not-yet-committed transaction) so that the
+      counts it reports to the stats collector are more likely to be correct
+      (Pavan Deolasee)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>initdb</application> to reject a relative path for its
+      <literal>--xlogdir</literal> (<literal>-X</literal>) option (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <application>psql</application> print tab characters as an appropriate
+      number of spaces, rather than <literal>\x09</literal> as was done in
+      8.3.0 and 8.3.1 (Bruce)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008c (for
+      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba, and
+      Argentina/San_Luis)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add <function>ECPGget_PGconn()</function> function to
+      <application>ecpglib</application> (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect result from <application>ecpg</application>'s
+      <function>PGTYPEStimestamp_sub()</function> function (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix handling of continuation line markers in <application>ecpg</application>
+      (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes in <filename>contrib/cube</filename> functions (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix core dump in <filename>contrib/xml2</filename>'s
+      <function>xpath_table()</function> function when the input query returns a
+      NULL value (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/xml2</filename>'s makefile to not override
+      <literal>CFLAGS</literal>, and make it auto-configure properly for
+      <application>libxslt</application> present or not (Tom)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3-1">
+  <title>Version 8.3.1</title>
+
+  <note>
+  <title>Date de sortie</title>
+  <simpara>2008-03-17</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.3.0.
+   However, if you are upgrading from a version earlier than 8.3.1,
+   see the release notes for 8.3.1.
+  </para>
+
+  <sect2>
+   <title>Migration vers la version 8.3.1</title>
+
+   <para>
+    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
+    However, you might need to <command>REINDEX</command> indexes on textual
+    columns after updating, if you are affected by the Windows locale
+    issue described below.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix character string comparison for Windows locales that consider
+      different character combinations as equal (Tom)
+     </para>
+
+     <para>
+      This fix applies only on Windows and only when using UTF-8
+      database encoding.  The same fix was made for all other cases
+      over two years ago, but Windows with UTF-8 uses a separate code
+      path that was not updated.  If you are using a locale that
+      considers some non-identical strings as equal, you may need to
+      <command>REINDEX</command> to fix existing indexes on textual columns.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Repair corner-case bugs in <command>VACUUM FULL</command> (Tom)
+     </para>
+
+     <para>
+      A potential deadlock between concurrent <command>VACUUM FULL</command>
+      operations on different system catalogs was introduced in 8.2.
+      This has now been corrected.  8.3 made this worse because the
+      deadlock could occur within a critical code section, making it
+      a PANIC rather than just ERROR condition.
+     </para>
+
+     <para>
+      Also, a <command>VACUUM FULL</command> that failed partway through
+      vacuuming a system catalog could result in cache corruption in
+      concurrent database sessions.
+     </para>
+
+     <para>
+      Another <command>VACUUM FULL</command> bug introduced in 8.3 could
+      result in a crash or out-of-memory report when dealing with
+      pages containing no live tuples.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misbehavior of foreign key checks involving <type>character</type>
+      or <type>bit</type> columns (Tom)
+     </para>
+
+     <para>
+      If the referencing column were of a different but compatible type
+      (for instance <type>varchar</type>), the constraint was enforced incorrectly.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid needless deadlock failures in no-op foreign-key checks (Stephan
+      Szabo, Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible core dump when re-planning a prepared query (Tom)
+     </para>
+
+     <para>
+      This bug affected only protocol-level prepare operations, not
+      SQL <command>PREPARE</command>, and so tended to be seen only with
+      JDBC, DBI, and other client-side drivers that use prepared
+      statements heavily.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible failure when re-planning a query that calls an SPI-using
+      function (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure in row-wise comparisons involving columns of different
+      datatypes (Tom)
+     </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>
+      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
+      prepared transaction (Tom)
+     </para>
+
+     <para>
+      This was formerly allowed but trying to do it had various unpleasant 
+      consequences, notably that the originating backend could not exit
+      as long as an <command>UNLISTEN</command> remained uncommitted.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Disallow dropping a temporary table within a
+      prepared transaction (Heikki)
+     </para>
+
+     <para>
+      This was correctly disallowed by 8.1, but the check was inadvertently
+      broken in 8.2 and 8.3.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix rare crash when an error occurs during a query using a hash index
+      (Heikki)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect comparison of <type>tsquery</type> values (Teodor)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect behavior of <literal>LIKE</literal> with non-ASCII characters
+      in single-byte encodings (Rolf Jentsch)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Disable <function>xmlvalidate</function> (Tom)
+     </para>
+
+     <para>
+      This function should have been removed before 8.3 release, but
+      was inadvertently left in the source code.  It poses a small
+      security risk since unprivileged users could use it to read the
+      first few characters of any file accessible to the server.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix memory leaks in certain usages of set-returning functions (Neil)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make <function>encode(<replaceable>bytea</replaceable>, 'escape')</function> convert all
+      high-bit-set byte values into <literal>\</literal><replaceable>nnn</replaceable> octal
+      escape sequences (Tom)
+     </para>
+
+     <para>
+      This is necessary to avoid encoding problems when the database
+      encoding is multi-byte.  This change could pose compatibility issues
+      for applications that are expecting specific results from
+      <function>encode</function>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix input of datetime values for February 29 in years BC (Tom)
+     </para>
+
+     <para>
+      The former coding was mistaken about which years were leap years.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>unrecognized node type</quote> error in some variants of
+      <command>ALTER OWNER</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid tablespace permissions errors in <command>CREATE TABLE LIKE
+      INCLUDING INDEXES</command> (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure <structname>pg_stat_activity</structname>.<structfield>waiting</structfield> flag
+      is cleared when a lock wait is aborted (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix handling of process permissions on Windows Vista (Dave, Magnus)
+     </para>
+
+     <para>
+      In particular, this fix allows starting the server as the Administrator
+      user.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</application> release 2008a
+      (in particular, recent Chile changes); adjust timezone abbreviation
+      <literal>VET</literal> (Venezuela) to mean UTC-4:30, not UTC-4:00 (Tom)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</application> problems with arrays (Michael)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
+      number from command-line options (Itagaki Takahiro, Tom)
+     </para>
+
+     <para>
+      Previously, <literal>pg_ctl start -w</literal> could try to contact the
+      postmaster on the wrong port, leading to bogus reports of startup
+      failure.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Use <option>-fwrapv</option> to defend against possible misoptimization
+      in recent <application>gcc</application> versions (Tom)
+     </para>
+
+     <para>
+      This is known to be necessary when building <productname>PostgreSQL</productname>
+      with <application>gcc</application> 4.3 or later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Enable building <filename>contrib/uuid-ossp</filename> with MSVC (Hiroshi Saito)
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
+ <sect1 id="release-8-3">
+  <title>Version 8.3</title>
+
+  <note>
+   <title>Date de sortie</title>
+   <simpara>2008-02-04</simpara>
+  </note>
+
+  <sect2>
+   <title>Overview</title>
+
+   <para>
+    With significant new functionality and performance enhancements,
+    this release represents a major leap forward for
+    <productname>PostgreSQL</productname>. This was made possible by a growing
+    community that has dramatically accelerated the pace of
+    development. This release adds the following major features:
+   </para>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Full text search is integrated into the core database system
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support for the SQL/XML standard, including new operators and an
+      <type>XML</type> data type
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Enumerated data types (<type>ENUM</type>)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Arrays of composite types
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Universally Unique Identifier (<type>UUID</type>) data type
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add control over whether <literal>NULL</literal>s sort first or last
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Updatable cursors
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Server configuration parameters can now be set on a per-function
+      basis
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      User-defined types can now have type modifiers
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Automatically re-plan cached queries when table
+      definitions change or statistics are updated
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Numerous improvements in logging and statistics collection
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support Security Service Provider Interface (<acronym>SSPI</acronym>) for
+      authentication on Windows
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support multiple concurrent autovacuum processes, and other
+      autovacuum improvements
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow the whole <productname>PostgreSQL</productname> distribution to be compiled
+      with <productname>Microsoft Visual C++</productname>
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+   <para>
+    Major performance improvements are listed below.  Most of
+    these enhancements are automatic and do not require user changes or
+    tuning:
+   </para>
+
+  <itemizedlist>
+
+    <listitem>
+     <para>
+      Asynchronous commit delays writes to WAL during transaction commit
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Checkpoint writes can be spread over a longer time period to smooth
+      the I/O spike during each checkpoint
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Heap-Only Tuples (<acronym>HOT</acronym>) accelerate space reuse for
+      most <command>UPDATE</command>s and <command>DELETE</command>s
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Just-in-time background writer strategy improves disk write
+      efficiency
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Using non-persistent transaction IDs for read-only transactions
+      reduces overhead and <command>VACUUM</command> requirements
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Per-field and per-row storage overhead has been reduced
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Large sequential scans no longer force out frequently used
+      cached pages
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Concurrent large sequential scans can now share disk reads
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <literal>ORDER BY ... LIMIT</literal> can be done without sorting
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+   <para>
+    The above items are explained in more detail in the sections below.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Migration vers la version 8.3</title>
+
+   <para>
+    A dump/restore using <application>pg_dump</application> is
+    required for those wishing to migrate data from any previous
+    release.
+   </para>
+
+   <para>
+    Observe the following incompatibilities:
+   </para>
+
+   <sect3>
+    <title>General</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Non-character data types are no longer automatically cast to
+       <type>TEXT</type> (Peter, Tom)
+      </para>
+
+      <para>
+       Previously, if a non-character value was supplied to an operator or
+       function that requires <type>text</type> input, it was automatically
+       cast to <type>text</type>, for most (though not all) built-in data types.
+       This no longer happens: an explicit cast to <type>text</type> is now
+       required for all non-character-string types.  For example, these
+       expressions formerly worked:
+
+<programlisting>
+substr(current_date, 1, 4)
+23 LIKE '2%'
+</programlisting>
+
+       but will now draw <quote>function does not exist</quote> and <quote>operator
+       does not exist</quote> errors respectively.  Use an explicit cast instead:
+
+<programlisting>
+substr(current_date::text, 1, 4)
+23::text LIKE '2%'
+</programlisting>
+
+       (Of course, you can use the more verbose <literal>CAST()</literal> syntax too.)
+       The reason for the change is that these automatic casts too often caused
+       surprising behavior.  An example is that in previous releases, this
+       expression was accepted but did not do what was expected:
+
+<programlisting>
+current_date &lt; 2017-11-17
+</programlisting>
+
+       This is actually comparing a date to an integer, which should be
+       (and now is) rejected &mdash; but in the presence of automatic
+       casts both sides were cast to <type>text</type> and a textual comparison
+       was done, because the <literal>text &lt; text</literal> operator was able
+       to match the expression when no other <literal>&lt;</literal> operator could.
+      </para>
+
+      <para>
+       Types <type>char(<replaceable>n</replaceable>)</type> and
+       <type>varchar(<replaceable>n</replaceable>)</type> still cast to <type>text</type>
+       automatically.  Also, automatic casting to <type>text</type> still works for
+       inputs to the concatenation (<literal>||</literal>) operator, so long as least
+       one input is a character-string type.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+        Full text search features from <filename>contrib/tsearch2</filename> have
+        been moved into the core server, with some minor syntax changes
+      </para>
+
+      <para>
+       <filename>contrib/tsearch2</filename> now contains a compatibility
+       interface.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <literal>ARRAY(SELECT ...)</literal>, where the <command>SELECT</command>
+       returns no rows, now returns an empty array, rather than NULL
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       The array type name for a base data type is no longer always the base
+       type's name with an underscore prefix
+      </para>
+
+      <para>
+       The old naming convention is still honored when possible, but
+       application code should no longer depend on it. Instead
+       use the new <literal>pg_type.typarray</literal> column to
+       identify the array data type associated with a given type.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <literal>ORDER BY ... USING</literal> <replaceable>operator</replaceable> must now
+       use a less-than or greater-than <replaceable>operator</replaceable> that is
+       defined in a btree operator class
+      </para>
+
+      <para>
+       This restriction was added to prevent inconsistent results.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>SET LOCAL</command> changes now persist until
+       the end of the outermost transaction, unless rolled back (Tom)
+      </para>
+
+      <para>
+       Previously <command>SET LOCAL</command>'s effects were lost
+       after subtransaction commit (<command>RELEASE SAVEPOINT</command>
+       or exit from a PL/pgSQL exception block).
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Commands rejected in transaction blocks are now also rejected in
+       multiple-statement query strings (Tom)
+      </para>
+
+      <para>
+       For example, <literal>"BEGIN; DROP DATABASE; COMMIT"</literal> will now be
+       rejected even if submitted as a single query message.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>ROLLBACK</command> outside a transaction block now
+       issues <literal>NOTICE</literal> instead of <literal>WARNING</literal> (Bruce)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Prevent <command>NOTIFY</command>/<command>LISTEN</command>/<command>UNLISTEN</command>
+       from accepting schema-qualified names (Bruce)
+      </para>
+
+      <para>
+       Formerly, these commands accepted <literal>schema.relation</literal> but
+       ignored the schema part, which was confusing.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>ALTER SEQUENCE</command> no longer affects the sequence's
+       <function>currval()</function> state (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Foreign keys now must match indexable conditions for
+       cross-data-type references (Tom)
+      </para>
+
+      <para>
+       This improves semantic consistency and helps avoid
+       performance problems.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Restrict object size functions to users who have reasonable
+       permissions to view such information (Tom)
+      </para>
+
+      <para>
+       For example, <function>pg_database_size()</function> now requires
+       <literal>CONNECT</literal> permission, which is granted to everyone by
+       default. <function>pg_tablespace_size()</function> requires
+       <literal>CREATE</literal> permission in the tablespace, or is allowed if
+       the tablespace is the default tablespace for the database.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove the undocumented <literal>!!=</literal> (not in) operator (Tom)
+      </para>
+
+      <para>
+       <literal>NOT IN (SELECT ...)</literal> is the proper way to
+       perform this operation.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Internal hashing functions are now more uniformly-distributed (Tom)
+      </para>
+
+      <para>
+       If application code was computing and storing hash values using
+       internal <productname>PostgreSQL</productname> hashing functions, the hash
+       values must be regenerated.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       C-code conventions for handling variable-length data values
+       have changed (Greg Stark, Tom)
+      </para>
+
+      <para>
+       The new <function>SET_VARSIZE()</function> macro <emphasis>must</emphasis> be used
+       to set the length of generated <type>varlena</type> values. Also, it
+       might be necessary to expand (<quote>de-TOAST</quote>) input values
+       in more cases.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Continuous archiving no longer reports each successful archive
+       operation to the server logs unless <literal>DEBUG</literal> level is used
+       (Simon)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+     <title>Configuration Parameters</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Numerous changes in administrative server parameters
+      </para>
+
+      <para>
+       <varname>bgwriter_lru_percent</varname>,
+       <varname>bgwriter_all_percent</varname>,
+       <varname>bgwriter_all_maxpages</varname>,
+       <varname>stats_start_collector</varname>, and
+       <varname>stats_reset_on_server_start</varname> are removed.
+       <varname>redirect_stderr</varname> is renamed to
+       <varname>logging_collector</varname>.
+       <varname>stats_command_string</varname> is renamed to
+       <varname>track_activities</varname>.
+       <varname>stats_block_level</varname> and <varname>stats_row_level</varname>
+       are merged into <varname>track_counts</varname>.
+       A new boolean configuration parameter, <varname>archive_mode</varname>,
+       controls archiving. Autovacuum's default settings have changed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <varname>stats_start_collector</varname> parameter (Tom)
+      </para>
+
+      <para>
+       We now always start the collector process, unless <acronym>UDP</acronym>
+       socket creation fails.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <varname>stats_reset_on_server_start</varname> parameter (Tom)
+      </para>
+
+      <para>
+       This was removed because <function>pg_stat_reset()</function>
+       can be used for this purpose.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Commenting out a parameter in <filename>postgresql.conf</filename> now
+       causes it to revert to its default value (Joachim Wieland)
+      </para>
+
+      <para>
+       Previously, commenting out an entry left the parameter's value unchanged
+       until the next server restart.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    </sect3>
+
+
+    <sect3>
+     <title>Character Encodings</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add more checks for invalidly-encoded data (Andrew)
+      </para>
+
+      <para>
+       This change plugs some holes that existed in literal backslash
+       escape string processing and <command>COPY</command> escape
+       processing. Now the de-escaped string is rechecked to see if the
+       result created an invalid multi-byte character.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Disallow database encodings that are inconsistent with the server's
+       locale setting (Tom)
+      </para>
+
+      <para>
+       On most platforms, <literal>C</literal> locale is the only locale that
+       will work with any database encoding.  Other locale settings imply
+       a specific encoding and will misbehave if the database encoding
+       is something different.  (Typical symptoms include bogus textual
+       sort order and wrong results from <function>upper()</function> or
+       <function>lower()</function>.)  The server now rejects attempts to create
+       databases that have an incompatible encoding.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Ensure that <function>chr()</function> cannot create
+       invalidly-encoded values (Andrew)
+      </para>
+
+      <para>
+       In UTF8-encoded databases the argument of <function>chr()</function> is
+       now treated as a Unicode code point. In other multi-byte encodings
+       <function>chr()</function>'s argument must designate a 7-bit ASCII
+       character.  Zero is no longer accepted.
+       <function>ascii()</function> has been adjusted to match.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Adjust <function>convert()</function> behavior to ensure encoding
+       validity (Andrew)
+      </para>
+
+      <para>
+       The two argument form of <function>convert()</function> has been
+       removed. The three argument form now takes a <type>bytea</type>
+       first argument and returns a <type>bytea</type>. To cover the
+       loss of functionality, three new functions have been added:
+      </para>
+
+      <itemizedlist>
+       <listitem>
+        <para>
+         <function>convert_from(bytea, name)</function> returns
+         <type>text</type> &mdash; converts the first argument from the named
+         encoding to the database encoding
+        </para>
+       </listitem>
+
+       <listitem>
+        <para>
+         <function>convert_to(text, name)</function> returns
+         <type>bytea</type> &mdash; converts the first argument from the
+         database encoding to the named encoding
+        </para>
+       </listitem>
+
+       <listitem>
+        <para>
+         <function>length(bytea, name)</function> returns
+         <type>integer</type> &mdash; gives the length of the first
+         argument in characters in the named encoding
+        </para>
+       </listitem>
+      </itemizedlist>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <literal>convert(argument USING conversion_name)</literal>
+       (Andrew)
+      </para>
+
+      <para>
+       Its behavior did not match the SQL standard.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make JOHAB encoding client-only (Tatsuo)
+      </para>
+
+      <para>
+       JOHAB is not safe as a server-side encoding.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+  </sect2>
+
+  <sect2>
+   <title>Modifications</title>
+
+   <para>
+    Below you will find a detailed account of the
+    changes between <productname>PostgreSQL</productname> 8.3 and
+    the previous major release.
+   </para>
+
+   <sect3>
+    <title>Performance</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Asynchronous commit delays writes to WAL during transaction commit
+       (Simon)
+      </para>
+
+      <para>
+       This feature dramatically increases performance for short data-modifying
+       transactions. The disadvantage is that because disk writes are
+       delayed, if the operating system crashes before data is written to
+       the disk, committed data will be lost. This feature is useful for
+       applications that can accept some data loss.  Unlike turning off
+       <varname>fsync</varname>, asynchronous commit does not put database
+       consistency at risk; the worst case is that after a database or system
+       crash the last few reportedly-committed transactions might be missing.
+       This feature is enabled by turning off <varname>synchronous_commit</varname>
+       (which can be done per-session or per-transaction, if some transactions
+       are critical and others are not).
+       <varname>wal_writer_delay</varname> can be adjusted to control the maximum
+       delay before transactions actually reach disk.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Checkpoint writes can be spread over a longer time period to smooth
+       the I/O spike during each checkpoint (Itagaki Takahiro and Heikki
+       Linnakangas)
+      </para>
+
+      <para>
+       Previously all modified buffers were forced to disk as quickly as
+       possible during a
+       checkpoint, causing an I/O spike that decreased server performance.
+       This new approach spreads out disk writes during checkpoints,
+       reducing peak I/O usage. (User-requested and shutdown checkpoints
+       are still written as quickly as possible.)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Heap-Only Tuples (<acronym>HOT</acronym>) accelerate space reuse for most
+       <command>UPDATE</command>s and <command>DELETE</command>s (Pavan Deolasee, with
+       ideas from many others)
+      </para>
+
+      <para>
+       <command>UPDATE</command>s and <command>DELETE</command>s leave dead tuples
+       behind, as do failed <command>INSERT</command>s.  Previously only
+       <command>VACUUM</command> could reclaim space taken by dead tuples. With
+       <acronym>HOT</acronym> dead tuple space can be automatically reclaimed at the time of
+       <command>INSERT</command> or <command>UPDATE</command> if no changes are made to
+       indexed columns.  This allows for more consistent performance.
+       Also, <acronym>HOT</acronym> avoids adding duplicate index entries.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Just-in-time background writer strategy improves disk write
+       efficiency (Greg Smith, Itagaki Takahiro)
+      </para>
+
+      <para>
+       This greatly reduces the need for manual tuning of the background
+       writer.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Per-field and per-row storage overhead have been reduced
+       (Greg Stark, Heikki Linnakangas)
+      </para>
+
+      <para>
+       Variable-length data types with data values less than 128 bytes long
+       will see a storage decrease of 3 to 6 bytes. For example, two adjacent
+       <type>char(1)</type> fields now use 4 bytes instead of 16. Row headers
+       are also 4 bytes shorter than before.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Using non-persistent transaction IDs for read-only transactions
+       reduces overhead and <command>VACUUM</command> requirements (Florian Pflug)
+      </para>
+
+      <para>
+       Non-persistent transaction IDs do not increment the global
+       transaction counter. Therefore, they reduce the load on
+       <structname>pg_clog</structname> and increase the time between forced
+       vacuums to prevent transaction ID wraparound.
+       Other performance
+       improvements were also made that should improve concurrency.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Avoid incrementing the command counter after a read-only command (Tom)
+      </para>
+
+      <para>
+       There was formerly a hard limit of 2<superscript>32</superscript>
+       (4 billion) commands per transaction.  Now only commands that
+       actually changed the database count, so while this limit still
+       exists, it should be significantly less annoying.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create a dedicated <acronym>WAL</acronym> writer process to off-load
+       work from backends (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Skip unnecessary WAL writes for <command>CLUSTER</command> and
+       <command>COPY</command> (Simon)
+      </para>
+
+      <para>
+       Unless WAL archiving is enabled, the system now avoids WAL writes
+       for <command>CLUSTER</command> and just <function>fsync()</function>s the
+       table at the end of the command.  It also does the same for
+       <command>COPY</command> if the table was created in the same
+       transaction.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Large sequential scans no longer force out frequently used
+       cached pages (Simon, Heikki, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Concurrent large sequential scans can now share disk reads (Jeff Davis)
+      </para>
+
+      <para>
+       This is accomplished by starting the new sequential scan in the
+       middle of the table (where another sequential scan is already
+       in-progress) and wrapping around to the beginning to finish.  This
+       can affect the order of returned rows in a query that does not
+       specify <literal>ORDER BY</literal>. The <varname>synchronize_seqscans</varname>
+       configuration parameter can be used to disable this if necessary.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <literal>ORDER BY ... LIMIT</literal> can be done without sorting
+       (Greg Stark)
+      </para>
+
+      <para>
+       This is done by sequentially scanning the table and tracking just
+       the <quote>top N</quote> candidate rows, rather than performing a
+       full sort of the entire table.  This is useful when there is no
+       matching index and the <literal>LIMIT</literal> is not large.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Put a rate limit on messages sent to the statistics
+       collector by backends
+       (Tom)
+      </para>
+
+      <para>
+       This reduces overhead for short transactions, but might sometimes
+       increase the delay before statistics are tallied.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve hash join performance for cases with many NULLs (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Speed up operator lookup for cases with non-exact datatype matches (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Server</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Autovacuum is now enabled by default (Alvaro)
+      </para>
+
+      <para>
+       Several changes were made to eliminate disadvantages of having
+       autovacuum enabled, thereby justifying the change in default.
+       Several other autovacuum parameter defaults were also modified.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support multiple concurrent autovacuum processes (Alvaro, Itagaki
+       Takahiro)
+      </para>
+
+      <para>
+       This allows multiple vacuums to run concurrently.  This prevents
+       vacuuming of a large table from delaying vacuuming of smaller tables.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Automatically re-plan cached queries when table
+       definitions change or statistics are updated (Tom)
+      </para>
+
+      <para>
+       Previously PL/PgSQL functions that referenced temporary tables
+       would fail if the temporary table was dropped and recreated
+       between function invocations, unless <literal>EXECUTE</literal> was
+       used.  This improvement fixes that problem and many related issues.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a <varname>temp_tablespaces</varname> parameter to control
+       the tablespaces for temporary tables and files (Jaime Casanova,
+       Albert Cervera, Bernd Helmle)
+      </para>
+
+      <para>
+       This parameter defines a list of tablespaces to be used.  This
+       enables spreading the I/O load across multiple tablespaces. A random
+       tablespace is chosen each time a temporary object is created.
+       Temporary files are no longer stored in per-database
+       <filename>pgsql_tmp/</filename> directories but in per-tablespace
+       directories.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Place temporary tables' TOAST tables in special schemas named
+       <literal>pg_toast_temp_<replaceable>nnn</replaceable></literal> (Tom)
+      </para>
+
+      <para>
+       This allows low-level code to recognize these tables as temporary,
+       which enables various optimizations such as not WAL-logging changes
+       and using local rather than shared buffers for access. This also
+       fixes a bug wherein backends unexpectedly held open file references
+       to temporary TOAST tables.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix problem that a constant flow of new connection requests could
+       indefinitely delay the postmaster from completing a shutdown or
+       a crash restart (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Guard against a very-low-probability data loss scenario by preventing
+       re-use of a deleted table's relfilenode until after the next
+       checkpoint (Heikki)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <command>CREATE CONSTRAINT TRIGGER</command>
+       to convert old-style foreign key trigger definitions into regular
+       foreign key constraints (Tom)
+      </para>
+
+      <para>
+       This will ease porting of foreign key constraints carried forward from
+       pre-7.3 databases, if they were never converted using
+       <filename>contrib/adddepend</filename>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <literal>DEFAULT NULL</literal> to override inherited defaults (Tom)
+      </para>
+
+      <para>
+       <literal>DEFAULT NULL</literal> was formerly considered a noise phrase, but it
+       should (and now does) override non-null defaults that would otherwise
+       be inherited from a parent table or domain.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add new encodings EUC_JIS_2004 and SHIFT_JIS_2004 (Tatsuo)
+      </para>
+
+      <para>
+       These new encodings can be converted to and from UTF-8.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Change server startup log message from <quote>database system is
+       ready</quote> to <quote>database system is ready to accept
+       connections</quote>, and adjust its timing
+      </para>
+
+      <para>
+       The message now appears only when the postmaster is really ready
+       to accept connections.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Monitoring</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add <varname>log_autovacuum_min_duration</varname> parameter to
+       support configurable logging of autovacuum activity (Simon, Alvaro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <varname>log_lock_waits</varname> parameter to log lock waiting
+       (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <varname>log_temp_files</varname> parameter to log temporary
+       file usage (Bill Moran)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <varname>log_checkpoints</varname> parameter to improve logging
+       of checkpoints (Greg Smith, Heikki)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <varname>log_line_prefix</varname> now supports
+       <literal>%s</literal> and <literal>%c</literal> escapes in all
+       processes (Andrew)
+      </para>
+
+      <para>
+       Previously these escapes worked only for user sessions, not for
+       background database processes.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <varname>log_restartpoints</varname> to control logging of
+       point-in-time recovery restart points (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Last transaction end time is now logged at end of recovery and at
+       each logged restart point (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Autovacuum now reports its activity start time in
+       <literal>pg_stat_activity</literal> (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow server log output in comma-separated value (CSV) format (Arul
+       Shaji, Greg Smith, Andrew Dunstan)
+      </para>
+
+      <para>
+       CSV-format log files can easily be loaded into a database table for
+       subsequent analysis.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Use PostgreSQL-supplied timezone support for formatting timestamps
+       displayed in the server log (Tom)
+      </para>
+
+      <para>
+       This avoids Windows-specific problems with localized time zone
+       names that are in the wrong encoding. There is a new
+       <varname>log_timezone</varname> parameter that controls the timezone
+       used in log messages, independently of the client-visible
+       <varname>timezone</varname> parameter.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       New system view <literal>pg_stat_bgwriter</literal> displays
+       statistics about background writer activity (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add new columns for database-wide tuple statistics to
+       <literal>pg_stat_database</literal> (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add an <literal>xact_start</literal> (transaction start time) column to
+       <literal>pg_stat_activity</literal> (Neil)
+      </para>
+
+      <para>
+       This makes it easier to identify long-running transactions.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>n_live_tuples</literal> and <literal>n_dead_tuples</literal> columns
+       to <literal>pg_stat_all_tables</literal> and related views (Glen
+       Parker)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Merge <varname>stats_block_level</varname> and <varname>stats_row_level</varname>
+       parameters into a single parameter <varname>track_counts</varname>, which
+       controls all messages sent to the statistics collector process
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Rename <varname>stats_command_string</varname> parameter to
+       <varname>track_activities</varname> (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix statistical counting of live and dead tuples to recognize that
+       committed and aborted transactions have different effects (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Authentication</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Support Security Service Provider Interface (<acronym>SSPI</acronym>) for
+       authentication on Windows (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support GSSAPI authentication (Henry Hotz, Magnus)
+      </para>
+
+      <para>
+       This should be preferred to native Kerberos authentication because
+       GSSAPI is an industry standard.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support a global SSL configuration file (Victor Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <varname>ssl_ciphers</varname> parameter to control accepted SSL ciphers
+       (Victor Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a Kerberos realm parameter, <varname>krb_realm</varname> (Magnus)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Write-Ahead Log (<acronym>WAL</acronym>) and Continuous Archiving</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Change the timestamps recorded in transaction WAL records from
+       time_t to TimestampTz representation (Tom)
+      </para>
+
+      <para>
+       This provides sub-second resolution in WAL, which can be useful for
+       point-in-time recovery.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Reduce WAL disk space needed by warm standby servers (Simon)
+      </para>
+
+      <para>
+       This change allows a warm standby server to pass the name of the earliest
+       still-needed WAL file to the recovery script, allowing automatic removal
+       of no-longer-needed WAL files.  This is done using <literal>%r</literal> in
+       the <varname>restore_command</varname> parameter of
+       <filename>recovery.conf</filename>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       New boolean configuration parameter, <varname>archive_mode</varname>,
+       controls archiving (Simon)
+      </para>
+
+      <para>
+       Previously setting <varname>archive_command</varname> to an empty string
+       turned off archiving. Now <varname>archive_mode</varname> turns archiving
+       on and off, independently of <varname>archive_command</varname>. This is
+       useful for stopping archiving temporarily.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Queries</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Full text search is integrated into the core database
+       system (Teodor, Oleg)
+      </para>
+
+      <para>
+       Text search has been improved, moved into the core code, and is now
+       installed by default.  <filename>contrib/tsearch2</filename> now contains
+       a compatibility interface.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add control over whether <literal>NULL</literal>s sort first or last (Teodor, Tom)
+      </para>
+
+      <para>
+       The syntax is <literal>ORDER BY ... NULLS FIRST/LAST</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow per-column ascending/descending (<literal>ASC</literal>/<literal>DESC</literal>)
+       ordering options for indexes (Teodor, Tom)
+      </para>
+
+      <para>
+       Previously a query using <literal>ORDER BY</literal> with mixed
+       <literal>ASC</literal>/<literal>DESC</literal> specifiers could not fully use
+       an index. Now an index can be fully used in such cases if the
+       index was created with matching
+       <literal>ASC</literal>/<literal>DESC</literal> specifications.
+       <literal>NULL</literal> sort order within an index can be controlled, too.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>col IS NULL</literal> to use an index (Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Updatable cursors (Arul Shaji, Tom)
+      </para>
+
+      <para>
+       This eliminates the need to reference a primary key to
+       <command>UPDATE</command> or <command>DELETE</command> rows returned by a cursor.
+       The syntax is <literal>UPDATE/DELETE WHERE CURRENT OF</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>FOR UPDATE</literal> in cursors (Arul Shaji, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create a general mechanism that supports casts to and from the
+       standard string types (<type>TEXT</type>, <type>VARCHAR</type>,
+       <type>CHAR</type>) for <emphasis>every</emphasis> datatype, by
+       invoking the datatype's I/O functions (Tom)
+      </para>
+
+      <para>
+       Previously, such casts were available only for types that had
+       specialized function(s) for the purpose.
+       These new casts are assignment-only in the to-string direction,
+       explicit-only in the other direction, and therefore should create no
+       surprising behavior.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>UNION</literal> and related constructs to return a domain
+       type, when all inputs are of that domain type (Tom)
+      </para>
+
+      <para>
+       Formerly, the output would be considered to be of the domain's base
+       type.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow limited hashing when using two different data types (Tom)
+      </para>
+
+      <para>
+       This allows hash joins, hash indexes, hashed subplans, and hash
+       aggregation to be used in situations involving cross-data-type
+       comparisons, if the data types have compatible hash functions.
+       Currently, cross-data-type hashing support exists for
+       <type>smallint</type>/<type>integer</type>/<type>bigint</type>,
+       and for <type>float4</type>/<type>float8</type>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve optimizer logic for detecting when variables are equal
+       in a <literal>WHERE</literal> clause (Tom)
+      </para>
+
+      <para>
+       This allows mergejoins to work with descending sort orders, and
+       improves recognition of redundant sort columns.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve performance when planning large inheritance trees in
+       cases where most tables are excluded by constraints (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Object Manipulation</title>
+    <itemizedlist>
+
+     <listitem>
+
+      <para>
+       Arrays of composite types (David Fetter, Andrew, Tom)
+      </para>
+
+      <para>
+       In addition to arrays of explicitly-declared composite types,
+       arrays of the rowtypes of regular tables and views are now
+       supported, except for rowtypes of system catalogs, sequences, and TOAST
+       tables.
+      </para>
+
+     </listitem>
+
+     <listitem>
+      <para>
+       Server configuration parameters can now be set on a per-function
+       basis (Tom)
+      </para>
+
+      <para>
+       For example, functions can now set their own
+       <varname>search_path</varname> to prevent unexpected behavior if a
+       different <varname>search_path</varname> exists at run-time.  Security
+       definer functions should set <varname>search_path</varname> to
+       avoid security loopholes.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>CREATE/ALTER FUNCTION</command> now supports
+       <literal>COST</literal> and <literal>ROWS</literal> options (Tom)
+      </para>
+
+      <para>
+       <literal>COST</literal> allows specification of the cost of a
+       function call.  <literal>ROWS</literal> allows specification of
+       the average number or rows returned by a set-returning function.
+       These values are used by the optimizer in choosing the best plan.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Implement <command>CREATE TABLE LIKE ...  INCLUDING
+       INDEXES</command> (Trevor Hardcastle, Nikhil Sontakke, Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <command>CREATE INDEX CONCURRENTLY</command> to ignore
+       transactions in other databases (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <command>ALTER VIEW ... RENAME TO</command> and <command>ALTER
+       SEQUENCE ... RENAME TO</command> (David Fetter, Neil)
+      </para>
+
+      <para>
+       Previously this could only be done via <command>ALTER TABLE ...
+       RENAME TO</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <command>CREATE/DROP/RENAME DATABASE</command> wait briefly for
+       conflicting backends to exit before failing (Tom)
+      </para>
+
+      <para>
+       This increases the likelihood that these commands will succeed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow triggers and rules to be deactivated in groups using a
+       configuration parameter, for replication purposes (Jan)
+      </para>
+
+      <para>
+       This allows replication systems to disable triggers and rewrite
+       rules as a group without modifying the system catalogs directly.
+       The behavior is controlled by <command>ALTER TABLE</command> and a new
+       parameter <varname>session_replication_role</varname>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       User-defined types can now have type modifiers (Teodor, Tom)
+      </para>
+
+      <para>
+       This allows a user-defined type to take a modifier, like
+       <type>ssnum(7)</type>.  Previously only built-in
+       data types could have modifiers.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Utility Commands</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Non-superuser database owners now are able to add trusted procedural
+       languages to their databases by default (Jeremy Drake)
+      </para>
+
+      <para>
+       While this is reasonably safe, some administrators might wish to
+       revoke the privilege. It is controlled by
+       <structname>pg_pltemplate</structname>.<structfield>tmpldbacreate</structfield>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow a session's current parameter setting to be used as the
+       default for future sessions (Tom)
+      </para>
+
+      <para>
+       This is done with <literal>SET ... FROM CURRENT</literal> in
+       <command>CREATE/ALTER FUNCTION</command>, <command>ALTER
+       DATABASE</command>, or <command>ALTER ROLE</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Implement new commands <command>DISCARD ALL</command>,
+       <command>DISCARD PLANS</command>, <command>DISCARD
+       TEMPORARY</command>, <command>CLOSE ALL</command>, and
+       <command>DEALLOCATE ALL</command> (Marko Kreen, Neil)
+      </para>
+
+      <para>
+       These commands simplify resetting a database session to its initial
+       state, and are particularly useful for connection-pooling software.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <command>CLUSTER</command> MVCC-safe (Heikki Linnakangas)
+      </para>
+
+      <para>
+       Formerly, <command>CLUSTER</command> would discard all tuples
+       that were committed dead, even if there were still transactions
+       that should be able to see them under MVCC visibility rules.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add new <command>CLUSTER</command> syntax: <literal>CLUSTER
+       <replaceable>table</replaceable> USING <replaceable>index</replaceable></literal>
+       (Holger Schurig)
+     </para>
+
+      <para>
+       The old <command>CLUSTER</command> syntax is still supported, but
+       the new form is considered more logical.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <command>EXPLAIN</command> so it can show complex plans
+       more accurately (Tom)
+      </para>
+
+      <para>
+       References to subplan outputs are now always shown correctly,
+       instead of using <literal>?column<replaceable>N</replaceable>?</literal>
+       for complicated cases.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Limit the amount of information reported when a user is dropped
+       (Alvaro)
+      </para>
+
+      <para>
+       Previously, dropping (or attempting to drop) a user who owned many
+       objects could result in large <literal>NOTICE</literal> or
+       <literal>ERROR</literal> messages listing all these objects; this
+       caused problems for some client applications.  The length of the
+       message is now limited, although a full list is still sent to the
+       server log.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Data Types</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Support for the SQL/XML standard, including new operators and an
+       <type>XML</type> data type (Nikolay Samokhvalov, Pavel Stehule, Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Enumerated data types (<type>ENUM</type>) (Tom Dunstan)
+      </para>
+
+      <para>
+       This feature provides convenient support for fields that have a
+       small, fixed set of allowed values.  An example of creating an
+       <literal>ENUM</literal> type is
+       <literal>CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy')</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Universally Unique Identifier (<type>UUID</type>) data type (Gevik
+       Babakhani, Neil)
+      </para>
+
+      <para>
+       This closely matches <acronym>RFC</acronym> 4122.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Widen the <type>MONEY</type> data type to 64 bits (D'Arcy Cain)
+      </para>
+
+      <para>
+       This greatly increases the range of supported <type>MONEY</type>
+       values.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <type>float4</type>/<type>float8</type> to handle
+       <literal>Infinity</literal> and <literal>NAN</literal> (Not A Number)
+       consistently (Bruce)
+      </para>
+
+      <para>
+       The code formerly was not consistent about distinguishing
+       <literal>Infinity</literal> from overflow conditions.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow leading and trailing whitespace during input of
+       <type>boolean</type> values (Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Prevent <command>COPY</command> from using digits and lowercase letters as
+       delimiters (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Functions</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add new regular expression functions
+       <function>regexp_matches()</function>,
+       <function>regexp_split_to_array()</function>, and
+       <function>regexp_split_to_table()</function> (Jeremy Drake, Neil)
+      </para>
+
+      <para>
+       These functions provide extraction of regular expression
+       subexpressions and allow splitting a string using a POSIX regular
+       expression.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>lo_truncate()</function> for large object truncation
+       (Kris Jurka)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Implement <function>width_bucket()</function> for the <type>float8</type>
+       data type (Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>pg_stat_clear_snapshot()</function> to discard
+       statistics snapshots collected during the current transaction
+       (Tom)
+      </para>
+
+      <para>
+       The first request for statistics in a transaction takes a statistics
+       snapshot that does not change during the transaction.  This function
+       allows the snapshot to be discarded and a new snapshot loaded during
+       the next statistics query. This is particularly useful for PL/PgSQL
+       functions, which are confined to a single transaction.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>isodow</literal> option to <function>EXTRACT()</function> and
+       <function>date_part()</function> (Bruce)
+      </para>
+
+      <para>
+       This returns the day of the week, with Sunday as seven.
+       (<literal>dow</literal> returns Sunday as zero.)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>ID</literal> (ISO day of week) and <literal>IDDD</literal> (ISO
+       day of year) format codes for <function>to_char()</function>,
+       <function>to_date()</function>, and <function>to_timestamp()</function> (Brendan
+       Jurd)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <function>to_timestamp()</function> and <function>to_date()</function>
+       assume <literal>TM</literal> (trim) option for potentially
+       variable-width fields (Bruce)
+      </para>
+
+      <para>
+       This matches <productname>Oracle</productname>'s behavior.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix off-by-one conversion error in
+       <function>to_date()</function>/<function>to_timestamp()</function>
+       <literal>D</literal> (non-ISO day of week) fields (Bruce)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <function>setseed()</function> return void, rather than a
+       useless integer value (Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a hash function for <type>NUMERIC</type> (Neil)
+      </para>
+
+      <para>
+       This allows hash indexes and hash-based plans to be used with
+       <type>NUMERIC</type> columns.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve efficiency of
+       <literal>LIKE</literal>/<literal>ILIKE</literal>, especially for
+       multi-byte character sets like UTF-8 (Andrew, Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <function>currtid()</function> functions require
+       <literal>SELECT</literal> privileges on the target table (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add several <function>txid_*()</function> functions to query
+       active transaction IDs (Jan)
+      </para>
+
+      <para>
+       This is useful for various replication solutions.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>PL/PgSQL Server-Side Language</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add scrollable cursor support, including directional control in
+       <command>FETCH</command> (Pavel Stehule)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>IN</literal> as an alternative to
+       <literal>FROM</literal> in PL/PgSQL's <command>FETCH</command>
+       statement, for consistency with the backend's
+       <command>FETCH</command> command (Pavel Stehule)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <command>MOVE</command> to PL/PgSQL (Magnus, Pavel Stehule,
+       Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Implement <command>RETURN QUERY</command> (Pavel Stehule, Neil)
+      </para>
+
+      <para>
+       This adds convenient syntax for PL/PgSQL set-returning functions
+       that want to return the result of a query.  <command>RETURN QUERY</command>
+       is easier and more efficient than a loop
+       around <command>RETURN NEXT</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow function parameter names to be qualified with the
+       function's name (Tom)
+      </para>
+
+      <para>
+       For example, <literal>myfunc.myvar</literal>. This is particularly
+       useful for specifying variables in a query where the variable
+       name might match a column name.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make qualification of variables with block labels work properly (Tom)
+      </para>
+
+      <para>
+       Formerly, outer-level block labels could unexpectedly interfere with
+       recognition of inner-level record or row references.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Tighten requirements for <literal>FOR</literal> loop
+       <literal>STEP</literal> values (Tom)
+      </para>
+
+      <para>
+       Prevent non-positive <literal>STEP</literal> values, and handle
+       loop overflows.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve accuracy when reporting syntax error locations (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Other Server-Side Languages</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Allow type-name arguments to PL/Perl
+       <function>spi_prepare()</function> to be data type aliases in
+       addition to names found in <literal>pg_type</literal> (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow type-name arguments to PL/Python
+       <function>plpy.prepare()</function> to be data type aliases in
+       addition to names found in <literal>pg_type</literal> (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow type-name arguments to PL/Tcl <function>spi_prepare</function> to
+       be data type aliases in addition to names found in
+       <literal>pg_type</literal> (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Enable PL/PythonU to compile on Python 2.5 (Marko Kreen)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support a true PL/Python boolean type in compatible Python versions
+       (Python 2.3 and later) (Marko Kreen)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix PL/Tcl problems with thread-enabled <filename>libtcl</filename> spawning
+       multiple threads within the backend (Steve Marshall, Paul Bayer,
+       Doug Knight)
+      </para>
+
+      <para>
+       This caused all sorts of unpleasantness.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title><link linkend="app-psql"><application>psql</application></link></title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       List disabled triggers separately in <literal>\d</literal> output
+       (Brendan Jurd)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       In <literal>\d</literal> patterns, always match <literal>$</literal>
+       literally (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Show aggregate return types in <literal>\da</literal> output
+       (Greg Sabino Mullane)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add the function's volatility status to the output of
+       <literal>\df+</literal> (Neil)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>\prompt</literal> capability (Chad Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>\pset</literal>, <literal>\t</literal>, and
+       <literal>\x</literal> to specify <literal>on</literal> or <literal>off</literal>,
+       rather than just toggling (Chad Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>\sleep</literal> capability (Jan)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Enable <literal>\timing</literal> output for <literal>\copy</literal> (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve <literal>\timing</literal> resolution on Windows
+       (Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Flush <literal>\o</literal> output after each backslash command (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Correctly detect and report errors while reading a <literal>-f</literal>
+       input file (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <literal>-u</literal> option (this option has long been deprecated)
+       (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add <literal>--tablespaces-only</literal> and <literal>--roles-only</literal>
+       options to <application>pg_dumpall</application> (Dave Page)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add an output file option to
+       <application>pg_dumpall</application> (Dave Page)
+      </para>
+
+      <para>
+       This is primarily useful on Windows, where output redirection of
+       child <application>pg_dump</application> processes does not work.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <application>pg_dumpall</application> to accept an initial-connection
+       database name rather than the default
+       <literal>template1</literal> (Dave Page)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       In <literal>-n</literal> and <literal>-t</literal> switches, always match
+       <literal>$</literal> literally (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve performance when a database has thousands of objects (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <literal>-u</literal> option (this option has long been deprecated)
+       (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Other Client Applications</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       In <application>initdb</application>, allow the location of the
+       <filename>pg_xlog</filename> directory to be specified
+       (Euler Taveira de Oliveira)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Enable server core dump generation in <application>pg_regress</application>
+       on supported operating systems (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a <literal>-t</literal> (timeout) parameter to <application>pg_ctl</application>
+       (Bruce)
+      </para>
+
+      <para>
+       This controls how long <application>pg_ctl</application> will wait when waiting
+       for server startup or shutdown.  Formerly the timeout was hard-wired
+       as 60 seconds.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a <application>pg_ctl</application> option to control generation
+       of server core dumps (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow Control-C to cancel <application>clusterdb</application>,
+       <application>reindexdb</application>, and <application>vacuumdb</application> (Itagaki
+       Takahiro, Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Suppress command tag output for <application>createdb</application>,
+       <application>createuser</application>, <application>dropdb</application>, and
+       <application>dropuser</application> (Peter)
+      </para>
+
+      <para>
+       The <literal>--quiet</literal> option is ignored and will be removed in 8.4.
+       Progress messages when acting on all databases now go to stdout
+       instead of stderr because they are not actually errors.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title><link linkend="libpq"><application>libpq</application></link></title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Interpret the <literal>dbName</literal> parameter of
+       <function>PQsetdbLogin()</function> as a <literal>conninfo</literal> string if
+       it contains an equals sign (Andrew)
+      </para>
+
+      <para>
+       This allows use of <literal>conninfo</literal> strings in client
+       programs that still use <literal>PQsetdbLogin()</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support a global <acronym>SSL</acronym> configuration file (Victor
+       Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add environment variable <varname>PGSSLKEY</varname> to control
+       <acronym>SSL</acronym> hardware keys (Victor Wagner)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>lo_truncate()</function> for large object
+       truncation (Kris Jurka)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>PQconnectionNeedsPassword()</function> that returns
+       true if the server required a password but none was supplied
+       (Joe Conway, Tom)
+      </para>
+
+      <para>
+       If this returns true after a failed connection attempt, a client
+       application should prompt the user for a password.  In the past
+       applications have had to check for a specific error message string to
+       decide whether a password is needed; that approach is now
+       deprecated.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>PQconnectionUsedPassword()</function> that returns
+       true if the supplied password was actually used
+       (Joe Conway, Tom)
+      </para>
+
+      <para>
+       This is useful in some security contexts where it is important
+       to know whether a user-supplied password is actually valid.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title><link linkend="ecpg"><application>ecpg</application></link></title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Use V3 frontend/backend protocol (Michael)
+      </para>
+
+      <para>
+       This adds support for server-side prepared statements.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Use native threads, instead of pthreads, on Windows (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve thread-safety of ecpglib (Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make the ecpg libraries export only necessary API symbols (Michael)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title><application>Windows</application> Port</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Allow the whole <productname>PostgreSQL</productname> distribution to be compiled
+       with <productname>Microsoft Visual C++</productname> (Magnus and others)
+      </para>
+
+      <para>
+       This allows Windows-based developers to use familiar development
+       and debugging tools.
+       Windows executables made with Visual C++ might also have better
+       stability and performance than those made with other tool sets.
+       The client-only Visual C++ build scripts have been removed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Drastically reduce postmaster's memory usage when it has many child
+       processes (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow regression tests to be started by an administrative
+       user (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add native shared memory implementation (Magnus)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Server Programming Interface (<acronym>SPI</acronym>)</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add cursor-related functionality in SPI (Pavel Stehule)
+      </para>
+
+      <para>
+       Allow access to the cursor-related planning options, and add
+       <command>FETCH</command>/<command>MOVE</command> routines.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow execution of cursor commands through
+       <function>SPI_execute</function> (Tom)
+      </para>
+
+      <para>
+       The macro <literal>SPI_ERROR_CURSOR</literal> still exists but will
+       never be returned.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       SPI plan pointers are now declared as <literal>SPIPlanPtr</literal> instead of
+       <literal>void *</literal> (Tom)
+      </para>
+
+      <para>
+       This does not break application code, but switching is
+       recommended to help catch simple programming mistakes.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Build Options</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add <application>configure</application> option <literal>--enable-profiling</literal>
+       to enable code profiling (works only with <application>gcc</application>)
+       (Korry Douglas and Nikhil Sontakke)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <application>configure</application> option <literal>--with-system-tzdata</literal>
+       to use the operating system's time zone database (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <acronym>PGXS</acronym> so extensions can be built against PostgreSQL
+       installations whose <application>pg_config</application> program does not
+       appear first in the <varname>PATH</varname> (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support <command>gmake draft</command> when building the
+       <acronym>SGML</acronym> documentation (Bruce)
+      </para>
+
+      <para>
+       Unless <literal>draft</literal> is used, the documentation build will
+       now be repeated if necessary to ensure the index is up-to-date.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Source Code</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Rename macro <literal>DLLIMPORT</literal> to <literal>PGDLLIMPORT</literal> to
+       avoid conflicting with third party includes (like Tcl) that
+       define <literal>DLLIMPORT</literal> (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create <quote>operator families</quote> to improve planning of
+       queries involving cross-data-type comparisons (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Update GIN <function>extractQuery()</function> API to allow signalling
+       that nothing can satisfy the query (Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Move <literal>NAMEDATALEN</literal> definition from
+       <filename>postgres_ext.h</filename> to <filename>pg_config_manual.h</filename>
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Provide <function>strlcpy()</function> and
+       <function>strlcat()</function> on all platforms, and replace
+       error-prone uses of <function>strncpy()</function>,
+       <function>strncat()</function>, etc (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create hooks to let an external plugin monitor (or even replace) the
+       planner and create plans for hypothetical situations (Gurjeet
+       Singh, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create a function variable <literal>join_search_hook</literal> to let plugins
+       override the join search order portion of the planner (Julius
+       Stroffek)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>tas()</function> support for Renesas' M32R processor
+       (Kazuhiro Inaoka)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <function>quote_identifier()</function> and
+       <application>pg_dump</application> no longer quote keywords that are
+       unreserved according to the grammar (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Change the on-disk representation of the <type>NUMERIC</type>
+       data type so that the <structfield>sign_dscale</structfield> word comes
+       before the weight (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Use <acronym>SYSV</acronym> semaphores rather than POSIX on Darwin
+       &gt;= 6.0, i.e., OS X 10.2 and up (Chris Marcellino)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <link linkend="acronyms">acronym</link> and <link
+       linkend="creating-cluster-nfs">NFS</link> documentation
+       sections (Bruce)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       "Postgres" is now documented as an accepted alias for
+       "PostgreSQL" (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add documentation about preventing database server spoofing when
+       the server is down (Bruce)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Contrib</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Move <filename>contrib</filename> <filename>README</filename> content into the
+       main <productname>PostgreSQL</productname> documentation (Albert Cervera i
+       Areny)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/pageinspect</filename> module for low-level
+       page inspection (Simon, Heikki)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/pg_standby</filename> module for controlling
+       warm standby operation (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/uuid-ossp</filename> module for generating
+       <type>UUID</type> values using the OSSP UUID library (Peter)
+      </para>
+
+      <para>
+       Use <application>configure</application>
+       <literal>--with-ossp-uuid</literal> to activate. This takes
+       advantage of the new <type>UUID</type> builtin type.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/dict_int</filename>,
+       <filename>contrib/dict_xsyn</filename>, and
+       <filename>contrib/test_parser</filename> modules to provide
+       sample add-on text search dictionary templates and parsers
+       (Sergey Karpov)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <application>contrib/pgbench</application> to set the fillfactor (Pavan
+       Deolasee)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add timestamps to <application>contrib/pgbench</application> <literal>-l</literal>
+       (Greg Smith)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add usage count statistics to
+       <filename>contrib/pgbuffercache</filename> (Greg Smith)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add GIN support for <filename>contrib/hstore</filename> (Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add GIN support for <filename>contrib/pg_trgm</filename> (Guillaume Smet, Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Update OS/X startup scripts in
+       <filename>contrib/start-scripts</filename> (Mark Cotner, David
+       Fetter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Restrict <function>pgrowlocks()</function> and
+       <function>dblink_get_pkey()</function> to users who have
+       <literal>SELECT</literal> privilege on the target table (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Restrict <filename>contrib/pgstattuple</filename> functions to
+       superusers (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <filename>contrib/xml2</filename> is deprecated and planned for
+       removal in 8.4 (Peter)
+      </para>
+
+      <para>
+       The new XML support in core PostgreSQL supersedes this module.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+  </sect2>
+ </sect1>

Added: traduc/trunk/postgresql/release-8.4.xml
===================================================================
--- traduc/trunk/postgresql/release-8.4.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-8.4.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,3353 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <sect1 id="release-8-4">
+  <title>Release 8.4</title>
+
+  <note>
+   <title>Release date</title>
+   <simpara>2009-??-??, ITEMS CURRENT AS OF 2009-05-14</simpara>
+  </note>
+
+  <sect2>
+   <title>Overview</title>
+
+   <para>
+    After many years of development, <productname>PostgreSQL</productname> has
+    become feature-complete in many areas.   This release shows a
+    targeted approach to adding features (e.g., authentication,
+    monitoring, space reuse), and adds capabilities defined in the
+    later SQL standards.  The major areas of enhancement are:
+   </para>
+
+   <itemizedlist>
+
+    <!-- This list duplicates items below, but without authors or details-->
+
+    <listitem>
+     <para>
+      Windowing Functions
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Common Table Expressions and Recursive Joins
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Default and variadic parameters for functions
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Parallel Restore
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Column Permissions
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Per-database locale settings
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improved hash indexes
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improved join performance for <literal>EXISTS</literal> and <literal>NOT EXISTS</literal> queries
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Easier-to-use Warm Standby
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Automatic sizing of the Free Space Map
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Visibility Map (greatly reduces vacuum overhead for slowly-changing tables)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Version-aware psql (backslash commands work against older servers)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Support SSL certificates for user authentication
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Per-function runtime statistics
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Easy editing of functions in psql
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      New contrib modules: pg_stat_statements, auto_explain, citext, btree_gin
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+   <para>
+    The above items are explained in more detail in the sections below.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Migration to Version 8.4</title>
+
+   <para>
+    A dump/restore using <application>pg_dump</application> is
+    required for those wishing to migrate data from any previous
+    release.
+   </para>
+
+   <para>
+    Observe the following incompatibilities:
+   </para>
+
+   <sect3>
+    <title>General</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Use 64-bit integer datetimes by default (Neil Conway)
+      </para>
+
+      <para>
+       Previously this was selected by <application>configure</application>'s
+       <option>--enable-integer-datetimes</option> option.  To retain
+       the old behavior, build with <option>--disable-integer-datetimes</option>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <application>ipcclean</application> utility command (Bruce)
+      </para>
+
+      <para>
+       The utility only worked on a few platforms.  Users should use
+       their operating system tools instead.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Server Settings</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Change default setting for
+       <literal>log_min_messages</literal> to <literal>warning</literal> (previously
+       it was <literal>notice</literal>) to reduce log file volume (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Change default setting for <literal>max_prepared_transactions</literal> to
+       zero (previously it was 5) (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <literal>debug_print_parse</literal>, <literal>debug_print_rewritten</literal>,
+       and <literal>debug_print_plan</literal>
+       output appear at <literal>LOG</literal> message level, not
+       <literal>DEBUG1</literal> as formerly (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <literal>debug_pretty_print</literal> default to <literal>on</literal> (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <varname>explain_pretty_print</varname> parameter (no longer needed) (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <varname>log_temp_files</varname> settable by superusers only, like other
+       logging options (Simon Riggs)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove automatic appending of the epoch timestamp when no <literal>%</literal>
+       escapes are present in <literal>log_filename</literal> (Robert Haas)
+      </para>
+
+      <para>
+       This change was made because some users wanted a fixed log filename,
+       for use with an external log rotation tool.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <varname>log_restartpoints</varname> from <filename>recovery.conf</filename>;
+       instead use <varname>log_checkpoints</varname> (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <varname>krb_realm</varname> and <varname>krb_server_hostname</varname>;
+       these are now set in <filename>pg_hba.conf</filename> instead (Magnus)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       There are also significant changes in <link
+       linkend="release-8-4-pg-hba-conf"><filename>pg_hba.conf</filename></link>,
+       as described below.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Queries</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Change <command>TRUNCATE</command> and <command>LOCK</command> to
+       apply to child tables of the specified table(s) (Peter)
+      </para>
+
+      <para>
+       These commands now accept an <literal>ONLY</literal> option that prevents
+       processing child tables; this option must be used if the old
+       behavior is needed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <command>SELECT DISTINCT</command> and
+       <literal>UNION</literal>/<literal>INTERSECT</literal>/<literal>EXCEPT</literal>
+       no longer always produce sorted output (Tom)
+      </para>
+
+      <para>
+       Previously, these types of queries always removed duplicate rows
+       by means of Sort/Unique processing (i.e., sort then remove adjacent
+       duplicates).  Now they can be implemented by hashing, which will not
+       produce sorted output.  If an application relied on the output being
+       in sorted order, the recommended fix is to add an <literal>ORDER BY</literal>
+       clause.  As a short-term workaround, the previous behavior can be
+       restored by disabling <literal>enable_hashagg</literal>, but that is a very
+       performance-expensive fix.  <literal>SELECT DISTINCT ON</literal> never uses
+       hashing, however, so its behavior is unchanged.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Force child tables to inherit <literal>CHECK</literal> constraints from parents
+       (Alex Hunsaker, Nikhil Sontakke, Tom)
+      </para>
+
+      <para>
+       Formerly it was possible to drop such a constraint from a child
+       table, allowing rows that violate the constraint to be visible
+       when scanning the parent table.  This was deemed inconsistent,
+       as well as contrary to SQL standard.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Disallow negative <literal>LIMIT</literal> or <literal>OFFSET</literal>
+       values, rather than treating them as zero (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Disallow <command>LOCK TABLE</command> outside a transaction block
+       (Tom)
+      </para>
+
+      <para>
+       Such an operation is useless because the lock would be released
+       immediately.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Sequences now contain an additional <structfield>start_value</structfield> column
+       (Zoltan Boszormenyi)
+      </para>
+
+      <para>
+       This supports <command>ALTER SEQUENCE ... RESTART</command>.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+
+   <sect3>
+    <title>Functions and Operators</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Make <type>numeric</type> zero raised to a fractional power return
+       <literal>0</literal>, rather than throwing an error, and make
+       <type>numeric</type> zero raised to the zero power return <literal>1</literal>,
+       rather than error (Bruce)
+      </para>
+
+      <para>
+       This matches the longstanding <type>float8</type> behavior.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow unary minus of floating-point values to produce minus zero (Tom)
+      </para>
+
+      <para>
+       The changed behavior is more <acronym>IEEE</acronym>-standard
+       compliant.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Throw an error if an escape character is the last character in
+       a <literal>LIKE</literal> pattern (i.e., it has nothing to escape) (Tom)
+      </para>
+
+      <para>
+       Previously, such an escape character was silently ignored,
+       thus possibly masking application logic errors.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <literal>~=~</literal> and <literal>~&lt;&gt;~</literal> operators
+       formerly used for <literal>LIKE</literal> index comparisons (Tom)
+      </para>
+
+      <para>
+       Pattern indexes now use the regular equality operator.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       <function>xpath()</function> now passes its arguments to <application>libxml</application>
+       without any changes (Andrew)
+      </para>
+
+      <para>
+       This means that the XML argument must be a well-formed XML document.
+       The previous coding attempted to allow XML fragments, but it did not
+       work well.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <function>xmlelement()</function> format attribute values just like
+       content values (Peter)
+      </para>
+
+      <para>
+       Previously, attribute values were formatted according to the
+       normal SQL output behavior, which is sometimes at odds with
+       XML rules.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Rewrite memory management for <application>libxml</application>-using functions
+       (Tom)
+      </para>
+
+      <para>
+       This change should avoid some compatibility problems with use of
+       <application>libxml</application> in PL/Perl and other add-on code.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Adopt a faster algorithm for hash functions (Kenneth Marshall,
+       based on work of Bob Jenkins)
+      </para>
+
+      <para>
+       Many of the built-in hash functions now deliver different results on
+       little-endian and big-endian platforms.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title>Temporal Functions and Operators</title>
+
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        <varname>DateStyle</varname> no longer controls <type>interval</type> output
+        formatting; instead there is a new variable <varname>IntervalStyle</varname>
+        (Ron Mayer)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve consistency of handling of fractional seconds in
+        <type>timestamp</type> and <type>interval</type> output (Ron Mayer)
+       </para>
+
+       <para>
+        This may result in displaying a different number of fractional
+        digits than before, or rounding instead of truncating.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <function>to_char()</function>'s localized month/day names depend
+        on <varname>LC_TIME</varname>, not <varname>LC_MESSAGES</varname> (Euler
+        Taveira de Oliveira)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Cause <function>to_date()</function> and <function>to_timestamp()</function>
+        to more consistently report errors for invalid input (Brendan
+        Jurd)
+       </para>
+
+       <para>
+        Previous versions would often ignore or silently misread input
+        that did not match the format string.  Such cases will now
+        result in an error.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix <function>to_timestamp()</function> to not require upper/lower case
+        matching for meridian (<literal>AM</literal>/<literal>PM</literal>) and era
+        (<literal>BC</literal>/<literal>AD</literal>) format designations  (Brendan
+        Jurd)
+       </para>
+
+       <para>
+        For example, input value <literal>ad</literal> now matches the format
+        string <literal>AD</literal>.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <para>
+    Below you will find a detailed account of the changes between
+    <productname>PostgreSQL</productname> 8.4 and the previous major
+    release.
+   </para>
+
+   <sect3>
+    <title>Performance</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Improve optimizer statistics calculations (Jan Urbanski, Tom)
+      </para>
+
+      <para>
+       In particular, estimates for full-text-search operators are
+       greatly improved.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <command>SELECT DISTINCT</command> and
+       <literal>UNION</literal>/<literal>INTERSECT</literal>/<literal>EXCEPT</literal> to
+       use hashing (Tom)
+      </para>
+
+      <para>
+       This means that these types of queries no longer automatically
+       produce sorted output.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Create explicit concepts of semi-joins and anti-joins (Tom)
+      </para>
+
+      <para>
+       This work formalizes our previous ad-hoc treatment of <literal>IN
+       (SELECT ...)</literal> clauses, and extends it to <literal>EXISTS</literal> and
+       <literal>NOT EXISTS</literal> clauses.  It should result in significantly
+       better planning of <literal>EXISTS</literal> and <literal>NOT EXISTS</literal>
+       queries.  In general, logically equivalent <literal>IN</literal> and
+       <literal>EXISTS</literal> clauses should now have similar performance,
+       whereas previously <literal>IN</literal> often won.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve optimization of sub-selects beneath outer joins (Tom)
+      </para>
+
+      <para>
+       Formerly, a sub-select or view could not be optimized very well if it
+       appeared within the nullable side of an outer join and contained
+       non-strict expressions (for instance, constants) in its result list.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve the performance of <function>text_position()</function> and
+       related functions by using Boyer-Moore-Horspool searching (David
+       Rowley)
+      </para>
+
+      <para>
+       This is particularly helpful for long search patterns.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Reduce I/O load of writing the statistics collection file
+       by writing the file only when requested (Martin Pihlak)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve performance for bulk inserts (Robert Haas, Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Increase the default value of <varname>default_statistics_target</varname>
+       from <literal>10</literal> to <literal>100</literal> (Greg Sabino Mullane,
+       Tom)
+      </para>
+
+      <para>
+       The maximum value was also increased from <literal>1000</literal> to
+       <literal>10000</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Perform <varname>constraint_exclusion</varname> checking by default
+       in queries involving inheritance or <literal>UNION ALL</literal> (Tom)
+      </para>
+
+      <para>
+       A new <varname>constraint_exclusion</varname> setting,
+       <literal>partition</literal>, was added to specify this behavior.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow I/O read-ahead for bitmap index scans (Greg Stark)
+      </para>
+
+      <para>
+       The amount of read-ahead is controlled by
+       <varname>effective_io_concurrency</varname>.  This feature is available only
+       if the kernel has <function>posix_fadvise()</function> support.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Inline simple set-returning <acronym>SQL</acronym> functions in
+       <literal>FROM</literal> clauses (Richard Rowell)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve performance of multi-batch hash joins by providing a special
+       case for join key values that are especially common in the outer
+       relation (Bryce Cutt, Ramon Lawrence)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Reduce volume of temporary data in multi-batch hash joins
+       by suppressing <quote>physical tlist</quote> optimization (Michael
+       Henderson, Ramon Lawrence)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Avoid waiting for idle-in-transaction sessions during
+       <command>CREATE INDEX CONCURRENTLY</command> (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve performance of shared cache invalidation (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Server</title>
+
+    <sect4>
+     <title>Settings</title>
+
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Convert many <filename>postgresql.conf</filename> settings to enumerated
+        values so that <literal>pg_settings</literal> can display the valid
+        values (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <varname>cursor_tuple_fraction</varname> parameter to control the
+        fraction of a cursor's rows that the planner assumes will be
+        fetched (Robert Hell)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow underscores in the names of custom variable
+        classes in <filename>postgresql.conf</filename> (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Authentication and security</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Remove support for the (insecure) <literal>crypt</literal> authentication method
+        (Magnus)
+       </para>
+
+       <para>
+        This effectively obsoletes pre-<productname>PostgreSQL</productname> 7.2 client
+        libraries, as there is no longer any non-plaintext password method that
+        they can use.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support regular expressions in <filename>pg_ident.conf</filename>
+        (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <productname>Kerberos</productname>/<acronym>GSSAPI</acronym> parameters
+        to be changed without restarting the postmaster (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support <acronym>SSL</acronym> certificate chains in server certificate
+        file (Andrew Gierth)
+       </para>
+
+       <para>
+        Including the full certificate chain makes the client able
+        to verify the certificate without having all intermediate CA
+        certificates present in the local store, which is often the case for
+        commercial CAs.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Report appropriate error message for combination of <literal>MD5</literal>
+        authentication and <varname>db_user_namespace</varname> enabled (Bruce)
+       </para>
+      </listitem>
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4 id="release-8-4-pg-hba-conf">
+     <title><filename>pg_hba.conf</filename></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Change all authentication options to use <literal>name=value</literal>
+        syntax (Magnus)
+       </para>
+
+       <para>
+        This makes incompatible changes to the <literal>ldap</literal>,
+        <literal>pam</literal> and <literal>ident</literal> authentication methods. All
+        <filename>pg_hba.conf</filename> entries with these methods need to be
+        rewritten using the new format.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove the <literal>ident sameuser</literal> option, instead making that
+        behavior the default if no usermap is specified (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow a usermap parameter for all external authentication methods
+        (Magnus)
+       </para>
+
+       <para>
+        Previously a usermap was only supported for <literal>ident</literal>
+        authentication.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>clientcert</literal> option to control requesting of a
+        client certificate (Magnus)
+       </para>
+
+       <para>
+        Previously this was controlled by the presence of a root
+        certificate file in the server's data directory.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>cert</literal> authentication method to allow
+        <emphasis>user</emphasis> authentication via <acronym>SSL</acronym> certificates
+        (Magnus)
+       </para>
+
+       <para>
+        Previously <acronym>SSL</acronym> certificates could only verify that
+        the client had access to a certificate, not authenticate a
+        user.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <literal>krb5</literal>, <literal>gssapi</literal> and <literal>sspi</literal>
+        realm and <literal>krb5</literal> host settings to be specified in
+        <filename>pg_hba.conf</filename> (Magnus)
+       </para>
+
+       <para>
+        These override the settings in <filename>postgresql.conf</filename>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <varname>include_realm</varname> parameter for <literal>krb5</literal>,
+        <literal>gssapi</literal>, and <literal>sspi</literal> methods (Magnus)
+       </para>
+
+       <para>
+        This allows identical usernames from different realms to be
+        authenticated as different database users using usermaps.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Parse <filename>pg_hba.conf</filename> fully when it is loaded,
+        so that errors are reported immediately (Magnus)
+       </para>
+
+       <para>
+        Previously, most errors in the file wouldn't be detected until clients
+        tried to connect, so an erroneous file could render the system
+        unusable.  With the new behavior, if an error is detected during
+        reload then the bad file is rejected and the postmaster continues
+        to use its old copy.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Show all parsing errors in <filename>pg_hba.conf</filename> instead of
+        aborting after the first one (Selena Deckelmann)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support <literal>ident</literal> authentication over Unix-domain sockets
+        on <productname>Solaris</productname> (Garick Hamlin)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Continuous Archiving</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Provide an option to <function>pg_start_backup()</function> to force its
+        implied checkpoint to finish as quickly as possible (Tom)
+       </para>
+
+       <para>
+        The default behavior avoids excess I/O consumption, but that is
+        pointless if no concurrent query activity is going on.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <function>pg_stop_backup()</function> wait for modified <acronym>WAL</acronym>
+        files to be archived (Simon)
+       </para>
+
+       <para>
+        This guarantees that the backup is valid at the time
+        <function>pg_stop_backup()</function> completes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Delay <quote>smart</quote> shutdown while a continuous archiving base backup
+        is in progress (Laurenz Albe)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Cancel a continuous archiving base backup if <quote>fast</quote> shutdown
+        is requested (Laurenz Albe)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <filename>recovery.conf</filename> boolean variables to take the
+        same range of string values as <filename>postgresql.conf</filename>
+        boolean variables
+        (Bruce)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Monitoring</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <function>pg_conf_load_time()</function> to report when
+        the <productname>PostgreSQL</productname> configuration files were last loaded
+        (George Gensure)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_terminate_backend()</function> to safely terminate a
+        backend (the <literal>SIGTERM</literal> signal works also) (Tom, Bruce)
+       </para>
+
+       <para>
+        While it's always been possible to <literal>SIGTERM</literal> a single
+        backend, this was previously considered unsupported; and testing
+        of the case found some bugs that are now fixed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add ability to track user-defined functions' call counts and
+        runtimes (Martin Pihlak)
+       </para>
+
+       <para>
+        Function statistics appear in a new system view,
+        <literal>pg_stat_user_functions</literal>.  Tracking is controlled
+        by the new parameter <varname>track_functions</varname>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow specification of the maximum query string size in
+        <literal>pg_stat_activity</literal> via new
+        <varname>track_activity_query_size</varname> parameter (Thomas Lee)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Increase the maximum line length sent to <application>syslog</application>, in
+        hopes of improving performance (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add read-only configuration variables <varname>segment_size</varname>,
+        <varname>wal_block_size</varname>, and <varname>wal_segment_size</varname>
+        (Bernd Helmle)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        When reporting a deadlock, report the text of all queries involved
+        in the deadlock to the server log  (Itagaki Takahiro)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_stat_get_activity(pid)</function> function to return
+        information about a specific process id (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the location of the server's statistics file to be specified
+        via <varname>stats_temp_directory</varname> (Magnus)
+       </para>
+
+       <para>
+        This allows the statistics file to be placed in a
+        <acronym>RAM</acronym>-resident directory to reduce I/O requirements.
+        On startup/shutdown, the file is copied to its traditional location
+        (<literal>$PGDATA/global/</literal>) so it is preserved across restarts.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Queries</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add support for <literal>WINDOW</literal> functions (Hitoshi Harada)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for <literal>WITH</literal> clauses (CTEs), including <literal>WITH
+       RECURSIVE</literal> (Yoshiyuki Asaba, Tatsuo Ishii, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <command>TABLE</command> command (Peter)
+      </para>
+
+      <para>
+       <literal>TABLE tablename</literal> is a SQL standard short-hand for
+       <literal>SELECT * FROM tablename</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>AS</literal> to be optional when specifying a
+       <command>SELECT</command> (or <literal>RETURNING</literal>) column output
+       label (Hiroshi Saito)
+      </para>
+
+      <para>
+       This works so long as the column label is not any
+       <productname>PostgreSQL</productname> keyword; otherwise <literal>AS</literal> is still
+       needed.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support set-returning functions in <command>SELECT</command> result lists
+       even for functions that return their result via a tuplestore (Tom)
+      </para>
+
+      <para>
+       In particular, this means that functions written in PL/PgSQL
+       and other PL languages can now be called this way.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Support set-returning functions in the output of aggregation
+       and grouping queries (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <command>SELECT FOR UPDATE</command>/<literal>SHARE</literal> to work
+       on inheritance trees (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add infrastructure for <acronym>SQL/MED</acronym> (Martin Pihlak,
+       Peter)
+      </para>
+
+      <para>
+       There are no remote or external <acronym>SQL/MED</acronym> capabilities
+       yet, but this change provides a standardized and future-proof
+       system for managing connection information for modules like
+       <filename>dblink</filename> and <filename>plproxy</filename>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Invalidate cached plans when referenced schemas, functions, operators,
+       or operator classes are modified (Martin Pihlak, Tom)
+      </para>
+
+      <para>
+       This improves the system's ability to respond to on-the-fly
+       DDL changes.
+      </para>
+     </listitem>
+     <listitem>
+      <para>
+       Allow comparison of composite types and allow arrays of
+       anonymous composite types (Tom)
+      </para>
+
+      <para>
+       This allows constructs such as
+       <literal>row(1, 1.1) = any (array[row(7, 7.7), row(1, 1.0)])</literal>.
+       This is particularly useful in recursive queries.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for Unicode string literal and identifier specifications
+       using code points, e.g. <literal>U&amp;'d\0061t\+000061'</literal>
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Reject <literal>\000</literal> in string literals and <command>COPY</command> data
+       (Tom)
+      </para>
+
+      <para>
+       Previously, this was accepted but had the effect of terminating
+       the string contents.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve the parser's ability to report error locations (Tom)
+      </para>
+
+      <para>
+       An error location is now reported for many semantic errors,
+       such as mismatched datatypes, that previously could not be localized.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title><command>TRUNCATE</command></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Support statement-level <literal>ON TRUNCATE</literal> triggers (Simon)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>RESTART</literal>/<literal>CONTINUE IDENTITY</literal> options
+        for <command>TRUNCATE TABLE</command>
+        (Zoltan Boszormenyi)
+       </para>
+
+       <para>
+        The start value of a sequence can be changed by <command>ALTER
+        SEQUENCE START WITH</command>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <command>TRUNCATE tab1, tab1</command> to succeed (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a separate <command>TRUNCATE</command> permission (Robert Haas)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><command>EXPLAIN</command></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Make <command>EXPLAIN VERBOSE</command> show the output columns of each
+        plan node (Tom)
+       </para>
+
+       <para>
+        Previously <command>EXPLAIN VERBOSE</command> output an internal
+        representation of the query plan.  (That behavior is now
+        available via <varname>debug_print_plan</varname>.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>EXPLAIN</command> identify subplans and initplans with
+        individual labels (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>EXPLAIN</command> honor <varname>debug_print_plan</varname> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <command>EXPLAIN</command> on <command>CREATE TABLE AS</command> (Peter)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><literal>LIMIT</literal>/<literal>OFFSET</literal></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow sub-selects in <literal>LIMIT</literal> and <literal>OFFSET</literal> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <acronym>SQL</acronym>-standard syntax for
+        <literal>LIMIT</literal>/<literal>OFFSET</literal> capabilities (Peter)
+       </para>
+
+       <para>
+        To wit,
+        <literal>OFFSET num {ROW|ROWS} FETCH {FIRST|NEXT} [num] {ROW|ROWS}
+        ONLY</literal>.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Object Manipulation</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add support for column-level privileges (Stephen Frost, KaiGai
+       Kohei)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Refactor multi-object <command>DROP</command> operations to reduce the
+       need for <literal>CASCADE</literal> (Alex Hunsaker)
+      </para>
+
+      <para>
+       For example, if table <literal>B</literal> has a dependency on table
+       <literal>A</literal>, the command <literal>DROP TABLE A, B</literal> no longer
+       requires the <literal>CASCADE</literal> option.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix various problems with concurrent <command>DROP</command> commands
+       by ensuring that locks are taken before we begin to drop dependencies
+       of an object (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve reporting of dependencies during <command>DROP</command>
+       commands (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>WITH [NO] DATA</literal> clause to <command>CREATE TABLE
+       AS</command>, per the <acronym>SQL</acronym> standard (Peter, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for user-defined I/O conversion casts (Heikki)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <command>CREATE AGGREGATE</command> to use an <type>internal</type>
+       transition datatype (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>LIKE</literal> clause to <command>CREATE TYPE</command> (Tom)
+      </para>
+
+      <para>
+       This simplifies creation of data types that use the same internal
+       representation as an existing type.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow specification of the type category and <quote>preferred</quote>
+       status for user-defined base types (Tom)
+      </para>
+
+      <para>
+       This allows more control over the coercion behavior of user-defined
+       types.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <command>CREATE OR REPLACE VIEW</command> to add columns to the
+       end of a view (Robert Haas)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title><command>ALTER</command></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add <command>ALTER TYPE RENAME</command> (Petr Jelinek)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>ALTER SEQUENCE ... RESTART</command> (with no parameter) to
+        reset a sequence to its initial value (Zoltan Boszormenyi)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modify the <command>ALTER TABLE</command> syntax to allow all reasonable
+        combinations for tables, indexes, sequences, and views (Tom)
+       </para>
+
+       <para>
+        This change allows the following new syntaxes:
+
+        <itemizedlist>
+         <listitem>
+          <para>
+           <command>ALTER SEQUENCE OWNER TO</command>
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           <command>ALTER VIEW ALTER COLUMN SET/DROP DEFAULT</command>
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           <command>ALTER VIEW OWNER TO</command>
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           <command>ALTER VIEW SET SCHEMA</command>
+          </para>
+         </listitem>
+        </itemizedlist>
+
+        There is no actual new functionality here, but formerly
+        you had to say <command>ALTER TABLE</command> to do these things,
+        which was confusing.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for the syntax <command>ALTER TABLE ... ALTER COLUMN
+        ... SET DATA TYPE</command> (Peter)
+       </para>
+
+       <para>
+        This is <acronym>SQL</acronym>-standard syntax for functionality that
+        was already supported.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>ALTER TABLE SET WITHOUT OIDS</command> rewrite the table
+        to physically remove <type>OID</type> values (Tom)
+       </para>
+
+       <para>
+        Also, add <command>ALTER TABLE SET WITH OIDS</command> to rewrite the
+        table to add <type>OID</type>s.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Database Manipulation</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Improve reporting of
+        <command>CREATE</command>/<command>DROP</command>/<command>RENAME DATABASE</command>
+        failure when uncommitted prepared transactions are the cause
+        (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <varname>LC_COLLATE</varname> and <varname>LC_CTYPE</varname> into
+        per-database settings (Radek Strnad, Heikki)
+       </para>
+
+       <para>
+        This makes collation similar to encoding, which was always
+        configurable per database.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve checks that the database encoding, collation
+        (<varname>LC_COLLATE</varname>), and character classes
+        (<varname>LC_CTYPE</varname>) match (Heikki, Tom)
+       </para>
+
+       <para>
+        Note in particular that a new database's encoding and locale
+        settings can be changed only when copying from <literal>template0</literal>.
+        This prevents possibly copying data that doesn't match the settings.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>ALTER DATABASE SET TABLESPACE</command> to move a database
+        to a new tablespace (Guillaume Lelarge, Bernd Helmle)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Utility Operations</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add a <literal>VERBOSE</literal> option to the <command>CLUSTER</command> command and
+       <application>clusterdb</application> (Jim Cox)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Decrease memory requirements for recording pending trigger
+       events (Tom)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title>Indexes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Dramatically improve the speed of building and accessing hash
+        indexes (Tom Raney, Shreya Bhargava)
+       </para>
+
+       <para>
+        This allows hash indexes to be sometimes faster than btree
+        indexes.  However, hash indexes are still not crash-safe.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make hash indexes store only the hash code, not the full value of
+        the indexed column (Xiao Meng)
+       </para>
+
+       <para>
+        This greatly reduces the size of hash indexes for long indexed
+        values, improving performance.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Implement fast update option for GIN indexes (Teodor, Oleg)
+       </para>
+
+       <para>
+        This option greatly improves update speed at a small penalty in search
+        speed.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        <literal>xxx_pattern_ops</literal> indexes can now be used for simple
+        equality comparisons, not only for <literal>LIKE</literal> (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Full Text Indexes</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Remove the requirement to use <literal>@@@</literal> when doing
+        <acronym>GIN</acronym> weighted lookups on full text indexes (Tom, Teodor)
+       </para>
+
+       <para>
+        The normal <literal>@@</literal> text search operator can be used
+        instead.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add an optimizer selectivity function for <literal>@@</literal> text
+        search operations (Jan Urbanski)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow prefix matching in full text searches (Teodor Sigaev,
+        Oleg Bartunov)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support multi-column <acronym>GIN</acronym> indexes (Teodor Sigaev)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve support for Nepali language and Devanagari alphabet (Teodor)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><command>VACUUM</command></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Track free space in separate per-relation <quote>fork</quote> files (Heikki)
+       </para>
+
+       <para>
+        Free space discovered by <command>VACUUM</command> is now recorded in
+        <filename>*_fsm</filename> files, rather than in a fixed-sized shared memory
+        area.  The <varname>max_fsm_pages</varname> and <varname>max_fsm_relations</varname>
+        settings have been removed, greatly simplifying administration of
+        free space management.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a visibility map to track pages that do not require
+        vacuuming (Heikki)
+       </para>
+
+       <para>
+        This allows <command>VACUUM</command> to avoid scanning all of
+        a table when only a portion of the table needs vacuuming.
+        The visibility map is stored in per-relation <quote>fork</quote> files.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <varname>vacuum_freeze_table_age</varname> parameter to control
+        when <command>VACUUM</command> should ignore the visibility map and
+        do a full table scan to freeze tuples (Heikki)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Track transaction snapshots more carefully (Alvaro)
+       </para>
+
+       <para>
+        This improves <command>VACUUM</command>'s ability to reclaim space
+        in the presence of long-running transactions.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add ability to specify per-relation autovacuum and <acronym>TOAST</acronym>
+        parameters in <command>CREATE TABLE</command> (Alvaro, Euler Taveira de
+        Oliveira)
+       </para>
+
+       <para>
+        Autovacuum options used to be stored in a system table.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>--freeze</literal> option to <application>vacuumdb</application>
+        (Bruce)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Data Types</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add a <literal>CaseSensitive</literal> option for text search synonym
+       dictionaries (Simon)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve the precision of <type>NUMERIC</type> division (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add basic arithmetic operators for <type>int2</type> with <type>int8</type>
+       (Tom)
+      </para>
+
+      <para>
+       This eliminates the need for explicit casting in some situations.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <type>UUID</type> input to accept an optional hyphen after
+       every fourth digit (Robert Haas)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow <literal>on</literal>/<literal>off</literal> as input for the boolean data type
+       (Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow spaces around <literal>NaN</literal> in the input string for
+       type <type>numeric</type> (Sam Mason)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title>Temporal Data Types</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Reject year <literal>0 BC</literal> and years <literal>000</literal> and
+        <literal>0000</literal> (Tom)
+       </para>
+
+       <para>
+        Previously these were interpreted as <literal>1 BC</literal>.
+        (Note: years <literal>0</literal> and <literal>00</literal> are still assumed to be
+        the year 2000.)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Include <literal>SGT</literal> (Singapore time) in the default list of
+        known time zone abbreviations (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support <literal>infinity</literal> and <literal>-infinity</literal> as
+        values of type <type>date</type> (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make parsing of <type>interval</type> literals more standard-compliant (Tom)
+       </para>
+
+       <para>
+        For example, <literal>INTERVAL '1' YEAR</literal> now does what it's
+        supposed to.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <type>interval</type> fractional-seconds precision to be specified
+        after the <literal>second</literal> keyword, for <acronym>SQL</acronym> standard
+        compliance (Tom)
+       </para>
+
+       <para>
+        Formerly the precision had to be specified after the keyword
+        <type>interval</type>.  (For backwards compatibility, this syntax is still
+        supported, though deprecated.)  Data type definitions will now be
+        output using the standard format.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support the <acronym>IS0 8601</acronym> <type>interval</type> syntax (Ron
+        Mayer, Kevin Grittner)
+       </para>
+
+       <para>
+        For example, <literal>INTERVAL 'P1Y2M3DT4H5M6.7S'</literal> is now
+        supported.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <varname>IntervalStyle</varname> parameter
+        which controls how <type>interval</type> values are output (Ron Mayer)
+       </para>
+
+       <para>
+        Valid values are:  <literal>postgres</literal>, <literal>postgres_verbose</literal>,
+        <literal>sql_standard</literal>, <literal>iso_8601</literal>.  This setting also
+        controls the handling of negative <type>interval</type> input when only
+        some fields have positive/negative designations.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve consistency of handling of fractional seconds in
+        <type>timestamp</type> and <type>interval</type> output (Ron Mayer)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Arrays</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Improve the handling of casts applied to <literal>ARRAY[]</literal>
+        constructs, such as <literal>ARRAY[...]::integer[]</literal>
+        (Brendan Jurd)
+       </para>
+
+       <para>
+        Formerly <productname>PostgreSQL</productname> attempted to determine a data type
+        for the <literal>ARRAY[]</literal> construct without reference to the ensuing
+        cast.  This could fail unnecessarily in many cases, in particular when
+        the <literal>ARRAY[]</literal> construct was empty or contained only
+        ambiguous entries such as <literal>NULL</literal>.  Now the cast is consulted
+        to determine the type that the array elements must be.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <acronym>SQL</acronym>-syntax <type>ARRAY</type> dimensions optional
+        to match the <acronym>SQL</acronym> standard (Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>array_ndims()</function> to return the number
+        of dimensions of an array (Robert Haas)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>array_length()</function> to return the length
+        of an array for a specified dimension (Jim Nasby, Robert
+        Haas, Peter Eisentraut)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add aggregate function <function>array_agg()</function>, which
+        returns all aggregated values as a single array (Robert Haas,
+        Jeff Davis, Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>unnest()</function>, which converts an array to
+        individual row values (Tom)
+       </para>
+
+       <para>
+        This is the opposite of <function>array_agg()</function>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>array_fill()</function> to create arrays initialized with
+        a value (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>generate_subscripts()</function> to simplify generating
+        the range of an array's subscripts (Pavel Stehule)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Wide-Value Storage (<acronym>TOAST</acronym>)</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Consider <acronym>TOAST</acronym> compression on values as short as
+        32 bytes (previously 256 bytes) (Greg Stark)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Require 25% minimum space savings before using <acronym>TOAST</acronym>
+        compression (previously 20% for small values and any-savings-at-all
+        for large values) (Greg)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve <acronym>TOAST</acronym> heuristics for rows that have a mix of large
+        and small toastable fields, so that we prefer to push large values out
+        of line and don't compress small values unnecessarily (Greg, Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Functions</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Document that <function>setseed()</function> allows values from
+       <literal>-1</literal> to <literal>1</literal> (not just <literal>0</literal> to
+       <literal>1</literal>), and enforce the valid range (Kris Jurka)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add server-side function <function>lo_import(filename, oid)</function>
+       (Tatsuo)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>quote_nullable()</function>, which behaves like
+       <function>quote_literal()</function> but returns the string <literal>NULL</literal> for
+       a null argument (Brendan Jurd)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve full text search <function>headline()</function> function to
+       allow extracting several fragments of text (Sushant Sinha)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>suppress_redundant_updates_trigger()</function> trigger
+       function to avoid overhead for non-data-changing updates (Andrew)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>div(numeric, numeric)</function> to perform <type>numeric</type>
+       division without rounding (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <type>timestamp</type> and <type>timestamptz</type> versions of
+       <function>generate_series()</function> (Hitoshi Harada)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title>Object Information Functions</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Implement <function>current_query()</function> for use by functions
+        that need to know the currently running query (Tomas Doran)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_get_keywords()</function> to return a list of the
+        parser keywords (Dave Page)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_get_functiondef()</function> to see a function's
+        definition (Abhijit Menon-Sen)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Modify <function>pg_relation_size()</function> to use <literal>regclass</literal>
+        (Heikki)
+       </para>
+
+       <para>
+        <function>pg_relation_size(data_type_name)</function> no longer works.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>boot_val</literal> and <literal>reset_val</literal> columns to
+        <literal>pg_settings</literal> output (Greg Smith)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add source file name and line number columns to
+        <literal>pg_settings</literal> output for variables set in a configuration
+        file (Magnus, Alvaro)
+       </para>
+
+       <para>
+        For security reasons, these columns are only visible to superusers.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add support for <varname>CURRENT_CATALOG</varname>,
+        <varname>CURRENT_SCHEMA</varname>, <varname>SET CATALOG</varname>, <varname>SET
+        SCHEMA</varname> (Peter)
+       </para>
+
+       <para>
+        These provide <acronym>SQL</acronym>-standard syntax for existing features.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>pg_typeof()</function> which returns the data type
+        of any value (Brendan Jurd)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <function>version()</function> return information about whether
+        the server is a 32- or 64-bit binary (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Fix the behavior of information schema columns
+        <literal>is_insertable_into</literal> and <literal>is_updatable</literal> to
+        be consistent (Peter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Convert remaining builtin set-returning functions to use
+        <literal>OUT</literal> parameters (Jaime Casanova)
+       </para>
+
+       <para>
+        This makes it possible to call these functions without specifying
+        a column list:  <function>pg_show_all_settings()</function>,
+        <function>pg_lock_status()</function>, <function>pg_prepared_xact()</function>,
+        <function>pg_prepared_statement()</function>, <function>pg_cursor()</function>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <function>pg_*_is_visible()</function> and
+        <function>has_*_privilege()</function> functions return <literal>NULL</literal>
+        for invalid OIDs, rather than reporting an error (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Extend <function>has_*_privilege()</function> functions to allow inquiring
+        about the OR of multiple privileges in one call (Stephen
+        Frost, Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <function>has_column_privilege()</function> and
+        <function>has_any_column_privilege()</function> functions (Stephen
+        Frost, Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Function Creation</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Support variadic functions (functions with a variable number
+        of arguments) (Pavel Stehule)
+       </para>
+
+       <para>
+        Only trailing arguments can be optional, and they all must be
+        of the same data type.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support default values for function arguments (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <command>CREATE FUNCTION ... RETURNS TABLE</command> clause (Pavel
+        Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <acronym>SQL</acronym>-language functions to return the output
+        of an <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
+        <literal>RETURNING</literal> clause (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>PL/PgSQL Server-Side Language</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Support <literal>EXECUTE USING</literal> for easier insertion of data
+        values into a dynamic query string (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow looping over the results of a cursor using a <literal>FOR</literal>
+        loop (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support <literal>RETURN QUERY EXECUTE</literal> (Pavel
+        Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve the <literal>RAISE</literal> command (Pavel Stehule)
+
+        <itemizedlist>
+         <listitem>
+          <para>
+           Support <literal>DETAIL</literal> and <literal>HINT</literal> fields
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           Support specification of the <literal>SQLSTATE</literal> error code
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           Support an exception name parameter
+          </para>
+         </listitem>
+         <listitem>
+          <para>
+           Allow <literal>RAISE</literal> without parameters in an exception
+           block to re-throw the current error
+          </para>
+         </listitem>
+        </itemizedlist>
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow specification of <varname>SQLSTATE</varname> codes
+        in <literal>EXCEPTION</literal> lists (Pavel Stehule)
+       </para>
+
+       <para>
+        This is useful for handling custom <varname>SQLSTATE</varname> codes.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support the <literal>CASE</literal> statement (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>RETURN QUERY</command> set the special <literal>FOUND</literal> and
+        <command>GET DIAGNOSTICS</command> <literal>ROW_COUNT</literal> variables
+        (Pavel Stehule)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>FETCH</command> and <command>MOVE</command> set the
+        <command>GET DIAGNOSTICS</command> <literal>ROW_COUNT</literal> variable
+        (Andrew Gierth)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>EXIT</command> without a label always exit the innermost
+        loop (Tom)
+       </para>
+
+       <para>
+        Formerly, if there were a <literal>BEGIN</literal> block more closely nested
+        than any loop, it would exit that block instead.  The new behavior
+        matches Oracle(TM) and is also what was previously stated by our own
+        documentation.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make processing of string literals and nested block comments
+        match the main SQL parser's processing (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Avoid memory leakage when the same function is called at varying
+        exception-block nesting depths (Tom)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Client Applications</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Fix <literal>pg_ctl restart</literal> to preserve command-line arguments
+       (Bruce)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <literal>-w</literal>/<literal>--no-password</literal> option that
+       prevents password prompting in all utilities that have a
+       <literal>-W</literal>/<literal>--password</literal> option (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <option>-q</option> (quiet) option of <application>createdb</application>,
+       <application>createuser</application>, <application>dropdb</application>,
+       <application>dropuser</application> (Peter)
+      </para>
+
+      <para>
+       These options have had no effect since <productname>PostgreSQL</productname>
+       8.3.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+    <sect4>
+     <title><application>psql</application></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Remove verbose startup banner; now just suggest <literal>help</literal>
+        (Joshua Drake)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <literal>help</literal> show common backslash commands (Greg
+        Sabino Mullane)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <literal>\pset format wrapped</literal> mode to wrap output to the
+        screen width, or file/pipe output too if <literal>\pset columns</literal>
+        is set (Bryce Nesbitt)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow all supported spellings of boolean values in <command>\pset</command>,
+        rather than just <literal>on</literal> and <literal>off</literal> (Bruce)
+       </para>
+
+       <para>
+        Formerly, any string other than <quote>off</quote> was silently taken
+        to mean <literal>true</literal>.  <application>psql</application> will now complain
+        about unrecognized spellings (but still take them as <literal>true</literal>).
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Use the pager for wide output (Bruce)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Require a space between a one-letter backslash command and its first
+        argument (Bernd Helmle)
+       </para>
+
+       <para>
+        This removes a historical source of ambiguity.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve tab completion support for schema-qualified and
+        quoted identifiers (Greg Sabino Mullane)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add optional <literal>on</literal>/<literal>off</literal> argument for
+        <command>\timing</command> (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Display access control rights on multiple lines (Brendan
+        Jurd, Andreas Scherbaum)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\l</command> show database access privileges (Andrew Gilligan)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\l+</command> show database sizes, if permissions
+        allow (Andrew Gilligan)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add the <command>\ef</command> command to edit function definitions
+        (Abhijit Menon-Sen)
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><application>psql</application> \d* commands</title>
+
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Make <command>\d*</command> commands that do not have a pattern argument
+        show system objects only if the <literal>S</literal> modifier is specified
+        (Greg Sabino Mullane, Bruce)
+       </para>
+
+       <para>
+        The former behavior was inconsistent across different variants
+        of <command>\d</command>, and in most cases it provided no easy way to see
+        just user objects.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve <command>\d*</command> commands to work with older
+        <productname>PostgreSQL</productname> server versions (back to 7.4),
+        not only the current server version
+        (Guillaume Lelarge)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\d</command> show foreign-key constraints that reference
+        the selected table (Kenneth D'Souza)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\d</command> on a sequence show its column values
+        (Euler Taveira de Oliveira)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add column storage type and other relation options to the
+        <command>\d+</command> display (Gregory Stark, Euler Taveira de
+        Oliveira)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Show relation size in <command>\dt+</command> output (Dickson S.
+        Guedes)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Show the possible values of <literal>enum</literal> types in <command>\dT+</command>
+        (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <command>\dC</command> to accept a wildcard pattern, which matches
+        either datatype involved in the cast (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a function type column to <command>\df</command>'s output, and add
+        options to list only selected types of functions (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <command>\df</command> not hide functions that take or return
+        type <type>cstring</type> (Tom)
+       </para>
+
+       <para>
+        Previously, such functions were hidden because most of them are
+        datatype I/O functions, which were deemed uninteresting.  The new
+        policy about hiding system functions by default makes this wart
+        unnecessary.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><application>pg_dump</application></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add a <literal>--no-tablespaces</literal> option to
+        <application>pg_dump</application>/<application>pg_dumpall</application>/<application>pg_restore</application>
+        so that dumps can be restored to clusters that have non-matching
+        tablespace layouts (Gavin Roy)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove <option>-d</option> and <option>-D</option> options from
+        <application>pg_dump</application> and <application>pg_dumpall</application> (Tom)
+       </para>
+
+       <para>
+        These options were too frequently confused with the option to
+        select a database name in other <productname>PostgreSQL</productname>
+        client applications.  The functionality is still available,
+        but you must now spell out the long option name
+        <option>--inserts</option> or <option>--column-inserts</option>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove <option>-i</option>/<option>--ignore-version</option> option from
+        <application>pg_dump</application> and <application>pg_dumpall</application> (Tom)
+       </para>
+
+       <para>
+        Use of this option does not throw an error, but it has no
+        effect.  This option was removed because the version checks
+        are necessary for safety.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Disable <varname>statement_timeout</varname> during dump and restore
+        (Joshua Drake)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <application>pg_dump</application>/<application>pg_dumpall</application> option
+        <option>--lock-wait-timeout</option> (David Gould)
+       </para>
+
+       <para>
+        This allows dumps to fail if unable to acquire a shared lock
+        within the specified amount of time.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Reorder <application>pg_dump</application> <literal>--data-only</literal> output
+        to dump tables referenced by foreign keys before
+        the referencing tables (Tom)
+       </para>
+
+       <para>
+        This allows data loads when foreign keys are already present.
+        If circular references make a safe ordering impossible, a
+        <literal>NOTICE</literal> is issued.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>pg_dump</application>, <application>pg_dumpall</application>, and
+        <application>pg_restore</application> to use a specified role (Benedek
+        László)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow <application>pg_restore</application> to use multiple concurrent
+        connections to do the restore (Andrew)
+       </para>
+
+       <para>
+        The number of concurrent connections is controlled by the option
+        <literal>--jobs</literal>.  This is supported only for custom-format archives.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Programming Tools</title>
+
+    <sect4>
+     <title><application>libpq</application></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Allow the <type>OID</type> to be specified when importing a large
+        object, via new function <function>lo_import_with_oid()</function> (Tatsuo)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add <quote>events</quote> support (Andrew Chernow, Merlin Moncure)
+       </para>
+
+       <para>
+        This adds the ability to register callbacks to manage private
+        data associated with <structname>PGconn</structname> and <structname>PGresult</structname>
+        objects.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Improve error handling to allow the return of multiple
+        error messages as multi-line error reports (Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <function>PQexecParams()</function> and related functions return
+        <varname>PGRES_EMPTY_QUERY</varname> for an empty query (Tom)
+       </para>
+
+       <para>
+        They previously returned <varname>PGRES_COMMAND_OK</varname>.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Document how to avoid the overhead of <function>WSACleanup()</function>
+        on Windows (Andrew Chernow)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make Kerberos connections use the same method to determine the
+        username of the client as all other authentication methods (Magnus)
+       </para>
+
+       <para>
+        Previously a special Kerberos-only API was used.
+       </para>
+      </listitem>
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><application>libpq</application> <acronym>SSL</acronym> (Secure Sockets Layer)
+      support</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Fix certificate validation for <acronym>SSL</acronym> connections
+        (Magnus)
+       </para>
+
+       <para>
+        <application>libpq</application> now supports verifying both the certificate
+        and the name of the server when making <acronym>SSL</acronym>
+        connections. If a root certificate is not available to use for
+        verification, <acronym>SSL</acronym> connections will fail. The
+        <literal>sslmode</literal> parameter is used to enable certificate
+        verification and set the level of checking.
+        The default is still not to do any verification, allowing connections
+        to SSL-enabled servers without requiring a root certificate on the
+        client.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Support wildcard server certificates (Magnus)
+       </para>
+
+       <para>
+        If a certificate <acronym>CN</acronym> starts with <literal>*</literal>, it will
+        be treated as a wildcard when matching the hostname, allowing the
+        use of the same certificate for multiple servers.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Allow the file locations for client certificates to be specified
+        (Mark Woodward, Alvaro, Magnus)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add a <function>PQinitOpenSSL</function> function to allow greater control
+        over OpenSSL/libcrypto initialization (Andrew Chernow)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Make <application>libpq</application> unregister its <application>OpenSSL</application>
+        callbacks when no database connections remain open
+        (Bruce, Magnus, Russell Smith)
+       </para>
+
+       <para>
+        This is required for applications that unload the libpq library,
+        otherwise invalid <application>OpenSSL</application> callbacks will remain.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title><application>ecpg</application></title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add localization support for messages (Euler Taveira de
+        Oliveira)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        ecpg parser is now automatically generated from the server
+        parser (Michael)
+       </para>
+
+       <para>
+        Previously the ecpg parser was hand-maintained.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+    <sect4>
+     <title>Server Programming Interface (<acronym>SPI</acronym>)</title>
+     <itemizedlist>
+
+      <listitem>
+       <para>
+        Add support for single-use plans with out-of-line
+        parameters (Tom)
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Add new <varname>SPI_OK_REWRITTEN</varname> return code for
+        <function>SPI_execute()</function> (Heikki)
+       </para>
+
+       <para>
+        This is used when a command is rewritten to another type of
+        command.
+       </para>
+      </listitem>
+
+      <listitem>
+       <para>
+        Remove unnecessary inclusions from <filename>executor/spi.h</filename> (Tom)
+       </para>
+
+       <para>
+        SPI-using modules might need to add some <literal>#include</literal>
+        lines if they were depending on <filename>spi.h</filename> to include
+        things for them.
+       </para>
+      </listitem>
+
+     </itemizedlist>
+
+    </sect4>
+
+   </sect3>
+
+   <sect3>
+    <title>Build Options</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Update build system to use <productname>Autoconf</productname> 2.61 (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Require <productname>GNU bison</productname> for source code builds (Peter)
+      </para>
+
+      <para>
+       This has effectively been required for several years, but now there
+       is no infrastructure claiming to support other parser tools.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <application>pg_config</application> <literal>--htmldir</literal> option
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Pass <type>float4</type> by value inside the server (Zoltan
+       Boszormenyi)
+      </para>
+
+      <para>
+       Add <application>configure</application> option
+       <literal>--disable-float4-byval</literal> to use the old behavior.
+       External C functions that use old-style (version 0) call convention
+       and pass or return <type>float4</type> values will be broken by this
+       change, so you may need the <application>configure</application> option if you
+       have such functions and don't want to update them.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Pass <type>float8</type>, <type>int8</type>, and related datatypes
+       by value inside the server on 64-bit platforms (Zoltan Boszormenyi)
+      </para>
+
+      <para>
+       Add <application>configure</application> option
+       <literal>--disable-float8-byval</literal> to use the old behavior.
+       As above, this change might break old-style external C functions.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add configure options <literal>--with-segsize</literal>,
+       <literal>--with-blocksize</literal>, <literal>--with-wal-blocksize</literal>,
+       <literal>--with-wal-segsize</literal> (Zdenek Kotala, Tom)
+      </para>
+
+      <para>
+       This simplifies build-time control over several constants that
+       previously could only be changed by editing
+       <filename>pg_config_manual.h</filename>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow threaded builds on <productname>Solaris</productname> 2.5 (Bruce)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Use the system's <function>getopt_long()</function> on <productname>Solaris</productname>
+       (Zdenek Kotala, Tom)
+      </para>
+
+      <para>
+       This makes option processing more consistent with what Solaris users
+       expect.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for the <productname>Sun Studio</productname> compiler on
+       <productname>Linux</productname> (Julius Stroffek)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Append the major version number to the backend <application>gettext</application>
+       domain, and the <literal>soname</literal> major version number to
+       libraries' <application>gettext</application> domain (Peter)
+      </para>
+
+      <para>
+       This simplifies parallel installations of multiple versions.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for code coverage testing with <application>gcov</application>
+       (Michelle Caisse)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Allow out-of-tree builds on <productname>Mingw</productname> and
+       <productname>Cygwin</productname> (Richard Evans)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix the use of <productname>Mingw</productname> as a cross-compiling source
+       platform (Peter)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Source Code</title>
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Support 64-bit time zone data files (Heikki)
+      </para>
+
+      <para>
+       This adds support for daylight saving time (<acronym>DST</acronym>)
+       calculations beyond the year 2038.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Deprecate use of platform's <type>time_t</type> data type (Tom)
+      </para>
+
+      <para>
+       Some platforms have migrated to 64-bit <type>time_t</type>, some have
+       not, and Windows can't make up its mind what it's doing.  Define
+       <type>pg_time_t</type> to have the same meaning as <type>time_t</type>,
+       but always be 64 bits (unless the platform has no 64-bit integer type),
+       and use that type in all module APIs and on-disk data formats.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix bug in handling of the time zone database when cross-compiling
+       (Richard Evans)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Link backend object files in one step, rather than in stages
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve <application>gettext</application> support to allow better translation
+       of plurals (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add message translation support to the PL languages (Alvaro, Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add more <application>DTrace</application> probes (Robert Lor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Enable <application>DTrace</application> support on <application>Mac OS X
+       Leopard</application> and other non-Solaris platforms (Robert Lor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Simplify and standardize conversions between C strings and
+       <type>text</type> datums, by providing common functions for the purpose
+       (Brendan Jurd, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Clean up the <filename>include/catalog/</filename> header files so that
+       frontend programs can include them without including
+       <filename>postgres.h</filename>
+       (Zdenek Kotala)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <type>name</type> char-aligned, and suppress zero-padding of
+       <type>name</type> entries in indexes (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Recover better if dynamically-loaded code executes <function>exit()</function>
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a hook to let plug-ins monitor the executor (Itagaki
+       Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a hook to allow the planner's statistics lookup behavior to
+       be overridden (Simon Riggs)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>shmem_startup_hook()</function> for custom shared memory
+       requirements (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Replace the index access method <function>amgetmulti</function> entry point
+       with <function>amgetbitmap</function>, and extend the API for
+       <function>amgettuple</function> to support run-time determination of
+       operator lossiness (Heikki, Tom, Teodor)
+      </para>
+
+      <para>
+       The API for GIN and GiST opclass <function>consistent</function> functions
+       has been extended as well.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for partial-match searches in <acronym>GIN</acronym> indexes
+       (Teodor Sigaev, Oleg Bartunov)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Replace <structname>pg_class</structname> column <structfield>reltriggers</structfield>
+       with boolean <structfield>relhastriggers</structfield> (Simon)
+      </para>
+
+      <para>
+       Also remove unused <structname>pg_class</structname> columns
+       <structfield>relukeys</structfield>, <structfield>relfkeys</structfield>, and
+       <structfield>relrefs</structfield>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add a <structfield>relistemp</structfield> column to <structname>pg_class</structname>
+       to ease identification of temporary tables (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Move platform <acronym>FAQ</acronym>s into the main documentation
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Prevent parser input files from being built with any conflicts
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for the <literal>KOI8U</literal> (Ukrainian) encoding
+       (Peter)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add Japanese message translations (Japan PostgreSQL Users Group)
+      </para>
+
+      <para>
+       This used to be maintained as a separate project.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix problem when setting <varname>LC_MESSAGES</varname> on
+       <application>MSVC</application>-built systems (Hiroshi Inoue, Hiroshi
+       Saito, Magnus)
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+
+   <sect3>
+    <title>Contrib</title>
+
+    <itemizedlist>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/auto_explain</filename> to automatically run
+       <command>EXPLAIN</command> on queries exceeding a specified duration
+       (Itagaki Takahiro, Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/btree_gin</filename> to allow GIN indexes to
+       handle more datatypes (Oleg, Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/citext</filename> to provide a case-insensitive,
+       multibyte-aware text data type (David Wheeler)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <filename>contrib/pg_stat_statements</filename> for server-wide
+       tracking of statement execution statistics (Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add duration and query mode options to <filename>contrib/pgbench</filename>
+       (Itagaki Takahiro)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <filename>contrib/pgbench</filename> use table names
+       <structname>pgbench_accounts</structname>, <structname>pgbench_branches</structname>,
+       <structname>pgbench_history</structname>, and <structname>pgbench_tellers</structname>,
+       rather than just <structname>accounts</structname>, <structname>branches</structname>,
+       <structname>history</structname>, and <structname>tellers</structname> (Tom)
+      </para>
+
+      <para>
+       This is to reduce the risk of accidentally destroying real data
+       by running <application>pgbench</application>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Fix <filename>contrib/pgstattuple</filename> to handle tables and
+       indexes with over 2 billion pages (Tatsuhito Kasahara)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       In <filename>contrib/fuzzystrmatch</filename>, add a version of the
+       Levenshtein string-distance function that allows the user to
+       specify the costs of insertion, deletion, and substitution
+       (Volkan Yazici)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <filename>contrib/ltree</filename> support multibyte encodings
+       (laser)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Improve <filename>contrib/dblink</filename>'s reporting of errors from
+       the remote server (Joe Conway)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make sure <filename>contrib/dblink</filename> uses a password supplied
+       by the user, and not accidentally taken from the server's
+       <filename>.pgpass</filename> file (Joe Conway)
+      </para>
+
+      <para>
+       This is a minor security enhancement.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add <function>fsm_page_contents()</function>
+       to <filename>contrib/pageinspect</filename> (Heikki)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Modify <function>get_raw_page()</function> to support free space map
+       (<filename>*_fsm</filename>) files.  Also update
+       <filename>contrib/pg_freespacemap</filename>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Add support for multibyte encodings to <filename>contrib/pg_trgm</filename>
+       (Teodor)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Rewrite <filename>contrib/intagg</filename> to use new
+       functions <function>array_agg()</function> and <function>unnest()</function>
+       (Tom)
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Remove <filename>contrib/intarray</filename>'s definitions of the
+       <literal>&lt;@</literal> and <literal>@&gt;</literal> operators (Tom)
+      </para>
+
+      <para>
+       This avoids confusion with the equivalent built-in operators.
+       If needed, the <filename>contrib/intarray</filename> implementations
+       are still available under their historical names <literal>@</literal>
+       and <literal>~</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       Make <filename>contrib/pg_standby</filename> recover all available WAL before
+       failover (Fujii Masao, Simon, Heikki)
+      </para>
+
+      <para>
+       To make this work safely, you now need to set the new
+       <literal>recovery_end_command</literal> option in <filename>recovery.conf</filename>
+       to clean up the trigger file after failover. <application>pg_standby</application>
+       will no longer remove the trigger file itself.
+      </para>
+     </listitem>
+
+    </itemizedlist>
+
+   </sect3>
+  </sect2>
+ </sect1>

Added: traduc/trunk/postgresql/release-old.xml
===================================================================
--- traduc/trunk/postgresql/release-old.xml	                        (rev 0)
+++ traduc/trunk/postgresql/release-old.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -0,0 +1,7464 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<!-- Dernière modification
+     le       $Date: 2009-05-03 13:57:02 +0200 (dim. 03 mai 2009) $
+     par      $Author: gleu $
+     révision $Revision: 1317 $ -->
+
+ <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>
+       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
+       correctement (Tom)&nbsp;;
+      </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)&nbsp;;
+      </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</varname>, 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</varname>. 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</command> 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</command> gère les chaînes <command>UPDATE</command>
+      (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 vers la 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()</function> de <application>libpq</application>)
+     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
+     <foreignphrase>ad hoc</foreignphrase>.
+    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
+ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
+quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
+de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
+codage</para>
+<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
+et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
+<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
+<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
+</para></listitem>
+
+<listitem><para>Nettoyage des utilisations restantes et parasites de 
+<literal>\'</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</command> (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à</quote> 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</function> et <function>isinf</function> 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</command> 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</application> 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</command>
+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</application> ne
+changera pas de locale après</para>
+<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
+était lancé avec les variables d'environnement spécifiant une locale différente
+que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
+utilisation de <application>plperl</application> pouvait amener une corruption des index.
+Vous pourriez avoir besoin de lancer <command>REINDEX</command> 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</filename>,
+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</filename> 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</filename> (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</quote>.</para></listitem>
+
+<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
+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</command>
+       de supprimer les chaînes <literal>ctid</literal> trop tôt, et ajout de
+       vérification supplémentaire dans le code qui suit les liens
+       <literal>ctid</literal></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()</type> 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()</type> é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...</literal> avec un index GiST sur la
+       colonne <literal>a</literal></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</literal> 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 failles 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&nbsp;:
+
+<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</emphasis>
+     base de données d'une installation, ceci incluant <literal>template1</literal>
+     et devant idéalement inclure aussi <literal>template0</literal>. 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</literal> peut
+     être corrigé de la même façon que les autres bases de données alors que
+     <literal>template0</literal> 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</literal> 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</type></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
+sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
+type <type>TIME WITH TIME ZONE</type></para></listitem>
+<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
+négatives dans les valeurs <type>INTERVAL</type></para>
+<para>Cette erreur est seulement survenue quand l'option de configuration
+<literal>--enable-integer-datetimes</literal> 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>%</literal> (Neil)</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</filename> pour les nouvelles
+constructions d'OpenSSL (Marko Kreen)</para></listitem>
+<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
+</para></listitem>
+<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
+<type>RECORD</type></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</command> 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</command> 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</quote>, 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</application> 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</filename> 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 exemple 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 OID
+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 conversion
+<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 conversion 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</application> 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</application> 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</application> à fonctionner avec les serveurs
+pré-7.2 (Philip)</para></listitem>
+<listitem><para>Corrections de contrib/adddépend (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&nbsp;:
+
+    <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</literal>
+        soit <literal>RESTRICT</literal> 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</ulink> 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 identifieurs peuvent être d'une taille maximum de 63 octets. De
+        plus, <literal>OPAQUE</literal> est maintenant obsolète&nbsp;: il existe des
+        <quote>pseudo-types de données</quote> pour représenter chacune des
+        significations précédentes de <literal>OPAQUE</literal> dans l'argument et les
+        types de résultat de la fonction.
+       </para>
+      </listitem>
+     </varlistentry>
+
+    </variablelist>
+   </para>
+  </sect2>
+
+  <sect2>
+   <title>Migration vers la version 7.3</title>
+
+   <para>
+    Une sauvegarde/restauration utilisant <application>pg_dump</application> 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&nbsp;; pour plus d'informations, voir&nbsp;:
+    <ulink url="http://developer.postgresql.org/~momjian/upgrade_tips_7.3"></ulink>.
+   </para>
+
+   <para>
+    Observez les incompatibilités suivantes&nbsp;:
+
+    <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é&nbsp;; 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</literal>&nbsp;; 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/adddépend/</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>
+   </para>
+
+  </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 #,#&nbsp;; 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 nom_colonne 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/adddépend 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</application> 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 identifieurs
+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</application> 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</application>
+(Peter)</para></listitem>
+<listitem><para>Sauvegarde les colonnes serial comme SERIAL
+(Tom)</para></listitem>
+<listitem><para>Activation du support des gros fichiers, &gt;2&nbsp;Go pour
+<application>pg_dump</application> (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 nom_type
+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&nbsp;: 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 &gt;= 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 identifieurs 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 identifieurs 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 &gt;= 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 identifieurs 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</type></para>
+<para>Le code de comparaison était mauvais dans le cas où le commutateur de
+configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
+NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
+sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
+type <type>TIME WITH TIME ZONE</type></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>%</literal> (Neil)</para></listitem>
+<listitem><para>Empêche <function>to_char(interval)</function> d'arrêter brutalement le
+serveur (dump core) pour les formats relatifs au mois</para></listitem>
+<listitem><para>Correction de <filename>contrib/pgcrypto</filename> 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</command> 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</command> 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</quote>, 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</application> 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</filename> 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&nbsp;; 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</application> 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</application> 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</productname> pour une utilisation avec
+    des applications gèrant de gros volumes.
+   </para>
+
+   <para>
+    Modifications majeures dans cette version&nbsp;:
+
+    <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</command> 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</command>, 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>
+   </para>
+  </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&nbsp;:
+
+    <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</filename> et
+       <filename>pg_ident.conf</filename> sont maintenant rechargés après réception
+       d'un signal <systemitem>SIGHUP</systemitem>, pas avec chaque connexion.
+      </para>
+     </listitem>
+
+     <listitem>
+      <para>
+       La fonction <filename>octet_length()</filename> 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>
+
+   <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&nbsp;;
+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 &lt;&lt; et &lt;&lt;= 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 =,
+&lt;&gt;, &gt;, &gt;=, &lt; et &lt;=</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&nbsp;: 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&nbsp;: 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</application>, 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</application></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</application></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</application></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</application></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</application> (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&nbsp;:
+
+    <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&nbsp;Ko - 32&nbsp;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>
+   </para>
+
+   <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 nom_utilisateur/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 définitions 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 nom_utilisateur (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 dépendency 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 dépendency 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 exemples (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 identifieurs 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&oelig;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-&gt;timestamp et timespan-&gt;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 &amp; 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&nbsp;; 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&nbsp;:
+
+    <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</literal> actuellement. <literal>JOIN</literal>,
+        <literal>NATURAL JOIN</literal>, <literal>JOIN</literal>/<literal>USING</literal> et
+        <literal>JOIN</literal>/<literal>ON</literal> sont disponibles ainsi que les noms de
+        corrélation des colonnes.
+       </para>
+      </listitem>
+     </varlistentry>
+
+    </variablelist>
+   </para>
+
+   <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&nbsp;; 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&nbsp;:
+
+     <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>
+    </para>
+
+   </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) &gt; 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 &gt; 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-debug 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 &lt;unspecified&gt; 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 &lt;zakkr at zf.jcu.cz&gt;)
+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, &gt;= and &lt;= (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 &gt; lowbound AND x &lt; 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 &gt; 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 &lt;&gt; 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 -&gt; oidvector and int28 -&gt; 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</application> 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 &gt;yucao at falcon.kla-tencor.com&lt;
+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 dépendencies 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 quelquechose 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>/<systemitem>ix86</systemitem> and
+<systemitem class="osname">NetBSD</systemitem>/<systemitem>arm32</systemitem>.
+       </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</systemitem> and <systemitem
+class="osname">AIX</systemitem> 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&lt;-&gt;float8 and text&lt;-&gt;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 "dépendent"(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 nom_utilisateur/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>
+Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 6.3 or 6.3.1.  A 
+<literal>make distclean</literal>, <literal>make</literal>, and <literal>make install</literal> 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 dépendency 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>
+Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 6.3.  A 
+<literal>make distclean</literal>, <literal>make</literal>, and <literal>make install</literal> 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</type> 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 indépendent 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 &lt;= 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 exemples(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 &amp; 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 exemple 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</replaceable> 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 &amp; 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 &amp; 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 "&lt;===&gt;" with "&lt;-&gt;"(Thomas)
+Replace "above" operator "!^" with "&gt;^" and "below" operator "!|" with
+"&lt;^"(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 &amp; 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 exemple 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 &amp; 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 &amp; 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 &amp; 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 différences 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</quote> 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</quote> does not seem to produce random results on my test
+  machine (Linux/<application>gcc</application>/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 &lt; or &lt;= 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 définition
+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 OID
+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 &lt;&gt;(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 &amp; 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 OID(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 antislashed, 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</productname> 1.01 and 1.02 to
+<productname>Postgres95</productname> 1.02.1.
+</para>
+<para>
+If you are starting afresh with <productname>Postgres95</productname> 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</productname> 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</command>.  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' &lt;in_file &gt;out_file
+</programlisting>
+</para>
+<para>
+If you are loading an older binary copy or non-<systemitem>stdout</systemitem> 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</productname> 1.0 to <productname>Postgres95</productname>
+1.01.  
+</para>
+<para>
+If you are starting afresh with <productname>Postgres95</productname> 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</productname> version 1.01 with databases created with
+<productname>Postgres95</productname> version 1.0, the following steps are required:  
+</para>
+<procedure>
+<step>
+<para>
+Set the définition 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 an exemple 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 -&gt; int2
+                integer, int -&gt; int4
+                float, real  -&gt; 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.
+        For exemple:
+                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/trunk/postgresql/release.xml
===================================================================
--- traduc/trunk/postgresql/release.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/release.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -71,33445 +71,19 @@
    élément est vraiment un travail de la communauté.
   </para>
 
- <sect1 id="release-8-4">
-  <title>Release 8.4</title>
-
-  <note>
-   <title>Release date</title>
-   <simpara>2009-XX-XX, ITEMS CURRENT AS OF 2009-04-08</simpara>
-  </note>
-
-  <sect2>
-   <title>Overview</title>
-
-   <para>
-    After many years of development, <productname>PostgreSQL</productname> has
-    become feature-complete in many areas.   This release shows a
-    targeted approach to adding features (e.g. authentication,
-    monitoring, space reuse), and adds capabilities defined in the
-    later SQL standards;  the major areas of enhancement are:
-   </para>
-
-   <itemizedlist>
-
-    <!-- This list duplicates items below, but without authors or details-->
-
-    <listitem>
-     <para>
-      Windowing Functions
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Common Table Expressions and Recursive Joins
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Default and variadic parameters for functions
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Parallel Restore
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Column Permissions
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Per-database locale settings
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improved hash indexes
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improved join performance for EXISTS and NOT EXISTS queries
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Easier-to-use Warm Standby
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Automatic sizing of the Free Space Map
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Visibility Map (greatly reduces vacuum overhead for slowly-changing tables)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Version-aware psql (backslash commands work against older servers)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support SSL certificates for authentication
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Per-function runtime statistics
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Easy editing of functions in psql
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New contrib modules: pg_stat_statements, auto_explain, citext, btree_gin
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-   <para>
-    The above items are explained in more detail in the sections below.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Migration to Version 8.4</title>
-
-   <para>
-    A dump/restore using <application>pg_dump</application> is
-    required for those wishing to migrate data from any previous
-    release.
-   </para>
-
-   <para>
-    Observe the following incompatibilities:
-   </para>
-
-   <sect3>
-    <title>General</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Use 64-bit integer datetimes by default (Neil Conway)
-      </para>
-
-      <para>
-       This was available previously via a configure
-       --enable-integer-datetimes option.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <application>ipcclean</application> utility command (Bruce)
-      </para>
-
-      <para>
-       The utility only worked on a few platforms;  users should use
-       their operating system tools instead.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Server Settings</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Change <filename>postgresql.conf</filename> default for
-       <literal>log_min_messages</literal> to <literal>warning</literal> (previously
-       <literal>notice</literal>) to reduce log file volume (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Have <literal>debug_print_parse</literal>,
-       <literal>debug_print_rewritten</literal>,
-       and <literal>debug_print_plan</literal>
-       output appear at <literal>LOG</literal> message level, not
-       <literal>DEBUG1</literal> as formerly (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <literal>debug_pretty_print</literal> default to
-       <literal>on</literal> (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <varname>log_temp_files</varname> super-user set only, like other
-       logging options (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Disable appending of the epoch date/time when no <literal>%</literal>
-       escapes are present in <literal>log_filename</literal> (Robert Haas)
-      </para>
-
-      <para>
-       This change was made because some users wanted a fixed filename,
-       for use with an external log rotation tool.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <varname>explain_pretty_print</varname> parameter (no longer needed) (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <varname>log_restartpoints</varname> from
-<filename>recovery.conf</filename>;
-       instead use <varname>log_checkpoints</varname> (Simon Riggs)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove support for the (insecure) <literal>crypt</literal> authentication method
-       (Magnus)
-      </para>
-
-      <para>
-       This breaks compatibility with pre-<productname>PostgreSQL</productname> 7.2 versions.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <varname>krb_realm</varname> and
-       <varname>krb_server_hostname</varname>, now
-       <filename>pg_hba.conf</filename>-only settings (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The <link
-       linkend="release-8-4-pg-hba-conf"><filename>pg_hba.conf</filename></link>
-       section below also has extensive changes related to migration.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Queries</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Force child tables to inherit <literal>CHECK</literal> constraints from parents
-       (Alex Hunsaker, Nikhil Sontakke, Tom Lane)
-      </para>
-
-      <para>
-       Formerly it was possible to delete such a constraint from a child
-       table, allowing rows that violate the constraint to be visible
-       when scanning the parent table.  This was deemed inconsistent,
-       as well as contrary to SQL standard.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Change <command>TRUNCATE</command> and <command>LOCK</command> behavior to
-       apply to all child tables (Peter)
-      </para>
-
-      <para>
-       There is a new <literal>ONLY</literal> clause which disables this
-       behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Disallow negative <literal>LIMIT</literal> or <literal>OFFSET</literal>
-       values, rather than treating them as zero (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Disallow <command>LOCK TABLE</command> outside a transaction block
-       (Tom)
-      </para>
-
-      <para>
-       Such an operation is useless because the lock would be immediately
-       released.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-
-   <sect3>
-    <title>Functions and Operators</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Have <literal>NUMERIC 0 ^ 4.3</literal> return <literal>1</literal>, rather
-       than an error, and have <literal>0 ^ 0.0</literal> return
-       <literal>1</literal>,
-       rather than error (Bruce)
-      </para>
-
-      <para>
-       This was already the <type>float8</type> behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove code that prevented unary minus of floating-point values
-       from producing <literal>-0</literal> (Tom)
-      </para>
-
-      <para>
-       The changed behavior is more <acronym>IEEE</acronym>-standard
-       compliant.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Throw an error if an escape character is the last character in
-       a <literal>LIKE</literal> pattern (there is nothing to escape) (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <literal>~=~</literal> and <literal>~&lt;&gt;~</literal> operators
-       formerly used for <literal>LIKE</literal> index comparisons (Tom)
-      </para>
-
-      <para>
-       Pattern indexes now use the regular equality operator.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <function>xpath()</function> now passes its arguments to
-       <application>libxml</application>
-       without any changes (Andrew)
-      </para>
-
-      <para>
-       This means that the XML argument must be a well-formed XML document.
-       The previous coding attempted to allow XML fragments, but it did not
-       work well.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <function>xmlelement()</function> format attribute values just like
-       content values (Peter)
-      </para>
-
-      <para>
-       Previously, attribute values were formatted according to the
-       normal SQL output behavior, which is sometimes at odds with
-       XML rules.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title>Temporal Functions and Operators</title>
-
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Have <function>to_char()</function>'s localized month/day names depend
-        on <varname>LC_TIME</varname>, not <varname>LC_MESSAGES</varname> (Euler
-        Taveira de Oliveira)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Cause <function>to_date()</function> and
-        <function>to_timestamp()</function>
-        to more consistently report errors on invalid input (Brendan
-        Jurd)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Provide consistent rounding for fractional seconds (Ron Mayer)
-        bjm:  combine with another item?
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix <function>to_timestamp()</function> to not require upper/lower case
-        matching for meridian (<literal>AM</literal>/<literal>PM</literal>) and era
-        (<literal>BC</literal>/<literal>AD</literal>) format designations  (Brendan
-        Jurd)
-       </para>
-
-       <para>
-        For example, input value <literal>ad</literal> now matches the format
-        string <literal>AD</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Require the existence of periods in <function>to_timestamp()</function>
-        meridian (<literal>AM</literal>/<literal>PM</literal>) and era
-        (<literal>BC</literal>/<literal>AD</literal>) format designations to match
-        (Brendan Jurd)
-       </para>
-
-       <para>
-        For example, input value <literal>AD</literal> now does not match
-        format string <literal>A.D.</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <varname>DateStyle</varname> no longer controls <type>INTERVAL</type>
-        output (use new variable <varname>IntervalStyle</varname>)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-  </sect2>
-
-  <sect2>
-   <title>Changes</title>
-
-   <para>
-    Below you will find a detailed account of the changes between
-    <productname>PostgreSQL</productname> 8.4 and the previous major
-    release.
-   </para>
-
-   <sect3>
-    <title>Performance</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Improve optimizer statistics calculations (Tom, Jan Urbanski)
-      </para>
-
-      <para>
-       This includes improved statistics for full text columns.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <command>SELECT DISTINCT</command> and
-       <literal>UNION</literal>/<literal>INTERSECT</literal>/<literal>EXCEPT</literal> to
-       use hashing (Tom)
-      </para>
-
-      <para>
-       This means that these types of queries no longer automatically
-       produce sorted output.  The recommended response is to add an
-       <literal>ORDER BY</literal> clause if needed.  As a short-term workaround,
-       the previous behavior can be restored by
-       disabling <literal>enable_hashagg</literal>, but that is a very
-       performance-expensive fix. <literal>SELECT DISTINCT ON</literal> never
-       uses hashing.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       New semi- and anti-joins (Tom)
-      </para>
-
-      <para>
-       While semi-joins merely replace existing <literal>IN</literal> joins,
-       anti-joins are a new capability for <literal>NOT EXISTS</literal>
-       clauses.  This improves optimization possibilities.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve <literal>IN</literal>/<literal>ANY</literal>/<literal>EXISTS</literal>
-       processing (Tom)
-      </para>
-
-      <para>
-       <literal>IN</literal> and <literal>EXISTS</literal> now provide similar
-       performance for equivalent clauses.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve the performance of <function>text_position()</function> and
-       related functions by using Boyer-Moore-Horspool searching (David
-       Rowley)
-      </para>
-
-      <para>
-       This is particularly useful for long search patterns.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve handling of subqueries by the optimizer (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Reduce I/O frequency of writing the  backend statistics file
-       by writing the file only when requested (Martin Pihlak)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve performance for bulk inserts (Robert Haas, Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Increase the default value of
-       <varname>default_statistics_target</varname>
-       from <literal>10</literal> to <literal>100</literal> (Greg Sabino Mullane,
-       Tom)
-      </para>
-
-      <para>
-       The maximum value was also increased from <literal>1000</literal> to
-       <literal>10000</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Modify <varname>constraint_exclusion</varname> to check for partitioned
-       tables by default when inheritance or <literal>UNION ALL</literal> is
-       used (Tom)
-      </para>
-
-      <para>
-       A new <varname>constraint_exclusion</varname> setting,
-       <literal>partition</literal>, was added to match this behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow I/O read-ahead for bitmap index scans (Greg Stark)
-      </para>
-
-      <para>
-       The amount of read-ahead is controlled by
-       <varname>effective_io_concurrency</varname>.  This requires
-       <function>posix_fadvise()</function> support in the kernel.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Inline simple set-returning <acronym>SQL</acronym> functions in
-       <literal>FROM</literal> clauses (Richard Rowell)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve performance of multi-batch hash joins by providing a special
-       case for join key values that are especially common in the outer
-       relation (Bryce Cutt, Ramon Lawrence)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Reduce volume of temporary data in multi-batch hash joins
-       by suppressing <quote>physical tlist</quote> optimization (Michael
-       Henderson, Ramon Lawrence)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Avoid waiting for idle-in-transaction sessions during
-       <command>CREATE INDEX CONCURRENTLY</command> (Simon)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Server</title>
-
-    <sect4>
-     <title>Settings</title>
-
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Convert many <filename>postgresql.conf</filename> settings to enumerated
-        values so <literal>pg_settings</literal> can easily display valid
-        values (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <varname>cursor_tuple_fraction</varname> parameter to control the
-        fraction of a cursor's rows expected to be requested by the
-        user (Robert Hell)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow underscores in <filename>postgresql.conf</filename> custom variable
-        classes (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Authentication</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Report appropriate error message for combination of
-        <literal>MD5</literal>
-        authentication and <varname>db_user_namespace</varname> enabled (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support regular expressions in <filename>pg_ident.conf</filename>
-        (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <productname>Kerberos</productname>/<acronym>GSSAPI</acronym> parameters
-        to be changed without restarting the postmaster (Magnus)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4 id="release-8-4-pg-hba-conf">
-     <title><filename>pg_hba.conf</filename></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Parse <filename>pg_hba.conf</filename> in the postmaster so errors are
-        reported on reload (Magnus)
-       </para>
-
-       <para>
-        Previously errors in the file wouldn't be detected until clients
-        tried to connect, which could leave the system with a broken
-        file loaded.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove the <literal>sameuser</literal> option, making it the default
-        if no usermap is specified (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Change all authentication options to be <literal>name=value</literal>
-        settings (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow usermap parameter for all external authentication methods
-        (Magnus)
-       </para>
-
-       <para>
-        Previously this was only supported for <literal>ident</literal>
-        authentication.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>ident</literal> authentication over Unix-domain sockets
-        on <productname>Solaris</productname> (Garick Hamlin)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>clientcert</literal> option to control requesting of a
-        client certificate (Magnus)
-       </para>
-
-       <para>
-        Previously this was controlled by the presence of a root
-        certificate file in the server's data directory.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>cert</literal> authentication method to allow user
-        authentication via <acronym>SSL</acronym> certificates (Magnus)
-       </para>
-
-       <para>
-        Previously <acronym>SSL</acronym> certificates could only verify that
-        the client had access to a certificate, not authenticate a
-        user.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>krb5</literal>, <literal>gssapi</literal> and
-        <literal>sspi</literal>
-        realm and <literal>krb5</literal> host settings to be specified in
-        <filename>pg_hba.conf</filename> (Magnus)
-       </para>
-
-       <para>
-        These override the settings in <filename>postgresql.conf</filename>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>krb5</literal>, <literal>gssapi</literal>, and
-        <literal>sspi</literal>
-        <varname>include_realm</varname> parameter (Magnus)
-       </para>
-
-       <para>
-        This allows identical usernames from different realms to be
-        authenticated as different database users using usermaps.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Show all parsing errors instead of aborting after the first
-        one (Selena Deckelmann)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Continuous Archiving</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Provide an option to <function>pg_start_backup()</function> to force its
-        implied checkpoint to finish as quickly as possible (Tom)
-       </para>
-
-       <para>
-        The default behavior avoids excess I/O consumption, but that is
-        pointless if no concurrent query activity is going on.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <function>pg_stop_backup()</function> wait for modified
-        <acronym>WAL</acronym> files to be archived (Simon)
-       </para>
-
-       <para>
-        This guarantees that the backup is valid at the time
-        <function>pg_stop_backup()</function> completes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Prevent normal shutdown if a continuous archiving base backup
-        is in progress (Laurenz Albe)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Cancel a continuous archiving base backup if a fast shutdown
-        is requested (Laurenz Albe)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <filename>recovery.conf</filename> boolean variables to take the
-        same range of string values as <filename>postgresql.conf</filename>
-        (Bruce)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Monitoring</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <function>pg_conf_load_time()</function> to report when
-        the Postgres configuration files were last loaded (George
-        Gensure)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_terminate_backend()</function> to safely terminate a
-        backend (the <literal>SIGTERM</literal> signal works also) (Tom, Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add ability to track user-defined functions call counts and
-        runtimes via parameter <varname>track_functions</varname> (Martin
-        Pihlak)
-       </para>
-
-       <para>
-        Function statistics appear in a new system table,
-        <literal>pg_stat_user_functions</literal>.  However, inlined
-        <acronym>SQL</acronym> functions are not tracked.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow specification of the maximum <literal>pg_stat_activity</literal>
-        query string size via <varname>track_activity_query_size</varname>
-        parameter (Thomas Lee)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve syslog performance by increasing the maximum line length
-        (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add read-only <filename>postgresql.conf</filename> variables
-        <varname>segment_size</varname>, <varname>wal_block_size</varname>, and
-        <varname>wal_segment_size</varname> (Bernd Helmle)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        When reporting a deadlock, report all session queries involved
-        in the deadlock to the server log  (Itagaki Takahiro)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New <function>pg_stat_get_activity(pid)</function> function to return
-        information about a specific process id (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Move the server statistics file into the subdirectory
-        <filename>pg_stat_tmp</filename> and allow its location to be specified
-        via <varname>stats_temp_directory</varname> (Magnus)
-       </para>
-
-       <para>
-        This allows the statistics file to be placed in a
-        <acronym>RAM</acronym>-resident directory to reduce I/O requirements.
-        On startup/shutdown, the file is copied to the top-level
-        <literal>$PGDATA</literal> directory so it is preserved between
-        restarts.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Queries</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add support for <literal>WINDOW</literal> functions (Hitoshi Harada)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>WITH</literal> clauses support, including <literal>WITH
-       RECURSIVE</literal> (Yoshiyuki Asaba, Tatsuo Ishii, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       New <command>TABLE</command> command (Peter)
-      </para>
-
-      <para>
-       <command>TABLE tablename</command> is a short-hand for <command>SELECT
-       * FROM tablename</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>AS</literal> to be optional when specifying a
-       <command>SELECT</command> (or <literal>RETURNING</literal>) column output
-       label (assuming the label is not an <acronym>SQL</acronym> keyword)
-       (Hiroshi Saito)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support set-returning functions in the output of aggregation
-       and grouping queries (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <command>SELECT FOR UPDATE</command>/<literal>SHARE</literal> to work
-       on inheritance trees (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add infrastructure for <acronym>SQL/MED</acronym> (Martin Pihlak,
-       Peter)
-      </para>
-
-      <para>
-       There are no remote or external <acronym>SQL/MED</acronym> capabilities
-       yet, but this change provides a standardized and future-proof
-       system for managing connection information for modules like
-       dblink and plproxy.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Invalidate cached plans when referenced schemas, functions, operators,
-       or operator classes are modified (Martin Pihlak, Tom)
-      </para>
-
-      <para>
-       This improves the system's ability to respond to on-the-fly
-       DDL changes.
-      </para>
-     </listitem>
-     <listitem>
-      <para>
-       Allow comparison of composite types and allow arrays of
-       anonymous composite types (Tom)
-      </para>
-
-      <para>
-       Specifically this allows <literal>array[row(1,2), row(3,4)]</literal>
-       and <literal>row(1,1.1) = any (array[row(7,7.7), row(1,1.0)])</literal>.
-       This is particularly useful for recursive queries.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add support for Unicode string and identifier specifications
-       using code points, e.g. <literal>U&amp;'d\0061t\+000061'</literal>
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve the parser's ability to report error locations (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title><command>TRUNCATE</command></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Support statement-level <literal>ON TRUNCATE</literal> triggers (Simon)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>TRUNCATE TABLE</command> ...
-        <literal>RESTART</literal>/<literal>CONTINUE IDENTITY</literal> clauses
-        (Zoltan Boszormenyi)
-       </para>
-
-       <para>
-        The start value of a sequence can be changed by <command>ALTER
-        SEQUENCE START WITH</command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <command>TRUNCATE tab1, tab1</command> to succeed (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a separate <command>TRUNCATE</command> permission (Robert Haas)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><command>EXPLAIN</command></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Have <command>EXPLAIN VERBOSE</command> show the output columns of a
-        query (Tom)
-       </para>
-
-       <para>
-        Previously <command>EXPLAIN VERBOSE</command> output an internal
-        representation of the query plan.  (That behavior is now
-        available via <varname>debug_print_plan</varname>.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>EXPLAIN</command> identify subplans and initplans with
-        individual labels (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <command>EXPLAIN</command> honor
-<varname>debug_print_plan</varname> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <command>EXPLAIN</command> on <command>CREATE TABLE AS</command> (Peter)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><literal>LIMIT</literal>/<literal>OFFSET</literal></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow <literal>LIMIT</literal> and <literal>OFFSET</literal> to use subselects
-        as arguments (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Document that <literal>LIMIT NULL</literal> and <literal>OFFSET
-        NULL</literal>
-        have no effect (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <acronym>SQL</acronym>-standard syntax for
-        <literal>LIMIT</literal>/<literal>OFFSET</literal> capabilities (Peter)
-       </para>
-
-       <para>
-        To wit,
-        <literal>OFFSET num {ROW|ROWS} FETCH {FIRST|NEXT} [num] {ROW|ROWS}
-        ONLY</literal>.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Object Manipulation</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add support for column-level privileges (Stephen Frost, KaiGai
-       Kohei)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve reporting of dependencies during <command>DROP</command>
-       commands (Alex Hunsaker)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Refactor multi-object <command>DROP</command> operations so conflicting
-       dependencies do not generate an error (Alex Hunsaker)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>WITH [NO] DATA</literal> clause to <command>CREATE TABLE
-       AS</command>, per the <acronym>SQL</acronym> standard (Tom, Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add support for user-defined I/O conversion casts (Heikki)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <command>CREATE AGGREGATE</command> to use an
-       <type>internal</type>
-       transition datatype (for super-users only)  (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>LIKE</literal> clause to <command>CREATE TYPE</command> (Tom)
-      </para>
-
-      <para>
-       This simplifies creation of data types that use the same internal
-       representation as an existing type.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <command>CREATE OR REPLACE VIEW</command> to add columns to the
-       <emphasis>end</emphasis> of a view (Robert Haas)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title><command>ALTER</command></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <command>ALTER TYPE RENAME</command> (Petr Jelinek)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>ALTER SEQUENCE ... RESTART</command> (no parameter) to
-        reset a sequence to its initial value (Zoltan Boszormenyi)
-        bjm: compatibility problem?
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modify the <command>ALTER TABLE</command> syntax to allow all reasonable
-        combinations for tables, indexes, sequences, and views (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New syntax supported (these formerly required <command>ALTER
-        TABLE</command>)
-       </para>
-
-       <para>
-        <itemizedlist>
-         <listitem>
-          <para>
-           <command>ALTER SEQUENCE OWNER TO</command>
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           <command>ALTER VIEW ALTER COLUMN SET/DROP DEFAULT</command>
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           <command>ALTER VIEW OWNER TO</command>
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           <command>ALTER VIEW SET SCHEMA</command>
-          </para>
-         </listitem>
-        </itemizedlist>
-       </para>
-
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for the syntax <command>ALTER TABLE ... ALTER COLUMN
-        ... SET DATA TYPE</command> (Peter)
-       </para>
-
-       <para>
-        This is <acronym>SQL</acronym>-standard syntax for functionality that
-        was already supported.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <command>ALTER TABLE SET WITHOUT OIDS</command> rewrite the table
-        to remove <type>OID</type> values (Tom)
-       </para>
-
-       <para>
-        Also, add <command>ALTER TABLE SET WITH OIDS</command> to rewrite the
-        table to add <type>OID</type>s.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Database Manipulation</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Improve reporting of
-        <command>CREATE</command>/<command>DROP</command>/<command>RENAME
-        DATABASE</command>
-        failure when uncommitted prepared transactions are the cause
-        (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <varname>LC_COLLATE</varname> and <varname>LC_CTYPE</varname> database-level
-        settings (Radek Strnad, Heikki)
-       </para>
-
-       <para>
-        This makes collation similar to encoding, which was always
-        configurable per database.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve checks that the database encoding, collation
-        (<varname>LC_COLLATE</varname>), and character classes
-        (<varname>LC_CTYPE</varname>) match (Heikki)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>ALTER DATABASE SET TABLESPACE</command> to move a database
-        to a new tablespace (Guillaume Lelarge, Bernd Helmle)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Utility Operations</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add verbose option to the <command>CLUSTER</command> command and
-       <application>clusterdb</application> (Jim Cox)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Decrease memory requirements for recording pending trigger
-       events (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title>Indexes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Dramatically improve the speed of building and accessing hash
-        indexes (Tom Raney, Shreya Bhargava, Kenneth Marshall)
-       </para>
-
-       <para>
-        This allows hash indexes to be sometimes faster than btree
-        indexes.  However, hash indexes are still not crash-safe.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have hash indexes store only the hashed value, not the full
-        indexed columns (Xiao Meng)
-       </para>
-
-       <para>
-        This greatly reduces the size of hash indexes for long indexed
-        values, and improves performance.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Implement fast update for GIN indexes (Teodor, Oleg)
-       </para>
-
-       <para>
-        This option greatly improves update speed at a small penalty in search
-        speed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <literal>xxx_pattern_ops</literal> indexes can now be used for simple
-        equality comparisons, not only <literal>LIKE</literal> (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Full Text Indexes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Remove the requirement to use <literal>@@@</literal> when doing
-        <acronym>GIN</acronym> weighted lookups on full text indexes (Tom)
-       </para>
-
-       <para>
-        The normal <literal>@@</literal> text search operator can be used
-        instead.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add an optimizer selectivity function for <literal>@@</literal> text
-        search operations (Jan Urbanski)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add partial match support for <acronym>GIN</acronym> indexes (Teodor
-        Sigaev, Oleg Bartunov)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow prefix matching in full text searches (Teodor Sigaev,
-        Oleg Bartunov)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve support for Nepali language and Devanagari alphabet (Teodor)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support multi-column <acronym>GIN</acronym> indexes (Teodor Sigaev)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><command>VACUUM</command></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow relation forks to track free space (Heikki)
-       </para>
-
-       <para>
-        This allows the recording of all free space discovered by vacuum
-        in <filename>*.fsm</filename> files, rather than having to limit
-        recording to a fixed-sized shared memory area;
-        <varname>max_fsm_pages</varname> and <varname>max_fsm_relations</varname>
-        settings have been removed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New visibility map file to track pages that do not require
-        vacuum (Heikki)
-       </para>
-
-       <para>
-        This allows <command>VACUUM</command> to avoid sequentially scanning
-        a table when only a portion of the table needs vacuuming.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Track explicit transaction snapshots (Alvaro)
-       </para>
-
-       <para>
-        This improves space reuse by vacuum in the presence of long-running
-        transactions.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <varname>vacuum_freeze_table_age</varname> parameter to control
-        when <command>VACUUM</command> should ignore the visibility map and
-        do a full table scan to set frozen xids (Heikki)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add ability to specify autovacuum and <acronym>TOAST</acronym> parameters
-        in <command>CREATE TABLE</command> (Alvaro, Euler Taveira de Oliveira)
-       </para>
-
-       <para>
-        Autovacuum options used to be stored in a system table.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>--freeze</literal> option to <application>vacuumdb</application>
-        (Bruce)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Data Types</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add a <literal>CaseSensitive</literal> option for text search synonym
-       dictionaries (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve the precision of <type>NUMERIC</type> division (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <type>int2</type> with <type>int8</type> basic arithmetic operators
-       (Tom)
-      </para>
-
-      <para>
-       This simplifies casting requirements.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <type>UUID</type> input to accept optional hyphens after
-       every four digits (Robert Haas)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Accept <literal>on</literal>/<literal>off</literal> as boolean data type
-       values (Itagaki Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow spaces around <literal>NaN</literal> in the input string for
-       type <type>numeric</type> (Sam Mason)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title>Temporal Data Types</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Reject year <literal>0 BC</literal> and years <literal>000</literal> and
-        <literal>0000</literal> (Tom)
-       </para>
-
-       <para>
-        Previously these were interpreted as <literal>1 BC</literal>;  years
-        <literal>0</literal> and <literal>00</literal> are assumed to be the year
-        2000.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Include <acronym>SGT</acronym> (Singapore time) as a valid time zone
-        abbreviation (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support the <acronym>IS0 8601</acronym> <type>interval</type> syntax (Tom,
-        Kevin Grittner)
-       </para>
-
-       <para>
-        For example, <literal>INTERVAL 'P1Y2M3DT4H5M6.7S'</literal> is now
-        supported.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <type>INTERVAL</type> precision to be specified after the
-        last field, for <acronym>SQL</acronym>-standards compliance (Tom)
-       </para>
-
-       <para>
-        Formerly the precision had to be specified after the keyword
-        <type>INTERVAL</type> (this syntax is still supported).  Data type
-        definitions will now be output using the new format.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support <literal>infinite</literal> dates (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <varname>IntervalStyle</varname> parameter
-        which controls how <type>INTERVAL</type> values are output (Ron Mayer)
-       </para>
-
-       <para>
-        Valid value are:  <literal>postgres</literal>,
-        <literal>postgres_verbose</literal>,
-        <literal>sql_standard</literal>, <literal>iso_8601</literal>.  This also
-        controls the handling of negative <type>INTERVAL</type> input when only
-        some fields have positive/negative designations.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <type>INTERVAL</type> seconds rounding more consistent across
-        output formats (Ron Mayer)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Arrays</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Have cast on <type>ARRAY</type> apply to all elements, not just
-        the array result (Brendan Jurd)
-       </para>
-
-       <para>
-        This allows <literal>NULL</literal> <type>ARRAY</type> entries as long as
-        they are properly cast.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <acronym>SQL</acronym>-syntax <type>ARRAY</type> dimensions optional
-        to match the <acronym>SQL</acronym> standard (Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>array_ndims()</function> to return the number
-        of dimensions of an array (Robert Haas)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>array_length()</function> to return the length
-        of an array for the specified dimensions (Jim Nasby, Robert
-        Haas, Peter Eisentraut)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new aggregate function <function>array_agg()</function>, which
-        returns all aggregated values as a single array (Robert Haas,
-        Jeff Davis, Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>unnest()</function>, which converts an array to
-        individual row values (Tom)
-       </para>
-
-       <para>
-        This is the opposite of <function>array_agg()</function>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>array_fill()</function> to create arrays initialized with
-        a value (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>generate_subscripts()</function> to generate array
-        subscripts (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Generate proper error if a <type>SERIAL</type> array is specified
-        (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Wide-Value Storage (<acronym>TOAST</acronym>)</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Consider <acronym>TOAST</acronym> compression on values as short as
-        32 bytes (previously 256 bytes) (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Require 25% of space savings before using <acronym>TOAST</acronym>
-        compression (previously 20%) (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Be more aggressive in storing <literal>EXTERNAL</literal> and
-        <literal>EXTENDED</literal> column values in <acronym>TOAST</acronym>(Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Functions</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Document that <function>setseed()</function> allows values from
-       <literal>-1</literal> to <literal>1</literal> (not just
-       <literal>0</literal> to
-       <literal>1</literal>), and enforce the valid range (Kris Jurka)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add server side function <function>lo_import(filename, oid)</function>
-       (Tatsuo)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>quote_nullable()</function>, which behaves like
-       <function>quote_literal()</function> but returns <literal>NULL</literal> for
-       a null argument (Brendan Jurd)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve full text search <function>headline()</function> generation to
-       allow several fragments (Sushant Sinha)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>suppress_redundant_updates_trigger()</function> trigger
-       function to avoid non-data-changing updates (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>div(NUMERIC, NUMERIC)</function> for <type>NUMERIC</type>
-       division, without rounding (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <type>TIMESTAMP</type> and <type>TIMESTAMPTZ</type> versions of
-       <function>generate_series()</function> (Hitoshi Harada)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title>Object Information Functions</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Implement <function>current_query()</function> for use by functions
-        that need to know the currently running query (Tomas Doran)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_get_keywords()</function> to return predefined
-        parser keywords (Dave Page)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_get_functiondef()</function> to see a functions
-        definition (Abhijit Menon-Sen)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modify <function>pg_relation_size()</function> to handle free space
-        map (<filename>*.fsm</filename>) files (Heikki)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modify <function>pg_relation_size()</function> to use
-        <literal>regclass</literal>
-        (Heikki)
-       </para>
-
-       <para>
-        <function>pg_relation_size(data_type_name)</function> no longer works.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>boot_val</literal> and <literal>reset_val</literal> columns to
-        <literal>pg_settings</literal> output (Greg Smith)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <varname>CURRENT_CATALOG</varname>,
-        <varname>CURRENT_SCHEMA</varname>, <varname>SET CATALOG</varname>, <varname>SET
-        SCHEMA</varname> (Peter)
-       </para>
-
-       <para>
-        These are <acronym>SQL</acronym>-standard capabilities.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_typeof()</function> which returns the data type
-        of any value (Brendan Jurd)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <function>version()</function> return information about whether
-        the server is a 32 or 64-bit binary (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix the behavior of information schema columns
-        <literal>is_insertable_into</literal> and
-        <literal>is_updatable</literal> to
-        be consistent (Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Convert remaining builtin set-returning functions to use
-        <literal>OUT</literal> parameters (Jaime Casanova)
-       </para>
-
-       <para>
-        This makes it possible to call these functions without specifying
-        a column list:  <function>pg_show_all_settings()</function>,
-        <function>pg_lock_status()</function>,
-        <function>pg_prepared_xact()</function>,
-        <function>pg_prepared_statement()</function>,
-        <function>pg_cursor()</function>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <function>pg_*_is_visible()</function> and
-        <function>has_*_privilege()</function> functions return
-        <literal>NULL</literal>
-        for invalid oids, rather than generate an error (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>has_column_privilege()</function> and
-        <function>has_any_column_privilege()</function> functions (Stephen
-        Frost, Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Function Creation</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Support variadic functions (functions with a variable number
-        of arguments) (Pavel Stehule)
-       </para>
-
-       <para>
-        Only trailing arguments can be optional, and they all must be
-        of the same data type.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>DEFAULT</literal> values for function arguments (Pavel
-        Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>CREATE FUNCTION ... RETURNS TABLE</command> clause (Pavel
-        Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <acronym>SQL</acronym>-language functions to return the output
-        of an
-        <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
-        <literal>RETURNING</literal> clause (Tom)
-       </para>
-
-       <para>
-        Formerly only <command>SELECT</command> was supported.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>PL/PgSQL Server-Side Language</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Support <literal>EXECUTE USING</literal> (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow looping over an open cursor using a <literal>FOR</literal>
-        loop (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support <literal>RETURN QUERY EXECUTE</literal> (Pavel
-        Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve the <literal>RAISE</literal> command: (Pavel Stehule)
-
-        <itemizedlist>
-         <listitem>
-          <para>
-           Support <literal>DETAIL</literal> and <literal>HINT</literal> fields
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           Support <literal>SQLSTATE</literal> error codes
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           Support an exception name parameter
-          </para>
-         </listitem>
-         <listitem>
-          <para>
-           Allow <literal>RAISE</literal> without parameters in an exception
-           block to rethrow the current error
-          </para>
-         </listitem>
-        </itemizedlist>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow specification of <varname>SQLSTATE</varname> numeric codes
-        in <literal>EXCEPTION</literal> lists (Pavel Stehule)
-       </para>
-
-       <para>
-        This is useful for handling custom <varname>SQLSTATE</varname> codes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support the <literal>CASE</literal> statement (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>FOUND</literal> and <command>GET DIAGNOSTICS</command> support
-        for the <literal>RETURN QUERY</literal> statement (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>FETCH</command> and <command>MOVE</command> set the
-        <command>GET DIAGNOSTICS</command> <literal>ROW_COUNT</literal> variable
-        (Andrew Gierth)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add message translation support (Alvaro)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Avoid memory leakage when the same function is called at varying
-        exception-block nesting depths (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Client Applications</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Fix <literal>pg_ctl restart</literal> to preserve command-line arguments
-       (Bruce)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>-w</literal>/<literal>--no-password</literal> option that
-       suppresses password prompts to all utilities that have a
-       <literal>-W</literal>/<literal>--password</literal> option (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <literal>-q</literal> (quiet) option for create* and drop*
-       utility commands (Peter)
-      </para>
-
-      <para>
-       These options have had no effect since
-       <productname>PostgreSQL</productname>
-       8.3.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    <sect4>
-     <title><link linkend="app-psql"><application>psql</application></link></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Remove startup banner;  now just suggest <literal>help</literal>
-        (Joshua Drake)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <literal>help</literal> show common backslash commands (Greg
-        Sabino Mullane)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>\pset format wrapped</literal> mode to wrap output to the
-        screen width, or file/pipe output too if <literal>\pset
-        columns</literal>
-        is set (Bryce Nesbitt)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Use the pager for wide output (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Require a space between a backslash command and the first
-        argument (Bernd Helmle)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Display access control rights on multiple lines (Brendan
-        Jurd, Andreas Scherbaum)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve tab completion support for schema qualified and
-        quoted identifiers (Greg Sabino Mullane)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the normal range of boolean values in <command>\pset</command>,
-        rather than just <literal>on</literal> and <literal>off</literal> (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add optional <literal>on</literal>/<literal>off</literal> arguments for
-        <command>\timing</command> (David Fetter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <command>\l</command> show access privileges (Andrew Gilligan)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <command>\l+</command> show database sizes, if permissions
-        allow (Andrew Gilligan)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add the <command>\ef</command> command to edit function definitions
-        (Abhijit Menon-Sen)
-       </para>
-
-       <para>
-        <command>\ef</command> without a function name creates an empty
-        function template for editing.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="app-psql"><application>psql</application></link> \d*</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Have <command>\d</command> show cases where this table is referenced
-        as a foreign-key constraint (Kenneth D'Souza)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <command>\d</command> show the value of sequence columns
-        (Euler Taveira de Oliveira)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add column storage type and other relation options to the
-        <command>\d+</command> display (Gregory Stark, Euler Taveira de
-        Oliveira)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Show relation size in <command>\d+</command> output (Dickson S.
-        Guedes)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>\d*</command> commands that do not have a pattern argument
-        show system objects only if the <literal>S</literal> modifier is specified
-        (Greg Sabino Mullane, Bruce)
-       </para>
-
-       <para>
-        The former behavior was inconsistent across different variants
-        of <command>\d</command>, and provided no easy way to see just user objects.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>\d</command> and <command>\dt</command> consistent in
-        their display of system tables (Bruce)
-       </para>
-
-       <para>
-        Previously, <literal>\d pg_class</literal> would show
-        <literal>pg_class</literal>
-        while <literal>\dt pg_class</literal> would not.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Show enumerated values in <command>\dT+</command> (David Fetter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <command>\dC</command> to accept wildcard patterns (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <command>\d*</command> commands to work with versions of
-        <productname>PostgreSQL</productname> back to 7.4 (Guillaume Lelarge)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>\df</command> not hide functions that take or return
-        type <type>cstring</type> (Tom)
-       </para>
-
-       <para>
-        Previously, such functions were hidden because most of them are
-        datatype I/O functions, which were deemed uninteresting.  The new
-        policy about hiding system functions by default makes this wart
-        unnecessary.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add a <literal>--no-tablespaces</literal> option to
-        <application>pg_dump</application>/<application>pg_dumpall</application>/<application>pg_restore</application>
-        so dumps can be restored to clusters that have non-matching
-        tablespace layouts (Gavin Roy)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove <option>-d</option> and <option>-D</option> options from
-        <application>pg_dump</application> and
-        <application>pg_dumpall</application> (Tom)
-       </para>
-
-       <para>
-        These options were too frequently confused with the option to
-        select a database name in other <productname>PostgreSQL</productname>
-        client applications.  The functionality is still available,
-        but you must spell out the long option name
-        <option>--inserts</option> or <option>--column-inserts</option>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove <option>-i</option>/<option>--ignore-version</option> option from
-        <application>pg_dump</application> and
-        <application>pg_dumpall</application> (Tom)
-       </para>
-
-       <para>
-        Use of this option does not throw an error, but it has no
-        effect.  This option was removed because the version checks
-        are considered necessary.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Disable <varname>statement_timeout</varname> during dump and restore
-        (Joshua Drake)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add
-        <application>pg_dump</application>/<application>pg_dumpall</application> option
-        <option>--lock-wait-timeout</option> (David Gould)
-       </para>
-
-       <para>
-        This allows dumps to fail if unable to acquire a shared lock
-        within the specified amount of time.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Reorder <application>pg_dump</application>
-        <literal>--data-only</literal> output
-        to dump primary-key tables referenced by foreign keys before
-        the foreign-key referencing tables (Tom)
-       </para>
-
-       <para>
-        This allows data loads when foreign keys are already present.
-        If circular references make this impossible, a
-        <literal>NOTICE</literal>
-        is issued.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>pg_dump</application>,
-        <application>pg_dumpall</application>, and
-        <application>pg_restore</application> to use a specified role (Benedek
-        László)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>pg_restore</application> of a custom format archive to
-        use multiple concurrent connections to do the restore (Andrew)
-       </para>
-
-       <para>
-        The number of concurrent connections is controlled by the option
-        <literal>--jobs</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new <application>pg_dump</application>
-        <literal>--binary-upgrade</literal>
-        option for use by binary upgrade utilities (Bruce)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Programming Tools</title>
-
-    <sect4>
-     <title><link linkend="libpq"><application>libpq</application></link></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow the <type>OID</type> to be specified when importing large
-        objects using <function>lo_import_with_oid()</function> (Tatsuo)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add events support (Andrew Chernow, Merlin Moncure)
-       </para>
-
-       <para>
-        This adds the ability to register callbacks to handle private
-        data for connection and result creation and destruction.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve error handling to allow the return of multiple
-        error messages as multi-line error reports (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Have <function>PQexecParams()</function> return
-        <varname>PGRES_EMPTY_QUERY</varname> for an empty query (Tom)
-       </para>
-
-       <para>
-         It previously returned <varname>PGRES_COMMAND_OK</varname>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Document how to avoid the overhead of <function>WSACleanup()</function>
-        on Windows (Andrew Chernow)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="libpq"><application>libpq</application></link>
-     <acronym>SSL</acronym> (Secure Sockets Layer)</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Fix certificate validation for <acronym>SSL</acronym> connections
-        (Magnus)
-       </para>
-
-       <para>
-        <application>libpq</application> now verifies both the certificate and
-        the name of the server by default when making <acronym>SSL</acronym>
-        connections. If a root certificate is not available to use for
-        verification, <acronym>SSL</acronym> connections will fail. The
-        <literal>sslverify</literal> parameter can be used to disable the host
-        and certificate verification if required.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the file locations for client certificates to be specified
-        (Mark Woodward, Alvaro, Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add connection parameter <literal>sslverify</literal> to control
-        the verification of the server's certificate
-        (Magnus)
-       </para>
-
-       <para>
-        The default is full verification.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a <function>PQinitOpenSSL</function> function to allow greater control
-        over OpenSSL/libcrypto initialization (Andrew Chernow)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Properly unregister <application>OpenSSL</application> callbacks when
-        libpq is done with all connections (Bruce, Magnus, Russell Smith)
-       </para>
-
-       <para>
-        This is required for applications that unload the libpq library,
-        otherwise invalid <application>OpenSSL</application> callbacks will remain.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="ecpg"><application>ecpg</application></link></title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add localization support for messages (Euler Taveira de
-        Oliveira)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        ecpg parser is now automatically generated from the server
-        parser (Michael)
-       </para>
-
-       <para>
-        Previously a separate ecpg parser was maintained.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Server Programming Interface (<acronym>SPI</acronym>)</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add support for single-use plans with out-of-line
-        parameters (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new <varname>SPI_OK_REWRITTEN</varname> return code to
-        <function>SPI_execute()</function> (Heikki)
-       </para>
-
-       <para>
-        This is used when a command is rewritten to another type of
-        command.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Build Options</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Support 64-bit time zone data files (Heikki)
-      </para>
-
-      <para>
-       This adds support for daylight saving time (<acronym>DST</acronym>)
-       calculations beyond year 2038.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix bug in handling of the time zone database when cross-compiling
-       (Richard Evans)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Update build system to use <productname>Autoconf</productname> 2.61 (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Require <productname>GNU bison</productname> for source code builds (Peter)
-      </para>
-
-      <para>
-       This has been a requirement for several years but this removes
-       the infrastructure for supporting other parser tools.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <application>pg_config</application> <literal>--htmldir</literal> option
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Pass <type>float4</type> by value inside the server (Zoltan
-       Boszormenyi)
-      </para>
-
-      <para>
-       Add <application>configure</application> option
-       <literal>--disable-float4-byval</literal> to use the old behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Pass <type>float8</type> and <type>int8</type> by value in the server
-       where possible (Zoltan Boszormenyi)
-      </para>
-
-      <para>
-       Add <application>configure</application> option
-       <literal>--disable-float8-byval</literal> to use the old behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add configure options <literal>--with-segsize</literal>,
-       <literal>--with-blocksize</literal>,
-       <literal>--with-wal-blocksize</literal>,
-       <literal>--with-wal-segsize</literal> (Zdenek Kotala, Tom)
-      </para>
-
-      <para>
-       This allows compile-time control over several constants that
-       affect how tables and <acronym>WAL</acronym> files are segmented and
-       their internal block sizes.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow threaded builds on <productname>Solaris</productname> 2.5 (Bruce)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Use the system's <function>getopt_long()</function> on
-       <productname>Solaris</productname>
-       (Zdenek Kotala, Tom)
-      </para>
-
-      <para>
-       This makes option processing more consistent with what Solaris users
-       expect.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add support for the <productname>Sun Studio</productname> compiler on
-       <productname>Linux</productname> (Julius Stroffek)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Append the major version number to the
-       <application>gettext</application>
-       domain, and the <literal>soname</literal> major version number to
-       libraries (Peter)
-      </para>
-
-      <para>
-       This simplifies parallel installations.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow out-of-tree builds on <productname>Mingw</productname> and
-       <productname>Cygwin</productname> (Richard Evans)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix the use of <productname>Mingw</productname> as a cross-compiling source
-       platform (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix problem when setting <varname>LC_MESSAGES</varname> on
-       <application>MSVC</application>-built systems (Hiroshi Inoue, Hiroshi
-       Saito, Magnus)  bjm: details?
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Source Code</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Link backend object files in one step, rather than in stages
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve <application>gettext</application> support to allow better translation
-       of plurals (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <application>DTrace</application> probes (Robert Lor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <application>DTrace</application> support on <application>Mac OS X
-       Leopard</application> (Robert Lor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add new <type>cstring</type> to <type>text</type> conversion functions
-       (Brendan Jurd, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a <structfield>relistemp</structfield> column to
-       <structname>pg_class</structname>
-       to ease identification of temporary tables (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve logic for shared cache invalidation (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <type>name</type> char-aligned (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add function hook to let plug-ins control the executor (Itagaki
-       Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a hook to allow the planner statistics lookup behavior to
-       be overridden (Simon Riggs)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>shmem_startup_hook()</function> for custom shared memory
-       requirements (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Replace <literal>pg_class</literal> column
-       <literal>reltriggers</literal>
-       with boolean <literal>relhastriggers</literal> (Simon)
-      </para>
-
-      <para>
-       Also remove unused <literal>pg_class</literal> columns
-       <literal>relukeys</literal>,
-       <literal>relfkeys</literal>, and <literal>relrefs</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Move <acronym>SQL</acronym>-command manual pages from the
-       <filename>manl</filename>
-       (man-el) section to <filename>man7</filename> (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Move platform <acronym>FAQ</acronym>s into the main documentation
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Prevent parser input files from being built with any conflicts
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add support for the <literal>KOI8U</literal> (Ukrainian) encoding
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add Japanese message translations (Japan PostgreSQL Users Group)
-      </para>
-
-      <para>
-       This used to be maintained as a separate project.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Contrib</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add query mode option to <filename>/contrib/pgbench</filename>
-       (Itagaki Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add duration option to <filename>/contrib/pgbench</filename> (Itagaki
-       Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <filename>/contrib/pgstattuple</filename> to handle tables and
-       indexes with over 2 billion pages (Tatsuhito Kasahara)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add Levenshtein string-distance function to
-       <filename>/contrib/fuzzystrmatch</filename> that allows the user to
-       specify the cost of insertion, deletion, and substitution
-       (Volkan Yazici)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <function>dblink_current_query()</function> from
-       <filename>/contrib/dblink</filename>;  it should now use
-       <function>current_query()</function> (Tomas Doran)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Have <filename>/contrib/ltree</filename> support multibyte encodings
-       (laser)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>/contrib/btree_gin</filename> to allow GIN indexes to
-       handle more datatypes (Oleg, Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>/contrib/citext</filename> as a case-insensitive,
-       multibyte-aware text data type (David Wheeler)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make sure <filename>/contrib/dblink</filename> uses a password supplied
-       by the user, and not accidentally from the server's .pgpass file
-       (Joe Conway)
-      </para>
-
-      <para>
-       This is a security enhancement.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>fsm_page_contents()</function>
-       to<filename>/contrib/pageinspect</filename> (Heikki)
-      </para>
-
-      <para>
-       Modify <function>get_raw_page()</function> to support free space map
-       (<filename>*.fsm</filename>) files.  Also update
-       <filename>/contrib/pg_freespacemap</filename>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add support for multibyte encodings to
-       <filename>/contrib/pg_trgm</filename>
-       (Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Rewrite <filename>/contrib/intagg</filename> to user new server-side
-       functions <function>array_agg()</function> and
-       <function>unnest()</function>
-       (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <filename>/contrib/intarray</filename>'s definitions of the
-       <literal>&lt;@</literal> and <literal>@&gt;</literal> operators (Tom)
-      </para>
-
-      <para>
-       This avoids confusion with the equivalent built-in operators.
-       If necessary, the <filename>/contrib/intarray</filename> implementations
-       are still available under their historical names <literal>@</literal>
-       and <literal>~</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>/contrib/auto_explain</filename> to automatically run
-       <command>EXPLAIN</command> on queries exceeding a specified duration
-       (Itagaki Takahiro, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>/contrib/pg_stat_statements</filename> for server-wide
-       tracking of statement execution statistics (Itagaki Takahiro)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-7">
-  <title>Version 8.3.7</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-03-16</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.3.6.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration to Version 8.3.7</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.3.5, voir les notes de sortie de la 8.3.5.
-   </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</command> 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 de <function>xpath()</function> pour ne modifier l'expression
-      du chemin que si nécessaire, et de faire une tentative plus saine quand
-      c'est nécessaire (Andrew)
-     </para>
-
-     <para>
-      Le standard SQL suggère que <function>xpath</function> devrait fonctionner
-      sur des données qui sont un fragment de document mais
-      <application>libxml</application> ne supporte pas cela et il n'est pas
-      clair que ce soit intéressant d'après le standard XPatch.
-      <function>xpath</function> tentait de contourner cette différence en
-      modifiant les données et l'expression du chemin mais la modification était
-      erronnée et pouvait causer l'échec de recherches valides. Maintenant,
-      <function>xpath</function> vérifie sir les données sont en fait un
-      document bien formé et, dans ce cas, appelle
-      <application>libxml</application> sans modification des données ou de
-      l'expression du chemin. Sinon, une méthode différente de modification
-      qui est moins sujette à l'échec est utilisée.
-     </para>
-
-     <note>
-      <para>
-       La nouvelle méthode de modification n'est pas satisfaisante à 100% et il
-       semble qu'il n'existe pas de solution réelle. Ce correctif doit donc
-       etre vu seulement comme une aide pour ne pas casser les applications
-       existantes. Il est probable que <productname>PostgreSQL</productname>
-       8.4 rejettera simplement l'utilisation de <function>xpath</function>
-       sur des données qui ne constituent pas un document bien formé.
-      </para>
-     </note>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un crash lorsque <function>to_char()</function> a pour
-      argument des codes de format inappropriés pour la donnée en argument
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un échec possible dans <filename>contrib/tsearch2</filename>
-      lorsque la locale C est utilisée avec un encodage multi-octets (Teodor)
-     </para>
-
-     <para>
-      Les crashes étaient possibles sur les plateformes où <type>wchar_t</type>
-      est plus petit que <type>int</type>&nbsp;; Windows en particulier.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de l'inefficacité extrême dans la gestion par l'analyseur
-      <filename>contrib/tsearch2</filename> d'une chaîne de type email contenant de
-      nombreux caractères <literal>@</literal> (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un problème du planificateur avec les
-      sous-<command>SELECT</command> dans la liste en sortie d'une sous-requête
-      importante (Tom)
-     </para>
-
-     <para>
-      Le symptôme connu de ce bogue est une erreur <quote>failed to locate
-      grouping columns</quote> dépendant du type de donnée impliqué mais il
-      pourrait y avoir d'autres problèmes.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
-      cette instruction est utilisée avec une coercion explicite
-      (Tom)
-     </para>
-
-     <para>
-      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
-      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
-      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
-      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise affectation possible du propriétaire du rowtype
-      d'une table TOAST (Tom)
-     </para>
-
-     <para>
-      Si <command>CLUSTER</command> ou une variante de <command>ALTER
-      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
-      d'autre que le propriétaire de la table, l'entrée
-      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
-      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
-      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
-      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
-      opération ordinaire de la base de données. Néanmoins, cela peut amener
-      des échecs inattendus si une personne tente plus tard de supprimer le rôle
-      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
-      du type <quote>propriétaire du type de données semble invalide</quote>
-      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
-      (en 8.3).
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Modification de <command>UNLISTEN</command> pour qu'il quitte rapidement
-      si la session en cours n'a jamais exécuté de commande
-      <command>LISTEN</command> (Tom)
-     </para>
-
-     <para>
-      La plupart du temps, cela n'est pas une optimisation particulièrement
-      utile mais comme <command>DISCARD ALL</command> appelle
-      <command>UNLISTEN</command>, le codage précédent causait un problème de
-      performances substantiel pour les applications utilisant beaucoup
-      <command>DISCARD ALL</command>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/pgSQL pour qu'il ne traite pas <literal>INTO</literal>
-      après un <command>INSERT</command> comme une clause d'affectation de
-      variables, quelque soit son emplacement&nbsp;; en particulier, cela
-      permet d'éviter un échec sur un <command>INSERT INTO</command> compris
-      dans une commande <command>CREATE RULE</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
-      bloc (Ashesh Vashi et Dave Page)
-     </para>
-
-     <para>
-      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
-      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
-      fonction.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ré-essaie d'appeler <function>CallNamedPipe()</function> après un échec
-      sur Windows (Steve Marshall, Magnus)
-     </para>
-
-     <para>
-      Il semble que cette fonction puisse échouer de temps en temps&nbsp;;
-      auparavant, nous avons traiter toute erreur comme une erreur grave
-      qui pourrait poser problème aux instructions <command>LISTEN</command>
-      / <command>NOTIFY</command> ainsi qu'à d'autres opérations.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de <literal>MUST</literal> (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-8-3-6">
-  <title>Version 8.3.6</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-02-02</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.3.5.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.6</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.3.5, voir les notes de sortie de la 8.3.5.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Changements</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      <command>DISCARD ALL</command> lâche aussi les verrous informatifs, en
-      plus de tout ce qu'il faisait déjà (Tom)
-     </para>
-
-     <para>
-      Il a été décidé que c'est le comportement le plus approprié. Néanmoins,
-      cela pourrait affecter les applications existantes.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction des parcours complets d'index GiST (Teodor)
-     </para>
-
-     <para>
-      Cette erreur peut faire que des lignes soient perdues si CLUSTER est
-      utilisé avec une table et son index GiST.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de l'arrêt brutal de <literal>xmlconcat(NULL)</literal> (Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un arrêt brutal possible dans le dictionnaire
-      <literal>ispell</literal> si des caractères avec le bit de poids fort
-      levé sont utilisés comme des drapeaux (Teodor)
-     </para>
-
-     <para>
-      C'est survenu avec le dictionnaire norvégien disponible mais ces conditions
-      pourraient en affecter d'autres.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais ordre dans la sortie de
-      <application>pg_dump</application> pour les types composites (Tom)
-     </para>
-
-     <para>
-      Le problème le plus fréquent concernait des classes d'opérateur définies
-      par l'utilisateur, qui sont sauvegardées après les index et vues qui les
-      utilisent.
-     </para>
-    </listitem>
-
-    <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>
-      Empêche des échecs possibles avec Assert si une instruction exécutée en
-      PL/pgSQL est ré-écrite dans un autre type d'instruction, par exemple si
-      <command>INSERT</command> est ré-écrit en <command>UPDATE</command>
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une image de la base est disponible pour les fonctions en
-      entrée des types (Tom)
-     </para>
-
-     <para>
-      Ceci affecte principalement les domaines qui sont déclarés avec des
-      contraintes <literal>CHECK</literal> impliquant des fonctions stables
-      ou immutables définies par l'utilisateur. De telles fonctions échouent
-      typiquement si aucune image de la base n'a été réalisée.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Rend plus sûr l'utilisation des entrées/sorties de type avec les fonctions
-      SPI&nbsp;; en particulier à utiliser aves les contraintes de vérifications
-      pour les domaines (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Évite un verrou inutile des petites tables dans <command>VACUUM</command>
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un problème qui empêche quelque fois <command>ALTER TABLE
-      ENABLE/DISABLE RULE</command> d'être reconnu par les sessions actives
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un problème faisant que <literal>UPDATE RETURNING
-      tableoid</literal> renvoie zéro au lieu du bon OID (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Permet aux fonctions déclarées comme prenant <type>ANYARRAY</type> en
-      argument de fonctionner avec les colonnes de ce type dans la table
-      <structname>pg_statistic</structname> (Tom)
-     </para>
-
-     <para>
-      Ceci fonctionnait mais a été cassé par erreur en 8.3.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise estimation de la sélectivité du planificateur
-      quand une égalité transitive est appliquée à une clause jointure externe
-      (Tom)
-     </para>
-
-     <para>
-      Ceci pourrait résulter en de mauvais plans pour les requêtes identiques à
-      <literal>... from a left join b on a.a1 = b.b1 where a.a1 = 42 ...</literal>
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Amélioration de la gestion des grosses listes <literal>IN</literal> par
-      l'optimiseur (Tom)
-     </para>
-
-     <para>
-      Cette modification évite de perdre beaucoup de temps sur de telles listes
-      dans la contrainte d'exclusion est activée.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Empêche le parcours synchrone lors de la construction d'un index GIN
-      (Tom)
-     </para>
-
-     <para>
-      Comme GIN est optimisé pour insérer les lignes dans l'ordre croissant
-      des TID, l'utilisation d'un parcours synchrone pourrait ralentir la
-      construction par un facteur de trois, voire plus.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
-      des tables TOAST (Tom)
-     </para>
-
-     <para>
-      Auparavant, des valeurs de champ large dans un résultat de curseur
-      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
-      un échec si la table référencée était supprimée avant la lecture du
-      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
-      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
-      un curseur qui est conservé après sa transaction de création.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une fuite mémoire lorsqu'une fonction SRF se termine sans
-      lecture du résultat complet (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de problèmes de conversion dans les fonctions XML quand
-      l'encodage de la base de données n'est pas UTF-8 (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la fonction <function>dblink_get_result(text,bool)</function>
-      de <filename>contrib/dblink</filename> (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais retour des fonctions de
-      <filename>contrib/sslinfo</filename> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais comportement du trigger de compatibilité de
-      <filename>contrib/tsearch2</filename> lorsqu'il est exécuté plus d'une
-      fois dans une commande (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais signal possible dans l'autovacuum (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support de l'utilisation d'un service avec Windows 7 beta (Dave et Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la gestion des structures varchar avec
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction du script <application>configure</application> pour rapporter
-      correctement les échecs quand il est incapable d'obtenir les informations
-      de liens pour PL/Perl (Andrew)
-     </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>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
-      <application>tzdata</application> (pour le Kathmandou et des corrections
-      historiques de DST en Switzerland et à Cuba)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-5">
-  <title>Version 8.3.5</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2008-11-03</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.3.4.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.5</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.3.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.3.1, voir les notes de sortie de la 8.3.1.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
-      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
-     </para>
-
-     <para>
-      Cela peut avoir comme conséquence des échecs dans les recherches par
-      index pour des lignes qu'elles auraient dû trouver.
-     </para>
-    </listitem>
-
-    <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</quote> 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 d'un crash possible dans la correspondance
-      <type>bytea</type>-vers-XML (Michael McMaster)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un crash possible lorsque des fonctions profondément
-      imbriquées sont appelées à partir d'un trigger (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Amélioration de l'optimisation des requêtes de type
-      <replaceable>expression</replaceable> <literal>IN</literal>
-      (<replaceable>liste-expression</replaceable>) (Tom, à partir d'une idée de
-      Robert Haas)
-     </para>
-
-     <para>
-      Les cas où il se trouve des variables de requpetes dans le côté droit
-      étaient gérés moins efficacement dans les versions 8.2.x et 8.3.x que
-      dans les versions précédentes. La correction restaure le comportement
-      de la 8.1 pour ces cas.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise expansion de requêtes de règles quand un
-      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
-      <literal>FROM</literal>, d'une liste <literal>VALUES</literal>
-      multi-lignes ou d'une liste <literal>RETURNING</literal> (Tom)
-     </para>
-
-     <para>
-      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
-      inconnu</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un échec Assert lors du parcours <literal>IS NULL</literal>
-      pour une recherche dans un index GiST (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une fuite mémoire lors du parcours d'un plan d'aggrégation
-      haché (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
-      nouvellement définie est appelée comme une fonction normale (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Force un point de vérification quand <command>CREATE DATABASE</command>
-      commence à copier les fichiers (Heikki)
-     </para>
-
-     <para>
-      Ceci empêche un échec possible si des fichiers ont récemment été supprimés
-      de la base de données source.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Empêche une collision possible du <structfield>relfilenode</structfield>
-      lors du déplacement d'une table vers un autre tablespace avec
-      <command>ALTER SET TABLESPACE</command> (Heikki)
-     </para>
-
-     <para>
-      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
-      prendre un qu'on sait inutilisé dans le répertoire de destination.
-     </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</option>
-      (Ron Mayer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que <literal>ILIKE</literal> compare les caractères sans attention à
-      la casse même lorsqu'ils sont échappés (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <command>DISCARD</command> est géré correctement par les
-      traces des instructions (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une trace incorrecte du moment de la dernière transaction
-      restaurée lors d'une restauration PITR (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
-      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>
-      Marque <varname>SessionReplicationRole</varname> comme
-      <literal>PGDLLIMPORT</literal> pour qu'il puisse être utilisé par
-      <application>Slony</application> sur Windows (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une petite fuite mémoire lors de l'utilisation du paramètre
-      <literal>gsslib</literal> de <application>libpq</application> (Magnus)
-     </para>
-
-     <para>
-      L'espace utilisée par la chaîne de paramètres n'était pas libérée à la
-      fermeture de la connexion.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <application>libgssapi</application> est liée à
-      <application>libpq</application> si nécessaire (Markus Schaaf)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de l'analyse de <command>CREATE USER</command> par
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <filename>pg_control</filename> en ouvert en mode binaire
-      seul (Itagaki Takahiro)
-     </para>
-
-     <para>
-      <application>pg_controldata</application> et <application>pg_resetxlog</application>
-      ne le faisaient pas correction, ce qui provoquait un échec sur Windows.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires vers la version
-      2008i de <application>tzdata</application> (pour les modifications légales de DST en
-      Argentine, au Brésil, à l'Île Maurice et en Syrie)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-4">
-  <title>Version 8.3.4</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-09-22</simpara>
-  </note>
-
-  <para>
-   Cette version contient quelques correctifs de la version 8.3.3.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.4</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
-    version 8.3.X.
-    Néanmoins, si vous mettez à jour à partir d'une version antérieure à la
-    version 8.3.1, voir les notes de sortie de la 8.3.1.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Correction d'un bogue dans le code de restauration d'un enregistrement
-      btree (Heikki)
-     </para>
-
-     <para>
-      La restauration échouait si l'enregistrement du journal se terminait à
-      moitié lors d'une opération de division de page.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une utilisation potentielle d'un XID limite lors de la
-      réduction des pages HOT (Alvaro)
-     </para>
-
-     <para>
-      Cette erreur crée un risque de corruption dans les catalogues système
-      qui sont consultés par <command>VACUUM</command>&nbsp;: les versions de
-      lignes mortes pourraient être supprimées trop rapidement. L'impact de
-      ceci sur les opérations actuelles de la base de données serait minimale
-      car le système ne suit pas les règles MVCC lors de l'examen des
-      catalogues, mais pourrait résultat en de mauvaises sorties temporaires
-      de programmes clients comme <application>pg_dump</application>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais calcul potentiel de
-      <structfield>datfrozenxid</structfield> (Alvaro)
-     </para>
-
-     <para>
-      Cette erreur pourrait expliquer certains rapports récents de suppression
-      de vieilles données dans le répertoire <structname>pg_clog</structname>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de mises à jour incorrectes de HOT après que
-      <structname>pg_class</structname> soit ré-indexé (Tom)
-     </para>
-
-     <para>
-      Une corruption de <structname>pg_class</structname> pourrait survenir si
-      <literal>REINDEX TABLE pg_class</literal> était suivi dans la même
-      session par une commande <literal>ALTER TABLE RENAME</literal> ou
-      <literal>ALTER TABLE SET SCHEMA</literal>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une casse manquante <quote>combo cid</quote> (Karl Schnaitter)
-     </para>
-
-     <para>
-      Cette erreur faisait que des lignes se trouvaient invisibles par erreur
-      dans une transaction. Elles avaient été supprimées par plusieurs
-      sous-transactions toutes annulées.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Empêche l'autovacuum de s'arrêter inoppunément si la table qu'il vérifie
-      est supprimée au mauvais moment (Alvaro)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Augmentation du compteur de verrou local en le passant de 32 à 64 bits (Tom)
-     </para>
-
-     <para>
-      Ceci est une réponse aux rapports indiquant que la capacité des
-      compteurs pouvait être dépassée dans des transactions suffisamment
-      longues, amenant à des erreurs inattendues du style <quote>le verrou
-      est déjà détenu</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un affichage dupliqué des lignes lors d'un parcours d'index
-      GiST (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Regénération des requêtes de vérification des clés étrangères quand
-      une des tables est modifiée (Tom)
-     </para>
-
-     <para>
-      Auparavant, la version 8.3 essayait de replanifier la requête mais
-      travaillait à partir des requêtes précédemment générées. Ceci pouvait
-      amener des échecs si une table ou une colonne était renommée.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction des vérifications de droits oubliées quand une vue contient
-      une construction <literal>UNION ALL</literal> simple (Heikki)
-     </para>
-
-     <para>
-      Les droits pour les tables référencées étaient vérifiés correctement,
-      mais pas les droits pour la vue elle-même.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de vérifications dans le démarrage de l'exécuteur pour s'assurer
-      que les lignes produites par une instruction <command>INSERT</command>
-      ou <command>UPDATE</command> correspondront au type de ligne actuel de
-      la table cible (Tom)
-     </para>
-
-     <para>
-      Cette situation semblait impossible en 8.3, mais elle peut arriver dans
-      les versions précédentes, donc une vérification est plus prudente.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction des suppressions possibles répétées durant un
-      <command>DROP OWNED</command> (Tom)
-     </para>
-
-     <para>
-      Ceci pourrait résulter en des erreurs étranges comme <quote>recherche
-      échouée dans le cache pour la relation NNN</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Corrections de plusieurs pertes mémoire dans les opérations XML
-      (Kris Jurka, Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de <function>xmlserialize()</function> pour augmenter le
-      niveau d'erreur correctement pour les types de données cibles non
-      acceptables (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de plusieurs places gérant mal les caractères multi-octets
-      dans l'analyse des fichiers de configuration pour la recherche plein
-      texte (Tom)
-     </para>
-
-     <para>
-      Certains caractères des fichiers de configuration pouvaient toujours
-      causer des échecs de type <quote>séquence d'octets invalide pour
-      l'encodage</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fournit un nom de fichier et le numéro de ligne pour toutes les erreurs
-      rapportées dans des fichiers de configuration de la recherche plein texte
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de <literal>AT TIME ZONE</literal> pour essayer tout d'abord
-      d'interpréter son argument de fuseau horaire en tant qu'abréviation de
-      fuseau horaire, et essaiera seulement en tant que nom complet de fuseau
-      horaire si la première tentative échoue (auparavant, c'était le
-      contraire (Tom)
-     </para>
-
-     <para>
-      Les fonctions de saisie des dates et heures ont toujours tenté de
-      résoudre les noms de fuseaux horaires ambigus dans cet ordre.
-      Faire en sorte que <literal>AT TIME ZONE</literal> fasse de même
-      améliore la cohérence et corrige un bogue de compatibilité introduit
-      en version 8.1&nbsp;: dans les cas ambigus, nous nous comportons
-      maintenant comme en 8.0 car dans les anciennes versions <literal>AT
-      TIME ZONE</literal> acceptaient <emphasis>seulement</emphasis> les
-      abréviations.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix datetime input functions to correctly detect integer overflow when
-      running on a 64-bit platform (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Prevent integer overflows during units conversion when displaying a
-      configuration parameter that has units (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve performance of writing very long log messages to syslog (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow spaces in the suffix part of an LDAP URL in
-      <filename>pg_hba.conf</filename> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
-      ON</literal> query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner bug that could improperly push down <literal>IS NULL</literal>
-      tests below an outer join (Tom)
-     </para>
-
-     <para>
-      This was triggered by occurrence of <literal>IS NULL</literal> tests for
-      the same relation in all arms of an upper <literal>OR</literal> clause.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner bug with nested sub-select expressions (Tom)
-     </para>
-
-     <para>
-      If the outer sub-select has no direct dependency on the parent query,
-      but the inner one does, the outer value might not get recalculated
-      for new parent query rows.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to estimate that <literal>GROUP BY</literal> 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>
-      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
-      is a record containing composite-type fields (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
-      about the encoding of data sent to or from Tcl (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve performance of <function>PQescapeBytea()</function> (Rudolf Leitgeb)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      On Windows, work around a Microsoft bug by preventing
-      <application>libpq</application> from trying to send more than 64kB per system call
-      (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>ecpg</application> to handle variables properly in <command>SET</command>
-      commands (Michael)
-     </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>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to properly preserve postmaster
-      command-line arguments across a <literal>restart</literal> (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix erroneous WAL file cutoff point calculation in
-      <application>pg_standby</application> (Simon)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008f (for
-      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
-      Pakistan, Palestine, and Paraguay)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-3">
-  <title>Version 8.3.3</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-06-12</simpara>
-  </note>
-
-  <para>
-   This release contains one serious and one minor bug fix over 8.3.2.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.3</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
-    However, if you are upgrading from a version earlier than 8.3.1,
-    see the release notes for 8.3.1.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
-      be <literal>(-42)::integer</literal> due to operator precedence rules.
-      Usually this would make little difference, but it could interact with
-      another recent patch to cause
-      <productname>PostgreSQL</productname> to reject what had been a valid
-      <command>SELECT DISTINCT</command> view query.  Since this could result in
-      <application>pg_dump</application> 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>
-
-    <listitem>
-     <para>
-      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
-      <structname>pg_shdepend</structname> (Tom)
-     </para>
-
-     <para>
-      This oversight could lead to problems if the aggregate was later
-      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
-      operation.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-2">
-  <title>Version 8.3.2</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>never released</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.3.1.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.3, voir <xref linkend="release-8-3"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.2</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
-    However, if you are upgrading from a version earlier than 8.3.1,
-    see the release notes for 8.3.1.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix <literal>ERRORDATA_STACK_SIZE exceeded</literal> crash that
-      occurred on Windows when using UTF-8 database encoding and a different
-      client encoding (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect archive truncation point calculation for the
-      <literal>%r</literal> macro in <varname>recovery_command</varname> parameters
-      (Simon)
-     </para>
-
-     <para>
-      This could lead to data loss if a warm-standby script relied on
-      <literal>%r</literal> to decide when to throw away WAL segment files.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
-      column is correctly checked to see if it's been initialized to all
-      non-nulls (Brendan Jurd)
-     </para>
-
-     <para>
-      Previous versions neglected to check this requirement at all.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <command>REASSIGN OWNED</command> so that it works on procedural
-      languages too (Alvaro)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix problems with <command>SELECT FOR UPDATE/SHARE</command> occurring as a
-      subquery in a query with a non-<command>SELECT</command> top-level operation
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible <command>CREATE TABLE</command> failure when inheriting the
-      <quote>same</quote> constraint from multiple parent relations that
-      inherited that constraint from a common ancestor (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>pg_get_ruledef()</function> to show the alias, if any, attached
-      to the target table of an <command>UPDATE</command> or <command>DELETE</command>
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Restore the pre-8.3 behavior that an out-of-range block number in a
-      TID being used in a TidScan plan results in silently not matching any
-      rows (Tom)
-     </para>
-
-     <para>
-      8.3.0 and 8.3.1 threw an error instead.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix GIN bug that could result in a <literal>too many LWLocks
-      taken</literal> failure (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix broken GiST comparison function for <type>tsquery</type> (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>tsvector_update_trigger()</function> and <function>ts_stat()</function>
-      to accept domains over the types they expect to work with (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix failure to support enum data types as foreign keys (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid possible crash when decompressing corrupted data
-      (Zdenek Kotala)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix race conditions between delayed unlinks and <command>DROP
-      DATABASE</command> (Heikki)
-     </para>
-
-     <para>
-      In the worst case this could result in deleting a newly created table
-      in a new database that happened to get the same OID as the
-      recently-dropped one; but of course that is an extremely
-      low-probability scenario.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Repair two places where SIGTERM exit of a backend could leave corrupted
-      state in shared memory (Tom)
-     </para>
-
-     <para>
-      Neither case is very important if SIGTERM is used to shut down the
-      whole database cluster together, but there was a problem if someone
-      tried to SIGTERM individual backends.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible crash due to incorrect plan generated for an
-      <literal><replaceable>x</replaceable> IN (SELECT <replaceable>y</replaceable>
-      FROM ...)</literal> clause when <replaceable>x</replaceable> and <replaceable>y</replaceable>
-      have different data types; and make sure the behavior is semantically
-      correct when the conversion from <replaceable>y</replaceable>'s type to
-      <replaceable>x</replaceable>'s type is lossy (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix oversight that prevented the planner from substituting known Param
-      values as if they were constants (Tom)
-     </para>
-
-     <para>
-      This mistake partially disabled optimization of unnamed
-      extended-Query statements in 8.3.0 and 8.3.1: in particular the
-      LIKE-to-indexscan optimization would never be applied if the LIKE
-      pattern was passed as a parameter, and constraint exclusion
-      depending on a parameter value didn't work either.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner failure when an indexable <function>MIN</function> or
-      <function>MAX</function> aggregate is used with <literal>DISTINCT</literal> or
-      <literal>ORDER BY</literal> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to ensure it never uses a <quote>physical tlist</quote> for a
-      plan node that is feeding a Sort node (Tom)
-     </para>
-
-     <para>
-      This led to the sort having to push around more data than it really
-      needed to, since unused column values were included in the sorted
-      data.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid unnecessary copying of query strings (Tom)
-     </para>
-
-     <para>
-      This fixes a performance problem introduced in 8.3.0 when a very large
-      number of commands are submitted as a single query string.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <function>TransactionIdIsCurrentTransactionId()</function> use binary
-      search instead of linear search when checking child-transaction XIDs
-      (Heikki)
-     </para>
-
-     <para>
-      This fixes some cases in which 8.3.0 was significantly
-      slower than earlier releases.
-     </para>
-    </listitem>
-
-    <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 several datatype input functions, notably <function>array_in()</function>,
-      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>
-      Prevent cancellation of an auto-vacuum that was launched to prevent
-      XID wraparound (Alvaro)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve <command>ANALYZE</command>'s handling of in-doubt tuples (those
-      inserted or deleted by a not-yet-committed transaction) so that the
-      counts it reports to the stats collector are more likely to be correct
-      (Pavan Deolasee)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>initdb</application> to reject a relative path for its
-      <literal>--xlogdir</literal> (<literal>-X</literal>) option (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <application>psql</application> print tab characters as an appropriate
-      number of spaces, rather than <literal>\x09</literal> as was done in
-      8.3.0 and 8.3.1 (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008c (for
-      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba, and
-      Argentina/San_Luis)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>ECPGget_PGconn()</function> function to
-      <application>ecpglib</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect result from <application>ecpg</application>'s
-      <function>PGTYPEStimestamp_sub()</function> function (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix handling of continuation line markers in <application>ecpg</application>
-      (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible crashes in <filename>contrib/cube</filename> functions (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix core dump in <filename>contrib/xml2</filename>'s
-      <function>xpath_table()</function> function when the input query returns a
-      NULL value (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <filename>contrib/xml2</filename>'s makefile to not override
-      <literal>CFLAGS</literal>, and make it auto-configure properly for
-      <application>libxslt</application> present or not (Tom)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3-1">
-  <title>Version 8.3.1</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-03-17</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.3.0.
-   However, if you are upgrading from a version earlier than 8.3.1,
-   see the release notes for 8.3.1.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.3.1</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.3.X.
-    However, you might need to <command>REINDEX</command> indexes on textual
-    columns after updating, if you are affected by the Windows locale
-    issue described below.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix character string comparison for Windows locales that consider
-      different character combinations as equal (Tom)
-     </para>
-
-     <para>
-      This fix applies only on Windows and only when using UTF-8
-      database encoding.  The same fix was made for all other cases
-      over two years ago, but Windows with UTF-8 uses a separate code
-      path that was not updated.  If you are using a locale that
-      considers some non-identical strings as equal, you may need to
-      <command>REINDEX</command> to fix existing indexes on textual columns.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Repair corner-case bugs in <command>VACUUM FULL</command> (Tom)
-     </para>
-
-     <para>
-      A potential deadlock between concurrent <command>VACUUM FULL</command>
-      operations on different system catalogs was introduced in 8.2.
-      This has now been corrected.  8.3 made this worse because the
-      deadlock could occur within a critical code section, making it
-      a PANIC rather than just ERROR condition.
-     </para>
-
-     <para>
-      Also, a <command>VACUUM FULL</command> that failed partway through
-      vacuuming a system catalog could result in cache corruption in
-      concurrent database sessions.
-     </para>
-
-     <para>
-      Another <command>VACUUM FULL</command> bug introduced in 8.3 could
-      result in a crash or out-of-memory report when dealing with
-      pages containing no live tuples.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix misbehavior of foreign key checks involving <type>character</type>
-      or <type>bit</type> columns (Tom)
-     </para>
-
-     <para>
-      If the referencing column were of a different but compatible type
-      (for instance <type>varchar</type>), the constraint was enforced incorrectly.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid needless deadlock failures in no-op foreign-key checks (Stephan
-      Szabo, Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible core dump when re-planning a prepared query (Tom)
-     </para>
-
-     <para>
-      This bug affected only protocol-level prepare operations, not
-      SQL <command>PREPARE</command>, and so tended to be seen only with
-      JDBC, DBI, and other client-side drivers that use prepared
-      statements heavily.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible failure when re-planning a query that calls an SPI-using
-      function (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix failure in row-wise comparisons involving columns of different
-      datatypes (Tom)
-     </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>
-      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
-      prepared transaction (Tom)
-     </para>
-
-     <para>
-      This was formerly allowed but trying to do it had various unpleasant 
-      consequences, notably that the originating backend could not exit
-      as long as an <command>UNLISTEN</command> remained uncommitted.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Disallow dropping a temporary table within a
-      prepared transaction (Heikki)
-     </para>
-
-     <para>
-      This was correctly disallowed by 8.1, but the check was inadvertently
-      broken in 8.2 and 8.3.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix rare crash when an error occurs during a query using a hash index
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect comparison of <type>tsquery</type> values (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect behavior of <literal>LIKE</literal> with non-ASCII characters
-      in single-byte encodings (Rolf Jentsch)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Disable <function>xmlvalidate</function> (Tom)
-     </para>
-
-     <para>
-      This function should have been removed before 8.3 release, but
-      was inadvertently left in the source code.  It poses a small
-      security risk since unprivileged users could use it to read the
-      first few characters of any file accessible to the server.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix memory leaks in certain usages of set-returning functions (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <function>encode(<replaceable>bytea</replaceable>, 'escape')</function> convert all
-      high-bit-set byte values into <literal>\</literal><replaceable>nnn</replaceable> octal
-      escape sequences (Tom)
-     </para>
-
-     <para>
-      This is necessary to avoid encoding problems when the database
-      encoding is multi-byte.  This change could pose compatibility issues
-      for applications that are expecting specific results from
-      <function>encode</function>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix input of datetime values for February 29 in years BC (Tom)
-     </para>
-
-     <para>
-      The former coding was mistaken about which years were leap years.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <quote>unrecognized node type</quote> error in some variants of
-      <command>ALTER OWNER</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid tablespace permissions errors in <command>CREATE TABLE LIKE
-      INCLUDING INDEXES</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ensure <structname>pg_stat_activity</structname>.<structfield>waiting</structfield> flag
-      is cleared when a lock wait is aborted (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix handling of process permissions on Windows Vista (Dave, Magnus)
-     </para>
-
-     <para>
-      In particular, this fix allows starting the server as the Administrator
-      user.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008a
-      (in particular, recent Chile changes); adjust timezone abbreviation
-      <literal>VET</literal> (Venezuela) to mean UTC-4:30, not UTC-4:00 (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>ecpg</application> problems with arrays (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
-      number from command-line options (Itagaki Takahiro, Tom)
-     </para>
-
-     <para>
-      Previously, <literal>pg_ctl start -w</literal> could try to contact the
-      postmaster on the wrong port, leading to bogus reports of startup
-      failure.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use <option>-fwrapv</option> to defend against possible misoptimization
-      in recent <application>gcc</application> versions (Tom)
-     </para>
-
-     <para>
-      This is known to be necessary when building <productname>PostgreSQL</productname>
-      with <application>gcc</application> 4.3 or later.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Enable building <filename>contrib/uuid-ossp</filename> with MSVC (Hiroshi Saito)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-3">
-  <title>Version 8.3</title>
-
-  <note>
-   <title>Date de sortie</title>
-   <simpara>2008-02-04</simpara>
-  </note>
-
-  <sect2>
-   <title>Overview</title>
-
-   <para>
-    With significant new functionality and performance enhancements,
-    this release represents a major leap forward for
-    <productname>PostgreSQL</productname>. This was made possible by a growing
-    community that has dramatically accelerated the pace of
-    development. This release adds the following major features:
-   </para>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Full text search is integrated into the core database system
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support for the SQL/XML standard, including new operators and an
-      <type>XML</type> data type
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Enumerated data types (<type>ENUM</type>)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Arrays of composite types
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Universally Unique Identifier (<type>UUID</type>) data type
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add control over whether <literal>NULL</literal>s sort first or last
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Updatable cursors
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Server configuration parameters can now be set on a per-function
-      basis
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      User-defined types can now have type modifiers
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Automatically re-plan cached queries when table
-      definitions change or statistics are updated
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Numerous improvements in logging and statistics collection
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support Security Service Provider Interface (<acronym>SSPI</acronym>) for
-      authentication on Windows
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support multiple concurrent autovacuum processes, and other
-      autovacuum improvements
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow the whole <productname>PostgreSQL</productname> distribution to be compiled
-      with <productname>Microsoft Visual C++</productname>
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-   <para>
-    Major performance improvements are listed below.  Most of
-    these enhancements are automatic and do not require user changes or
-    tuning:
-   </para>
-
-  <itemizedlist>
-
-    <listitem>
-     <para>
-      Asynchronous commit delays writes to WAL during transaction commit
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Checkpoint writes can be spread over a longer time period to smooth
-      the I/O spike during each checkpoint
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Heap-Only Tuples (<acronym>HOT</acronym>) accelerate space reuse for
-      most <command>UPDATE</command>s and <command>DELETE</command>s
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Just-in-time background writer strategy improves disk write
-      efficiency
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Using non-persistent transaction IDs for read-only transactions
-      reduces overhead and <command>VACUUM</command> requirements
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Per-field and per-row storage overhead has been reduced
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Large sequential scans no longer force out frequently used
-      cached pages
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Concurrent large sequential scans can now share disk reads
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <literal>ORDER BY ... LIMIT</literal> can be done without sorting
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-   <para>
-    The above items are explained in more detail in the sections below.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Migration vers la version 8.3</title>
-
-   <para>
-    A dump/restore using <application>pg_dump</application> is
-    required for those wishing to migrate data from any previous
-    release.
-   </para>
-
-   <para>
-    Observe the following incompatibilities:
-   </para>
-
-   <sect3>
-    <title>General</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Non-character data types are no longer automatically cast to
-       <type>TEXT</type> (Peter, Tom)
-      </para>
-
-      <para>
-       Previously, if a non-character value was supplied to an operator or
-       function that requires <type>text</type> input, it was automatically
-       cast to <type>text</type>, for most (though not all) built-in data types.
-       This no longer happens: an explicit cast to <type>text</type> is now
-       required for all non-character-string types.  For example, these
-       expressions formerly worked:
-
-<programlisting>
-substr(current_date, 1, 4)
-23 LIKE '2%'
-</programlisting>
-
-       but will now draw <quote>function does not exist</quote> and <quote>operator
-       does not exist</quote> errors respectively.  Use an explicit cast instead:
-
-<programlisting>
-substr(current_date::text, 1, 4)
-23::text LIKE '2%'
-</programlisting>
-
-       (Of course, you can use the more verbose <literal>CAST()</literal> syntax too.)
-       The reason for the change is that these automatic casts too often caused
-       surprising behavior.  An example is that in previous releases, this
-       expression was accepted but did not do what was expected:
-
-<programlisting>
-current_date &lt; 2017-11-17
-</programlisting>
-
-       This is actually comparing a date to an integer, which should be
-       (and now is) rejected &mdash; but in the presence of automatic
-       casts both sides were cast to <type>text</type> and a textual comparison
-       was done, because the <literal>text &lt; text</literal> operator was able
-       to match the expression when no other <literal>&lt;</literal> operator could.
-      </para>
-
-      <para>
-       Types <type>char(<replaceable>n</replaceable>)</type> and
-       <type>varchar(<replaceable>n</replaceable>)</type> still cast to <type>text</type>
-       automatically.  Also, automatic casting to <type>text</type> still works for
-       inputs to the concatenation (<literal>||</literal>) operator, so long as least
-       one input is a character-string type.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-        Full text search features from <filename>contrib/tsearch2</filename> have
-        been moved into the core server, with some minor syntax changes
-      </para>
-
-      <para>
-       <filename>contrib/tsearch2</filename> now contains a compatibility
-       interface.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <literal>ARRAY(SELECT ...)</literal>, where the <command>SELECT</command>
-       returns no rows, now returns an empty array, rather than NULL
-       (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The array type name for a base data type is no longer always the base
-       type's name with an underscore prefix
-      </para>
-
-      <para>
-       The old naming convention is still honored when possible, but
-       application code should no longer depend on it. Instead
-       use the new <literal>pg_type.typarray</literal> column to
-       identify the array data type associated with a given type.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <literal>ORDER BY ... USING</literal> <replaceable>operator</replaceable> must now
-       use a less-than or greater-than <replaceable>operator</replaceable> that is
-       defined in a btree operator class
-      </para>
-
-      <para>
-       This restriction was added to prevent inconsistent results.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>SET LOCAL</command> changes now persist until
-       the end of the outermost transaction, unless rolled back (Tom)
-      </para>
-
-      <para>
-       Previously <command>SET LOCAL</command>'s effects were lost
-       after subtransaction commit (<command>RELEASE SAVEPOINT</command>
-       or exit from a PL/pgSQL exception block).
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Commands rejected in transaction blocks are now also rejected in
-       multiple-statement query strings (Tom)
-      </para>
-
-      <para>
-       For example, <literal>"BEGIN; DROP DATABASE; COMMIT"</literal> will now be
-       rejected even if submitted as a single query message.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>ROLLBACK</command> outside a transaction block now
-       issues <literal>NOTICE</literal> instead of <literal>WARNING</literal> (Bruce)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Prevent <command>NOTIFY</command>/<command>LISTEN</command>/<command>UNLISTEN</command>
-       from accepting schema-qualified names (Bruce)
-      </para>
-
-      <para>
-       Formerly, these commands accepted <literal>schema.relation</literal> but
-       ignored the schema part, which was confusing.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>ALTER SEQUENCE</command> no longer affects the sequence's
-       <function>currval()</function> state (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Foreign keys now must match indexable conditions for
-       cross-data-type references (Tom)
-      </para>
-
-      <para>
-       This improves semantic consistency and helps avoid
-       performance problems.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Restrict object size functions to users who have reasonable
-       permissions to view such information (Tom)
-      </para>
-
-      <para>
-       For example, <function>pg_database_size()</function> now requires
-       <literal>CONNECT</literal> permission, which is granted to everyone by
-       default. <function>pg_tablespace_size()</function> requires
-       <literal>CREATE</literal> permission in the tablespace, or is allowed if
-       the tablespace is the default tablespace for the database.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove the undocumented <literal>!!=</literal> (not in) operator (Tom)
-      </para>
-
-      <para>
-       <literal>NOT IN (SELECT ...)</literal> is the proper way to
-       perform this operation.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Internal hashing functions are now more uniformly-distributed (Tom)
-      </para>
-
-      <para>
-       If application code was computing and storing hash values using
-       internal <productname>PostgreSQL</productname> hashing functions, the hash
-       values must be regenerated.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       C-code conventions for handling variable-length data values
-       have changed (Greg Stark, Tom)
-      </para>
-
-      <para>
-       The new <function>SET_VARSIZE()</function> macro <emphasis>must</emphasis> be used
-       to set the length of generated <type>varlena</type> values. Also, it
-       might be necessary to expand (<quote>de-TOAST</quote>) input values
-       in more cases.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Continuous archiving no longer reports each successful archive
-       operation to the server logs unless <literal>DEBUG</literal> level is used
-       (Simon)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Configuration Parameters</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Numerous changes in administrative server parameters
-      </para>
-
-      <para>
-       <varname>bgwriter_lru_percent</varname>,
-       <varname>bgwriter_all_percent</varname>,
-       <varname>bgwriter_all_maxpages</varname>,
-       <varname>stats_start_collector</varname>, and
-       <varname>stats_reset_on_server_start</varname> are removed.
-       <varname>redirect_stderr</varname> is renamed to
-       <varname>logging_collector</varname>.
-       <varname>stats_command_string</varname> is renamed to
-       <varname>track_activities</varname>.
-       <varname>stats_block_level</varname> and <varname>stats_row_level</varname>
-       are merged into <varname>track_counts</varname>.
-       A new boolean configuration parameter, <varname>archive_mode</varname>,
-       controls archiving. Autovacuum's default settings have changed.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <varname>stats_start_collector</varname> parameter (Tom)
-      </para>
-
-      <para>
-       We now always start the collector process, unless <acronym>UDP</acronym>
-       socket creation fails.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <varname>stats_reset_on_server_start</varname> parameter (Tom)
-      </para>
-
-      <para>
-       This was removed because <function>pg_stat_reset()</function>
-       can be used for this purpose.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Commenting out a parameter in <filename>postgresql.conf</filename> now
-       causes it to revert to its default value (Joachim Wieland)
-      </para>
-
-      <para>
-       Previously, commenting out an entry left the parameter's value unchanged
-       until the next server restart.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-    </sect3>
-
-
-    <sect3>
-     <title>Character Encodings</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add more checks for invalidly-encoded data (Andrew)
-      </para>
-
-      <para>
-       This change plugs some holes that existed in literal backslash
-       escape string processing and <command>COPY</command> escape
-       processing. Now the de-escaped string is rechecked to see if the
-       result created an invalid multi-byte character.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Disallow database encodings that are inconsistent with the server's
-       locale setting (Tom)
-      </para>
-
-      <para>
-       On most platforms, <literal>C</literal> locale is the only locale that
-       will work with any database encoding.  Other locale settings imply
-       a specific encoding and will misbehave if the database encoding
-       is something different.  (Typical symptoms include bogus textual
-       sort order and wrong results from <function>upper()</function> or
-       <function>lower()</function>.)  The server now rejects attempts to create
-       databases that have an incompatible encoding.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Ensure that <function>chr()</function> cannot create
-       invalidly-encoded values (Andrew)
-      </para>
-
-      <para>
-       In UTF8-encoded databases the argument of <function>chr()</function> is
-       now treated as a Unicode code point. In other multi-byte encodings
-       <function>chr()</function>'s argument must designate a 7-bit ASCII
-       character.  Zero is no longer accepted.
-       <function>ascii()</function> has been adjusted to match.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Adjust <function>convert()</function> behavior to ensure encoding
-       validity (Andrew)
-      </para>
-
-      <para>
-       The two argument form of <function>convert()</function> has been
-       removed. The three argument form now takes a <type>bytea</type>
-       first argument and returns a <type>bytea</type>. To cover the
-       loss of functionality, three new functions have been added:
-      </para>
-
-      <itemizedlist>
-       <listitem>
-        <para>
-         <function>convert_from(bytea, name)</function> returns
-         <type>text</type> &mdash; converts the first argument from the named
-         encoding to the database encoding
-        </para>
-       </listitem>
-
-       <listitem>
-        <para>
-         <function>convert_to(text, name)</function> returns
-         <type>bytea</type> &mdash; converts the first argument from the
-         database encoding to the named encoding
-        </para>
-       </listitem>
-
-       <listitem>
-        <para>
-         <function>length(bytea, name)</function> returns
-         <type>integer</type> &mdash; gives the length of the first
-         argument in characters in the named encoding
-        </para>
-       </listitem>
-      </itemizedlist>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <literal>convert(argument USING conversion_name)</literal>
-       (Andrew)
-      </para>
-
-      <para>
-       Its behavior did not match the SQL standard.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make JOHAB encoding client-only (Tatsuo)
-      </para>
-
-      <para>
-       JOHAB is not safe as a server-side encoding.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <para>
-    Below you will find a detailed account of the
-    changes between <productname>PostgreSQL</productname> 8.3 and
-    the previous major release.
-   </para>
-
-   <sect3>
-    <title>Performance</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Asynchronous commit delays writes to WAL during transaction commit
-       (Simon)
-      </para>
-
-      <para>
-       This feature dramatically increases performance for short data-modifying
-       transactions. The disadvantage is that because disk writes are
-       delayed, if the operating system crashes before data is written to
-       the disk, committed data will be lost. This feature is useful for
-       applications that can accept some data loss.  Unlike turning off
-       <varname>fsync</varname>, asynchronous commit does not put database
-       consistency at risk; the worst case is that after a database or system
-       crash the last few reportedly-committed transactions might be missing.
-       This feature is enabled by turning off <varname>synchronous_commit</varname>
-       (which can be done per-session or per-transaction, if some transactions
-       are critical and others are not).
-       <varname>wal_writer_delay</varname> can be adjusted to control the maximum
-       delay before transactions actually reach disk.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Checkpoint writes can be spread over a longer time period to smooth
-       the I/O spike during each checkpoint (Itagaki Takahiro and Heikki
-       Linnakangas)
-      </para>
-
-      <para>
-       Previously all modified buffers were forced to disk as quickly as
-       possible during a
-       checkpoint, causing an I/O spike that decreased server performance.
-       This new approach spreads out disk writes during checkpoints,
-       reducing peak I/O usage. (User-requested and shutdown checkpoints
-       are still written as quickly as possible.)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Heap-Only Tuples (<acronym>HOT</acronym>) accelerate space reuse for most
-       <command>UPDATE</command>s and <command>DELETE</command>s (Pavan Deolasee, with
-       ideas from many others)
-      </para>
-
-      <para>
-       <command>UPDATE</command>s and <command>DELETE</command>s leave dead tuples
-       behind, as do failed <command>INSERT</command>s.  Previously only
-       <command>VACUUM</command> could reclaim space taken by dead tuples. With
-       <acronym>HOT</acronym> dead tuple space can be automatically reclaimed at the time of
-       <command>INSERT</command> or <command>UPDATE</command> if no changes are made to
-       indexed columns.  This allows for more consistent performance.
-       Also, <acronym>HOT</acronym> avoids adding duplicate index entries.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Just-in-time background writer strategy improves disk write
-       efficiency (Greg Smith, Itagaki Takahiro)
-      </para>
-
-      <para>
-       This greatly reduces the need for manual tuning of the background
-       writer.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Per-field and per-row storage overhead have been reduced
-       (Greg Stark, Heikki Linnakangas)
-      </para>
-
-      <para>
-       Variable-length data types with data values less than 128 bytes long
-       will see a storage decrease of 3 to 6 bytes. For example, two adjacent
-       <type>char(1)</type> fields now use 4 bytes instead of 16. Row headers
-       are also 4 bytes shorter than before.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Using non-persistent transaction IDs for read-only transactions
-       reduces overhead and <command>VACUUM</command> requirements (Florian Pflug)
-      </para>
-
-      <para>
-       Non-persistent transaction IDs do not increment the global
-       transaction counter. Therefore, they reduce the load on
-       <structname>pg_clog</structname> and increase the time between forced
-       vacuums to prevent transaction ID wraparound.
-       Other performance
-       improvements were also made that should improve concurrency.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Avoid incrementing the command counter after a read-only command (Tom)
-      </para>
-
-      <para>
-       There was formerly a hard limit of 2<superscript>32</superscript>
-       (4 billion) commands per transaction.  Now only commands that
-       actually changed the database count, so while this limit still
-       exists, it should be significantly less annoying.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Create a dedicated <acronym>WAL</acronym> writer process to off-load
-       work from backends (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Skip unnecessary WAL writes for <command>CLUSTER</command> and
-       <command>COPY</command> (Simon)
-      </para>
-
-      <para>
-       Unless WAL archiving is enabled, the system now avoids WAL writes
-       for <command>CLUSTER</command> and just <function>fsync()</function>s the
-       table at the end of the command.  It also does the same for
-       <command>COPY</command> if the table was created in the same
-       transaction.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Large sequential scans no longer force out frequently used
-       cached pages (Simon, Heikki, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Concurrent large sequential scans can now share disk reads (Jeff Davis)
-      </para>
-
-      <para>
-       This is accomplished by starting the new sequential scan in the
-       middle of the table (where another sequential scan is already
-       in-progress) and wrapping around to the beginning to finish.  This
-       can affect the order of returned rows in a query that does not
-       specify <literal>ORDER BY</literal>. The <varname>synchronize_seqscans</varname>
-       configuration parameter can be used to disable this if necessary.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <literal>ORDER BY ... LIMIT</literal> can be done without sorting
-       (Greg Stark)
-      </para>
-
-      <para>
-       This is done by sequentially scanning the table and tracking just
-       the <quote>top N</quote> candidate rows, rather than performing a
-       full sort of the entire table.  This is useful when there is no
-       matching index and the <literal>LIMIT</literal> is not large.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Put a rate limit on messages sent to the statistics
-       collector by backends
-       (Tom)
-      </para>
-
-      <para>
-       This reduces overhead for short transactions, but might sometimes
-       increase the delay before statistics are tallied.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve hash join performance for cases with many NULLs (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Speed up operator lookup for cases with non-exact datatype matches (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Server</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Autovacuum is now enabled by default (Alvaro)
-      </para>
-
-      <para>
-       Several changes were made to eliminate disadvantages of having
-       autovacuum enabled, thereby justifying the change in default.
-       Several other autovacuum parameter defaults were also modified.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support multiple concurrent autovacuum processes (Alvaro, Itagaki
-       Takahiro)
-      </para>
-
-      <para>
-       This allows multiple vacuums to run concurrently.  This prevents
-       vacuuming of a large table from delaying vacuuming of smaller tables.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Automatically re-plan cached queries when table
-       definitions change or statistics are updated (Tom)
-      </para>
-
-      <para>
-       Previously PL/PgSQL functions that referenced temporary tables
-       would fail if the temporary table was dropped and recreated
-       between function invocations, unless <literal>EXECUTE</literal> was
-       used.  This improvement fixes that problem and many related issues.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a <varname>temp_tablespaces</varname> parameter to control
-       the tablespaces for temporary tables and files (Jaime Casanova,
-       Albert Cervera, Bernd Helmle)
-      </para>
-
-      <para>
-       This parameter defines a list of tablespaces to be used.  This
-       enables spreading the I/O load across multiple tablespaces. A random
-       tablespace is chosen each time a temporary object is created.
-       Temporary files are no longer stored in per-database
-       <filename>pgsql_tmp/</filename> directories but in per-tablespace
-       directories.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Place temporary tables' TOAST tables in special schemas named
-       <literal>pg_toast_temp_<replaceable>nnn</replaceable></literal> (Tom)
-      </para>
-
-      <para>
-       This allows low-level code to recognize these tables as temporary,
-       which enables various optimizations such as not WAL-logging changes
-       and using local rather than shared buffers for access. This also
-       fixes a bug wherein backends unexpectedly held open file references
-       to temporary TOAST tables.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix problem that a constant flow of new connection requests could
-       indefinitely delay the postmaster from completing a shutdown or
-       a crash restart (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Guard against a very-low-probability data loss scenario by preventing
-       re-use of a deleted table's relfilenode until after the next
-       checkpoint (Heikki)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <command>CREATE CONSTRAINT TRIGGER</command>
-       to convert old-style foreign key trigger definitions into regular
-       foreign key constraints (Tom)
-      </para>
-
-      <para>
-       This will ease porting of foreign key constraints carried forward from
-       pre-7.3 databases, if they were never converted using
-       <filename>contrib/adddepend</filename>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <literal>DEFAULT NULL</literal> to override inherited defaults (Tom)
-      </para>
-
-      <para>
-       <literal>DEFAULT NULL</literal> was formerly considered a noise phrase, but it
-       should (and now does) override non-null defaults that would otherwise
-       be inherited from a parent table or domain.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add new encodings EUC_JIS_2004 and SHIFT_JIS_2004 (Tatsuo)
-      </para>
-
-      <para>
-       These new encodings can be converted to and from UTF-8.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Change server startup log message from <quote>database system is
-       ready</quote> to <quote>database system is ready to accept
-       connections</quote>, and adjust its timing
-      </para>
-
-      <para>
-       The message now appears only when the postmaster is really ready
-       to accept connections.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Monitoring</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add <varname>log_autovacuum_min_duration</varname> parameter to
-       support configurable logging of autovacuum activity (Simon, Alvaro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <varname>log_lock_waits</varname> parameter to log lock waiting
-       (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <varname>log_temp_files</varname> parameter to log temporary
-       file usage (Bill Moran)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <varname>log_checkpoints</varname> parameter to improve logging
-       of checkpoints (Greg Smith, Heikki)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <varname>log_line_prefix</varname> now supports
-       <literal>%s</literal> and <literal>%c</literal> escapes in all
-       processes (Andrew)
-      </para>
-
-      <para>
-       Previously these escapes worked only for user sessions, not for
-       background database processes.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <varname>log_restartpoints</varname> to control logging of
-       point-in-time recovery restart points (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Last transaction end time is now logged at end of recovery and at
-       each logged restart point (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Autovacuum now reports its activity start time in
-       <literal>pg_stat_activity</literal> (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow server log output in comma-separated value (CSV) format (Arul
-       Shaji, Greg Smith, Andrew Dunstan)
-      </para>
-
-      <para>
-       CSV-format log files can easily be loaded into a database table for
-       subsequent analysis.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Use PostgreSQL-supplied timezone support for formatting timestamps
-       displayed in the server log (Tom)
-      </para>
-
-      <para>
-       This avoids Windows-specific problems with localized time zone
-       names that are in the wrong encoding. There is a new
-       <varname>log_timezone</varname> parameter that controls the timezone
-       used in log messages, independently of the client-visible
-       <varname>timezone</varname> parameter.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       New system view <literal>pg_stat_bgwriter</literal> displays
-       statistics about background writer activity (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add new columns for database-wide tuple statistics to
-       <literal>pg_stat_database</literal> (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add an <literal>xact_start</literal> (transaction start time) column to
-       <literal>pg_stat_activity</literal> (Neil)
-      </para>
-
-      <para>
-       This makes it easier to identify long-running transactions.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>n_live_tuples</literal> and <literal>n_dead_tuples</literal> columns
-       to <literal>pg_stat_all_tables</literal> and related views (Glen
-       Parker)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Merge <varname>stats_block_level</varname> and <varname>stats_row_level</varname>
-       parameters into a single parameter <varname>track_counts</varname>, which
-       controls all messages sent to the statistics collector process
-       (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Rename <varname>stats_command_string</varname> parameter to
-       <varname>track_activities</varname> (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix statistical counting of live and dead tuples to recognize that
-       committed and aborted transactions have different effects (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Authentication</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Support Security Service Provider Interface (<acronym>SSPI</acronym>) for
-       authentication on Windows (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support GSSAPI authentication (Henry Hotz, Magnus)
-      </para>
-
-      <para>
-       This should be preferred to native Kerberos authentication because
-       GSSAPI is an industry standard.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support a global SSL configuration file (Victor Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <varname>ssl_ciphers</varname> parameter to control accepted SSL ciphers
-       (Victor Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a Kerberos realm parameter, <varname>krb_realm</varname> (Magnus)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Write-Ahead Log (<acronym>WAL</acronym>) and Continuous Archiving</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Change the timestamps recorded in transaction WAL records from
-       time_t to TimestampTz representation (Tom)
-      </para>
-
-      <para>
-       This provides sub-second resolution in WAL, which can be useful for
-       point-in-time recovery.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Reduce WAL disk space needed by warm standby servers (Simon)
-      </para>
-
-      <para>
-       This change allows a warm standby server to pass the name of the earliest
-       still-needed WAL file to the recovery script, allowing automatic removal
-       of no-longer-needed WAL files.  This is done using <literal>%r</literal> in
-       the <varname>restore_command</varname> parameter of
-       <filename>recovery.conf</filename>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       New boolean configuration parameter, <varname>archive_mode</varname>,
-       controls archiving (Simon)
-      </para>
-
-      <para>
-       Previously setting <varname>archive_command</varname> to an empty string
-       turned off archiving. Now <varname>archive_mode</varname> turns archiving
-       on and off, independently of <varname>archive_command</varname>. This is
-       useful for stopping archiving temporarily.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Queries</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Full text search is integrated into the core database
-       system (Teodor, Oleg)
-      </para>
-
-      <para>
-       Text search has been improved, moved into the core code, and is now
-       installed by default.  <filename>contrib/tsearch2</filename> now contains
-       a compatibility interface.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add control over whether <literal>NULL</literal>s sort first or last (Teodor, Tom)
-      </para>
-
-      <para>
-       The syntax is <literal>ORDER BY ... NULLS FIRST/LAST</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow per-column ascending/descending (<literal>ASC</literal>/<literal>DESC</literal>)
-       ordering options for indexes (Teodor, Tom)
-      </para>
-
-      <para>
-       Previously a query using <literal>ORDER BY</literal> with mixed
-       <literal>ASC</literal>/<literal>DESC</literal> specifiers could not fully use
-       an index. Now an index can be fully used in such cases if the
-       index was created with matching
-       <literal>ASC</literal>/<literal>DESC</literal> specifications.
-       <literal>NULL</literal> sort order within an index can be controlled, too.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>col IS NULL</literal> to use an index (Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Updatable cursors (Arul Shaji, Tom)
-      </para>
-
-      <para>
-       This eliminates the need to reference a primary key to
-       <command>UPDATE</command> or <command>DELETE</command> rows returned by a cursor.
-       The syntax is <literal>UPDATE/DELETE WHERE CURRENT OF</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>FOR UPDATE</literal> in cursors (Arul Shaji, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Create a general mechanism that supports casts to and from the
-       standard string types (<type>TEXT</type>, <type>VARCHAR</type>,
-       <type>CHAR</type>) for <emphasis>every</emphasis> datatype, by
-       invoking the datatype's I/O functions (Tom)
-      </para>
-
-      <para>
-       Previously, such casts were available only for types that had
-       specialized function(s) for the purpose.
-       These new casts are assignment-only in the to-string direction,
-       explicit-only in the other direction, and therefore should create no
-       surprising behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>UNION</literal> and related constructs to return a domain
-       type, when all inputs are of that domain type (Tom)
-      </para>
-
-      <para>
-       Formerly, the output would be considered to be of the domain's base
-       type.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow limited hashing when using two different data types (Tom)
-      </para>
-
-      <para>
-       This allows hash joins, hash indexes, hashed subplans, and hash
-       aggregation to be used in situations involving cross-data-type
-       comparisons, if the data types have compatible hash functions.
-       Currently, cross-data-type hashing support exists for
-       <type>smallint</type>/<type>integer</type>/<type>bigint</type>,
-       and for <type>float4</type>/<type>float8</type>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve optimizer logic for detecting when variables are equal
-       in a <literal>WHERE</literal> clause (Tom)
-      </para>
-
-      <para>
-       This allows mergejoins to work with descending sort orders, and
-       improves recognition of redundant sort columns.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve performance when planning large inheritance trees in
-       cases where most tables are excluded by constraints (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Object Manipulation</title>
-    <itemizedlist>
-
-     <listitem>
-
-      <para>
-       Arrays of composite types (David Fetter, Andrew, Tom)
-      </para>
-
-      <para>
-       In addition to arrays of explicitly-declared composite types,
-       arrays of the rowtypes of regular tables and views are now
-       supported, except for rowtypes of system catalogs, sequences, and TOAST
-       tables.
-      </para>
-
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameters can now be set on a per-function
-       basis (Tom)
-      </para>
-
-      <para>
-       For example, functions can now set their own
-       <varname>search_path</varname> to prevent unexpected behavior if a
-       different <varname>search_path</varname> exists at run-time.  Security
-       definer functions should set <varname>search_path</varname> to
-       avoid security loopholes.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>CREATE/ALTER FUNCTION</command> now supports
-       <literal>COST</literal> and <literal>ROWS</literal> options (Tom)
-      </para>
-
-      <para>
-       <literal>COST</literal> allows specification of the cost of a
-       function call.  <literal>ROWS</literal> allows specification of
-       the average number or rows returned by a set-returning function.
-       These values are used by the optimizer in choosing the best plan.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Implement <command>CREATE TABLE LIKE ...  INCLUDING
-       INDEXES</command> (Trevor Hardcastle, Nikhil Sontakke, Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <command>CREATE INDEX CONCURRENTLY</command> to ignore
-       transactions in other databases (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <command>ALTER VIEW ... RENAME TO</command> and <command>ALTER
-       SEQUENCE ... RENAME TO</command> (David Fetter, Neil)
-      </para>
-
-      <para>
-       Previously this could only be done via <command>ALTER TABLE ...
-       RENAME TO</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <command>CREATE/DROP/RENAME DATABASE</command> wait briefly for
-       conflicting backends to exit before failing (Tom)
-      </para>
-
-      <para>
-       This increases the likelihood that these commands will succeed.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow triggers and rules to be deactivated in groups using a
-       configuration parameter, for replication purposes (Jan)
-      </para>
-
-      <para>
-       This allows replication systems to disable triggers and rewrite
-       rules as a group without modifying the system catalogs directly.
-       The behavior is controlled by <command>ALTER TABLE</command> and a new
-       parameter <varname>session_replication_role</varname>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       User-defined types can now have type modifiers (Teodor, Tom)
-      </para>
-
-      <para>
-       This allows a user-defined type to take a modifier, like
-       <type>ssnum(7)</type>.  Previously only built-in
-       data types could have modifiers.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Utility Commands</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Non-superuser database owners now are able to add trusted procedural
-       languages to their databases by default (Jeremy Drake)
-      </para>
-
-      <para>
-       While this is reasonably safe, some administrators might wish to
-       revoke the privilege. It is controlled by
-       <structname>pg_pltemplate</structname>.<structfield>tmpldbacreate</structfield>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow a session's current parameter setting to be used as the
-       default for future sessions (Tom)
-      </para>
-
-      <para>
-       This is done with <literal>SET ... FROM CURRENT</literal> in
-       <command>CREATE/ALTER FUNCTION</command>, <command>ALTER
-       DATABASE</command>, or <command>ALTER ROLE</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Implement new commands <command>DISCARD ALL</command>,
-       <command>DISCARD PLANS</command>, <command>DISCARD
-       TEMPORARY</command>, <command>CLOSE ALL</command>, and
-       <command>DEALLOCATE ALL</command> (Marko Kreen, Neil)
-      </para>
-
-      <para>
-       These commands simplify resetting a database session to its initial
-       state, and are particularly useful for connection-pooling software.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <command>CLUSTER</command> MVCC-safe (Heikki Linnakangas)
-      </para>
-
-      <para>
-       Formerly, <command>CLUSTER</command> would discard all tuples
-       that were committed dead, even if there were still transactions
-       that should be able to see them under MVCC visibility rules.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add new <command>CLUSTER</command> syntax: <literal>CLUSTER
-       <replaceable>table</replaceable> USING <replaceable>index</replaceable></literal>
-       (Holger Schurig)
-     </para>
-
-      <para>
-       The old <command>CLUSTER</command> syntax is still supported, but
-       the new form is considered more logical.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <command>EXPLAIN</command> so it can show complex plans
-       more accurately (Tom)
-      </para>
-
-      <para>
-       References to subplan outputs are now always shown correctly,
-       instead of using <literal>?column<replaceable>N</replaceable>?</literal>
-       for complicated cases.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Limit the amount of information reported when a user is dropped
-       (Alvaro)
-      </para>
-
-      <para>
-       Previously, dropping (or attempting to drop) a user who owned many
-       objects could result in large <literal>NOTICE</literal> or
-       <literal>ERROR</literal> messages listing all these objects; this
-       caused problems for some client applications.  The length of the
-       message is now limited, although a full list is still sent to the
-       server log.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Data Types</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Support for the SQL/XML standard, including new operators and an
-       <type>XML</type> data type (Nikolay Samokhvalov, Pavel Stehule, Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Enumerated data types (<type>ENUM</type>) (Tom Dunstan)
-      </para>
-
-      <para>
-       This feature provides convenient support for fields that have a
-       small, fixed set of allowed values.  An example of creating an
-       <literal>ENUM</literal> type is
-       <literal>CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy')</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Universally Unique Identifier (<type>UUID</type>) data type (Gevik
-       Babakhani, Neil)
-      </para>
-
-      <para>
-       This closely matches <acronym>RFC</acronym> 4122.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Widen the <type>MONEY</type> data type to 64 bits (D'Arcy Cain)
-      </para>
-
-      <para>
-       This greatly increases the range of supported <type>MONEY</type>
-       values.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <type>float4</type>/<type>float8</type> to handle
-       <literal>Infinity</literal> and <literal>NAN</literal> (Not A Number)
-       consistently (Bruce)
-      </para>
-
-      <para>
-       The code formerly was not consistent about distinguishing
-       <literal>Infinity</literal> from overflow conditions.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow leading and trailing whitespace during input of
-       <type>boolean</type> values (Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Prevent <command>COPY</command> from using digits and lowercase letters as
-       delimiters (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Functions</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add new regular expression functions
-       <function>regexp_matches()</function>,
-       <function>regexp_split_to_array()</function>, and
-       <function>regexp_split_to_table()</function> (Jeremy Drake, Neil)
-      </para>
-
-      <para>
-       These functions provide extraction of regular expression
-       subexpressions and allow splitting a string using a POSIX regular
-       expression.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>lo_truncate()</function> for large object truncation
-       (Kris Jurka)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Implement <function>width_bucket()</function> for the <type>float8</type>
-       data type (Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>pg_stat_clear_snapshot()</function> to discard
-       statistics snapshots collected during the current transaction
-       (Tom)
-      </para>
-
-      <para>
-       The first request for statistics in a transaction takes a statistics
-       snapshot that does not change during the transaction.  This function
-       allows the snapshot to be discarded and a new snapshot loaded during
-       the next statistics query. This is particularly useful for PL/PgSQL
-       functions, which are confined to a single transaction.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>isodow</literal> option to <function>EXTRACT()</function> and
-       <function>date_part()</function> (Bruce)
-      </para>
-
-      <para>
-       This returns the day of the week, with Sunday as seven.
-       (<literal>dow</literal> returns Sunday as zero.)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>ID</literal> (ISO day of week) and <literal>IDDD</literal> (ISO
-       day of year) format codes for <function>to_char()</function>,
-       <function>to_date()</function>, and <function>to_timestamp()</function> (Brendan
-       Jurd)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <function>to_timestamp()</function> and <function>to_date()</function>
-       assume <literal>TM</literal> (trim) option for potentially
-       variable-width fields (Bruce)
-      </para>
-
-      <para>
-       This matches <productname>Oracle</productname>'s behavior.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix off-by-one conversion error in
-       <function>to_date()</function>/<function>to_timestamp()</function>
-       <literal>D</literal> (non-ISO day of week) fields (Bruce)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <function>setseed()</function> return void, rather than a
-       useless integer value (Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a hash function for <type>NUMERIC</type> (Neil)
-      </para>
-
-      <para>
-       This allows hash indexes and hash-based plans to be used with
-       <type>NUMERIC</type> columns.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve efficiency of
-       <literal>LIKE</literal>/<literal>ILIKE</literal>, especially for
-       multi-byte character sets like UTF-8 (Andrew, Itagaki Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make <function>currtid()</function> functions require
-       <literal>SELECT</literal> privileges on the target table (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add several <function>txid_*()</function> functions to query
-       active transaction IDs (Jan)
-      </para>
-
-      <para>
-       This is useful for various replication solutions.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>PL/PgSQL Server-Side Language</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add scrollable cursor support, including directional control in
-       <command>FETCH</command> (Pavel Stehule)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>IN</literal> as an alternative to
-       <literal>FROM</literal> in PL/PgSQL's <command>FETCH</command>
-       statement, for consistency with the backend's
-       <command>FETCH</command> command (Pavel Stehule)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <command>MOVE</command> to PL/PgSQL (Magnus, Pavel Stehule,
-       Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Implement <command>RETURN QUERY</command> (Pavel Stehule, Neil)
-      </para>
-
-      <para>
-       This adds convenient syntax for PL/PgSQL set-returning functions
-       that want to return the result of a query.  <command>RETURN QUERY</command>
-       is easier and more efficient than a loop
-       around <command>RETURN NEXT</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow function parameter names to be qualified with the
-       function's name (Tom)
-      </para>
-
-      <para>
-       For example, <literal>myfunc.myvar</literal>. This is particularly
-       useful for specifying variables in a query where the variable
-       name might match a column name.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make qualification of variables with block labels work properly (Tom)
-      </para>
-
-      <para>
-       Formerly, outer-level block labels could unexpectedly interfere with
-       recognition of inner-level record or row references.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Tighten requirements for <literal>FOR</literal> loop
-       <literal>STEP</literal> values (Tom)
-      </para>
-
-      <para>
-       Prevent non-positive <literal>STEP</literal> values, and handle
-       loop overflows.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve accuracy when reporting syntax error locations (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Other Server-Side Languages</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Allow type-name arguments to PL/Perl
-       <function>spi_prepare()</function> to be data type aliases in
-       addition to names found in <literal>pg_type</literal> (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow type-name arguments to PL/Python
-       <function>plpy.prepare()</function> to be data type aliases in
-       addition to names found in <literal>pg_type</literal> (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow type-name arguments to PL/Tcl <function>spi_prepare</function> to
-       be data type aliases in addition to names found in
-       <literal>pg_type</literal> (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Enable PL/PythonU to compile on Python 2.5 (Marko Kreen)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support a true PL/Python boolean type in compatible Python versions
-       (Python 2.3 and later) (Marko Kreen)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix PL/Tcl problems with thread-enabled <filename>libtcl</filename> spawning
-       multiple threads within the backend (Steve Marshall, Paul Bayer,
-       Doug Knight)
-      </para>
-
-      <para>
-       This caused all sorts of unpleasantness.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><link linkend="app-psql"><application>psql</application></link></title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       List disabled triggers separately in <literal>\d</literal> output
-       (Brendan Jurd)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       In <literal>\d</literal> patterns, always match <literal>$</literal>
-       literally (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Show aggregate return types in <literal>\da</literal> output
-       (Greg Sabino Mullane)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add the function's volatility status to the output of
-       <literal>\df+</literal> (Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>\prompt</literal> capability (Chad Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <literal>\pset</literal>, <literal>\t</literal>, and
-       <literal>\x</literal> to specify <literal>on</literal> or <literal>off</literal>,
-       rather than just toggling (Chad Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <literal>\sleep</literal> capability (Jan)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Enable <literal>\timing</literal> output for <literal>\copy</literal> (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve <literal>\timing</literal> resolution on Windows
-       (Itagaki Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Flush <literal>\o</literal> output after each backslash command (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correctly detect and report errors while reading a <literal>-f</literal>
-       input file (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <literal>-u</literal> option (this option has long been deprecated)
-       (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add <literal>--tablespaces-only</literal> and <literal>--roles-only</literal>
-       options to <application>pg_dumpall</application> (Dave Page)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add an output file option to
-       <application>pg_dumpall</application> (Dave Page)
-      </para>
-
-      <para>
-       This is primarily useful on Windows, where output redirection of
-       child <application>pg_dump</application> processes does not work.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <application>pg_dumpall</application> to accept an initial-connection
-       database name rather than the default
-       <literal>template1</literal> (Dave Page)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       In <literal>-n</literal> and <literal>-t</literal> switches, always match
-       <literal>$</literal> literally (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve performance when a database has thousands of objects (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Remove <literal>-u</literal> option (this option has long been deprecated)
-       (Tom)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Other Client Applications</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       In <application>initdb</application>, allow the location of the
-       <filename>pg_xlog</filename> directory to be specified
-       (Euler Taveira de Oliveira)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Enable server core dump generation in <application>pg_regress</application>
-       on supported operating systems (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a <literal>-t</literal> (timeout) parameter to <application>pg_ctl</application>
-       (Bruce)
-      </para>
-
-      <para>
-       This controls how long <application>pg_ctl</application> will wait when waiting
-       for server startup or shutdown.  Formerly the timeout was hard-wired
-       as 60 seconds.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add a <application>pg_ctl</application> option to control generation
-       of server core dumps (Andrew)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow Control-C to cancel <application>clusterdb</application>,
-       <application>reindexdb</application>, and <application>vacuumdb</application> (Itagaki
-       Takahiro, Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Suppress command tag output for <application>createdb</application>,
-       <application>createuser</application>, <application>dropdb</application>, and
-       <application>dropuser</application> (Peter)
-      </para>
-
-      <para>
-       The <literal>--quiet</literal> option is ignored and will be removed in 8.4.
-       Progress messages when acting on all databases now go to stdout
-       instead of stderr because they are not actually errors.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><link linkend="libpq"><application>libpq</application></link></title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Interpret the <literal>dbName</literal> parameter of
-       <function>PQsetdbLogin()</function> as a <literal>conninfo</literal> string if
-       it contains an equals sign (Andrew)
-      </para>
-
-      <para>
-       This allows use of <literal>conninfo</literal> strings in client
-       programs that still use <literal>PQsetdbLogin()</literal>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support a global <acronym>SSL</acronym> configuration file (Victor
-       Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add environment variable <varname>PGSSLKEY</varname> to control
-       <acronym>SSL</acronym> hardware keys (Victor Wagner)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>lo_truncate()</function> for large object
-       truncation (Kris Jurka)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>PQconnectionNeedsPassword()</function> that returns
-       true if the server required a password but none was supplied
-       (Joe Conway, Tom)
-      </para>
-
-      <para>
-       If this returns true after a failed connection attempt, a client
-       application should prompt the user for a password.  In the past
-       applications have had to check for a specific error message string to
-       decide whether a password is needed; that approach is now
-       deprecated.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>PQconnectionUsedPassword()</function> that returns
-       true if the supplied password was actually used
-       (Joe Conway, Tom)
-      </para>
-
-      <para>
-       This is useful in some security contexts where it is important
-       to know whether a user-supplied password is actually valid.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><link linkend="ecpg"><application>ecpg</application></link></title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Use V3 frontend/backend protocol (Michael)
-      </para>
-
-      <para>
-       This adds support for server-side prepared statements.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Use native threads, instead of pthreads, on Windows (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Improve thread-safety of ecpglib (Itagaki Takahiro)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Make the ecpg libraries export only necessary API symbols (Michael)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><application>Windows</application> Port</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Allow the whole <productname>PostgreSQL</productname> distribution to be compiled
-       with <productname>Microsoft Visual C++</productname> (Magnus and others)
-      </para>
-
-      <para>
-       This allows Windows-based developers to use familiar development
-       and debugging tools.
-       Windows executables made with Visual C++ might also have better
-       stability and performance than those made with other tool sets.
-       The client-only Visual C++ build scripts have been removed.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Drastically reduce postmaster's memory usage when it has many child
-       processes (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow regression tests to be started by an administrative
-       user (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add native shared memory implementation (Magnus)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Server Programming Interface (<acronym>SPI</acronym>)</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add cursor-related functionality in SPI (Pavel Stehule)
-      </para>
-
-      <para>
-       Allow access to the cursor-related planning options, and add
-       <command>FETCH</command>/<command>MOVE</command> routines.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow execution of cursor commands through
-       <function>SPI_execute</function> (Tom)
-      </para>
-
-      <para>
-       The macro <literal>SPI_ERROR_CURSOR</literal> still exists but will
-       never be returned.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       SPI plan pointers are now declared as <literal>SPIPlanPtr</literal> instead of
-       <literal>void *</literal> (Tom)
-      </para>
-
-      <para>
-       This does not break application code, but switching is
-       recommended to help catch simple programming mistakes.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Build Options</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Add <application>configure</application> option <literal>--enable-profiling</literal>
-       to enable code profiling (works only with <application>gcc</application>)
-       (Korry Douglas and Nikhil Sontakke)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <application>configure</application> option <literal>--with-system-tzdata</literal>
-       to use the operating system's time zone database (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fix <acronym>PGXS</acronym> so extensions can be built against PostgreSQL
-       installations whose <application>pg_config</application> program does not
-       appear first in the <varname>PATH</varname> (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Support <command>gmake draft</command> when building the
-       <acronym>SGML</acronym> documentation (Bruce)
-      </para>
-
-      <para>
-       Unless <literal>draft</literal> is used, the documentation build will
-       now be repeated if necessary to ensure the index is up-to-date.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Source Code</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Rename macro <literal>DLLIMPORT</literal> to <literal>PGDLLIMPORT</literal> to
-       avoid conflicting with third party includes (like Tcl) that
-       define <literal>DLLIMPORT</literal> (Magnus)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Create <quote>operator families</quote> to improve planning of
-       queries involving cross-data-type comparisons (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Update GIN <function>extractQuery()</function> API to allow signalling
-       that nothing can satisfy the query (Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Move <literal>NAMEDATALEN</literal> definition from
-       <filename>postgres_ext.h</filename> to <filename>pg_config_manual.h</filename>
-       (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Provide <function>strlcpy()</function> and
-       <function>strlcat()</function> on all platforms, and replace
-       error-prone uses of <function>strncpy()</function>,
-       <function>strncat()</function>, etc (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Create hooks to let an external plugin monitor (or even replace) the
-       planner and create plans for hypothetical situations (Gurjeet
-       Singh, Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Create a function variable <literal>join_search_hook</literal> to let plugins
-       override the join search order portion of the planner (Julius
-       Stroffek)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <function>tas()</function> support for Renesas' M32R processor
-       (Kazuhiro Inaoka)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <function>quote_identifier()</function> and
-       <application>pg_dump</application> no longer quote keywords that are
-       unreserved according to the grammar (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Change the on-disk representation of the <type>NUMERIC</type>
-       data type so that the <structfield>sign_dscale</structfield> word comes
-       before the weight (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Use <acronym>SYSV</acronym> semaphores rather than POSIX on Darwin
-       &gt;= 6.0, i.e., OS X 10.2 and up (Chris Marcellino)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <link linkend="acronyms">acronym</link> and <link
-       linkend="creating-cluster-nfs">NFS</link> documentation
-       sections (Bruce)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       "Postgres" is now documented as an accepted alias for
-       "PostgreSQL" (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add documentation about preventing database server spoofing when
-       the server is down (Bruce)
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Contrib</title>
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Move <filename>contrib</filename> <filename>README</filename> content into the
-       main <productname>PostgreSQL</productname> documentation (Albert Cervera i
-       Areny)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>contrib/pageinspect</filename> module for low-level
-       page inspection (Simon, Heikki)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>contrib/pg_standby</filename> module for controlling
-       warm standby operation (Simon)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>contrib/uuid-ossp</filename> module for generating
-       <type>UUID</type> values using the OSSP UUID library (Peter)
-      </para>
-
-      <para>
-       Use <application>configure</application>
-       <literal>--with-ossp-uuid</literal> to activate. This takes
-       advantage of the new <type>UUID</type> builtin type.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add <filename>contrib/dict_int</filename>,
-       <filename>contrib/dict_xsyn</filename>, and
-       <filename>contrib/test_parser</filename> modules to provide
-       sample add-on text search dictionary templates and parsers
-       (Sergey Karpov)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Allow <application>contrib/pgbench</application> to set the fillfactor (Pavan
-       Deolasee)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add timestamps to <application>contrib/pgbench</application> <literal>-l</literal>
-       (Greg Smith)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add usage count statistics to
-       <filename>contrib/pgbuffercache</filename> (Greg Smith)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add GIN support for <filename>contrib/hstore</filename> (Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Add GIN support for <filename>contrib/pg_trgm</filename> (Guillaume Smet, Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Update OS/X startup scripts in
-       <filename>contrib/start-scripts</filename> (Mark Cotner, David
-       Fetter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Restrict <function>pgrowlocks()</function> and
-       <function>dblink_get_pkey()</function> to users who have
-       <literal>SELECT</literal> privilege on the target table (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Restrict <filename>contrib/pgstattuple</filename> functions to
-       superusers (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <filename>contrib/xml2</filename> is deprecated and planned for
-       removal in 8.4 (Peter)
-      </para>
-
-      <para>
-       The new XML support in core PostgreSQL supersedes this module.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-13">
-  <title>Version 8.2.13</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-03-16</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.2.12.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.13</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.2.11, voir les notes de sortie de la 8.2.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.
-      (CVE-2009-0922)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
-      argument des codes de format inappropriés pour la donnée en argument
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un échec possible dans <filename>contrib/tsearch2</filename>
-      lorsque la locale C est utilisée avec un encodage multi-octets (Teodor)
-     </para>
-
-     <para>
-      Les crashes étaient possibles sur les plateformes où <type>wchar_t</type>
-      est plus petit que <type>int</type>&nbsp;; Windows en particulier.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de l'inefficacité extrême dans la gestion par l'analyseur
-      <filename>contrib/tsearch2</filename> d'une chaîne de type email contenant de
-      nombreux caractères <literal>@</literal> (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
-      cette instruction est utilisée avec une coercion explicite
-      (Tom)
-     </para>
-
-     <para>
-      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
-      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
-      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
-      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise affectation possible du propriétaire du rowtype
-      d'une table TOAST (Tom)
-     </para>
-
-     <para>
-      Si <command>CLUSTER</command> ou une variante de <command>ALTER
-      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
-      d'autre que le propriétaire de la table, l'entrée
-      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
-      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
-      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
-      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
-      opération ordinaire de la base de données. Néanmoins, cela peut amener
-      des échecs inattendus si une personne tente plus tard de supprimer le rôle
-      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
-      du type <quote>propriétaire du type de données semble invalide</quote>
-      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
-      (en 8.3).
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/pgSQL pour qu'il ne traite pas <literal>INTO</literal>
-      après un <command>INSERT</command> comme une clause d'affectation de
-      variables, quelque soit son emplacement&nbsp;; en particulier, cela
-      permet d'éviter un échec sur un <command>INSERT INTO</command> compris
-      dans une commande <command>CREATE RULE</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
-      bloc (Ashesh Vashi et Dave Page)
-     </para>
-
-     <para>
-      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
-      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
-      fonction.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ré-essaie d'appeler <function>CallNamedPipe()</function> après un échec
-      sur Windows (Steve Marshall, Magnus)
-     </para>
-
-     <para>
-      Il semble que cette fonction puisse échouer de temps en temps&nbsp;;
-      auparavant, nous avons traiter toute erreur comme une erreur grave
-      qui pourrait poser problème aux instructions <command>LISTEN</command>
-      / <command>NOTIFY</command> ainsi qu'à d'autres opérations.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de <literal>MUST</literal> (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-8-2-12">
-  <title>Version 8.2.12</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-02-02</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.2.11.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.12</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.2.7, voir les notes de sortie de la 8.2.7.
-   </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>
-      Empêche des échecs possibles avec Assert si une instruction exécutée en
-      PL/pgSQL est ré-écrite dans un autre type d'instruction, par exemple si
-      <command>INSERT</command> est ré-écrit en <command>UPDATE</command>
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une image de la base est disponible pour les fonctions en
-      entrée des types (Tom)
-     </para>
-
-     <para>
-      Ceci affecte principalement les domaines qui sont déclarés avec des
-      contraintes <literal>CHECK</literal> impliquant des fonctions stables
-      ou immutables définies par l'utilisateur. De telles fonctions échouent
-      typiquement si aucune image de la base n'a été réalisée.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Rend plus sûr l'utilisation des entrées/sorties de type avec les fonctions
-      SPI&nbsp;; en particulier à utiliser aves les contraintes de vérifications
-      pour les domaines (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Évite un verrou inutile des petites tables dans <command>VACUUM</command>
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un problème faisant que <literal>UPDATE RETURNING
-      tableoid</literal> renvoie zéro au lieu du bon OID (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise estimation de la sélectivité du planificateur
-      quand une égalité transitive est appliquée à une clause jointure externe
-      (Tom)
-     </para>
-
-     <para>
-      Ceci pourrait résulter en de mauvais plans pour les requêtes identiques à
-      <literal>... from a left join b on a.a1 = b.b1 where a.a1 = 42 ...</literal>
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Amélioration de la gestion des grosses listes <literal>IN</literal> par
-      l'optimiseur (Tom)
-     </para>
-
-     <para>
-      Cette modification évite de perdre beaucoup de temps sur de telles listes
-      dans la contrainte d'exclusion est activée.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
-      des tables TOAST (Tom)
-     </para>
-
-     <para>
-      Auparavant, des valeurs de champ large dans un résultat de curseur
-      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
-      un échec si la table référencée était supprimée avant la lecture du
-      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
-      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
-      un curseur qui est conservé après sa transaction de création.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une fuite mémoire lorsqu'une fonction SRF se termine sans
-      lecture du résultat complet (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la fonction <function>dblink_get_result(text,bool)</function>
-      de <filename>contrib/dblink</filename> (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un mauvais retour des fonctions de
-      <filename>contrib/sslinfo</filename> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction du script <application>configure</application> pour rapporter
-      correctement les échecs quand il est incapable d'obtenir les informations
-      de liens pour PL/Perl (Andrew)
-     </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>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
-      <application>tzdata</application> (pour le Kathmandou et des corrections
-      historiques de DST en Switzerland et à Cuba)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-11">
-  <title>Version 8.2.11</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2008-11-03</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.2.10.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.11</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.2.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.2.7, voir les notes de sortie de la 8.2.7.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
-      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
-     </para>
-
-     <para>
-      Cela peut avoir comme conséquence des échecs dans les recherches par
-      index pour des lignes qu'elles auraient dû trouver.
-     </para>
-    </listitem>
-
-    <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</quote> 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 d'un crash possible lorsque des fonctions profondément
-      imbriquées sont appelées à partir d'un trigger (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Amélioration de l'optimisation des requêtes de type
-      <replaceable>expression</replaceable> <literal>IN</literal>
-      (<replaceable>liste-expression</replaceable>) (Tom, à partir d'une idée de
-      Robert Haas)
-     </para>
-
-     <para>
-      Les cas où il se trouve des variables de requpetes dans le côté droit
-      étaient gérés moins efficacement dans les versions 8.2.x et 8.3.x que
-      dans les versions précédentes. La correction restaure le comportement
-      de la 8.1 pour ces cas.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise expansion de requêtes de règles quand un
-      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
-      <literal>FROM</literal>, d'une liste <literal>VALUES</literal> multi-lignes ou
-      d'une liste <literal>RETURNING</literal> (Tom)
-     </para>
-
-     <para>
-      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
-      inconnu</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une fuite mémoire lors du parcours d'un plan d'aggrégation
-      haché (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
-      nouvellement définie est appelée comme une fonction normale (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Empêche une collision possible du <structfield>relfilenode</structfield>
-      lors du déplacement d'une table vers un autre tablespace avec
-      <command>ALTER SET TABLESPACE</command> (Heikki)
-     </para>
-
-     <para>
-      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
-      prendre un qu'on sait inutilisé dans le répertoire de destination.
-     </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</option>
-      (Ron Mayer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
-      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</command> par
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <filename>pg_control</filename> en ouvert en mode binaire
-      seul (Itagaki Takahiro)
-     </para>
-
-     <para>
-      <application>pg_controldata</application> et <application>pg_resetxlog</application>
-      ne le faisaient pas correction, ce qui provoquait un échec sur Windows.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires vers la version
-      2008i de <application>tzdata</application> (pour les modifications légales de DST en
-      Argentine, au Brésil, à l'Île Maurice et en Syrie)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-10">
-  <title>Version 8.2.10</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-09-22</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.2.9.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.10</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
-    However, if you are upgrading from a version earlier than 8.2.7,
-    see the release notes for 8.2.7.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix bug in btree WAL recovery code (Heikki)
-     </para>
-
-     <para>
-      Recovery failed if the WAL ended partway through a page split operation.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix potential miscalculation of <structfield>datfrozenxid</structfield> (Alvaro)
-     </para>
-
-     <para>
-      This error may explain some recent reports of failure to remove old
-      <structname>pg_clog</structname> data.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Widen local lock counters from 32 to 64 bits (Tom)
-     </para>
-
-     <para>
-      This responds to reports that the counters could overflow in
-      sufficiently long transactions, leading to unexpected <quote>lock is
-      already held</quote> errors.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible duplicate output of tuples during a GiST index scan (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix missed permissions checks when a view contains a simple
-      <literal>UNION ALL</literal> construct (Heikki)
-     </para>
-
-     <para>
-      Permissions for the referenced tables were checked properly, but not
-      permissions for the view itself.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add checks in executor startup to ensure that the tuples produced by an
-      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
-      current rowtype (Tom)
-     </para>
-
-     <para>
-      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
-      cached plan, could produce this type of situation.  The check protects
-      against data corruption and/or crashes that could ensue.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible repeated drops during <command>DROP OWNED</command> (Tom)
-     </para>
-
-     <para>
-      This would typically result in strange errors such as <quote>cache
-      lookup failed for relation NNN</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <literal>AT TIME ZONE</literal> to first try to interpret its timezone
-      argument as a timezone abbreviation, and only try it as a full timezone
-      name if that fails, rather than the other way around as formerly (Tom)
-     </para>
-
-     <para>
-      The timestamp input functions have always resolved ambiguous zone names
-      in this order.  Making <literal>AT TIME ZONE</literal> do so as well improves
-      consistency, and fixes a compatibility bug introduced in 8.1:
-      in ambiguous cases we now behave the same as 8.0 and before did,
-      since in the older versions <literal>AT TIME ZONE</literal> accepted
-      <emphasis>only</emphasis> abbreviations.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix datetime input functions to correctly detect integer overflow when
-      running on a 64-bit platform (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Prevent integer overflows during units conversion when displaying a
-      configuration parameter that has units (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve performance of writing very long log messages to syslog (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow spaces in the suffix part of an LDAP URL in
-      <filename>pg_hba.conf</filename> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix bug in backwards scanning of a cursor on a <literal>SELECT DISTINCT
-      ON</literal> query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner bug with nested sub-select expressions (Tom)
-     </para>
-
-     <para>
-      If the outer sub-select has no direct dependency on the parent query,
-      but the inner one does, the outer value might not get recalculated
-      for new parent query rows.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to estimate that <literal>GROUP BY</literal> 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>
-      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
-      is a record containing composite-type fields (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
-      about the encoding of data sent to or from Tcl (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      On Windows, work around a Microsoft bug by preventing
-      <application>libpq</application> from trying to send more than 64kB per system call
-      (Magnus)
-     </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>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to properly preserve postmaster
-      command-line arguments across a <literal>restart</literal> (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008f (for
-      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
-      Pakistan, Palestine, and Paraguay)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-9">
-  <title>Version 8.2.9</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-06-12</simpara>
-  </note>
-
-  <para>
-   This release contains one serious and one minor bug fix over 8.2.8.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.9</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
-    However, if you are upgrading from a version earlier than 8.2.7,
-    see the release notes for 8.2.7.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
-      be <literal>(-42)::integer</literal> due to operator precedence rules.
-      Usually this would make little difference, but it could interact with
-      another recent patch to cause
-      <productname>PostgreSQL</productname> to reject what had been a valid
-      <command>SELECT DISTINCT</command> view query.  Since this could result in
-      <application>pg_dump</application> 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>
-
-    <listitem>
-     <para>
-      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
-      <structname>pg_shdepend</structname> (Tom)
-     </para>
-
-     <para>
-      This oversight could lead to problems if the aggregate was later
-      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
-      operation.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-8">
-  <title>Version 8.2.8</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>never released</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.2.7.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.8</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
-    However, if you are upgrading from a version earlier than 8.2.7,
-    see the release notes for 8.2.7.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix <literal>ERRORDATA_STACK_SIZE exceeded</literal> crash that
-      occurred on Windows when using UTF-8 database encoding and a different
-      client encoding (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
-      column is correctly checked to see if it's been initialized to all
-      non-nulls (Brendan Jurd)
-     </para>
-
-     <para>
-      Previous versions neglected to check this requirement at all.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible <command>CREATE TABLE</command> failure when inheriting the
-      <quote>same</quote> constraint from multiple parent relations that
-      inherited that constraint from a common ancestor (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>pg_get_ruledef()</function> to show the alias, if any, attached
-      to the target table of an <command>UPDATE</command> or <command>DELETE</command>
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix GIN bug that could result in a <literal>too many LWLocks
-      taken</literal> failure (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid possible crash when decompressing corrupted data
-      (Zdenek Kotala)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Repair two places where SIGTERM exit of a backend could leave corrupted
-      state in shared memory (Tom)
-     </para>
-
-     <para>
-      Neither case is very important if SIGTERM is used to shut down the
-      whole database cluster together, but there was a problem if someone
-      tried to SIGTERM individual backends.
-     </para>
-    </listitem>
-
-    <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 several datatype input functions, notably <function>array_in()</function>,
-      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>
-      Update time zone data files to <application>tzdata</application> release 2008c (for
-      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba, and
-      Argentina/San_Luis)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect result from <application>ecpg</application>'s
-      <function>PGTYPEStimestamp_sub()</function> function (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix broken GiST comparison function for <filename>contrib/tsearch2</filename>'s
-      <type>tsquery</type> type (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible crashes in <filename>contrib/cube</filename> functions (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix core dump in <filename>contrib/xml2</filename>'s
-      <function>xpath_table()</function> function when the input query returns a
-      NULL value (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <filename>contrib/xml2</filename>'s makefile to not override
-      <literal>CFLAGS</literal> (Tom)
-     </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>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-7">
-  <title>Version 8.2.7</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-03-17</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.2.6.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.7</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.2.X.
-    However, you might need to <command>REINDEX</command> indexes on textual
-    columns after updating, if you are affected by the Windows locale
-    issue described below.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix character string comparison for Windows locales that consider
-      different character combinations as equal (Tom)
-     </para>
-
-     <para>
-      This fix applies only on Windows and only when using UTF-8
-      database encoding.  The same fix was made for all other cases
-      over two years ago, but Windows with UTF-8 uses a separate code
-      path that was not updated.  If you are using a locale that
-      considers some non-identical strings as equal, you may need to
-      <command>REINDEX</command> to fix existing indexes on textual columns.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Repair potential deadlock between concurrent <command>VACUUM FULL</command>
-      operations on different system catalogs (Tom)
-     </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>
-      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
-      prepared transaction (Tom)
-     </para>
-
-     <para>
-      This was formerly allowed but trying to do it had various unpleasant 
-      consequences, notably that the originating backend could not exit
-      as long as an <command>UNLISTEN</command> remained uncommitted.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Disallow dropping a temporary table within a
-      prepared transaction (Heikki)
-     </para>
-
-     <para>
-      This was correctly disallowed by 8.1, but the check was inadvertently
-      broken in 8.2.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix rare crash when an error occurs during a query using a hash index
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix memory leaks in certain usages of set-returning functions (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix input of datetime values for February 29 in years BC (Tom)
-     </para>
-
-     <para>
-      The former coding was mistaken about which years were leap years.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <quote>unrecognized node type</quote> error in some variants of
-      <command>ALTER OWNER</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ensure <structname>pg_stat_activity</structname>.<structfield>waiting</structfield> flag
-      is cleared when a lock wait is aborted (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix handling of process permissions on Windows Vista (Dave, Magnus)
-     </para>
-
-     <para>
-      In particular, this fix allows starting the server as the Administrator
-      user.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008a
-      (in particular, recent Chile changes); adjust timezone abbreviation
-      <literal>VET</literal> (Venezuela) to mean UTC-4:30, not UTC-4:00 (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
-      number from command-line options (Itagaki Takahiro, Tom)
-     </para>
-
-     <para>
-      Previously, <literal>pg_ctl start -w</literal> could try to contact the
-      postmaster on the wrong port, leading to bogus reports of startup
-      failure.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use <option>-fwrapv</option> to defend against possible misoptimization
-      in recent <application>gcc</application> versions (Tom)
-     </para>
-
-     <para>
-      This is known to be necessary when building <productname>PostgreSQL</productname>
-      with <application>gcc</application> 4.3 or later.
-     </para>
-    </listitem>
-
-
-    <listitem>
-     <para>
-      Correctly enforce <varname>statement_timeout</varname> values longer
-      than <literal>INT_MAX</literal> microseconds (about 35 minutes) (Tom)
-     </para>
-
-     <para>
-      This bug affects only builds with <option>--enable-integer-datetimes</option>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <quote>unexpected PARAM_SUBLINK ID</quote> planner error when
-      constant-folding simplifies a sub-select (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix logical errors in constraint-exclusion handling of <literal>IS
-      NULL</literal> and <literal>NOT</literal> expressions (Tom)
-     </para>
-
-     <para>
-      The planner would sometimes exclude partitions that should not
-      have been excluded because of the possibility of NULL results.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix another cause of <quote>failed to build any N-way joins</quote>
-      planner errors (Tom)
-     </para>
-
-     <para>
-      This could happen in cases where a clauseless join needed to be
-      forced before a join clause could be exploited.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect constant propagation in outer-join planning (Tom)
-     </para>
-
-     <para>
-      The planner could sometimes incorrectly conclude that a variable
-      could be constrained to be equal to a constant, leading
-      to wrong query results.
-     </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
-      guaranteee it couldn't happen due to other causes.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-2-6">
-  <title>Version 8.2.6</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-01-07</simpara>
-  </note>
-
-  <para>
-   Cette version contient divers correctifs de la version 8.2.5,
-   et inclut des corrections pour des failles de sécurité importantes.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.2, voir <xref linkend="release-8-2"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.2.6</title>
-
-   <para>
-    Les utilisateurs des versions 8.2.X n'ont pas besoin d'effectuer d'une
-    étape de sauvegarde/restauration.
-   </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 de bogues dans la ré-exécution des journaux de transaction
-      pour les index GIN (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction pour que la construction d'un index GIN se fasse correctement
-      quand <varname>maintenance_work_mem</varname> vaut 4&nbsp;Go ou plus
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires avec la version
-      2007k de <application>tzdata</application> (en particulier, les
-      modifications récentes en Argentine) (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Améliore la gestion du planificateur pour les estimations de LIKE et
-      des expressions rationnelles dans les locales autres que C (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un problème de vitesse de la planification pour des
-      jointures bien imbriquées, ainsi qu'un choix faible de l'ordre de
-      jointure (Tom)
-     </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>
-      Fait que <command>CREATE TABLE ... SERIAL</command> et
-      <command>ALTER SEQUENCE ... OWNED BY</command> ne modifient pas l'état
-      <function>currval()</function> de la séquence (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Préserve les paramètres du tablespace et de stockage des index qui sont
-      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
-      TYPE</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que la restauration d'archive commence toujours une nouvelle
-      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
-      restauration ne soit utilisée (Simon)
-     </para>
-
-     <para>
-      Ceci évite un risque très particulier de tentative de ré-écriture sur
-      une copie archivée existante du dernier journal de transaction. Cela
-      semble plus simple et plus clair que la définition originale.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que le <command>VACUUM</command> n'utilise pas tout
-      <varname>maintenance_work_mem</varname> quand la table est trop petite
-      pour que cela soit utilisé (Alvaro)
-     </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>
-      Fait que <function>corr()</function> renvoie le résultat correct pour les
-      valeurs négatives de corrélation (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un dépassement de capacité dans <literal>extract(epoch from
-      interval)</literal> pour les intervalles excédant 68 ans (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/Perl pour qu'il n'échoue pas quand une expression
-      rationnelle UTF-8 est utilisée dans une fonction de confiance
-      (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/Perl pour continuer l'exécution quand le langage Perl
-      de la plateforme définit le type <literal>bool</literal> en tant que
-      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
-      (Tom)
-     </para>
-
-     <para>
-      Bien que ceci peut arriver partout, aucune construction standard de Perl
-      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/Python pour un fonctionnement correct avec Python 2.5
-      sur les machines 64-bit (Marko Kreen)
-     </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>
-      Correction de <application>pg_dump</application> pour qu'il gère
-      correctement les tables héritées qui ont des expressions par défaut
-      différentes de celles de leur parents (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un crash de <application>libpq</application> quand
-      <varname>PGPASSFILE</varname> fait référence à un fichier qui n'est
-      pas un fichier texte (Martin Pitt)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Corrections de l'analyseur <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction réalisée pour que <filename>contrib/pgcrypto</filename>
-      puisse se défendre contre les bibliothèques
-      <application>OpenSSL</application> qui échouent sur des clés de plus de
-      128 bits&nbsp;; ce qui est le cas sur au moins certaines versions de
-      Solaris (Marko Kreen)
-     </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>
-
-    <listitem>
-     <para>
-      Mise à jour de la vérification de la configuration de
-      <function>gettimeofday</function> pour que
-      <productname>PostgreSQL</productname> puisse être construit sur les
-      nouvelles versions de <productname>MinGW</productname> (Magnus)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
-  <sect1 id="release-8-2-5">
-   <title>Version 8.2.5</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-09-17</simpara>
-   </note>
-
-   <para>
-    Cette version contient divers correctifs de la version 8.2.4.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.2, voir <xref linkend="release-8-2"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.2.5</title>
-
-    <para>
-     Les utilisateurs des versions 8.2.X n'ont pas besoin d'effectuer d'export/import.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       <literal>ALTER DOMAIN ADD CONSTRAINT</literal> est corrigé pour les cas qui
-       impliquent des domaines de domaines (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
-       correctement (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       quelques problèmes avec les jointures externes, notamment
-       la mauvaise estimation de taille pour
-       <literal>t1 LEFT JOIN t2 WHERE t2.col IS NULL</literal>, sont corrigés (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le type de données <type>interval</type> accepte désormais les entrées
-       constituées uniquement de millisecondes ou microsecondes (Neil)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le nom du fuseau horaire peut désormais apparaître avant l'année dans
-       les saisies de type <type>timestamp</type> (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       correctif pour les index <acronym>GIN</acronym> utilisés par
-       <filename>/contrib/tsearch2</filename> (Teodor)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       l'insertion des index rtree est accélérée (Teodor)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
-       est corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation est corrigée de sorte que les messages ne sont plus
-       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
-      </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)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la gestion incorrecte de certains cas limites de clés étrangères est
-       corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <function>stddev_pop(numeric)</function> and
-       <function>var_pop(numeric)</function> sont corrigées (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>REINDEX</command> et <command>CLUSTER</command> ne plantent
-       plus en tentant de travailler sur les tables temporaires d'autres
-       sessions (Alvaro)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les règles de la base de données concernant les fuseaux horaires, en
-       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
-       à jour (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>pg_ctl -w</command> fonctionne désormais correctement en mode
-       service pour Windows (Dave Page)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le bogue d'allocation de mémoire lors de l'utilisation de
-       <application>MIT Kerberos</application> sous Windows est corrigé
-       (Magnus)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
-       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
-       avoir des incompatibilités d'encodage (Tom)&nbsp;;
-      </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)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       seuls les superutilisateurs peuvent utiliser
-       <filename>/contrib/pgstattuple</filename>, pour des raisons de sécurité
-       (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <filename>/contrib/intarray</filename> ne peut plus utiliser sa classe
-       d'opérateurs GIN comme classe par défaut (cela causait des problèmes lors
-       des exports/imports) (Tom).
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-2-4">
-   <title>Version 8.2.4</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-04-23</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.2.3, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.2, voir <xref linkend="release-8-2"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.2.4</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
-     version 8.2.
-   </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Supporte le placement explicite du schéma des tables temporaires dans
-      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
-      d'informations.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction de <varname>shared_preload_libraries</varname> pour Windows
-      en forçant le rechargement sur chaque processus serveur (Korry Douglas)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction de <function>to_char()</function> pour qu'il localise
-      correctement les noms des jours et mois en majuscule/minuscule
-      (Pavel Stehule)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Nécessite l'exécution de <command>COMMIT PREPARED</command> dans la
-      même base que celle utilisée par la transaction qui l'a préparé
-      (Heikki)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Autorise <command>pg_dump</command> à faire des sauvegardes binaires
-      d'une taille supérieure à 2&nbsp;Go sur Windows (Magnus)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Nouvelle <acronym>FAQ</acronym> en chinois traditionel (Taiwan)
-      (Zhou Daojing)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Empêche le collecteur de statistiques d'écrire trop fréquemment
-      sur le disque (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue pouvant corrompre des données dans la façon
-      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
-      (Tom, Pavan Deolasee)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue dans les domaines qui utilisent
-      des types array (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction de <command>pg_dump</command> pour qu'il sauvegarde la
-      séquence d'une colonne de type serial lorsque l'utilisateur
-      sélectionne l'option <option>-t</option> sans sauvegarder la
-      table propriétaire (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Corrections du planificateur, avec des améliorations sur la logique de
-      sélection des jointures externes et des parcours de bitmap (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction des possibles mauvaises réponses ou arrêts brutaux quand
-      une fonction PL/pgSQL essaie de quitter (avec <literal>RETURN</literal>)
-      à l'intérieur d'un bloc <literal>EXCEPTION</literal> (Tom)
-     </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>
-
-     <listitem>
-     <para>
-      Correction des spécifications des fuseaux horaires POSIX
-      pour suivre les nouvelles règles USA DST (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-2-3">
-   <title>Version 8.2.3</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-07</simpara>
-   </note>
-
-   <para>
-    Cette version contient deux corrections de la 8.2.2.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.2, voir <xref linkend="release-8-2"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.2.3</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
-     version 8.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Suppression d'une vérification trop restrictive de la longueur du type
-      dans les contraintes et les index fonctionnels (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'une optimisation pour que MIN/MAX puissent de nouveau utiliser
-      des index dans des sous-requêtes (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-2-2">
-   <title>Version 8.2.2</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-05</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.2.1, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.2, voir <xref linkend="release-8-2"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.2.2</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
-     version 8.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Suppression de failles de sécurité qui permettent à des utilisateurs
-      connectés de lire la mémoire du serveur (backend)
-      (Tom)
-     </para>
-     <para>
-      Ces vulnérabilités impliquent de supprimer la vérification habituelle
-      qu'une fonction renvoie le type de données qu'elle a déclaré, et de
-      modifier le type de données de la colonne d'une table utilisée dans une
-      fonction SQL (CVE-2007-0555, CVE-2007-0556).
-      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 des scripts de compilation pour Borland C (L Bayuk)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Gestion correcte par <function>to_char('CC')</function> des années finissant en
-      <literal>00</literal> (Tom)
-     </para>
-     <para>
-      L'année 2000 est dans le 20ème siècle, pas dans le 21ème.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Amélioration des régionalisations de
-      <filename>/contrib/tsearch2</filename> (Tatsuo, Teodor)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'une vérification incorrecte des droits dans la vue
-      <literal>information_schema.key_column_usage</literal> (Tom)
-     </para>
-     <para>
-      Le symptôme se déclare avec des erreurs <quote>relation with OID nnnnn
-      does not exist</quote>. Pour obtenir cette correction sans avoir à exécuter
-      un <command>initdb</command>, il convient d'utiliser 
-      <command>CREATE OR REPLACE VIEW</command> pour installer la définition
-      corrigée disponible dans
-      <filename>share/information_schema.sql</filename>. Cela devra être
-      effectué pour chaque base de données.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Amélioration des performances de <command>VACUUM</command> pour les bases
-      de données avec de nombreuses tables (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</literal> (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction de résultats potentiellement incorrects lors d'une recherche
-      par index en utilisant les conditions d'inégalités de <literal>ROW</literal>
-      (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Amélioration de la sécurité lors du traitement de caractères multi-octets
-      pour les séquences UTF8 de plus de trois octets (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'échecs erronés de type <quote>droit refusé</quote> survenant
-      sur Windows à cause de tentatives de fsync sur des fichiers déjà
-      supprimés (Magnus, Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue qui pouvait arrêter le récupérateur de statistiques
-      sur Windows (Magnus)
-     </para>
-
-     <para>
-      Ceci a pour conséquences d'empêcher le bon fonctionnement de l'autovacuum.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux possibles quand une fonction PL/pgSQL en cours
-      d'utilisation est mise à jour (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Amélioration de la gestion des types domaines par PL/pgSQL (Sergiy Vyshnevetskiy, Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'erreurs possibles dans le traitement des blocs d'exception de
-      PL/pgSQL (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-2-1">
-   <title>Version 8.2.1</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-01-08</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.2.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.2, voir <xref linkend="release-8-2"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.2.1</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la
-     version 8.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       Correction d'arrêts brutaux avec <literal>SELECT</literal> ...
-       <literal>LIMIT ALL</literal> (ainsi qu'avec <literal>LIMIT NULL</literal>)
-       (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Plusieurs corrections sur <filename>/contrib/tsearch2</filename> (Teodor)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Sur Windows, s'assure que les traces provenant du système d'exploitation
-       utilisent le jeu de caractères <acronym>ASCII</acronym> (Hiroshi Saito)
-      </para>
-
-      <para>
-       Ceci corrige un problème de conversion quand il y a une différence entre
-       le jeu de caractères du système d'exploitation et celui du serveur de
-       bases de données.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correction du lien Windows de <application>pg_dump</application> en utilisant
-       <filename>win32.mak</filename>
-       (Hiroshi Saito)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correction d'erreurs du planificateur pour les requêtes à jointure
-       externe (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correction de différents problèmes dans les requêtes impliquant des
-       sous-SELECT (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correction d'un arrêt brutal potentiel dans SPI lors de l'annulation
-       d'une sous-transaction (Tom)
-      </para>
-
-      <para>
-       Ceci affecte toutes les fonctions PL car elles utilisent toutes SPI.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Amélioration de la vitesse de construction de la documentation
-       <acronym>PDF</acronym> (Peter)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Nouvel ajout de l'abréviation du fuseau horaire <acronym>JST</acronym> (Japan) (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Amélioration des décisions d'optimisation relatives aux parcours d'index
-       (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fait que <application>psql</application> affiche les caractères
-       multi-octets comme avant plutôt que de les afficher comme
-       <literal>\u</literal> (Tom)
-      </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>
-
-     <listitem>
-      <para>
-       Fait que <application>pg_dumpall</application> suppose que les bases de
-       données ont le droit <literal>CONNECT</literal> pour public lors d'une
-       sauvegarde d'un serveur antérieure à la 8.2 (Tom)
-      </para>
-
-      <para>
-       Ceci empêche le comportement précédent où tout le monde pouvait se
-       connecter à une base si le <filename>pg_hba.conf</filename> l'autorisait.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
- 
-  <sect1 id="release-8-2">
-   <title>Version 8.2</title>
-
-   <note>
-    <title>Date de sortie</title>
-    <simpara>2006-12-05</simpara>
-   </note>
-
-   <sect2>
-    <title>Overview</title>
- 
-    <para>
-     Cette version ajoute beaucoup de nouvelles fonctionnalités et
-     d'améliorations de performances demandées par les utilisateurs. Parmi
-     celles-ci&nbsp;:
-
-    <itemizedlist>
-
-      <listitem>
-       <para>
-        Amélioration du langage de requêtes avec <command>INSERT/UPDATE/DELETE
-        RETURNING</command>, les listes <literal>VALUES</literal> multi-lignes
-        et les alias optionnels de table cible pour
-        <command>UPDATE</command>/<command>DELETE</command>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Création d'index sans blocage des opérations concurrentes
-        <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Beaucoup d'améliorations dans l'optimisation des requêtes, avec un
-	support d'un réordonnancement des jointures externes
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des performances du tri avec un usage plus restreint de la
-	mémoire
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Verrouillage plus efficace avec une meilleure gestion de la concurrence
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Un VACUUM plus efficace
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Une administration plus simple des serveurs de secours
-	semi-automatique
-	(<foreignphrase>warm standby servers</foreignphrase>)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support d'un facteur de remplissage (<literal>FILLFACTOR</literal>) pour
-	les tables et index
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout dans la configuration de la surveillance, des journaux et des
-	performances
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Plus de contrôle sur la création et la suppression des objets
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Les relations d'héritage des tables peuvent être définies et supprimées
-	sur des tables déjà existantes
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <command>COPY TO</command> peut copier le résultat de toute instruction
-        <command>SELECT</command>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Améliorations sur les tableaux, dont le support des éléments NULL
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des fonctions d'agrégat, avec les agrégats à entrées
-	multiples et les fonctions statistiques de SQL:2003
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Beaucoup d'améliorations dans les modules <filename>contrib/</filename>
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </para>
-
-   </sect2>
- 
-   <sect2>
-    <title>Migration vers la version 8.2</title>
-
-    <para>
-     Une sauvegarde/restauration utilisant <application>pg_dump</application>
-     est requise pour ceux qui souhaitent migrer leurs données d'une version
-     précédente.
-    </para>
-
-    <para>
-     Prenez note des incompatibilités suivantes&nbsp;:
-    </para>
-
-    <itemizedlist>
-
-      <listitem>
-       <para>
-        Initialise par défaut <link
-        linkend="guc-escape-string-warning"><varname>escape_string_warning</varname></link>
-        à <literal>on</literal> (Bruce)
-       </para>
-
-       <para>
-        Un avertissement est affiché si des échappements par antislash sont
-        utilisés dans des <link linkend="sql-syntax-strings">chaînes non
-        échappées (ne commençant pas par <literal>E</literal>)</link>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modifie la <link linkend="sql-syntax-row-constructors">syntaxe du
-        constructeur de lignes</link> (<literal>ROW(...)</literal>) pour que
-        les éléments de liste <literal>foo.*</literal> soient étendues en une
-        liste de leurs champs membres, plutôt que de créer un champ de type
-        ligne imbriqué comme précédemment (Tom)
-       </para>
-
-       <para>
-        Le nouveau comportement est plus utile car il permet, par exemple, aux
-        déclencheurs de détecter les modifications de données avec
-        <literal>IF row(new.*) IS DISTINCT FROM row(old.*)</literal>.
-        L'ancien comportement est toujours disponible en oubliant <literal>.*</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fait en sorte que la <link linkend="row-wise-comparison">comparaisons
-        de lignes</link> suive la sémantique du standard
-        <acronym>SQL</acronym> et lui permettent d'être utilisée dans les
-        parcours d'index (Tom)
-       </para>
-
-       <para>
-        Auparavant, les comparaisons d'égalité et de différence de lignes
-	suivaient le standard mais les comparaisons de type &lt; &lt;= &gt;
-	&gt;= ne le faisaient pas. Une comparaison de ligne peut maintenant
-	être utilisé en tant que contrainte d'index pour un index
-	multi-colonne correspondant à la valeur de la ligne.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Les tests <link linkend="functions-comparison">row <literal>IS <optional>NOT</optional> NULL</literal></link>
-        suivent la sémantique du standard <acronym>SQL</acronym> (Tom)
-       </para>
-
-       <para>
-        Le comportement précédent se conformait au standard pour les cas
-	simples avec <literal>IS NULL</literal>, mais <literal>IS NOT NULL</literal>
-	renvoyait true si aucun champ de ligne n'était différent de NULL alors
-	que le standard demande qu'il renvoit NULL seulement quand tous les
-	champs sont différents de NULL.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <link linkend="sql-set-constraints"><command>SET
-        CONSTRAINT</command></link> affecte seulement une seule contrainte (Kris Jurka)
-       </para>
-
-       <para>
-        Dans les versions précédentes, <command>SET CONSTRAINT</command> modifiait
-	toutes les contraintes avec un nom qui correspondait. Dans cette version,
-	le chemin de recherche du schéma est utilisé pour modifier seulement la
-	première contrainte qui correspond. Une spécification du schéma est aussi
-	possible. Ceci permet un meilleur respect du standard SQL.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression de la règle <literal>RULE</literal> pour les tables pour
-	des raisons de sécurité (Tom)
-       </para>
-
-       <para>
-        À partir de cette version, seul le propriétaire d'une table peut créer
-	ou modifier les règles d'une table. Pour la compatibilité ascendante,
-	<command>GRANT</command>/<command>REVOKE RULE</command> est toujours
-	accepté mais ne fait rien.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Améliorations de la comparaison de tableau (Tom)
-       </para>
-
-       <para>
-        Maintenant, les dimensions des tableaux sont aussi comparées.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modification de la <link linkend="functions-array">concaténation de
-	tableaux</link> pour que le comportement corresponde à celui indiqué
-	dans la documentation (Tom)
-       </para>
-
-       <para>
-        Le comportement précédent est modifié quand la concaténation modifie
-	la limite basse du tableau.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Les options en ligne de commande de <application>postmaster</application>
-        et <link linkend="app-postgres"><application>postgres</application></link>
-        sont maintenant identiques (Peter)
-       </para>
-
-       <para>
-        Ceci permet au postmaster de passer les arguments à chaque processus
-        fils sans utiliser <literal>-o</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Le lien symbolique <application>postmaster</application> est maintenant
-	obsolète (Peter)
-       </para>
-
-       <para>
-        Les commandes <application>postmaster</application> et <application>postgres</application>
-        agissent maintenant de façon identique, le comportement étant déterminé
-	par les options en ligne de commande. Le lien sympbolique
-	<application>postmaster</application> est conservé pour compatibilité
-	mais n'est plus vraiment nécessaire.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <link
-        linkend="guc-log-duration"><varname>log_duration</varname></link>
-        affiche la durée même si la requête n'est pas affichée (Tom)
-       </para>
-
-       <para>
-        Dans les versions précédentes, <varname>log_duration</varname> affichait
-	seulement la durée quand la requête apparaissait auparavant dans les
-	journaux.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <link
-        linkend="functions-formatting"><function>to_char(time)</function></link>
-        et <link
-        linkend="functions-formatting"><function>to_char(interval)</function></link>
-        traitent <literal>HH</literal> et <literal>HH12</literal> comme des
-	intervals sur 12h.
-       </para>
-
-       <para>
-        La plupart des applications devrait utiliser <literal>HH24</literal> sauf
-	si elles veulent un affichage sur 12h.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Zero unmasked bits in conversion from <link
-        linkend="datatype-inet"><type>INET</type></link> to <link
-        linkend="datatype-inet"><type>CIDR</type></link> (Tom)
-       </para>
-
-       <para>
-        Ceci vous assure que la valeur convertie est réellement valide pour
-        <type>CIDR</type>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression de la variable de configuration
-	<varname>australian_timezones</varname> (Joachim Wieland)
-       </para>
-
-       <para>
-        Cette variable a été rendue obsolète par une fonctionnalité plus
-	générale dans la configuration des abréviations de fuseaux horaires.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de l'estimation du coût pour les parcours d'index
-	de boucles imbriquées (Tom)
-       </para>
-
-       <para>
-        Ceci élimine le besoin de configurer des valeurs ridiculement petites
-	de <link
-        linkend="guc-random-page-cost"><varname>random_page_cost</varname></link>.
-        Si vous avez utilisé une valeur trop petite de <varname>random_page_cost</varname>,
-        merci de vérifier vos cas de tests.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modification de <function>PQdsplen()</function> dans
-	<link linkend="libpq"><application>libpq</application></link>
-        pour que cette fonction renvoie une valeur utile (Martijn
-        van Oosterhout)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Déclare que <function>PQgetssl()</function>
-	(<link linkend="libpq"><application>libpq</application></link>)
-	renvoie <literal>void *</literal> à la place de
-        <literal>SSL *</literal> (Martijn van Oosterhout)
-       </para>
-
-       <para>
-        Ceci permet aux applications d'utiliser la fonction sans inclure les
-	en-têtes d'OpenSSL.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        les modules chargeables, en langage C, doivent maintenant inclure un
-	appel à la macro
-        <link linkend="xfunc-c-dynload"><literal>PG_MODULE_MAGIC</literal></link>
-        pour une vérification de la compatibilité de la version
-        (Martijn van Oosterhout)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Pour des raisons de sécurité, les modules utilisés par une fonction
-	PL/PerlU ne sont plus disponibles pour les fonctions PL/Perl (Andrew)
-       </para>
-       <note>
-        <para>
-         Ceci implique aussi que les données ne peuvent plus êtres partagées
-	 entre une fonction PL/Perl et une fonction PL/PerlU. Certaines
-	 installations Perl n'ont pas été compilées avec les bons drapeaux
-	 pour permettre à plusieurs interpréteurs d'exister au sein d'un
-	 même processus. Dans ce cas, PL/Perl et PL/PerlU ne peuvent pas être
-	 utilisés dans un même processus fils. La solution est d'obtenir une
-	 installation Perl qui supporte plusieurs interpréteurs.
-        </para>
-       </note>
-      </listitem>
-
-      <listitem>
-       <para>
-        Dans <filename>contrib/xml2/</filename>, renommage de
-	<function>xml_valid()</function> en
-        <function>xml_is_well_formed()</function> (Tom)
-       </para>
-
-       <para>
-        <function>xml_valid()</function> restera pour des raisons de
-	compatibilité ascendante mais son comportement changera pour réaliser
-	une vérification de schéma dans une prochaine version.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression de <filename>contrib/ora2pg/</filename>, maintenant sur
-        <ulink url="http://www.samse.fr/GPL/ora2pg"></ulink>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression des modules contrib qui ont migré sur PgFoundry&nbsp;:
-        <filename>adddepend</filename>, <filename>dbase</filename>, <filename>dbmirror</filename>,
-        <filename>fulltextindex</filename>, <filename>mac</filename>, <filename>userlock</filename>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression des modules contrib abandonnés&nbsp;:
-        <filename>mSQL-interface</filename>, <filename>tips</filename>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression des ports <acronym>QNX</acronym> et <acronym>BEOS</acronym> (Bruce)
-       </para>
-
-       <para>
-        Ces ports n'ont plus de mainteneurs actifs.
-       </para>
-      </listitem>
-
-    </itemizedlist>
-   </sect2>
- 
-   <sect2>
-    <title>Modifications</title>
- 
-    <para>
-     Vous trouverez ci-dessous une liste détaillée des modifications appliquées
-     à <productname>PostgreSQL</productname> 8.2.
-    </para>
- 
-    <sect3>
-     <title>Améliorations des performances</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Autorise le planificateur à réordonner les <link
-        linkend="queries-join">jointures externes</link> dans certaines
-	circonstances (Tom)
-       </para>
-
-       <para>
-        Dans les versions précédentes, les jointures externes ont toujours été
-	évaluées dans l'ordre donné par la requête. Cette modification permet
-	à l'optimiseur de requête de considérer la modification de l'ordre des
-	jointures externes quand il peut s'assurer que ce changement peut se
-	faire sans altérer la signification de la requête. Ceci peut faire une
-	différence considérable au niveau des performances pour les requêtes
-	impliquant plusieurs jointures externes ou un mixe entre jointures
-	internes et jointures externes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de l'efficacité des clauses <link
-        linkend="functions-comparisons"><literal>IN</literal>
-        (liste d'expressions)</link> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la vitesse des tris et réduction de l'utilisation
-	mémoire (Simon, Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des performances des sous-transaction (Alvaro, Itagaki Takahiro,
-        Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de <literal>FILLFACTOR</literal> pour la création des <link
-        linkend="sql-createtable">tables</link> et <link
-        linkend="sql-createindex">index</link> (ITAGAKI Takahiro)
-       </para>
-
-       <para>
-        Ceci amène un espace libre plus important dans chaque page de table et
-	d'index, donnant des performances améliorées au fur et à mesure que la
-	base grossit. C'est tout particulièrement vrai dans le cas d'un cluster.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des valeurs par défaut pour les paramètres <link
-        linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
-        et <varname>max_fsm_pages</varname>
-        (Andrew)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la performance des verrous en cassant les tables du
-	gestionnaire de verrous en plusieurs sections (Tom)
-       </para>
-
-       <para>
-        Le verrouillage est ainsi plus fin, réduisant du coup les problèmes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Réduction des besoins en verrou pour les parcours séquentiels (Qingqing
-        Zhou)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Réduction du verrouillage requis pour la création et la destruction de
-	bases de données (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la sélectivité de l'optimiseur pour les estimations de
-	<link linkend="functions-like"><literal>LIKE</literal></link>, <link
-        linkend="functions-like"><literal>ILIKE</literal></link> et des
-        <link linkend="functions-posix-regexp">expressions rationnelles</link>
-        (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la planification des jointures des <link
-	linkend="ddl-inherit">tables héritées</link> et des vues <link
-	linkend="queries-union"><literal>UNION ALL</literal></link> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Permet l'application de l'<link
-	linkend="guc-constraint-exclusion">exclusion des contraintes</link> aux
-	requêtes <command>UPDATE</command> et <command>DELETE</command> avec
-	<link linkend="ddl-inherit">héritage</link> (Tom)
-       </para>
-
-       <para>
-        <command>SELECT</command> honorait déjà cette exclusion.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la planification des clauses <literal>WHERE</literal>
-	constantes comme une condition qui dépend seulement des variables
-	héritées d'un niveau de requête externe (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Les instructions préparées, sans nom et au niveau protocole sont
-	re-planifiées pour chaque ensemble de valeurs <literal>BIND</literal>
-	(Tom)
-       </para>
-
-       <para>
-        Ceci améliore les performances car les valeurs exactes des paramètres
-	peuvent être utilisées dans le plan.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Accélère l'opération VACUUM des index B-Tree (Heikki Linnakangas,
-        Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Évite un parcours supplémentaire des tables sans index pendant un <link
-        linkend="sql-vacuum"><command>VACUUM</command></link> (Greg Stark)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de l'indexage multi-colonnes <link
-	linkend="gist"><acronym>GiST</acronym></link> (Oleg, Teodor)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression des entrées mortes des index avant la séparation d'une
-	page B-Tree (Junji Teramoto)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Modifications serveur</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Permet de forcer un basculement vers un nouveau journal de transactions
-	(Simon, Tom)
-       </para>
-
-       <para>
-        Ceci est utile pour conserver la synchronisation des serveurs esclaves
-	en attente et du maître. Le changement du journal de transaction
-	survient aussi automatiquement lors de l'exécution de <link
-        linkend="functions-admin"><function>pg_stop_backup()</function></link>.
-        Ceci vous assure que tous les journaux de transactions nécessaires à
-	la récupération sont archivés immédiatement.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout des fonctions d'information sur les <acronym>WAL</acronym> (Simon)
-       </para>
-
-       <para>
-        Ajout de fonctions d'interrogation sur le point d'insertion du journal
-	de transaction en cours et de détermination des noms des fichiers
-        <acronym>WAL</acronym> à partir des emplacements
-        <acronym>WAL</acronym> hexadécimaux affichés par la fonction <link
-        linkend="functions-admin"><function>pg_stop_backup()</function></link>
-        mais aussi par d'autres fonctions en relation.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la récupération après un arrêt brutal lors d'une
-	ré-exécution d'un <acronym>WAL</acronym> (Simon)
-       </para>
-
-       <para>
-        Maintenant, le serveur réalise des points de vérification durant la
-	récupération des <acronym>WAL</acronym>. Donc, en cas d'arrêt brutal,
-        la récupération des <acronym>WAL</acronym> restants est raccourcie.
-	Ceci élimine aussi le besoin pour les serveurs en attente de rejouer
-	tous les journaux depuis la sauvegarde de base s'ils s'arrêtent
-	brutalement.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve reliability of long-term <acronym>WAL</acronym> replay
-        (Heikki, Simon, Tom)
-       </para>
-
-       <para>
-        Formerly, trying to roll forward through more than 2 billion
-        transactions would not work due to XID wraparound.  This meant
-        warm standby servers had to be reloaded
-        from fresh base backups periodically.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="guc-archive-timeout"><varname>archive_timeout</varname></link>
-        to force transaction log file switches at a given interval (Simon)
-       </para>
-
-       <para>
-        This enforces a maximum replication delay for warm standby servers.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add native <link linkend="auth-ldap"><acronym>LDAP</acronym></link>
-        authentication (Magnus Hagander)
-       </para>
-
-       <para>
-        This is particularly useful for platforms that do not
-        support <acronym>PAM</acronym>, such as Windows.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-grant-description-objects"><literal>GRANT
-        CONNECT ON DATABASE</literal></link> (Gevik Babakhani)
-       </para>
-
-       <para>
-        This gives SQL-level control over database access.  It works as
-        an additional filter on top of the existing
-        <link linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>
-        controls.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <link linkend="ssl-tcp"><acronym>SSL</acronym>
-        Certificate Revocation List</link> (<acronym>CRL</acronym>) files
-        (Libor Hoho)
-       </para>
-
-       <para>
-        The server and <application>libpq</application> both recognize <acronym>CRL</acronym>
-        files now.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <link linkend="gist"><acronym>GiST</acronym></link> indexes are
-        now clusterable (Teodor)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove routine autovacuum server log entries (Bruce)
-       </para>
-
-       <para>
-        <link
-        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
-        now shows autovacuum activity.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Track maximum XID age within individual tables, instead of whole databases (Alvaro)
-       </para>
-
-       <para>
-        This reduces the overhead involved in preventing transaction
-        ID wraparound, by avoiding unnecessary VACUUMs.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add last vacuum and analyze timestamp columns to the stats
-        collector (Larry Rosenman)
-       </para>
-
-       <para>
-        These values now appear in the <link
-        linkend="monitoring-stats-views-table"><literal>pg_stat_*_tables</literal></link>
-        system views.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve performance of statistics monitoring, especially
-<!--       Fonctionnalité disparu en 8.3        -->
-<!--        <link                               -->
-<!--        linkend="guc-stats-command-string"> -->
-        <varname>stats_command_string</varname> 
-        <!-- </link> -->
-        (Tom, Bruce)
-       </para>
-
-       <para>
-        This release enables <varname>stats_command_string</varname> by
-        default, now that its overhead is minimal.  This means
-        <link
-        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
-        will now show all active queries by default.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a <literal>waiting</literal> column to <link
-        linkend="monitoring-stats-views-table"><literal>pg_stat_activity</literal></link>
-        (Tom)
-       </para>
-
-       <para>
-        This allows <structname>pg_stat_activity</structname> to show all the
-        information included in the <application>ps</application> display.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add configuration parameter <link
-        linkend="guc-update-process-title"><varname>update_process_title</varname></link>
-        to control whether the <application>ps</application> display is updated
-        for every command (Bruce)
-       </para>
-
-       <para>
-        On platforms where it is expensive to update the <application>ps</application>
-        display, it may be worthwhile to turn this off and rely solely on
-        <structname>pg_stat_activity</structname> for status information.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow units to be specified in configuration settings
-        (Peter)
-       </para>
-
-       <para>
-        For example, you can now set <link
-        linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
-        to <literal>32MB</literal> rather than mentally converting sizes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <link linkend="config-setting">include
-        directives</link> in <filename>postgresql.conf</filename> (Joachim
-        Wieland)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve logging of protocol-level prepare/bind/execute
-        messages (Bruce, Tom)
-       </para>
-
-       <para>
-        Such logging now shows statement names, bind parameter
-        values, and the text of the query being executed.  Also,
-        the query text is properly included in logged error messages
-        when enabled by <varname>log_min_error_statement</varname>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Prevent <link
-        linkend="guc-max-stack-depth"><varname>max_stack_depth</varname></link>
-        from being set to unsafe values
-       </para>
-
-       <para>
-        On platforms where we can determine the actual kernel stack depth
-        limit (which is most), make sure that the initial default value of
-        <varname>max_stack_depth</varname> is safe, and reject attempts to set it
-        to unsafely large values.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Enable highlighting of error location in query in more
-        cases (Tom)
-       </para>
-
-       <para>
-        The server is now able to report a specific error location for
-        some semantic errors (such as unrecognized column name), rather
-        than just for basic syntax errors as before.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix <quote>failed to re-find parent key</quote> errors in
-        <command>VACUUM</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Clean out <filename>pg_internal.init</filename> cache files during server
-        restart (Simon)
-       </para>
-
-       <para>
-        This avoids a hazard that the cache files might contain stale
-        data after PITR recovery.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix race condition for truncation of a large relation across a
-        gigabyte boundary by <command>VACUUM</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix bug causing needless deadlock errors on row-level locks (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix bugs affecting multi-gigabyte hash indexes (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Each backend process is now its own process group leader (Tom)
-       </para>
-
-       <para>
-        This allows query cancel to abort subprocesses invoked from a
-        backend or archive/recovery process.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Query Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-insert"><command>INSERT</command></link>/<link
-        linkend="sql-update"><command>UPDATE</command></link>/<link
-        linkend="sql-delete"><command>DELETE</command></link>
-        <literal>RETURNING</literal> (Jonah Harris, Tom)
-       </para>
-
-       <para>
-        This allows these commands to return values, such as the
-        computed serial key for a new row.  In the <command>UPDATE</command>
-        case, values from the updated version of the row are returned.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for multiple-row <link
-        linkend="queries-values"><literal>VALUES</literal></link> clauses,
-        per SQL standard (Joe, Tom)
-       </para>
-
-       <para>
-        This allows <command>INSERT</command> to insert multiple rows of
-        constants, or queries to generate result sets using constants.
-        For example, <literal>INSERT ...  VALUES (...), (...),
-        ....</literal>, and <literal>SELECT * FROM (VALUES (...), (...),
-        ....) AS alias(f1, ...)</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-update"><command>UPDATE</command></link>
-        and <link linkend="sql-delete"><command>DELETE</command></link>
-        to use an alias for the target table (Atsushi Ogawa)
-       </para>
-
-       <para>
-        The SQL standard does not permit an alias in these commands, but
-        many database systems allow one anyway for notational convenience.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-update"><command>UPDATE</command></link>
-        to set multiple columns with a list of values (Susanne
-        Ebrecht)
-       </para>
-
-       <para>
-        This is basically a short-hand for assigning the columns
-        and values in pairs.  The syntax is <literal>UPDATE tab
-        SET (<replaceable>column</replaceable>, ...) = (<replaceable>val</replaceable>, ...)</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make row comparisons work per standard (Tom)
-       </para>
-
-       <para>
-        The forms &lt;, &lt;=, &gt;, &gt;= now compare rows lexicographically,
-        that is, compare the first elements, if equal compare the second
-        elements, and so on.  Formerly they expanded to an AND condition
-        across all the elements, which was neither standard nor very useful.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-truncate"><literal>CASCADE</literal></link>
-        option to <command>TRUNCATE</command> (Joachim Wieland)
-       </para>
-
-       <para>
-        This causes <command>TRUNCATE</command> to automatically include all tables
-        that reference the specified table(s) via foreign keys.  While
-        convenient, this is a dangerous tool &mdash; use with caution!
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support <literal>FOR UPDATE</literal> and <literal>FOR SHARE</literal>
-        in the same <link linkend="sql-insert"><literal>SELECT</literal></link>
-        command (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="functions-comparisons"><literal>IS NOT
-        DISTINCT FROM</literal></link> (Pavel Stehule)
-       </para>
-
-       <para>
-        This operator is similar to equality (<literal>=</literal>), but
-        evaluates to true when both left and right operands are
-        <literal>NULL</literal>, and to false when just one is, rather than
-        yielding <literal>NULL</literal> in these cases.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve the length output used by <link
-        linkend="queries-union"><literal>UNION</literal></link>/<literal>INTERSECT</literal>/<literal>EXCEPT</literal>
-        (Tom)
-       </para>
-
-       <para>
-        When all corresponding columns are of the same defined length, that
-        length is used for the result, rather than a generic length.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="functions-like"><literal>ILIKE</literal></link>
-        to work for multi-byte encodings (Tom)
-       </para>
-
-       <para>
-        Internally, <literal>ILIKE</literal> now calls <function>lower()</function>
-        and then uses <literal>LIKE</literal>.  Locale-specific regular
-        expression patterns still do not work in these encodings.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Enable <link
-        linkend="guc-standard-conforming-strings"><varname>standard_conforming_strings</varname></link>
-        to be turned <literal>on</literal> (Kevin Grittner)
-       </para>
-
-       <para>
-        This allows backslash escaping in strings to be disabled,
-        making <productname>PostgreSQL</productname> more
-        standards-compliant.  The default is <literal>off</literal> for backwards
-        compatibility, but future releases will default this to <literal>on</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Do not flatten subqueries that contain <literal>volatile</literal>
-        functions in their target lists (Jaime Casanova)
-       </para>
-
-       <para>
-        This prevents surprising behavior due to multiple evaluation
-        of a <literal>volatile</literal> function (such as <function>random()</function>
-        or <function>nextval()</function>).  It may cause performance
-        degradation in the presence of functions that are unnecessarily
-        marked as <literal>volatile</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add system views <link
-        linkend="view-pg-prepared-statements"><literal>pg_prepared_statements</literal></link>
-        and <link
-        linkend="view-pg-cursors"><literal>pg_cursors</literal></link>
-        to show prepared statements and open cursors (Joachim Wieland, Neil)
-       </para>
-
-       <para>
-        These are very useful in pooled connection setups.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support portal parameters in <link
-        linkend="sql-explain"><command>EXPLAIN</command></link> and <link
-        linkend="sql-execute"><command>EXECUTE</command></link> (Tom)
-       </para>
-
-       <para>
-        This allows, for example, <acronym>JDBC</acronym> <literal>?</literal> parameters to
-        work in these commands.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        If <acronym>SQL</acronym>-level <link
-        linkend="sql-prepare"><command>PREPARE</command></link> parameters
-        are unspecified, infer their types from the content of the
-        query (Neil)
-       </para>
-
-       <para>
-        Protocol-level <command>PREPARE</command> already did this.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>LIMIT</literal> and <literal>OFFSET</literal> to exceed
-        two billion (Dhanaraj M)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Object Manipulation Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <literal>TABLESPACE</literal> clause to <link
-        linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
-        (Neil)
-       </para>
-
-       <para>
-        This allows a tablespace to be specified for the new table.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>ON COMMIT</literal> clause to <link
-        linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
-        (Neil)
-       </para>
-
-       <para>
-        This allows temporary tables to be truncated or dropped on
-        transaction commit.  The default behavior is for the table
-        to remain until the session ends.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>INCLUDING CONSTRAINTS</literal> to <link
-        linkend="sql-createtable"><command>CREATE TABLE LIKE</command></link>
-        (Greg Stark)
-       </para>
-
-       <para>
-        This allows easy copying of <literal>CHECK</literal> constraints to a new
-        table.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the creation of placeholder (shell) <link
-        linkend="sql-createtype">types</link> (Martijn van Oosterhout)
-       </para>
-
-       <para>
-        A shell type declaration creates a type name, without specifying
-        any of the details of the type.  Making a shell type is useful
-        because it allows cleaner declaration of the type's input/output
-        functions, which must exist before the type can be defined <quote>for
-        real</quote>.  The syntax is <command>CREATE TYPE <replaceable
-        class="parameter">typename</replaceable></command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        <link linkend="sql-createaggregate">Aggregate functions</link>
-        now support multiple input parameters (Sergey Koposov, Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new aggregate creation <link
-        linkend="sql-createaggregate">syntax</link> (Tom)
-       </para>
-
-       <para>
-        The new syntax is <command>CREATE AGGREGATE
-        <replaceable>aggname</replaceable> (<replaceable>input_type</replaceable>)
-        (<replaceable>parameter_list</replaceable>)</command>.  This more
-        naturally supports the new multi-parameter aggregate
-        functionality.  The previous syntax is still supported.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="sql-alterrole"><command>ALTER ROLE PASSWORD NULL</command></link>
-        to remove a previously set role password (Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>DROP</command> object <literal>IF EXISTS</literal> for many
-        object types (Andrew)
-       </para>
-
-       <para>
-        This allows <command>DROP</command> operations on non-existent
-        objects without generating an error.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-drop-owned"><literal>DROP OWNED</literal></link>
-        to drop all objects owned by a role (Alvaro)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-reassign-owned"><literal>REASSIGN
-        OWNED</literal></link> to reassign ownership of all objects owned
-        by a role (Alvaro)
-       </para>
-
-       <para>
-        This, and <literal>DROP OWNED</literal> above, facilitate dropping
-        roles.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-grant"><command>GRANT ON SEQUENCE</command></link>
-        syntax (Bruce)
-       </para>
-
-       <para>
-        This was added for setting sequence-specific permissions.
-        <literal>GRANT ON TABLE</literal> for sequences is still supported
-        for backward compatibility.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-grant"><literal>USAGE</literal></link>
-        permission for sequences that allows only <function>currval()</function>
-        and <function>nextval()</function>, not <function>setval()</function>
-        (Bruce)
-       </para>
-
-       <para>
-        <literal>USAGE</literal> permission allows more fine-grained
-        control over sequence access.  Granting <literal>USAGE</literal>
-        allows users to increment
-        a sequence, but prevents them from setting the sequence to
-        an arbitrary value using <function>setval()</function>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-altertable"><literal>ALTER TABLE
-        [ NO ] INHERIT</literal></link> (Greg Stark)
-       </para>
-
-       <para>
-        This allows inheritance to be adjusted dynamically, rather than
-        just at table creation and destruction.  This is very valuable
-        when using inheritance to implement table partitioning.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-comment">comments</link> on global
-        objects to be stored globally (Kris Jurka)
-       </para>
-
-       <para>
-        Previously, comments attached to databases were stored in individual
-        databases, making them ineffective, and there was no provision
-        at all for comments on roles or tablespaces.  This change adds a new
-        shared catalog <link
-        linkend="catalog-pg-shdescription"><structname>pg_shdescription</structname></link>
-        and stores comments on databases, roles, and tablespaces therein.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Utility Command Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add option to allow indexes to be created without blocking
-        concurrent writes to the table (Greg Stark, Tom)
-       </para>
-
-       <para>
-        The new syntax is <link linkend="sql-createindex"><command>CREATE
-        INDEX CONCURRENTLY</command></link>.  The default behavior is
-        still to block table modification while a index is being
-        created.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Provide <link linkend="functions-advisory-locks">advisory
-        locking</link> functionality (Abhijit Menon-Sen, Tom)
-       </para>
-
-       <para>
-        This is a new locking API designed to replace what used to be
-        in /contrib/userlock.  The userlock code is now on pgfoundry.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-copy"><command>COPY</command></link> to
-        dump a <command>SELECT</command> query (Zoltan Boszormenyi, Karel
-        Zak)
-       </para>
-
-       <para>
-        This allows <command>COPY</command> to dump arbitrary <acronym>SQL</acronym>
-        queries. The syntax is <literal>COPY (SELECT ...) TO</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make the <link linkend="sql-copy"><command>COPY</command></link>
-        command return a command tag that includes the number of
-        rows copied (Volkan YAZICI)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-vacuum"><command>VACUUM</command></link>
-        to expire rows without being affected by other concurrent
-        <command>VACUUM</command> operations (Hannu Krossing, Alvaro, Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <link linkend="app-initdb"><application>initdb</application></link>
-        detect the operating system locale and set the default
-        <varname>DateStyle</varname> accordingly (Peter)
-       </para>
-
-       <para>
-        This makes it more likely that the installed
-        <filename>postgresql.conf</filename> <varname>DateStyle</varname> value will
-        be as desired.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Reduce number of progress messages displayed by <application>initdb</application> (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Date/Time Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow full timezone names in <link
-        linkend="datatype-datetime"><type>timestamp</type></link> input values
-        (Joachim Wieland)
-       </para>
-
-       <para>
-        For example, <literal>'2006-05-24 21:11
-        America/New_York'::timestamptz</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support configurable timezone abbreviations (Joachim Wieland)
-       </para>
-
-       <para>
-        A desired set of timezone abbreviations can be chosen via the
-        configuration parameter <link
-        linkend="guc-timezone-abbreviations"><varname>timezone_abbreviations</varname></link>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="view-pg-timezone-abbrevs"><varname>pg_timezone_abbrevs</varname></link>
-        and <link
-        linkend="view-pg-timezone-names"><varname>pg_timezone_names</varname></link>
-        views to show supported timezones (Magnus Hagander)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="functions-datetime-table"><function>clock_timestamp()</function></link>,
-        <link
-        linkend="functions-datetime-table"><function>statement_timestamp()</function></link>,
-        and <link
-        linkend="functions-datetime-table"><function>transaction_timestamp()</function></link>
-        (Bruce)
-       </para>
-
-       <para>
-        <function>clock_timestamp()</function> is the current wall-clock time,
-        <function>statement_timestamp()</function> is the time the current
-        statement arrived at the server, and
-        <function>transaction_timestamp()</function> is an alias for
-        <function>now()</function>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link
-        linkend="functions-formatting"><function>to_char()</function></link>
-        to print localized month and day names (Euler Taveira de
-        Oliveira)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link
-        linkend="functions-formatting"><function>to_char(time)</function></link>
-        and <link
-        linkend="functions-formatting"><function>to_char(interval)</function></link>
-        to output <acronym>AM</acronym>/<acronym>PM</acronym> specifications
-        (Bruce)
-       </para>
-
-       <para>
-        Intervals and times are treated as 24-hour periods, e.g.
-        <literal>25 hours</literal> is considered <acronym>AM</acronym>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new function <link
-        linkend="functions-datetime-table"><function>justify_interval()</function></link>
-        to adjust interval units (Mark Dilger)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow timezone offsets up to 14:59 away from GMT
-       </para>
-
-       <para>
-        Kiribati uses GMT+14, so we'd better accept that.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Interval computation improvements (Michael Glaesemann, Bruce)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Other Data Type and Function Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow arrays to contain <literal>NULL</literal> elements (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow assignment to array elements not contiguous with the existing
-        entries (Tom)
-       </para>
-
-       <para>
-        The intervening array positions will be filled with nulls.
-        This is per SQL standard.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New built-in <link linkend="functions-array">operators</link>
-        for array-subset comparisons (<literal>@&gt;</literal>,
-        <literal>&lt;@</literal>, <literal>&amp;&amp;</literal>) (Teodor, Tom)
-       </para>
-
-       <para>
-        These operators can be indexed for many data types using
-        <acronym>GiST</acronym> or <acronym>GIN</acronym> indexes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add convenient arithmetic <link
-        linkend="cidr-inet-operators-table">operations</link> on
-        <type>INET</type>/<type>CIDR</type> values (Stephen R. van den
-        Berg)
-       </para>
-
-       <para>
-        The new operators are <literal>&amp;</literal> (and), <literal>|</literal>
-        (or), <literal>~</literal> (not), <type>inet</type> <literal>+</literal> <type>int8</type>,
-        <type>inet</type> <literal>-</literal> <type>int8</type>, and
-        <type>inet</type> <literal>-</literal> <type>inet</type>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new <link
-        linkend="functions-aggregate-statistics-table">aggregate functions</link>
-        from SQL:2003 (Neil)
-       </para>
-
-       <para>
-        The new functions are <function>var_pop()</function>,
-        <function>var_samp()</function>, <function>stddev_pop()</function>, and
-        <function>stddev_samp()</function>.  <function>var_samp()</function> and
-        <function>stddev_samp()</function> are merely renamings of the
-        existing aggregates <function>variance()</function> and
-        <function>stddev()</function>.  The latter names remain available
-        for backward compatibility.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add SQL:2003 statistical <link
-        linkend="functions-aggregate-statistics-table">aggregates</link>
-        (Sergey Koposov)
-       </para>
-
-       <para>
-        New functions:  <function>regr_intercept()</function>,
-        <function>regr_slope()</function>, <function>regr_r2()</function>,
-        <function>corr()</function>, <function>covar_samp()</function>,
-        <function>covar_pop()</function>, <function>regr_avgx()</function>,
-        <function>regr_avgy()</function>, <function>regr_sxy()</function>,
-        <function>regr_sxx()</function>, <function>regr_syy()</function>,
-        <function>regr_count()</function>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-createdomain">domains</link> to be
-        based on other domains (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Properly enforce domain <link
-        linkend="ddl-constraints"><literal>CHECK</literal></link> constraints
-        everywhere (Neil, Tom)
-       </para>
-
-       <para>
-        For example, the result of a user-defined function that is
-        declared to return a domain type is now checked against the
-        domain's constraints. This closes a significant hole in the domain
-        implementation.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix problems with dumping renamed <link
-        linkend="datatype-serial"><type>SERIAL</type></link> columns
-        (Tom)
-       </para>
-
-       <para>
-        The fix is to dump a <type>SERIAL</type> column by explicitly
-        specifying its <literal>DEFAULT</literal> and sequence elements,
-        and reconstructing the <type>SERIAL</type> column on reload
-        using a new <link linkend="sql-altersequence"><command>ALTER
-        SEQUENCE OWNED BY</command></link> command.  This also allows
-        dropping a <type>SERIAL</type> column specification.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a server-side sleep function <link
-        linkend="functions-datetime-delay"><function>pg_sleep()</function></link>
-        (Joachim Wieland)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add all comparison operators for the <link
-        linkend="datatype-oid"><type>tid</type></link> (tuple id) data
-        type (Mark Kirkwood, Greg Stark, Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>PL/PgSQL Server-Side Language Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <literal>TG_table_name</literal> and <literal>TG_table_schema</literal> to
-        trigger parameters (Andrew)
-       </para>
-
-       <para>
-        <literal>TG_relname</literal> is now deprecated.  Comparable
-        changes have been made in the trigger parameters for the other
-        PLs as well.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>FOR</literal> statements to return values to scalars
-        as well as records and row types (Pavel Stehule)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a <literal>BY</literal> clause to the <literal>FOR</literal> loop,
-        to control the iteration increment (Jaime Casanova)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>STRICT</literal> to <link
-        linkend="plpgsql-statements-sql-onerow"><command>SELECT
-        INTO</command></link> (Matt Miller)
-       </para>
-
-       <para>
-        <literal>STRICT</literal> mode throws an exception if more or less
-        than one row is returned by the <command>SELECT</command>, for
-        <productname>Oracle PL/SQL</productname> compatibility.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>PL/Perl Server-Side Language Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <literal>table_name</literal> and <literal>table_schema</literal> to
-        trigger parameters (Adam Sjogren)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add prepared queries (Dmitry Karasik)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <literal>$_TD</literal> trigger data a global variable (Andrew)
-       </para>
-
-       <para>
-        Previously, it was lexical, which caused unexpected sharing
-        violations.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Run PL/Perl and PL/PerlU in separate interpreters, for security
-        reasons (Andrew)
-       </para>
-       <para>
-        In consequence, they can no longer share data nor loaded modules.
-        Also, if Perl has not been compiled with the requisite flags to
-        allow multiple interpreters, only one of these languages can be used
-        in any given backend process.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>PL/Python Server-Side Language Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Named parameters are passed as ordinary variables, as well as in the
-        <literal>args[]</literal> array (Sven Suursoho)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>table_name</literal> and <literal>table_schema</literal> to
-        trigger parameters (Andrew)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow returning of composite types and result sets (Sven Suursoho)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Return result-set as <literal>list</literal>, <literal>iterator</literal>,
-        or <literal>generator </literal>(Sven Suursoho)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow functions to return <literal>void</literal> (Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Python 2.5 is now supported (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title><link linkend="app-psql"><application>psql</application></link> Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add new command <literal>\password</literal> for changing role
-        password with client-side password encryption (Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <literal>\c</literal> to connect to a new host and port
-        number (David, Volkan YAZICI)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add tablespace display to <literal>\l+</literal> (Philip Yarra)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve <literal>\df</literal> slash command to include the argument
-        names and modes (<literal>OUT</literal> or <literal>INOUT</literal>) of
-        the function (David Fetter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support binary <command>COPY</command> (Andreas Pflug)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add option to run the entire session in a single transaction
-        (Simon)
-       </para>
-
-       <para>
-        Use option <literal>-1</literal> or <literal>--single-transaction</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Support for automatically retrieving <command>SELECT</command>
-        results in batches using a cursor (Chris Mair)
-       </para>
-
-       <para>
-        This is enabled using <command>\set FETCH_COUNT
-        <replaceable>n</replaceable></command>. This
-        feature allows large result sets to be retrieved in
-        <application>psql</application> without attempting to buffer the entire
-        result set in memory.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make multi-line values align in the proper column
-        (Martijn van Oosterhout)
-       </para>
-
-       <para>
-        Field values containing newlines are now displayed in a more
-        readable fashion.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Save multi-line statements as a single entry, rather than
-        one line at a time (Sergey E. Koposov)
-       </para>
-
-       <para>
-        This makes up-arrow recall of queries easier.  (This is
-        not available on Windows, because that platform uses the native
-        command-line editing present in the operating system.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make the line counter 64-bit so it can handle files with more
-        than two billion lines (David Fetter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Report both the returned data and the command status tag
-        for <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE
-        RETURNING</command> (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title><link linkend="app-pgdump"><application>pg_dump</application></link> Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow complex selection of objects to be included or excluded
-        by <application>pg_dump</application> (Greg Sabino Mullane)
-       </para>
-
-       <para>
-        <application>pg_dump</application> now supports multiple <literal>-n</literal>
-        (schema) and <literal>-t</literal> (table) options, and adds
-        <literal>-N</literal> and <literal>-T</literal> options to exclude objects.
-        Also, the arguments of these switches can now be wild-card expressions
-        rather than single object names, for example
-        <literal>-t 'foo*'</literal>, and a schema can be part of
-        a <literal>-t</literal> or <literal>-T</literal> switch, for example
-        <literal>-t schema1.table1</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
-        <literal>--no-data-for-failed-tables</literal> option to suppress
-        loading data if table creation failed (i.e., the table already
-        exists) (Martin Pitt)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
-        option to run the entire session in a single transaction
-        (Simon)
-       </para>
-
-       <para>
-        Use option <literal>-1</literal> or <literal>--single-transaction</literal>.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title><link linkend="libpq"><application>libpq</application></link> Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="libpq-misc"><function>PQencryptPassword()</function></link>
-        to encrypt passwords (Tom)
-       </para>
-
-       <para>
-        This allows passwords to be sent pre-encrypted for commands
-        like <link linkend="sql-alterrole"><command>ALTER ROLE ...
-        PASSWORD</command></link>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add function <link
-        linkend="libpq-threading"><function>PQisthreadsafe()</function></link>
-        (Bruce)
-       </para>
-
-       <para>
-        This allows applications to query the thread-safety status
-        of the library.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="libpq-exec-main"><function>PQdescribePrepared()</function></link>,
-        <link
-        linkend="libpq-exec-main"><function>PQdescribePortal()</function></link>,
-        and related functions to return information about previously
-        prepared statements and open cursors (Volkan YAZICI)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <link linkend="libpq-ldap"><acronym>LDAP</acronym></link> lookups
-        from <link
-        linkend="libpq-pgservice"><filename>pg_service.conf</filename></link>
-        (Laurenz Albe)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow a hostname in <link
-        linkend="libpq-pgpass"><filename>~/.pgpass</filename></link>
-        to match the default socket directory (Bruce)
-       </para>
-
-       <para>
-        A blank hostname continues to match any Unix-socket connection,
-        but this addition allows entries that are specific to one of
-        several postmasters on the machine.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title><link linkend="ecpg"><application>ecpg</application></link> Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow <link linkend="sql-show"><command>SHOW</command></link> to
-        put its result into a variable (Joachim Wieland)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link linkend="sql-copy"><command>COPY TO STDOUT</command></link>
-        (Joachim Wieland)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add regression tests (Joachim Wieland, Michael)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Major source code cleanups (Joachim Wieland, Michael)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title><application>Windows</application> Port</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow <acronym>MSVC</acronym> to compile the <productname>PostgreSQL</productname>
-        server (Magnus, Hiroshi Saito)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <acronym>MSVC</acronym> support for utility commands and <link
-        linkend="app-pgdump"><application>pg_dump</application></link> (Hiroshi
-        Saito)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for Windows code pages <literal>1253</literal>,
-        <literal>1254</literal>, <literal>1255</literal>, and <literal>1257</literal>
-        (Kris Jurka)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Drop privileges on startup, so that the server can be started from 
-        an administrative account (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Stability fixes (Qingqing Zhou, Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add native semaphore implementation (Qingqing Zhou)
-       </para>
-
-       <para>
-        The previous code mimicked SysV semaphores.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Source Code Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Add <link linkend="GIN"><acronym>GIN</acronym></link> (Generalized
-        Inverted iNdex) index access method (Teodor, Oleg)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove R-tree indexing (Tom)
-       </para>
-
-       <para>
-        Rtree has been re-implemented using <link
-        linkend="gist"><acronym>GiST</acronym></link>. Among other
-        differences, this means that rtree indexes now have support
-        for crash recovery via write-ahead logging (WAL).
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Reduce libraries needlessly linked into the backend (Martijn
-        van Oosterhout, Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a configure flag to allow libedit to be preferred over
-        <acronym>GNU</acronym> readline (Bruce)
-       </para>
-
-       <para>
-        Use configure <link
-        linkend="configure"><literal>--with-libedit-preferred</literal></link>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow installation into directories containing spaces
-        (Peter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improve ability to relocate installation directories (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <productname>Solaris x86_64</productname> using the
-        <productname>Solaris</productname> compiler (Pierre Girard, Theo
-        Schlossnagle, Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <application>DTrace</application> support (Robert Lor)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>PG_VERSION_NUM</literal> for use by third-party
-        applications wanting to test the backend version in C using &gt;
-        and &lt; comparisons (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>XLOG_BLCKSZ</literal> as independent from <literal>BLCKSZ</literal>
-        (Mark Wong)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <literal>LWLOCK_STATS</literal> define to report locking
-        activity (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Emit warnings for unknown <application>configure</application> options
-        (Martijn van Oosterhout)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add server support for <quote>plugin</quote> libraries
-        that can be used for add-on tasks such as debugging and performance
-        measurement (Korry Douglas)
-       </para>
-
-       <para>
-        This consists of two features: a table of <quote>rendezvous
-        variables</quote> that allows separately-loaded shared libraries to
-        communicate, and a new configuration parameter <link
-        linkend="guc-local-preload-libraries"><varname>local_preload_libraries</varname></link>
-        that allows libraries to be loaded into specific sessions without
-        explicit cooperation from the client application.  This allows
-        external add-ons to implement features such as a PL/PgSQL debugger.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Rename existing configuration parameter
-        <varname>preload_libraries</varname> to <link
-        linkend="guc-shared-preload-libraries"><varname>shared_preload_libraries</varname></link>
-        (Tom)
-       </para>
-
-       <para>
-        This was done for clarity in comparison to
-        <varname>local_preload_libraries</varname>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add new configuration parameter <link
-        linkend="guc-server-version-num"><varname>server_version_num</varname></link>
-        (Greg Sabino Mullane)
-       </para>
-
-       <para>
-        This is like <varname>server_version</varname>, but is an
-        integer, e.g.  <literal>80200</literal>. This allows applications to
-        make version checks more easily.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a configuration parameter <link
-        linkend="guc-seq-page-cost"><varname>seq_page_cost</varname></link>
-        (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Re-implement the <link linkend="regress">regression test</link> script as a C program
-        (Magnus, Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow loadable modules to allocate shared memory and
-        lightweight locks (Marc Munro)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add automatic initialization and finalization of dynamically
-        loaded libraries (Ralf Engelschall, Tom)
-       </para>
-
-       <para>
-        New <link linkend="xfunc-c-dynload">functions</link>
-        <function>_PG_init()</function> and <function>_PG_fini()</function> are
-        called if the library defines such symbols.  Hence we no
-        longer need to specify an initialization function in
-        <varname>shared_preload_libraries</varname>; we can assume that
-        the library used the <function>_PG_init()</function> convention
-        instead.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <link
-        linkend="xfunc-c-dynload"><literal>PG_MODULE_MAGIC</literal></link>
-        header block to all shared object files (Martijn van
-        Oosterhout)
-       </para>
-
-       <para>
-        The magic block prevents version mismatches between loadable object
-        files and servers.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-         Add shared library support for AIX (Laurenz Albe)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New <link linkend="datatype-xml"><acronym>XML</acronym></link>
-        documentation section (Bruce)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-     <title>Contrib Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Major tsearch2 improvements (Oleg, Teodor)
-       </para>
-
-       <itemizedlist>
-
-        <listitem>
-         <para>
-          multibyte encoding support, including <acronym>UTF8</acronym>
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          query rewriting support
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          improved ranking functions
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          thesaurus dictionary support
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          Ispell dictionaries now recognize <application>MySpell</application>
-          format, used by <application>OpenOffice</application>
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          <acronym>GIN</acronym> support
-         </para>
-        </listitem>
-
-       </itemizedlist>
-
-      </listitem>
-
-      <listitem>
-       <para>
-        Add adminpack module containing <application>Pgadmin</application> administration
-        functions (Dave)
-       </para>
-
-       <para>
-        These functions provide additional file system access
-        routines not present in the default <productname>PostgreSQL</productname>
-        server.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add sslinfo module (Victor Wagner)
-       </para>
-
-       <para>
-        Reports information about the current connection's <acronym>SSL</acronym>
-        certificate.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add pgrowlocks module (Tatsuo)
-       </para>
-
-       <para>
-        This shows row locking information for a specified table.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add hstore module (Oleg, Teodor)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add isn module, replacing isbn_issn (Jeremy Kronuz)
-       </para>
-
-       <para>
-        This new implementation supports <acronym>EAN13</acronym>, <acronym>UPC</acronym>,
-        <acronym>ISBN</acronym> (books), <acronym>ISMN</acronym> (music), and
-        <acronym>ISSN</acronym> (serials).
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add index information functions to pgstattuple (ITAGAKI Takahiro,
-        Satoshi Nagayasu)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add pg_freespacemap module to display free space map information
-        (Mark Kirkwood)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        pgcrypto now has all planned functionality (Marko Kreen)
-       </para>
-       <itemizedlist>
-        <listitem>
-         <para>
-          Include iMath library in pgcrypto to have the public-key encryption
-          functions always available.
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          Add SHA224 algorithm that was missing in OpenBSD code.
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          Activate builtin code for SHA224/256/384/512 hashes on older
-          OpenSSL to have those algorithms always available.
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          New function gen_random_bytes() that returns cryptographically strong 
-          randomness.  Useful for generating encryption keys.
-         </para>
-        </listitem>
-        <listitem>
-         <para>
-          Remove digest_exists(), hmac_exists() and cipher_exists() functions.
-         </para>
-        </listitem>
-       </itemizedlist>
-      </listitem>
-
-      <listitem>
-       <para>
-        Improvements to cube module (Joshua Reich)
-       </para>
-
-       <para>
-        New functions are <function>cube(float[])</function>,
-        <function>cube(float[], float[])</function>, and
-        <function>cube_subset(cube, int4[])</function>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add async query capability to dblink (Kai Londenberg,
-        Joe Conway)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        New operators for array-subset comparisons (<literal>@&gt;</literal>,
-        <literal>&lt;@</literal>, <literal>&amp;&amp;</literal>) (Tom)
-       </para>
-
-       <para>
-        Various contrib packages already had these operators for their
-        datatypes, but the naming wasn't consistent.  We have now added
-        consistently named array-subset comparison operators to the core code
-        and all the contrib packages that have such functionality.
-        (The old names remain available, but are deprecated.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add uninstall scripts for all contrib packages that have install
-        scripts (David, Josh Drake)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-
-    </sect3>
-
-   </sect2>
-  </sect1>
-
- <sect1 id="release-8-1-17">
-  <title>Version 8.1.17</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-03-16</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.1.16.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.17</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.1.15, voir les notes de sortie de la 8.1.15.
-   </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.
-      (CVE-2009-0922)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
-      argument des codes de format inappropriés pour la donnée en argument
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de la décompilation de <literal>CASE WHEN</literal> lorsque
-      cette instruction est utilisée avec une coercion explicite
-      (Tom)
-     </para>
-
-     <para>
-      Cette erreur pouvait entraîner des échecs de type Assert pour les binaires
-      compilés avec l'option Assert activé. Elle pouvait aussi entraîner des
-      des messages d'erreur <quote>unexpected CASE WHEN clause</quote> dans
-      d'autres cas lors de l'examen ou de la sauvegarde d'une vue.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise affectation possible du propriétaire du rowtype
-      d'une table TOAST (Tom)
-     </para>
-
-     <para>
-      Si <command>CLUSTER</command> ou une variante de <command>ALTER
-      TABLE</command> qui ré-écrit la table étaient exécutées par quelqu'un
-      d'autre que le propriétaire de la table, l'entrée
-      <structname>pg_type</structname> pour la table TOAST pouvait se trouver
-      changer de propriétaire (en utilisant l'identifiant de l'utilisateur qui
-      a exécuté la commande). Ceci ne pose pas de problèmes immédiatement car
-      les droits sur le rowtype du TOAST ne sont pas examinés après chaque
-      opération ordinaire de la base de données. Néanmoins, cela peut amener
-      des échecs inattendus si une personne tente plus tard de supprimer le rôle
-      qui a exécuté la commande (en 8.1 ou 8.2) ou des messages d'avertissement
-      du type <quote>propriétaire du type de données semble invalide</quote>
-      avec <application>pg_dump</application> après avoir supprimé l'utilisateur
-      (en 8.3).
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Nettoyage complet des variables de statut de PL/pgSQL à la sortie d'un
-      bloc (Ashesh Vashi et Dave Page)
-     </para>
-
-     <para>
-      Ceci n'est pas un problème avec PL/pgSQL lui-même, mais l'omission pouvait
-      entraîner un crash du debogueur PL/pgSQL lors de l'examen de l'état d'une
-      fonction.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de <literal>MUST</literal> (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-8-1-16">
-  <title>Version 8.1.16</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-02-02</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.1.15.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.16</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Changements</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Correction d'un arrêt brutal dans l'autovacuum (Alvaro)
-     </para>
-
-     <para>
-      Cet arrêt survient seulement après un VACUUM d'une base complète exécuté
-      dans le but d'éviter une ré-utilisation anormale des identifiants de
-      transactions. Donc cela arrive peut fréquemment et est difficile à
-      pister.
-     </para>
-    </listitem>
-
-    <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</command>
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que le contenu d'un curseur conservable ne dépend pas du contenu
-      des tables TOAST (Tom)
-     </para>
-
-     <para>
-      Auparavant, des valeurs de champ large dans un résultat de curseur
-      pouvaient être représentées comme des pointeurs TOAST, ce qui causerait
-      un échec si la table référencée était supprimée avant la lecture du
-      curseur ou si la valeur large était supprimée puis subissait un VACUUM.
-      Ceci ne peut pas arriver avec un curseur standard mais le pourrait avec
-      un curseur qui est conservé après sa transaction de création.
-     </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>
-      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>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
-      <application>tzdata</application> (pour le Kathmandou et des corrections
-      historiques de DST en Switzerland et à Cuba)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-1-15">
-  <title>Version 8.1.15</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-11-03</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.1.14.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.15</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Correction d'une corruption d'index GiST. L'entrée d'index marquée comme
-      <quote>morte</quote> après une suppression n'était pas la bonne (Teodor)
-     </para>
-
-     <para>
-      Cela peut avoir comme conséquence des échecs dans les recherches par
-      index pour des lignes qu'elles auraient dû trouver.
-     </para>
-    </listitem>
-
-    <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</quote> 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 d'un crash possible lorsque des fonctions profondément
-      imbriquées sont appelées à partir d'un trigger (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une mauvaise expansion de requêtes de règles quand un
-      sous-<literal>SELECT</literal> apparaît dans un appel de fonction d'un
-      <literal>FROM</literal>,  d'une liste <literal>VALUES</literal> multi-lignes ou
-      d'une liste <literal>RETURNING</literal> (Tom)
-     </para>
-
-     <para>
-      Le symptôme habituel de ce problème est une erreur <quote>type de noeud
-      inconnu</quote>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
-      nouvellement définie est appelée comme une fonction normale (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Empêche une collision possible du <structfield>relfilenode</structfield>
-      lors du déplacement d'une table vers un autre tablespace avec
-      <command>ALTER SET TABLESPACE</command> (Heikki)
-     </para>
-
-     <para>
-      La commande essaie de ré-utiliser le nom du fichier existant au lieu d'un
-      prendre un qu'on sait inutilisé dans le répertoire de destination.
-     </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</option>
-      (Ron Mayer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
-      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</command> par
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires vers la version
-      2008i de <application>tzdata</application> (pour les modifications légales de DST en
-      Argentine, au Brésil, à l'Île Maurice et en Syrie)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-1-14">
-  <title>Version 8.1.14</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-09-22</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.1.13.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.14</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
-    However, if you are upgrading from a version earlier than 8.1.2,
-    see the release notes for 8.1.2.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Widen local lock counters from 32 to 64 bits (Tom)
-     </para>
-
-     <para>
-      This responds to reports that the counters could overflow in
-      sufficiently long transactions, leading to unexpected <quote>lock is
-      already held</quote> errors.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible duplicate output of tuples during a GiST index scan (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add checks in executor startup to ensure that the tuples produced by an
-      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
-      current rowtype (Tom)
-     </para>
-
-     <para>
-      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
-      cached plan, could produce this type of situation.  The check protects
-      against data corruption and/or crashes that could ensue.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <literal>AT TIME ZONE</literal> to first try to interpret its timezone
-      argument as a timezone abbreviation, and only try it as a full timezone
-      name if that fails, rather than the other way around as formerly (Tom)
-     </para>
-
-     <para>
-      The timestamp input functions have always resolved ambiguous zone names
-      in this order.  Making <literal>AT TIME ZONE</literal> do so as well improves
-      consistency, and fixes a compatibility bug introduced in 8.1:
-      in ambiguous cases we now behave the same as 8.0 and before did,
-      since in the older versions <literal>AT TIME ZONE</literal> accepted
-      <emphasis>only</emphasis> abbreviations.
-     </para>
-    </listitem>
-
-    <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</literal> query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner bug with nested sub-select expressions (Tom)
-     </para>
-
-     <para>
-      If the outer sub-select has no direct dependency on the parent query,
-      but the inner one does, the outer value might not get recalculated
-      for new parent query rows.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to estimate that <literal>GROUP BY</literal> 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>
-      Fix PL/PgSQL to not fail when a <literal>FOR</literal> loop's target variable
-      is a record containing composite-type fields (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
-      about the encoding of data sent to or from Tcl (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix PL/Python to work with Python 2.5
-     </para>
-
-     <para>
-      This is a back-port of fixes made during the 8.2 development cycle.
-     </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>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to properly preserve postmaster
-      command-line arguments across a <literal>restart</literal> (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008f (for
-      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
-      Pakistan, Palestine, and Paraguay)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
- 
- <sect1 id="release-8-1-13">
-  <title>Version 8.1.13</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-06-12</simpara>
-  </note>
-
-  <para>
-   This release contains one serious and one minor bug fix over 8.1.12.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.13</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
-    However, if you are upgrading from a version earlier than 8.1.2,
-    see the release notes for 8.1.2.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
-      be <literal>(-42)::integer</literal> due to operator precedence rules.
-      Usually this would make little difference, but it could interact with
-      another recent patch to cause
-      <productname>PostgreSQL</productname> to reject what had been a valid
-      <command>SELECT DISTINCT</command> view query.  Since this could result in
-      <application>pg_dump</application> 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>
-
-    <listitem>
-     <para>
-      Make <command>ALTER AGGREGATE ... OWNER TO</command> update
-      <structname>pg_shdepend</structname> (Tom)
-     </para>
-
-     <para>
-      This oversight could lead to problems if the aggregate was later
-      involved in a <command>DROP OWNED</command> or <command>REASSIGN OWNED</command>
-      operation.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-1-12">
-  <title>Version 8.1.12</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>never released</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.1.11.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.12</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.1.X.
-    However, if you are upgrading from a version earlier than 8.1.2,
-    see the release notes for 8.1.2.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
-      column is correctly checked to see if it's been initialized to all
-      non-nulls (Brendan Jurd)
-     </para>
-
-     <para>
-      Previous versions neglected to check this requirement at all.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible <command>CREATE TABLE</command> failure when inheriting the
-      <quote>same</quote> constraint from multiple parent relations that
-      inherited that constraint from a common ancestor (Tom)
-     </para>
-    </listitem>
-
-    <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>
-      Update time zone data files to <application>tzdata</application> release 2008c (for
-      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba,
-      Argentina/San_Luis, and Chile)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect result from <application>ecpg</application>'s
-      <function>PGTYPEStimestamp_sub()</function> function (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix core dump in <filename>contrib/xml2</filename>'s
-      <function>xpath_table()</function> function when the input query returns a
-      NULL value (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <filename>contrib/xml2</filename>'s makefile to not override
-      <literal>CFLAGS</literal> (Tom)
-     </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>
-      Disallow <command>LISTEN</command> and <command>UNLISTEN</command> within a
-      prepared transaction (Tom)
-     </para>
-
-     <para>
-      This was formerly allowed but trying to do it had various unpleasant
-      consequences, notably that the originating backend could not exit
-      as long as an <command>UNLISTEN</command> remained uncommitted.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix rare crash when an error occurs during a query using a hash index
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix input of datetime values for February 29 in years BC (Tom)
-     </para>
-
-     <para>
-      The former coding was mistaken about which years were leap years.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <quote>unrecognized node type</quote> error in some variants of
-      <command>ALTER OWNER</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
-      number from command-line options (Itagaki Takahiro, Tom)
-     </para>
-
-     <para>
-      Previously, <literal>pg_ctl start -w</literal> could try to contact the
-      postmaster on the wrong port, leading to bogus reports of startup
-      failure.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use <option>-fwrapv</option> to defend against possible misoptimization
-      in recent <application>gcc</application> versions (Tom)
-     </para>
-
-     <para>
-      This is known to be necessary when building <productname>PostgreSQL</productname>
-      with <application>gcc</application> 4.3 or later.
-     </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-8-1-11">
-  <title>Version 8.1.11</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-01-07</simpara>
-  </note>
-
-  <para>
-   Cette version contient divers correctifs de la version 8.1.10,
-   et inclut des correctifs d'importantes failles de sécurité.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-  </para>
-
-  <para>
-   Ceci est la dernière version 8.1.X pour laquelle la communauté
-   <productname>PostgreSQL</productname> produira des paquets binaires pour
-   <productname>Windows</productname>.
-   Les utilisateurs Windows sont encouragés à migrer vers la version 8.2.X ou
-   ultérieures car il existe des corrections spécifiques à Windows dans la
-   version 8.2.X qui ne peuvent pas être portées aux anciennes versions. La
-   8.1.X continuera à être supportée sur les autres plateformes.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.1.11</title>
-
-   <para>
-    Les utilisateurs des versions 8.1.X n'ont pas besoin d'effectuer d'une
-    étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour
-    depuis une version précédant la 8.1.2, lire les notes de version de la
-    8.1.2.
-   </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>
-      Correction 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.1.10 était incomplète, car elle ne corrigeait
-      la faille que pour certaines fonctions <filename>dblink</filename>. 
-      (CVE-2007-6601, CVE-2007-3278)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires avec la version
-      2007k de <application>tzdata</application> (en particulier, les
-      modifications récentes en Argentine) (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Améliore la gestion du planificateur pour les estimations de LIKE et
-      des expressions rationnelles dans les locales autres que C (Tom)
-     </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>
-      Préserve les paramètres du tablespace et de stockage des index qui sont
-      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
-      TYPE</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que la restauration d'archive commence toujours une nouvelle
-      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
-      restauration ne soit utilisée (Simon)
-     </para>
-
-     <para>
-      Ceci évite un risque très particulier de tentative de ré-écriture sur
-      une copie archivée existante du dernier journal de transaction. Cela
-      semble plus simple et plus clair que la définition originale.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <command>VACUUM</command> n'utilise pas tout
-      <varname>maintenance_work_mem</varname> lorque la table est trop petite
-      pour que cela est la moindre utilité (Alvaro)
-     </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 d'un dépassement de capacité dans <literal>extract(epoch from
-      interval)</literal> pour les intervalles excédant 68 ans (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/Perl pour qu'il n'échoue pas quand une expression
-      rationnelle UTF-8 est utilisée dans une fonction de confiance
-      (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction de PL/Perl pour continuer l'exécution quand le langage Perl
-      de la plateforme définit le type <literal>bool</literal> en tant que
-      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
-      (Tom)
-     </para>
-
-     <para>
-      Bien que ceci peut arriver partout, aucune construction standard de Perl
-      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
-     </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>
-      Correction de <application>pg_dump</application> pour qu'il gère
-      correctement les tables héritées qui ont des expressions par défaut
-      différentes de celles de leur parents (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'un crash de <application>libpq</application> quand
-      <varname>PGPASSFILE</varname> fait référence à un fichier qui n'est
-      pas un fichier texte (Martin Pitt)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Corrections de l'analyseur <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction réalisée pour que <filename>contrib/pgcrypto</filename>
-      puisse se défendre contre les bibliothèques
-      <application>OpenSSL</application> qui échouent sur des clés de plus de
-      128 bits&nbsp;; ce qui est le cas sur au moins certaines versions de
-      Solaris (Marko Kreen)
-     </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-8-1-10">
-   <title>Version 8.1.10</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-09-17</simpara>
-   </note>
-
-   <para>
-    Cette version contient divers correctifs de la version 8.1.9.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.10</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
-       correctement (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le type de données <type>interval</type> accepte désormais les entrées
-       constituées uniquement de millisecondes ou microsecondes (Neil)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       l'insertion des index rtree est accélérée (Teodor)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
-       est corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation est corrigée de sorte que les messages ne sont plus
-       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
-      </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)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la gestion incorrecte de certains cas limites de clés étrangères est
-       corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>REINDEX</command> et <command>CLUSTER</command> ne plantent
-       plus en tentant de travailler sur les tables temporaires d'autres
-       sessions (Alvaro)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les règles de la base de données concernant les fuseaux horaires, en
-       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
-       à jour (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
-       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
-       avoir des incompatibilités d'encodage (Tom)&nbsp;;
-      </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-8-1-9">
-   <title>Version 8.1.9</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-04-23</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.8, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.9</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Supporte le placement explicite du schéma des tables temporaires dans
-      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
-      d'informations.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Nécessite l'exécution de <command>COMMIT PREPARED</command> dans la
-      même base que celle utilisée par la transaction qui l'a préparé
-      (Heikki)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue pouvant corrompre des données dans la façon
-      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
-      (Tom, Pavan Deolasee)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Corrections du planificateur, avec des améliorations sur la logique de
-      sélection des jointures externes et des parcours de bitmap (Tom)
-     </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>
-
-     <listitem>
-     <para>
-      Correction des spécifications des fuseaux horaires POSIX
-      pour suivre les nouvelles règles USA DST (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-8">
-   <title>Version 8.1.8</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-07</simpara>
-   </note>
-
-   <para>
-    Cette version contient une correction de la 8.1.7.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.8</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Suppression d'une vérification trop restrictive pour la longueur du type
-      dans les contraintes et les index fonctionnels (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-7">
-   <title>Version 8.1.7</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-05</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.6, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.7</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Suppression de failles de sécurité qui permettent à des utilisateurs
-      connectés de lire la mémoire du serveur (backend)
-      (Tom)
-     </para>
-     <para>
-      Ces vulnérabilités impliquent de supprimer la vérification habituelle
-      qu'une fonction renvoie le type de données qu'elle a déclaré, et de
-      modifier le type de données de la colonne d'une table utilisée dans une
-      fonction SQL (CVE-2007-0555, CVE-2007-0556).
-      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 des performances de <command>VACUUM</command> pour les bases
-      de données avec de nombreuses tables (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction du autovacuum pour éviter de laisser des identifiants de
-      transaction temporaires dans les bases non connectables (Alvaro)
-     </para>
-
-     <para>
-      Ce bogue affecte seulement la branche 8.1.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue rare dans Assert() déclenché par <literal>UNION</literal> (Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'échecs erronées de type <quote>droit refusé</quote> survenant
-      sur Windows à cause de tentatives de fsync sur des fichiers déjà
-      supprimés (Magnus, Tom)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux possibles lorsqu'une fonction PL/pgSQL en
-      cours d'utilisation est mise à jour (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-6">
-   <title>Version 8.1.6</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-01-08</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.5.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.6</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </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 de <application>pg_restore</application> pour gérer une
-       sauvegarde au format tar contenant les objets larges (blobs) avec
-       commentaires (Tom)
-      </para>
-     </listitem>
-
-      <listitem>
-       <para>
-        Correction des erreurs <quote>failed to re-find parent key</quote> du
-        <command>VACUUM</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Nettoyage des fichiers cache <filename>pg_internal.init</filename> lors
-	du re-démarrage du serveur (Simon)
-       </para>
-
-       <para>
-        Ceci évite que les fichiers cache contiennent des données obsolètes
-	après une récupération PITR.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Correction d'un cas rare de tronquage d'une grosse relation à la limite
-	du Go par <command>VACUUM</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Correction d'un bogue causant des erreurs de verrouillage mortelle
-	inutiles sur des verrous niveau ligne (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Corrections de bogues affectant les index hash de plusieurs Go (Tom)
-       </para>
-      </listitem>
-
-     <listitem>
-      <para>
-       Correction d'un possible blocage mortel dans la gestion des signaux sous
-       Windows (Teodor)
-      </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>
-       Correction d'une perte mémoire dans ecpg lors d'une connexion (Michael)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Correction de la compilation sur Darwin (OS X) (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>
-
-     <listitem>
-      <para>
-       Mise à jour de la base des fuseaux horaires
-      </para>
-
-      <para>
-       Ceci affecte les règles de changements d'heure en Australie et au Canada.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-5">
-   <title>Version 8.1.5</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-10-16</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.4.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.4</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Interdiction des fonctions d'agrégat dans des commandes
-  <command>UPDATE</command>, sauf à l'intérieur de sous-sélections (Tom)</para>
-<para>Le comportement d'un tel agrégat est non prévisible et, dans la version 8.1.X,
-  peut causer un arrêt brutal. Donc, il a été désactivé. Le standard SQL ne le
-  permet pas non plus.</para></listitem>
-<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 d'un <quote>core dump</quote> lors des traces sur les
-  durées pour le protocole étendu de requêtes quand un <command>COMMIT</command>
-  ou un <command>ROLLBACK</command> est exécuté</para></listitem>
-<listitem><para>Correction d'une mauvaise gestion des déclencheurs après quand
-  une requête contient une fonction SQL renvoyant plusieurs lignes
-  (Tom)</para></listitem>
-<listitem><para>Correction de <command>ALTER TABLE ... TYPE</command> pour qu'il vérifie
-<literal>NOT NULL</literal> dans une clause <literal>USING</literal> (Tom)</para></listitem>
-<listitem><para>Correction de <function>string_to_array()</function> pour gérer des
-  correspondances se surchargeant pour la chaîne de séparation</para>
-<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
-</para></listitem>
-<listitem><para>Correction de <function>to_timestamp()</function> pour les formats
-<literal>AM</literal>/<literal>PM</literal> (Bruce)</para></listitem>
-<listitem><para>Correction du calcul de l'autovacuum qui décide de l'exécution
-  d'<command>ANALYZE</command> (Alvaro)</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>Nombreuses corrections de fiabilité dans <application>ecpg</application> (Joachim
-Wieland)</para></listitem>
-<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
-<listitem><para>Corrections mineures dans /contrib/dblink et /contrib/tsearch2</para>
-</listitem>
-<listitem><para>Amélioration de l'efficacité des tables hash et des parcours
-  d'index bitmap (Tom)</para></listitem>
-<listitem><para>Correction de l'instabilité de la récupération de statistiques
-  sur Windows (Tom, Andrew)</para></listitem>
-<listitem><para>Correction de <varname>statement_timeout</varname> pour utiliser
-  les bonnes unités sur Win32 (Bruce)</para>
-<para>Dans les versions précédentes de la 8.1.X sur Win32, le délai était
-  décalé d'un facteur de 100.</para></listitem>
-<listitem><para>Corrections pour les compilateurs <acronym>MSVC</acronym> et
-  <productname>Borland C++</productname> (Hiroshi Saito)</para></listitem>
-<listitem><para>Corrections pour les compilateurs <systemitem class="osname">AIX</systemitem> et
-<productname>Intel</productname> (Tom)</para></listitem>
-<listitem><para>Correction d'un bug rare dans l'archivage continu (Tom)</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-4">
-   <title>Version 8.1.4</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-05-23</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.3 incluant des
-    correctifs pour des problèmes de sécurité extrêmement sérieux.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.4</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </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()</function> de
-     <application>libpq</application>) pour réaliser l'échappement des chaînes
-     plutôt que de se fier à un code <foreignphrase>ad hoc</foreignphrase>.
-    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un
-guillemet simple ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal>
-est rejetté seulement quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
-de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</application>
-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</productname> devraient migrer vers
-<function>PQescapeStringConn()</function> et <function>PQescapeByteaConn()</function>
-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</quote> devraient être modifiées
-pour se fier à aux routines de la bibliothèques à la place.
-</para></listitem>
-
-<listitem><para>Correction de la sélection d'une clé faible dans pgcrypto (Marko Kreen)</para>
-<para>Des erreurs dans la logique de ré-échantillonage de PRNG peuvent causer
-la sélection d'une clé de session prévisible par
-<function>pgp_sym_encrypt()</function> dans certains cas.
-Ceci affecte seulement les constructions n'utilisant pas OpenSSL.
-</para></listitem>
-
-<listitem><para>Correction de quelques fonctions de conversion de codage</para>
-<para><function>win1251_to_iso</function>, <function>alt_to_iso</function>,
-<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
-<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de 
-<literal>\'</literal> dans les chaînes (Bruce, Jan)</para></listitem>
-
-<listitem><para>Make autovacuum visible in <structname>pg_stat_activity</structname>
-(Alvaro)</para></listitem>
-
-<listitem><para>Déasctivation de <literal>full_page_writes</literal> (Tom)</para>
-<para>Dans certains cas, désactiver <literal>full_page_writes</literal> sera la
-cause d'un échec de la récupération après un arrêt brutal. Une meilleure
-correction sera disponible en 8.2&nbsp;; maintenant, on ne fait que la
-désactiver.
-</para></listitem>
-
-<listitem><para>Corrections diverses sur le planificateur, en particulier pour
-les parcours d'index bitmap et l'optimisation de MIN/MAX (Tom)</para></listitem>
-
-<listitem><para>Correction d'une mauvaise optimisation dans les jointures
-d'assemblages (Tom)</para>
-<para>Les jointures externes peuvent quelque fois émettre plusieurs copies de
-lignes sans correspondance.
-</para></listitem>
-
-<listitem><para>Correction d'un arrêt brutal lors de l'utilisation et de la
-modification d'une fonction plpgsql dans la même transaction</para></listitem>
-
-<listitem><para>Correction d'un replay WAL pour le cas où un index B-Tree a été
-tronqué</para></listitem>
-
-<listitem><para>Correction de <literal>SIMILAR TO</literal> pour les modèles impliquant
-<literal>|</literal> (Tom)</para></listitem>
-
-<listitem><para>Correction de <command>SELECT INTO</command> et <command>CREATE TABLE AS</command>
-pour créer des tables dans le tablespace par défaut, et non pas dans le répertoire
-base (Kris Jurka)</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>Amélioration des performances de qsort (Dann Corbit)</para>
-<para>Actuellement, ce code est seulement utilisé sur Solaris.
-</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>
-
-<listitem><para>Correction d'un problème pour la demande du mot de passe sur
-certaines systèmes Win32 (Robert Kinberg)</para></listitem>
-
-<listitem><para>Amélioration de la gestion des valeurs par défaut dans les
-domaines pour <application>pg_dump</application></para></listitem>
-
-<listitem><para>Correction de <application>pg_dumpall</application> pour gérer
-raisonnablement les utilisateurs et les groupes nommés de façon identique
-(uniquement possible lors d'une sauvegarde d'un serveur de version antérieure
-à la 8.1) (Tom)</para>
-<para>L'utilisateur et le groupe seront assemblés en un seul rôle avec le droit
-<literal>LOGIN</literal>. Auparavant, le rôle créé n'avait pas le droit
-<literal>LOGIN</literal> le rendant inutilisable en tant que rôle de connexion.
-</para></listitem>
-
-<listitem><para>Correction de l'option <literal>-n</literal> de
-<application>pg_restore</application> pour qu'elle fonctionne comme sa
-description dans la documentation (Tom)</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
- 
-  <sect1 id="release-8-1-3">
-   <title>Version 8.1.3</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-02-14</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.1.2 et un très sérieux
-    problème de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.3</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.1.2, voir les notes de sortie de la 8.1.2.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un bogue qui permettait à tout utilisateur connecté
-d'exécuter <command>SET ROLE</command> avec tout autre identifiant utilisateur de la
-base de donnée (CVE-2006-0553)</para>
-<para>À cause d'une vérification inadéquate de la validité, un utilisateur
-pouvait exploiter le cas spécial utilisé habituellement par <command>SET
-ROLE</command> pour restaurer le paramétrage du rôle précédent après une erreur.
-Ceci permettait à des utilisateurs ordinaires d'acquérir le statut de
-superutilisateur par exemple. Le risque d'augmentation des droits existe
-seulement en 8.1.0-8.1.2. Néanmoins, dans toutes les versions y compris la
-7.3, il existe un bogue en relation dans <command>SET
-SESSION AUTHORIZATION</command> qui permet à des utilisateurs non privilégiés
-d'arrêter brutalement le serveur s'il 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 8.0.4, 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à</quote> lors de la création d'un fichier pg_clog
-(Tom)</para></listitem>
-
-<listitem><para>Correction des cas pouvant amener des arrêts brutaux si un
-message d'invalidation de cache arrive juste au mauvais moment (Tom)</para></listitem>
-
-<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
-les paramètres <literal>UNKNOWN</literal> dans les instructions préparées
-(Neil)</para></listitem>
-
-<listitem><para>S'assure que <command>ALTER COLUMN TYPE</command> traitera les
-contraintes <literal>FOREIGN KEY</literal>, <literal>UNIQUE</literal> et
-<literal>PRIMARY KEY</literal> dans le bon ordre (Nakano Yoshihisa)</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>Autorise <application>pg_restore</application> à continuer tranquillement
-après un échec de <command>COPY</command>&nbsp;; auparavant, il essayait de traiter
-les données restantes du <command>COPY</command> comme des commandes SQL (Stephen
-Frost)</para></listitem>
-
-<listitem><para>Correction du bogue <literal>unregister</literal> de
-<application>pg_ctl</application> quand le répertoire des données n'est pas
-spécifié (Magnus)</para></listitem>
-
-<listitem><para>Correction des balises HTML de <function>PQprint</function>
-dans <application>libpq</application> (Christoph Zwerschke)</para></listitem>
-
-<listitem><para>Correction du bogue sur <application>ecpg</application> pour AMD64 et
-PPC (Neil)</para></listitem>
-
-<listitem><para>Autorise l'utilisation de <literal>SETOF</literal> et de
-<literal>%TYPE</literal> ensemble dans des déclarations de type de résultat
-des fonctions</para></listitem>
-
-<listitem><para>Récupère proprement si une erreur survient lors du passage
-des arguments en <application>PL/python</application> (Neil)</para></listitem>
-
-<listitem><para>Correction d'une perte mémoire dans <function>plperl_return_next</function>
-(Neil)</para></listitem>
-
-<listitem><para>Correction de la gestion des locales par <application>PL/perl</application>
-sur Win32 pour correspondre au moteur (Andrew)</para></listitem>
-
-<listitem><para>Différentes corrections de l'optimiseur (Tom)</para></listitem>
-
-<listitem><para>Correction d'un bogue quand <literal>log_min_messages</literal> est
-configuré à <literal>DEBUG3</literal> ou plus bas dans le fichier <filename>postgresql.conf</filename>
-sur Win32 (Bruce)</para></listitem>
-
-<listitem><para>Correction l'option <literal>-L</literal> de spécification du chemin
-des bibliothèques de <application>pgxs</application> pour Win32, Cygwin, OS X, AIX
-(Bruce)</para></listitem>
-
-<listitem><para>Vérification de l'activation de SID lors de la vérification
-des droits administrateur sous Win32 (Magnus)</para></listitem>
-
-<listitem><para>Rejette proprement les données de type date en dehors de la
-plage (Kris Jurka)</para></listitem>
-
-<listitem><para>Correction de portabilité pour tester la présence de
-<function>finite</function> et <function>isinf</function> lors du configure (Tom)</para></listitem>
-
-<listitem><para>Amélioration de la rapidité de <command>COPY IN</command> via libpq,
-en évitant un appel noyau par ligne de données (Alon Goldshuv)</para></listitem>
-
-<listitem><para>Amélioration de la rapidité de création de l'index pour
-<filename>/contrib/tsearch2</filename> (Tom)</para></listitem>
-
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1-2">
-   <title>Version 8.1.2</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-01-09</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la version 8.1.1.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.2</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.1.X. Néanmoins, vous pourriez avoir besoin de lancer la commande
-     <command>REINDEX</command> 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</application> décrits ci-dessous.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un code Windows de façon à ce que postmaster
-continue au lieu de quitter s'il n'y a plus de place dans
-ShmemBackendArray (Magnus)</para>
-<para>Le comportement précédent pouvait amener à une situation de déni de
-service si trop de demandes de connexion arrivaient en même temps. Ceci
-s'applique <emphasis>seulement</emphasis> au port Windows.</para></listitem>
-
-<listitem><para>Correction d'un bogue introduit dans la version 8.0 permettant à
-ReadBuffer de renvoyer une page déjà utilisée comme nouvelle, causant
-potentiellement des pertes de données récemment validées (Tom)</para></listitem>
-
-<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</command>
-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</application> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
-utilisation de <application>plperl</application> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</command> pour corriger des
-index existant sur des colonnes de type texte si cela vous arrivait.
-</para></listitem>
-
-<listitem><para>Permet un déplacement plus simple des répertoires d'installation
-(Tom)</para>
-<para>Les anciennes versions supportaient seulement un déplacement si tous les
-chemins d'installation étaient identiques sauf pour le dernier composant.
-</para></listitem>
-
-<listitem><para>Empêche les arrêts brutaux causés par l'utilisation des codages
-<literal>ISO-8859-5</literal> et <literal>ISO-8859-9</literal> (Tatsuo)</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 où le mode COPY CSV considérait tout
-<literal>\.</literal> comme la terminaison du fichier</para>
-<para>Le nouveau code requiert que <literal>\.</literal> apparaisse seul sur une ligne,
-comme l'indique la documentation.</para></listitem>
-
-<listitem><para>Fait que le mode COPY CSV place entre guillemets la valeur
-littérale <literal>\.</literal> pour s'assurer qu'il ne puisse pas être
-interprété comme un marqueur de fin de données (Bruce)</para></listitem>
-
-<listitem><para>Quelques corrections pour les fonctions renvoyant <literal>RECORD</literal>
-(Tom) </para></listitem>
-
-<listitem><para>Correction du traitement de <filename>postgresql.conf</filename> pour
-qu'une ligne finale sans retour chariot soit traitée proprement (Tom)
-</para></listitem>
-
-<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</filename>,
-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 d'un arrêt brutal d'autovacuum lors du traitement
-des index d'expression</para></listitem>
-
-<listitem><para>Correction de <filename>/contrib/dblink</filename> 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-8-1-1">
-   <title>Version 8.1.1</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2005-12-12</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections vers la 8.1.0.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.1, voir <xref linkend="release-8-1"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.1.1</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux qui utilisent 8.1.X.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'optimisations incorrectes des conditions de
-jointures externes (Tom)</para></listitem>
-
-<listitem><para>Correction des problèmes avec de mauvais noms de colonne
-rapportés dans les cas impliquant des sous-sélections applaties par l'optimiseur
-(Tom)</para></listitem>
-
-<listitem><para>Correction des échecs de mise à jour dans les scénarios impliquant
-les contraintes de vérification (CHECK), les colonnes TOAST <emphasis>et</emphasis> les
-index (Tom)</para></listitem>
-
-<listitem><para>Correction des problèmes du processus d'écriture en tâche de
-fond après avoir récupéré des erreurs (Tom)</para>
-<para>
-Le processus d'écriture en tâche de fond was found to leak buffer pins after write errors.
-Bien que non fatal en soi, ceci pourrait amener des blocages mystérieux sur des
-commandes VACUUM ultérieures.
-</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/tsearch2</filename> et <filename>/contrib/ltree</filename>
-(Teodor)</para></listitem>
-
-<listitem><para>Corrections de problèmes avec les messages d'erreur traduits
-dans des langues qui requièrent un réordonnancement des mots, comme en turc&nbsp;;
-corrections de problèmes avec des troncatures inattendues de chaînes et mauvais
-affichage de la plus petite valeur bigint possible (Andrew, Tom)</para>
-<para>Ces problèmes apparaissaient seulement sur les plateformes qui utilisaient
-notre code <filename>port/snprintf.c</filename>, qui inclut des variantes BSD si
-<literal>--enable-nls</literal> était donné, et peut-être d'autres. De plus, une forme
-différente du problème de message d'erreur traduit pourrait apparaître sur
-Windows dépendant de la version de <filename>libintl</filename> utilisée.
-</para></listitem>
-
-<listitem><para>Autorise de nouveau les spécifications de format
-<literal>AM</literal>/<literal>PM</literal>, <literal>HH</literal>, <literal>HH12</literal> et <literal>D</literal>
-pour <function>to_char(time)</function> et <function>to_char(interval)</function>.
-(<function>to_char(interval)</function> devrait probablement utiliser
-<literal>HH24</literal>.) (Bruce)</para></listitem>
-
-<listitem><para>Corrections de compilation sur AIX, HPUX et MSVC (Tom, Hiroshi
-Saito)</para></listitem>
-
-<listitem><para>Amélioration de l'optimiseur (Tom)</para></listitem>
-
-<listitem><para>Tente de nouveau les lectures et écritures de fichiers après
-une erreur NO_SYSTEM_RESOURCES sous Windows (Qingqing Zhou)</para></listitem>
-
-<listitem><para>Correction d'un échec intermittent quand <varname>log_line_prefix</varname>
-inclut <literal>%i</literal></para></listitem>
-
-<listitem><para>Empêche <application>autovacuum</application> de s'arrêter brutalement
-lors d'une analyse (ANALYZE) d'un index d'expression (Alvaro)</para></listitem>
-
-<listitem><para>Correction de problèmes avec ON COMMIT DELETE ROWS sur des
-tables temporaires</para></listitem>
-
-<listitem><para>Correction de problèmes quand un déclencheur modifie la sortie
-d'une requête SELECT DISTINCT</para></listitem>
-
-<listitem><para>Ajout d'un élément dans les notes de sortie de la version 8.1.0
-sur la façon de migrer des séquences d'octets <literal>UTF-8</literal> invalides (Paul
-Lindner)</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-1">
-   <title>Version 8.1</title>
-
-   <note>
-    <title>Date de sortie</title>
-    <simpara>2005-11-08</simpara>
-   </note>
-
-   <sect2>
-    <title>Aperçu</title>
- 
-    <para>
-     Modifications principales apportées par cette version&nbsp;:
-    </para>
-
-    <variablelist>
-
-     <varlistentry>
-      <term>
-       Amélioration des accès concurrents au cache de tampon partagé (Tom)&nbsp;;
-      </term>
-
-      <listitem>
-       <para>
-        L'accès au cache de tampon partagé posait des problèmes d'extensibilité, 
-	en particulier sur les systèmes multi-CPU. Dans cette version, la pose
-	de verrous dans le gestionnaire de tampons a été modifiée pour réduire
-	les collisions de verrous et améliorer l'extensibilité. 
-	Le gestionnaire de tampon a été changé pour une politique de
-	remplacement fonction d'un <quote>balayage horaire</quote>.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Les parcours d'index peuvent utiliser une carte en mémoire (Tom)&nbsp;;
-      </term>
-
-      <listitem>
-       <para>
-        Dans les versions précédentes, un seul index pouvait être utilisé
-	pour les recherches sur une table. Avec cette fonctionnalité, si
-	une requête contient 
-        <command>WHERE tab.col1 = 4 and tab.col2 = 9</command>, 
-	et qu'il n'y a pas d'index multi-colonnes sur <literal>col1</literal>
-	et <literal>col2</literal>, mais qu'il y a un index sur <literal>col1</literal>
-	et un autre sur <literal>col2</literal>, il est possible de parcourir les 
-	deux index et de combiner leur résultat en mémoire. La récupération
-	ne concerne alors que les lignes qui satisfont les restrictions sur 
-	<literal>col1</literal> et <literal>col2</literal> simultanément. 
-	C'est très utile dans les environnements à requêtes non-structurées
-	nombreuses et pour lesquels il est impossible de construire 
-	les index pour toutes les conditions d'accès.
-	Les parcours de cartes sont utiles même dans le cas d'index simple, 
-	puisqu'ils réduisent les accès aléatoires nécessaires. Un parcours
-	de carte d'index est efficace pour la récupération de larges
-	portions de table, contrairement aux parcours d'index pleins.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Ajout de la validation à deux-phases (two-phase commit)
-       (Heikki Linnakangas, Alvaro, Tom)&nbsp;;
-      </term>
-      
-      <listitem>
-       <para>
-        La validation à deux phases permet la
-	&laquo;&nbsp;prépartion&nbsp;&raquo; de transactions sur plusieurs 
-	ordinateurs, et lorque tous les ordinateurs ont correctement
-	préparer leurs transactions (aucune n'a échoué), toutes les
-	transactions sont validées. Si une machine tombe après la préparation, 
-	la transaction ainsi préparée peut être validée après le redémarrage de
-	la machine. La nouvelle syntaxe inclut <command>PREPARE TRANSACTION</command>
-	et <command>COMMIT/ROLLBACK PREPARED</command>. Une nouvelle vue système 
-	<literal>pg_prepared_xacts</literal> a également été ajoutée.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Création d'un nouveau système de rôle en remplacement des utilisateurs et groupes
-       (Stephen Frost)
-      </term>
-
-      <listitem>
-       <para>
-        Les rôles sont une combinaison des utilisateurs et groupes. Comme des 
-        utilisateurs, ils peuvent avoir des possibilités de connexion, et comme 
-        des groupes, un rôle peut avoir d'autres rôles comme membres.
-        Les rôles enlèvent fondamentalement la distinction 
-        entre les utilisateurs et les groupes. Par exemple, un rôle peu:
-       </para>
-
-       <itemizedlist>
-  
-        <listitem>
-         <para>
-          Avoir les possibilités de connexions (optionnel)
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Posséder des objets
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Détenir les autorisations d'accès pour des objets de base de données
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Hériter des permissions des autres rôles en tant que membre de
-         </para>
-        </listitem>
-
-       </itemizedlist>
-       <para>
-        Une fois qu'un rôle se connecte en tant qu'un autre rôle, il obtient les
-        droits du rôle de connexion et ceux des rôles hérités, et peut utiliser
-        <command>SET ROLE</command> pour basculer sur d'autres rôles dont il
-        est membre. Cette fonctionnalité est une généralisation du concept des
-        rôles dans le standard SQL.
-        Cette modification remplacer aussi <structname>pg_shadow</structname> et
-        <structname>pg_group</structname> par les catalogues spécifiques aux
-        rôles, <structname>pg_authid</structname> et
-        <structname>pg_auth_members</structname>. Les anciennes tables sont
-        redéfinies comme des vues en lecture seule qui se basent sur les
-        nouvelles tables des rôles.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Utiliser automatiquement les index pour <function>MIN()</function> et
-       <function>MAX()</function> (Tom)
-      </term>
- 
-      <listitem>
-       <para>
-        Dans les versions précédentes, la seule manière d'utiliser un index pour
-        <function>MIN()</function> ou <function>MAX()</function> était d'écrire la requête
-        <command>SELECT col FROM tab ORDER BY col LIMIT 1</command>.
-        L'utilisation d'index se produit maintenant automatiquement. 
-       </para> 
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Déplacement de <filename>/contrib/pg_autovacuum</filename> dans le serveur principal
-       (Alvaro)
-      </term>
-
-      <listitem>
-       <para>
-        L'intégration d'autovacuum dans le serveur lui permet d'être 
-        automatiquement lancé et arrêté lors de la synchro avec le serveur
-        de base de données, et permet à l'autovacuum d'être configuré dans
-        <filename>postgresql.conf</filename>.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Ajout de verrous partagés au niveau ligne en utilisant
-       <command>SELECT ... FOR SHARE</command>
-       (Alvaro)
-      </term>
-
-      <listitem>
-       <para>
-        Bien que le système de verrous du MVCC de <productname>PostgreSQL</productname>
-        permet aux <command>SELECT</command> de ne jamais bloquer les écritures
-        et, du coup, n'a pas besoin de verrous ligne partagés pour des opérations
-        typiques, les verrous partagés sont utiles pour les applications qui
-        réclament un verrouillage partagé des lignes. En particulier, cela réduit
-        les prérequis de verrouillage imposés par les vérifications d'intégrité
-        référentielle.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Ajout de dépendances sur les objets partagés, et plus particulièrement
-       les rôles (Alvaro)
-      </term>
-
-      <listitem>
-       <para>
-        Cette extension du mécanisme de dépendances empêche la suppression de
-        rôles quand il existe dans la base des objets qui leur appartiennent.
-        Auparavant, il était possible de rendre <quote>orphelins</quote> des
-        objets en supprimant leur propriétaire. Bien qu'il était possible de
-        contourner le problème, c'était sale et déplaisant.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Amélioration des performances sur les tables partitionnées (Simon)
-      </term>
-
-      <listitem>
-       <para>
-        Le nouveau paramètre de configuration, <varname>constraint_exclusion</varname>,
-        évite la recherche de tables enfants où les contraintes indiquent
-        qu'aucune ligne n'existe dans la table enfant.
-       </para>
-       <para>
-        Ceci permet un type basique de partitionnement de tables. Si les tables
-        enfants stockent des étendues séparées de clés et qu'elles sont forcées
-        par des contraintes <command>CHECK</command> appropriées, l'optimiseur
-        ne s'occupera pas des tables enfants où la contrainte ganratie
-        qu'aucune ligne correspondante n'existe dans la table enfant.
-       </para>
-      </listitem>
-     </varlistentry>
-
-    </variablelist>
-   </sect2>
- 
-   <sect2>
-    <title>Migration vers la version 8.1</title>
-                                       
-    <para>
-     Une sauvegarde/restauration utilisant <application>pg_dump</application>
-     est requise pour ceux qui souhaitent migrer leurs données des versions
-     précédentes.
-    </para>
-    
-    <para>
-     Les notes de la version 8.0 annonçaient la suppression de la fonction
-     <function>to_char()</function> pour les intervalles en 8.1. Néanmoins,
-     comme aucune API meilleure n'a été suggérée,
-     <function>to_char(interval)</function> a été améliorée en 8.1 et restera
-     dans le serveur.
-    </para>
-
-    <para>
-     Il existe quelques incompatibilités&nbsp;:
-    </para>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       <varname>add_missing_from</varname> est maintenant faux par défaut (Neil)
-      </para>
-      <para>
-       Par défaut, nous générons une erreur si une table est utilisé dans une
-       requête sans une référence <literal>FROM</literal>. L'ancien comportement
-       est toujours disponible mais le paramètre doit être positionné à 'true'
-       pour l'obtenir.
-      </para>
-
-      <para>
-       Il pourrait être nécessaire de configurer <varname>add_missing_from</varname>
-       à true pour charger une sauvegarde existante si la sauvegarde contient
-       des vues ou des règles créées en utilisant la syntaxe du
-       <literal>FROM</literal> implicite. Ceci n'arrivera qu'une fois car
-       <productname>PostgreSQL</productname> 8.1 convertira ces vues et ces
-       règles à la syntaxe standard du <literal>FROM</literal> explicite. Les
-       sauvegardes suivantes n'auront donc plus le problème.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Une chaîne de longueur nulle (<literal>''</literal>) pour une champ de
-       type <type>float4</type>/<type>float8</type>/<type>oid</type> causera
-       l'envoi d'une erreur. Elle ne sera plus traitée comme un zéro (Neil)
-      </para>
-      <para>
-       Cette modification est cohérente avec la gestion actuelle des chaînes de
-       longueur nulle pour les entiers. Ce changement avait été annoncé en 8.0.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <varname>default_with_oids</varname> est maintenant faux par défaut (Neil)
-      </para>
-      <para>
-       Avec cette option configurée à faux, les tables créées par l'utilisateur
-       n'ont plus de colonne OID sauf si <command>WITH OIDS</command> est
-       indiqué en option de <command>CREATE TABLE</command>. Bien que les OID
-       ont existé sur toutes les versions de
-       <productname>PostgreSQL</productname>, leut utilisation est limitée car
-       elles sont uniquement sur quatre octets et le compteur est partagé sur
-       toutes les bases installées dans le cluster. La façon préférée
-       d'identifier les lignes de façon unique est via des séquences et le
-       type <type>SERIAL</type> qui sont supportés depuis
-       <productname>PostgreSQL</productname> 6.4.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Ajout de la syntaxe <literal>E''</literal> pour que les chaînes ordinaires
-       puissent éventuellement traiter les antislash littéralement (Bruce)
-      </para>
-      <para>
-       Actuellement, <productname>PostgreSQL</productname> traite l'antislash
-       dans une constante de type chaîne comme l'introduction d'une séquence
-       d'échappement spéciale, par exemple <literal>\n</literal> ou
-       <literal>\010</literal>. Bien que cela facilite la saisie de ces
-       valeurs, c'est un comportement non standard qui rend difficile le
-       portage des applications vers d'autres SGBD. Pour cette raison, le
-       projet <productname>PostgreSQL</productname> planifie la suppression
-       de la signification spéciale des antislashs dans les chaînes. Pour une
-       compatibilité ascendante, une nouvelle syntaxe de chaîne a été créée.
-       Cette nouvelle syntaxe correspond à un <literal>E</literal> immédiatement
-       suivi d'un guillemet simple qui commence la chaîne, par exemple
-       <literal>E'hi\n'</literal>. Bien que cette version ne modifie pas la
-       gestion des antislashs dans les chaînes, elle ajoute de nouveaux
-       paramètres de configuration pour aider les utilisateurs à migrer leurs
-       applications vers les prochaines versions&nbsp;:
-      </para>
-      <itemizedlist>
-
-       <listitem>
-        <para>
-         <varname>standard_conforming_strings</varname> &mdash; cette version
-         traite-t'elle les antislashs de façon littérale dans les chaînes&nbsp;?
-        </para>
-       </listitem>
-  
-       <listitem>
-       <para>
-        <varname>escape_string_warning</varname> &mdash; avertit sur
-        l'utilisation d'antislasgs dans des chaînes ordinaires (donc sans E).
-       </para>
-      </listitem>
-
-      </itemizedlist>
-
-      <para>
-       La valeur de <varname>standard_conforming_strings</varname> est seulement
-       disponible en lecture. Les applications peuvent récupérer la valeur pour
-       savoir de quelle façon elles doivent traiter les antislashs. (La présence
-       du paramètre est en soi une indication que la syntaxe de chaîne
-       <literal>E''</literal> est supportée.)
-       Dans une prochaine version, <varname>standard_conforming_strings</varname>
-       vaudra vrai, signifiant que les antislashs devront être traités
-       littéralement dans les chaînes non E. Pour vous préparer à ce changement,
-       utilisez des chaînes <literal>E''</literal> pour celles qui nécessitent
-       un traitement spécial des antislashs et activer
-       <varname>escape_string_warning</varname> pour trouver les chaînes
-       supplémentaires qui ont besoin d'être converties pour utiliser
-       <literal>E''</literal>. De plus, utilisez deux guillemets simples
-       (<literal>''</literal>) pour intégrer un guillemet simple littéral dans
-       une chaîne plutôt que la syntaxe supportée par
-       <productname>PostgreSQL</productname> de l'antislash suivi du guillemet
-       (<literal>\'</literal>). Cette syntaxe est conforme au standard et ne
-       nécessite pas l'utilisation de la syntaxe de chaîne
-       <literal>E''</literal>. Vous pouvez aussi utiliser la syntaxe de chaîne
-       <literal>$$</literal> qui ne traitent pas spécifiquement les antislashs.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fait que <command>REINDEX DATABASE</command> ré-indexe tous les index de
-       la base (Tom)
-      </para>
-      <para>
-       Auparavant, <command>REINDEX DATABASE</command> ré-indexait seulement les
-       tables systèmes. Ce nouveau comportement semble plus intuitif. Une
-       nouvelle commande <command>REINDEX SYSTEM</command> fournit l'ancienne
-       fonctionnalité de réindexage des seules tables systèmes.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Les descripteurs des objets larges en lecture seule respectent maintenant
-       les images MVCC.
-      </para>
-      <para>
-       Quand un objet large est ouvert avec <literal>INV_READ</literal> (et non
-       pas <literal>INV_WRITE</literal>), la donnée lue du descripteur
-       correspondra maintenant à une <quote>image</quote> de l'état de l'objet
-       large au début de l'image de la transaction utilisée par la requête
-       qui a fait appel à <function>lo_open()</function>. Pour obtenir l'ancien
-       comportement renvoyant en permanence la dernière donnée validée, ajoutez
-       <literal>INV_WRITE</literal> dans les options de <function>lo_open()</function>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Ajout des bonnes dépendances pour les arguments des fonctions sur les
-       séquences (Tom)
-      </para>
-      <para>
-       Dans les anciennes versions, les noms de séquence passés à
-       <function>nextval()</function>, <function>currval()</function> et
-       <function>setval()</function> étaient stockés sous la forme de simples
-       chaînes de texte, signifiant que le renommage ou la suppression d'une
-       séquence utilisée dans une clause <literal>DEFAULT</literal> rendait la
-       clause invalide. Cette version stocke tous les arguments d'une fonction
-       d'une séquence nouvellement créée en tant qu'OID interne, leur permettant
-       de tracer le renommage des séquences et d'ajouter des informations de
-       dépendances qui empêchent une suppression erronées d'une séquence.
-       Cela assure aussi une certaine immunité des clauses
-       <literal>DEFAULT</literal> au renommage de schéma et aux modifications
-       du chemin de recherche des schémas.
-      </para>
-      <para>
-       Certaines applications pourraient se fier à l'ancien comportement de
-       recherche à l'exécution des noms de séquence. C'est toujours possible
-       en convertissant explicitement l'argument en <type>text</type>, par exemple
-       <literal>nextval('myseq'::text)</literal>.
-      </para>
-      <para>
-       Les sauvegardes de bases antérieures à la 8.1 chargées en 8.1 utiliseront
-       l'ancienne représentation textuelle et, du coup, ne bénéficieront pas
-       des fonctionnalités des arguments stockés d'après leur OID. Néanmoins,
-       il est possible de mettre à jour une base contenant des clauses
-       <literal>DEFAULT</literal> en texte. Tout d'abord, sauvegardez cette
-       requête dans un fichier, comme <filename>fixseq.sql</filename>&nbsp;:
-<programlisting>SELECT  'ALTER TABLE ' ||
-    pg_catalog.quote_ident(n.nspname) || '.' ||
-    pg_catalog.quote_ident(c.relname) ||
-    ' ALTER COLUMN ' || pg_catalog.quote_ident(a.attname) ||
-    ' SET DEFAULT ' ||
-    regexp_replace(d.adsrc,
-                   $$val\(\(('[^']*')::text\)::regclass$$,
-                   $$val\(\1$$,
-                   'g') ||
-    ';'
-FROM    pg_namespace n, pg_class c, pg_attribute a, pg_attrdef d
-WHERE   n.oid = c.relnamespace AND
-    c.oid = a.attrelid AND
-    a.attrelid = d.adrelid AND
-    a.attnum = d.adnum AND
-    d.adsrc ~ $$val\(\('[^']*'::text\)::regclass$$;
-</programlisting>
-       Ensuite, exécutez la requête sur une base pour découvrir les ajustements
-       nécessaires, comme pour cette base <literal>db1</literal>&nbsp;:
-<programlisting>psql -t -f fixseq.sql db1
-</programlisting>
-       Ceci affichera les commandes <command>ALTER TABLE</command> nécessaires
-       pour convertir la base à la représentation OID la plus récente. Si les
-       commandes semblent raisonnables, exécutez ceci pour mettre à jour la
-       base de données&nbsp;:
-<programlisting>psql -t -f fixseq.sql db1 | psql -e db1
-</programlisting>
-       Ce processus doit être répétée pour chaque base à mettre à jour.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Dans <application>psql</application>, les séquences
-       <literal>\{chiffre}+</literal> sans guillemets sont traités comme des
-       nombres codés en octal (Bruce)
-      </para>
-      <para>
-       Dans les versions précédentes, les séquences <literal>\{chiffre}+</literal>
-       étaient traitées comme des nombres codés en décimal et les séquences
-       <literal>\0{digit}+</literal> l'étaient comme des nombres codés en
-       octal. Cette modification a pour but la cohérence de traitement.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Suppression des grammaires utilisant les opérateurs <literal>%</literal>
-       et <literal>^</literal> en préfixe et en suffixe.
-       (Tom)
-      </para>
-      <para>
-       Ils n'ont jamais été documentés et compliquaient l'utilisation de
-       l'opérateur modulo (<literal>%</literal>) avec les nombres négatifs.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Rend <literal>&amp;&lt;</literal> et <literal>&amp;&gt;</literal> cohérent
-       pour les polygones abec les opérateurs "over" du type box (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>CREATE LANGUAGE</command> peut ignorer les arguments fournis
-       pour utiliser l'information provenant de <structname>pg_pltemplate</structname>
-       (Tom)
-      </para>
-      <para>
-       Un nouveau catalogue système nommé
-       <structname>pg_pltemplate</structname> a été défini pour stocker des
-       informations sur les définitions préférées des langages de procédure
-       (comme par exemple si elles ont des fonctions de validation). Quand une
-       telle entrée existe dans le catalogue pour le langage en cours de
-       création, <command>CREATE LANGUAGE</command> ignorera tous ces paramètres
-       sauf le nom du langage et utilisera à la place les informations du
-       catalogue. Cette mesure a été prise à cause des problèmes de plus en plus
-       fréquents de définition de langage obsolète chargée à partir d'anciennes
-       sauvegardes. À partir de la 8.1, <application>pg_dump</application>
-       sauvegardera les définitions de langage de procédures avec un simple
-       <command>CREATE LANGUAGE <replaceable>nom</replaceable></command>, se
-       reposant sur l'entrée modèle existant au moment du chargement. Nous nous
-       attendons à ce que cela soit une représentation plus pérenne.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Fait que <function>pg_cancel_backend(int)</function> renvoit une valeur
-       de type <type>boolean</type> plutôt qu'un <type>integer</type> (Neil)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Certains utilisateurs ont des problèmes en chargeant des données UTF-8
-       en 8.1.X. Ceci est dû aux précédentes versions qui permettaient l'ajout
-       de séquences d'octets UTF-8 invalides dans la base. Cette version
-       accepte seulement les séquences UTF-8 valides. Vous pouvez corriger une
-       sauvegarde en exécutant la commande <command>iconv -c -f UTF-8 -t
-       UTF-8 -o bonnesauvegarde.sql sauvegarde.sql</command>. L'option
-       <literal>-c</literal> supprime les séquences de caractères invalides.
-       Un diff des deux fichiers affichera les séquences invalides.
-       <command>iconv</command> lit le fichier en entrée en mémoire, donc il
-       pourrait se révéler nécessaire de <application>diviser</application> la
-       sauvegarde en plusieurs petits fichiers pour le traitement.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-   </sect2>
- 
-   <sect2>
-    <title>Modifications supplémentaires</title>
- 
-    <para>
-     Vous trouverez ci-dessous une liste détaillée des modifications
-     supplémentaires réalisées pour <productname>PostgreSQL</productname> 8.1.
-    </para>
- 
-    <sect3>
-     <title>Améliorations des performances</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Amélioration des performances des index GiST et R-tree (Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de l'optimiseur, ceci incluant le redimensionnement
-        automatique des jointures hash (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Révision de l'API interne sur plusieurs domaines
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Changement des CRC, passés de 64 à 32 bits, pour l'enregistrement des
-        WAL (Tom)
-       </para>
-       <para>
-        Nous avons déterminé que le coût supplémentaire du calcul des CRC en 64
-        bits était important et que le gain en fiabilité était trop marginal pour
-        le justifier.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Empêche la création de gros trous vides dans les pages WAL (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration du comportement du spinlock sur les machines SMP,
-        particulièrement pour les Opterons (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Autorise l'utilisation de colonnes non consécutives d'un index dans
-        un index multicolonnes (Tom)
-       </para>
-       <para>
-        Par exemple, cela permet l'utilisation d'un index sur les colonnes
-        a, b, c dans une requête dont le filtre est <command>WHERE a = 4 and
-        c = 10</command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Passe la journalisation WAL pour <command>CREATE TABLE AS</command> /
-        <command>SELECT INTO</command> (Simon)
-       </para>
-       <para>
-        Comme l'arrêt brutal durant un <command>CREATE TABLE AS</command>
-        occasionnera la suppression de la table lors de l'opération de récupération,
-        il n'y a aucune raison de conserver le chargement de la table dans les
-        WAL. (Néanmoins, la journalisation se fait quand même si l'archivage des
-        WAL est activé.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Autorise l'accès en parallèle d'index GiST (Teodor, Oleg)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout d'un paramètre de configuration <varname>full_page_writes</varname>
-        pour contrôler l'écriture de pages complètes dans les WAL (Bruce)
-       </para>
-       <para>
-        Pour empêcher que des écritures disques partielles corrompent la base
-        de données, <productname>PostgreSQL</productname> écrit une copie
-        complète de chaque page disque de la base dans les WAL la première fois
-        que la page est modifiée après un point de vérification. Cette option
-        désactive cette fonctionnalité pour gagner en rapidité. Ceci ne doit
-        pas poser de problème avec des caches disques sur batterie où des
-        écritures partielles de page ne peuvent pas arriver.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Utilisation de <literal>O_DIRECT</literal> si disponible lors de
-        l'utilisation de <literal>O_SYNC</literal> pour
-        <varname>wal_sync_method</varname> (Itagaki Takahiro)
-       </para>
-       <para>
-        <literal>O_DIRECT</literal> fait que les écritures disques contournent
-        le cache du noyau et cela améliore les performances pour les écritures
-        des WAL.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des performances du <command>COPY FROM</command> (Alon Goldshuv)
-       </para>
-       <para>
-        Ceci se fait en lisant l'entrée de <command>COPY</command> par de plus
-        gros morceaux, plutôt que caractère par caractère.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration des performances de <function>COUNT()</function>,
-        <function>SUM</function>, <function>AVG()</function>,
-        <function>STDDEV()</function> et
-        <function>VARIANCE()</function> (Neil, Tom)
-       </para>
-      </listitem>
-     </itemizedlist>
-    </sect3>
-
-    <sect3>
-     <title>Modifications du serveur</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Empêche les problèmes dûs à la réinitialisation de l'ID de transaction
-        (XID) (Tom)
-       </para>
-       <para>
-        Maintenant, le serveur avertira quand le compteur de transaction approche
-        du point de réinitialisation. Si le compteur s'en approche trop, le
-        serveur refusera les requêtes. Ceci permet de s'assurer que des données
-        ne seront pas perdues avant que le VACUUM nécessaire ne soit réalisé.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Correction de problèmes avec des conflits entre des identifiants d'objets
-        (OID) et des objets systèmes existants une fois que le compteur d'OID
-        s'est réinitialisé (Tom)
-       </para>
-      </listitem>
-  
-      <listitem>
-       <para>
-        Ajout d'un avertissement sur le besoin d'augmenter
-        <varname>max_fsm_relations</varname> et <varname>max_fsm_pages</varname>
-        lors des <command>VACUUM</command> (Ron Mayer)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout du paramètre de configuration <varname>temp_buffers</varname>
-        autorisant les utilisateurs à déterminer la taille du tampon local
-        pour les accès aux tables temporaires (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de l'heure de début de la session et de l'adresse IP du client
-        dans <literal>pg_stat_activity</literal> (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajustement des vues <literal>pg_stat</literal> pour les parcours de
-        bitmap (Tom)
-       </para>
-       <para>
-        La signification de certains champs a changé légèrement.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de la vue <literal>pg_locks</literal> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Trace des requêtes côté client, <command>PREPARE</command> et
-        <command>EXECUTE</command> (Simon)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Autorise l'indication de la sensibilité à la casse pour le nom
-        Kerberos et le nom utilisateur dans
-        <filename>postgresql.conf</filename> (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout du paramètre de configuration <varname>krb_server_hostname</varname>
-        pour que le nom de l'hôte puisse être indiqué comme faisant parti du
-        service principal (Todd Kover)
-       </para>
-       <para>
-        S'il n'est pas configuré, aucun service principal correspondant à une
-        entrée dans la table des clés ne peut être utilisé. Ceci est le nouveau
-        comportement de Kerberos pour cette version.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout d'options pour <varname>log_line_prefix</varname> (datage à la
-        milliseconde avec <literal>%m</literal> et hôte distant avec
-        <literal>%h</literal>) (Ed L.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout des journaux WAL pour les index GiST (Teodor, Oleg)
-       </para>
-       <para>
-        Les index GiST sont maintenant fiables en ce qui concernent les arrêts
-        brutaux et la récupération à un instant donné.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression des anciens fichiers <filename>*.backup</filename> lors du
-        <function>pg_stop_backup()</function> (Bruce)
-       </para>
-       <para>
-        Ceci empêche qu'un grand nombre de fichiers <filename>*.backup</filename>
-        restent dans <filename>pg_xlog/</filename>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout des paramètres de configuration contrôlant certaines constantes
-        keep-alive de TCP/IP (idle, interval et count) (Oliver Jowett)
-       </para>
-
-       <para>
-        Ces valeurs sont modifiables pour permettre une détection plus rapide
-        de la perte de connexions clientes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de limites de connexion par utilisateur et par base de données
-        (Petr Jelinek)
-       </para>
-       <para>
-        En utilisant <command>ALTER USER</command> et <command>ALTER DATABASE</command>,
-        des limites peuvent être enregistrées sur le nombre maximum de sessions
-        connectées en même temps pour un utilisateur spécifique ou une base
-        spécifique. Configurer la limite à zéro empêche l'utilisateur de se connecter
-        ou empêche toute connexion sur cette base.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Autorise plus de 2&nbsp;Go de mémoire partagé et de work_memory par
-        processus serveur sur les machines 64 bits (Koichi Suzuki)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Le nouveau catalogue système <structname>pg_pltemplate</structname> permet
-        la surcharge des définitions obsolètes de langages de procédures dans
-        les sauvegardes (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Modifications des requêtes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Ajout des vues temporaires (Koju Iijima, Neil) 
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Correction de <command>HAVING</command> sans fonctions d'agrégat ou
-        <command>GROUP BY</command> pour que la requête ne renvoit qu'un seul
-        groupe (Tom)
-       </para>
-       <para>
-        Auparavant, la clause <command>HAVING</command> aurait été traitée comme
-        une clause <command>WHERE</command>. Ce n'était pas conforme au
-        standard.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de la clause <command>USING</command> pour indiquer des tables
-        supplémentaires dans une commande <command>DELETE</command> (Euler
-        Taveira de Oliveira, Neil)
-       </para>
-       <para>
-        Dans les versions précédentes, il n'existait pas de méthode claire pour
-        utiliser des tables supplémentaires dans des jointures sur une instruction
-        <command>DELETE</command>. <command>UPDATE</command> a déjà une clause
-        <literal>FROM</literal> pour remplir ce but.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout du support de <literal>\x</literal> pour les échappements de nombres
-        en hexadécimal dans les chaînes du moteur et dans celles d'ecpg (Bruce)
-       </para>
-       <para>
-        Cela fonctionne comme la syntaxe d'échappement <literal>\x</literal>
-        en C. Les échappements de nombres en octal sont déjà supportés.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de la syntaxe de requête <command>BETWEEN SYMMETRIC</command>
-        (Pavel Stehule)
-       </para>
-       <para>
-        Cette fonctionnalité autorise l'utilisation de comparaisons
-        <command>BETWEEN</command> sans nécessiter que la première valeur soit
-        inférieure à la seconde. Par exemple, <command>2 BETWEEN [ASYMMETRIC]
-        3 AND 1</command> renvoie faux alors que <command>2 BETWEEN SYMMETRIC
-        3 AND 1</command> renvoie vrai. <command>BETWEEN ASYMMETRIC</command>
-        était déjà supporté.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Ajout de l'option <command>NOWAIT</command> pour <command>SELECT ... FOR
-        UPDATE/SHARE</command> (Hans-Juergen Schoenig)
-       </para>
-       <para>
-        Bien que le paramètre de configuration <varname>statement_timeout</varname>
-        autorise l'annulation d'une requête prenant plus d'un certain temps à
-        s'exécuter, l'option <command>NOWAIT</command> permet l'annulation d'une
-        requête à partir du moment où la commande <command>SELECT ... FOR
-        UPDATE/SHARE</command> n'acquiert pas immédiatement un verrou de ligne.
-       </para>
-      </listitem>
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Changement des manipulations d'objets</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Trace les dépendances des objets partagés (Alvaro)
-       </para>
-       <para>
-        <productname>PostgreSQL</productname> allows global tables
-        (users, databases, tablespaces) to reference information in
-        multiple databases. This addition adds dependency information
-        for global tables, so, for example, user ownership can be
-        tracked across databases, so a user who owns something in any
-        database can no longer be removed. Dependency tracking already
-        existed for database-local objects.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow limited <command>ALTER OWNER</command> commands to be performed 
-        by the object owner (Stephen Frost)
-       </para>
-       <para>
-        Prior releases allowed only superusers to change object owners.
-        Now, ownership can be transferred if the user executing the command
-        owns the object and would be able to create it as the new owner
-        (that is, the user is a member of the new owning role and that role
-        has the CREATE permission that would be needed to create the object
-        afresh).
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>ALTER</command> object <command>SET SCHEMA</command> capability
-        for some object types (tables, functions, types) (Bernd Helmle)
-       </para>
-       <para>
-        This allows objects to be moved to different schemas.
-       </para>
-      </listitem>
-    
-      <listitem>
-       <para>
-        Ajout de <command>ALTER TABLE ENABLE/DISABLE TRIGGER</command> pour
-        désactiver les déclencheurs (Satoshi Nagayasu)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Utility Command Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Allow <command>TRUNCATE</command> to truncate multiple tables in a
-        single command (Alvaro)
-       </para>
-       <para>
-        Because of referential integrity checks, it is not allowed to
-        truncate a table that is part of a referential integrity
-        constraint. Using this new functionality, <command>TRUNCATE</command>
-        can be used to truncate such tables, if both tables involved in
-        a referential integrity constraint are truncated in a single
-        <command>TRUNCATE</command> command.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Properly process carriage returns and line feeds in
-        <command>COPY CSV</command> mode (Andrew)
-       </para>
-       <para>
-        In release 8.0, carriage returns and line feeds in <command>CSV
-        COPY TO</command> were processed in an inconsistent manner. (This was
-        documented on the TODO list.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>COPY WITH CSV HEADER</command> to allow a header line as
-        the first line in <command>COPY</command> (Andrew)
-       </para>
-       <para>
-        This allows handling of the common <command>CSV</command> usage of
-        placing the column names on the first line of the data file. For
-        <command>COPY TO</command>, the first line contains the column names,
-        and for <command>COPY FROM</command>, the first line is ignored.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        On Windows, display better sub-second precision in
-        <command>EXPLAIN ANALYZE</command> (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add trigger duration display to <command>EXPLAIN ANALYZE</command>
-        (Tom)
-       </para>
-       <para>
-        Prior releases included trigger execution time as part of the
-        total execution time, but did not show it separately.  It is now
-        possible to see how much time is spent in each trigger.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <literal>\x</literal> hex escapes in <command>COPY</command>
-        (Sergey Ten)
-       </para>
-       <para>
-        Previous releases only supported octal escapes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>SHOW ALL</command> include variable descriptions
-        (Matthias Schmidt)
-       </para>
-       <para>
-        <command>SHOW</command> varname still only displays the variable's
-        value and does not include the description.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <application>initdb</application> create a new standard
-        database called <literal>postgres</literal>, and convert utilities to
-        use <literal>postgres</literal> rather than <literal>template1</literal> for
-        standard lookups (Dave)
-       </para>
-       <para>
-        In prior releases, <literal>template1</literal> was used both as a
-        default connection for utilities like
-        <application>createuser</application>, and as a template for
-        new databases. This caused <command>CREATE DATABASE</command> to
-        sometimes fail, because a new database cannot be created if
-        anyone else is in the template database. With this change, the
-        default connection database is now <literal>postgres</literal>,
-        meaning it is much less likely someone will be using
-        <literal>template1</literal> during <command>CREATE DATABASE</command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Create new <application>reindexdb</application> command-line
-        utility by moving <filename>/contrib/reindexdb</filename> into the
-        server (Euler Taveira de Oliveira)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Data Type and Function Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Add <function>MAX()</function> and <function>MIN()</function> aggregates for
-        array types (Koju Iijima)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix <function>to_date()</function> and <function>to_timestamp()</function> to
-        behave reasonably when <literal>CC</literal> and <literal>YY</literal> fields
-        are both used (Karel Zak)
-       </para>
-       <para>
-        If the format specification contains <literal>CC</literal> and a year
-        specification is <literal>YYY</literal> or longer, ignore the
-        <literal>CC</literal>. If the year specification is <literal>YY</literal> or
-        shorter, interpret <literal>CC</literal> as the previous century.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>md5(bytea)</function> (Abhijit Menon-Sen)
-       </para>
-       <para>
-        <function>md5(text)</function> already existed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <command>numeric ^ numeric</command> based on
-        <function>power(numeric, numeric)</function>
-       </para>
-       <para>
-        The function already existed, but there was no operator assigned
-        to it.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix <type>NUMERIC</type> modulus by properly truncating the quotient
-        during computation (Bruce)
-       </para>
-       <para>
-        In previous releases, modulus for large values sometimes
-        returned negative results due to rounding of the quotient.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a function <function>lastval()</function>(Dennis Bj&ouml;rklund)
-       </para>
-       <para>
-        <function>lastval()</function> is a simplified version of
-        <function>currval()</function>. It automatically determines the proper
-        sequence name based on the most recent <function>nextval()</function> or
-        <function>setval()</function> call performed by the current session.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>to_timestamp(DOUBLE PRECISION) (Michael Glaesemann)</function>
-       </para>
-       <para>
-        Converts Unix seconds since 1970 to a <type>TIMESTAMP WITH
-        TIMEZONE</type>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_postmaster_start_time()</function> function (Euler
-        Taveira de Oliveira, Matthias Schmidt)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the full use of time zone names in <command>AT TIME
-        ZONE</command>, not just the short list previously available (Magnus)
-       </para>
-       <para>
-        Previously, only a predefined list of time zone names were
-        supported by <command>AT TIME ZONE</command>. Now any supported time
-        zone name can be used, e.g.:
-        <programlisting>         SELECT CURRENT_TIMESTAMP AT TIME ZONE 'Europe/London';
-        </programlisting>
-        In the above query, the time zone used is adjusted based on the
-        daylight saving time rules that were in effect on the supplied
-        date.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>GREATEST()</function> and <function>LEAST()</function> variadic
-        functions (Pavel Stehule)
-       </para>
-       <para>
-        These functions take a variable number of arguments and return
-        the greatest or least value among the arguments.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_column_size()</function> (Mark Kirkwood)
-       </para>
-       <para>
-        This returns storage size of a column, which might be compressed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>regexp_replace()</function> (Atsushi Ogawa)
-       </para>
-       <para>
-        This allows regular expression replacement, like sed. An optional
-        flag argument allows selection of global (replace all) and
-        case-insensitive modes.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix interval division and multiplication (Bruce)
-       </para>
-       <para>
-        Previous versions sometimes returned unjustified results, like
-        <command>'4 months'::interval / 5</command> returning <command>'1 mon
-        -6 days'</command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Fix roundoff behavior in timestamp, time, and interval output (Tom)
-       </para>
-       <para>
-        This fixes some cases in which the seconds field would be shown as
-        <literal>60</literal> instead of incrementing the higher-order fields.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a separate day field to type <type>interval</type> so a one day
-        interval can be distinguished from a 24 hour interval (Michael
-        Glaesemann)
-       </para>
-       <para>
-        Days that contain a daylight saving time adjustment are not 24
-        hours long, but typically 23 or 25 hours.  This change creates a
-        conceptual distinction between intervals of <quote>so many days</quote>
-        and intervals of <quote>so many hours</quote>.  Adding
-        <literal>1 day</literal> to a timestamp now gives the same local time on
-        the next day even if a daylight saving time adjustment occurs
-        between, whereas adding <literal>24 hours</literal> will give a different
-        local time when this happens.  For example, under US DST rules:
-        <programlisting>         '2005-04-03 00:00:00-05' + '1 day' = '2005-04-04 00:00:00-04'
-         '2005-04-03 00:00:00-05' + '24 hours' = '2005-04-04 01:00:00-04'
-        </programlisting>
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>justify_days()</function> and <function>justify_hours()</function>
-        (Michael Glaesemann)
-       </para>
-       <para>
-        These functions, respectively, adjust days to an appropriate
-        number of full months and days, and adjust hours to an
-        appropriate number of full days and hours.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Move <filename>/contrib/dbsize</filename> into the backend, and rename
-        some of the functions (Dave Page, Andreas Pflug)
-       </para>
-       <para>
-        <itemizedlist>
-  
-         <listitem>
-          <para>
-            <function>pg_tablespace_size()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_database_size()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_relation_size()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_total_relation_size()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_size_pretty()</function>
-          </para>
-         </listitem>
- 
-        </itemizedlist>
-       </para>
-       <para>
-        <function>pg_total_relation_size()</function> includes indexes and TOAST
-        tables.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add functions for read-only file access to the cluster directory
-        (Dave Page, Andreas Pflug)
-       </para>
-       <para>
-        <itemizedlist>
-  
-         <listitem>
-          <para>
-           <function>pg_stat_file()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_read_file()</function>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <function>pg_ls_dir()</function>
-          </para>
-         </listitem>
-
-        </itemizedlist>
-       </para>
-      </listitem>
-      
-      <listitem>
-       <para>
-        Add <function>pg_reload_conf()</function> to force reloading of the
-        configuration files (Dave Page, Andreas Pflug)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>pg_rotate_logfile()</function> to force rotation of the
-        server log file (Dave Page, Andreas Pflug)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Change <literal>pg_stat_*</literal> views to include TOAST tables (Tom)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Encoding and Locale Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Rename some encodings to be more consistent and to follow
-        international standards (Bruce)
-       </para>
-       <para>
-        <itemizedlist>
-  
-         <listitem>
-          <para>
-           <literal>UNICODE</literal> is now <literal>UTF8</literal>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <literal>ALT</literal> is now <literal>WIN866</literal>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-           <literal>WIN</literal> is now <literal>WIN1251</literal>
-          </para>
-         </listitem>
-
-         <listitem>
-          <para>
-          <literal>TCVN</literal> is now <literal>WIN1258</literal>
-          </para>
-         </listitem>
-
-        </itemizedlist>
-       </para>
-
-       <para>
-        The original names still work.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <literal>WIN1252</literal> encoding (Roland Volkmann)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for four-byte <literal>UTF8</literal> characters (John
-        Hansen)
-       </para>
-       <para>
-        Previously only one, two, and three-byte <literal>UTF8</literal> characters
-        were supported. This is particularly important for support for
-        some Chinese character sets.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow direct conversion between <literal>EUC_JP</literal> and
-        <literal>SJIS</literal> to improve performance (Atsushi Ogawa)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the UTF8 encoding to work on Windows (Magnus)
-       </para>
-       <para>
-        This is done by mapping UTF8 to the Windows-native UTF16 
-        implementation.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>General Server-Side Language Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Fix <command>ALTER LANGUAGE RENAME</command> (Sergey Yatskevich)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow function characteristics, like strictness and volatility,
-        to be modified via <command>ALTER FUNCTION</command> (Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Increase the maximum number of function arguments to 100 (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow SQL and PL/PgSQL functions to use <command>OUT</command> and
-        <command>INOUT</command> parameters (Tom)
-       </para>
-       <para>
-        <command>OUT</command> is an alternate way for a function to return
-        values. Instead of using <command>RETURN</command>, values can be
-        returned by assigning to parameters declared as <command>OUT</command> or
-        <command>INOUT</command>.  This is notationally simpler in some cases,
-        particularly so when multiple values need to be returned.
-        While returning multiple values from a function
-        was possible in previous releases, this greatly simplifies the
-        process.  (The feature will be extended to other server-side
-        languages in future releases.)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Move language handler functions into the <literal>pg_catalog</literal> schema
-       </para>
-       <para>
-        This makes it easier to drop the public schema if desired.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>SPI_getnspname()</function> to SPI (Neil)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-    <sect3>
-     <title>PL/PgSQL Server-Side Language Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Overhaul the memory management of PL/PgSQL functions (Neil)
-       </para>
-       <para>
-        The parsetree of each function is now stored in a separate
-        memory context. This allows this memory to be easily reclaimed
-        when it is no longer needed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Check function syntax at <command>CREATE FUNCTION</command> time,
-        rather than at runtime (Neil)
-       </para>
-       <para>
-        Previously, most syntax errors were reported only when the
-        function was executed.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <command>OPEN</command> to open non-<command>SELECT</command> queries
-        like <command>EXPLAIN</command> and <command>SHOW</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        No longer require functions to issue a <command>RETURN</command>
-        statement (Tom)
-       </para>
-       <para>
-        This is a byproduct of the newly added <command>OUT</command> and
-        <command>INOUT</command> functionality.  <command>RETURN</command> can
-        be omitted when it is not needed to provide the function's
-        return value.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for an optional <command>INTO</command> clause to
-        PL/PgSQL's <command>EXECUTE</command> statement (Pavel Stehule, Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>CREATE TABLE AS</command> set <command>ROW_COUNT</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Define <literal>SQLSTATE</literal> and <literal>SQLERRM</literal> to return
-        the <literal>SQLSTATE</literal> and error message of the current
-        exception (Pavel Stehule, Neil)
-       </para>
-       <para>
-        These variables are only defined inside exception blocks.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the parameters to the <command>RAISE</command> statement to be
-        expressions (Pavel Stehule, Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a loop <command>CONTINUE</command> statement (Pavel Stehule, Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow block and loop labels (Pavel Stehule)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>PL/Perl Server-Side Language Changes</title>
-     <itemizedlist>
-
-      <listitem>
-       <para>
-        Allow large result sets to be returned efficiently (Abhijit
-        Menon-Sen)
-       </para>
-       <para>
-        This allows functions to use <function>return_next()</function> to avoid
-        building the entire result set in memory.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow one-row-at-a-time retrieval of query results (Abhijit Menon-Sen)
-       </para>
-       <para>
-        This allows functions to use <function>spi_query()</function> and
-        <function>spi_fetchrow()</function> to avoid accumulating the entire
-        result set in memory.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Force PL/Perl to handle strings as <literal>UTF8</literal> if the
-        server encoding is <literal>UTF8</literal> (David Kamholz)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add a validator function for PL/Perl (Andrew)
-       </para>
-       <para>
-        This allows syntax errors to be reported at definition time,
-        rather than execution time.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow PL/Perl to return a Perl array when the function returns
-        an array type (Andrew)
-       </para>
-       <para>
-        This basically maps <productname>PostgreSQL</productname> arrays
-        to Perl arrays.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow Perl nonfatal warnings to generate <command>NOTICE</command>
-        messages (Andrew)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow Perl's <literal>strict</literal> mode to be enabled (Andrew)
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-
-
-    <sect3>
-     <title><application>psql</application> Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Add <command>\set ON_ERROR_ROLLBACK</command> to allow statements in
-        a transaction to error without affecting the rest of the
-        transaction (Greg Sabino Mullane)
-       </para>
-       <para>
-        This is basically implemented by wrapping every statement in a
-        sub-transaction.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <literal>\x</literal> hex strings in
-        <application>psql</application> variables (Bruce)
-       </para>
-       <para>
-        Octal escapes were already supported.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <command>troff -ms</command> output format (Roger
-        Leigh)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow the history file location to be controlled by
-        <envar>HISTFILE</envar> (Andreas Seltenreich)
-       </para>
-       <para>
-        This allows configuration of per-database history storage.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Prevent <command>\x</command> (expanded mode) from affecting
-        the output of <command>\d tablename</command> (Neil)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <option>-L</option> option to <application>psql</application> to
-        log sessions (Lorne Sunley)
-       </para>
-       <para>
-        This option was added because some operating systems do not have
-        simple command-line activity logging functionality.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <command>\d</command> show the tablespaces of indexes (Qingqing
-        Zhou)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>psql</application> help (<command>\h</command>) to
-        make a best guess on the proper help information (Greg Sabino
-        Mullane)
-       </para>
-       <para>
-        This allows the user to just add <command>\h</command> to the front of
-        the syntax error query and get help on the supported syntax.
-        Previously any additional query text beyond the command name
-        had to be removed to use <command>\h</command>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <command>\pset numericlocale</command> to allow numbers to be
-        output in a locale-aware format (Eugen Nedelcu)
-       </para>
-       <para>
-        For example, using <literal>C</literal> locale <literal>100000</literal> would
-        be output as <literal>100,000.0</literal> while a European locale might
-        output this value as <literal>100.000,0</literal>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make startup banner show both server version number and
-        <application>psql</application>'s version number, when they are different (Bruce)
-       </para>
-       <para>
-        Also, a warning will be shown if the server and <application>psql</application>
-        are from different major releases.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title><application>pg_dump</application> Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Add <option>-n</option> / <option>--schema</option> switch to 
-        <application>pg_restore</application> (Richard van den Berg)
-       </para>
-       <para>
-        This allows just the objects in a specified schema to be restored.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>pg_dump</application> to dump large objects even in 
-        text mode (Tom)
-       </para>
-       <para>
-        With this change, large objects are now always dumped; the former
-        <option>-b</option> switch is a no-op.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>pg_dump</application> to dump a consistent snapshot of 
-        large objects (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Dump comments for large objects (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <option>--encoding</option> to <application>pg_dump</application> 
-        (Magnus Hagander)
-       </para>
-       <para>
-        This allows a database to be dumped in an encoding that is
-        different from the server's encoding. This is valuable when
-        transferring the dump to a machine with a different encoding.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Rely on <structname>pg_pltemplate</structname> for procedural languages (Tom)
-       </para>
-       <para>
-        If the call handler for a procedural language is in the
-        <literal>pg_catalog</literal> schema, <application>pg_dump</application> does not
-        dump the handler.  Instead, it dumps the language using just
-        <command>CREATE LANGUAGE <replaceable>name</replaceable></command>,
-        relying on the <structname>pg_pltemplate</structname> catalog to provide
-        the language's creation parameters at load time.
-       </para>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title><application>libpq</application> Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Add a <envar>PGPASSFILE</envar> environment variable to specify the
-        password file's filename (Andrew)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add <function>lo_create()</function>, that is similar to
-        <function>lo_creat()</function> but allows the OID of the large object
-        to be specified (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Make <application>libpq</application> consistently return an error
-        to the client application on <function>malloc()</function>
-        failure (Neil)
-       </para>
-      </listitem>
-     </itemizedlist>
-    </sect3>
-  
-  
-    <sect3>
-     <title>Source Code Changes</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Fix <application>pgxs</application> to support building against a relocated
-        installation
-       </para>
-      </listitem>
-  
-      <listitem>
-       <para>
-        Add spinlock support for the Itanium processor using Intel
-        compiler (Vikram Kalsi)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add Kerberos 5 support for Windows (Magnus)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add Chinese FAQ (laser at pgsqldb.com)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Rename Rendezvous to Bonjour to match OS/X feature renaming
-        (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add support for <literal>fsync_writethrough</literal> on
-        Darwin (Chris Campbell)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Streamline the passing of information within the server, the
-        optimizer, and the lock system (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>pg_config</application> to be compiled using MSVC (Andrew)
-       </para>
-       <para>
-        This is required to build DBD::Pg using <application>MSVC</application>.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Remove support for Kerberos V4 (Magnus)
-       </para>
-       <para>
-        Kerberos 4 had security vulnerabilities and is no longer
-        maintained.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Code cleanups (Coverity static analysis performed by
-        EnterpriseDB)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Modify <filename>postgresql.conf</filename> to use documentation defaults
-        <literal>on</literal>/<literal>off</literal> rather than
-        <literal>true</literal>/<literal>false</literal> (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Enhance <application>pg_config</application> to be able to report more
-        build-time values (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow <application>libpq</application> to be built thread-safe
-        on Windows (Dave Page)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Allow IPv6 connections to be used on Windows (Andrew)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Add Server Administration documentation about I/O subsystem
-        reliability (Bruce)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Move private declarations from <filename>gist.h</filename> to
-        <filename>gist_private.h</filename> (Neil)
-       </para>
-
-       <para>
-        In previous releases, <filename>gist.h</filename> contained both the
-        public GiST API (intended for use by authors of GiST index
-        implementations) as well as some private declarations used by
-        the implementation of GiST itself. The latter have been moved
-        to a separate file, <filename>gist_private.h</filename>. Most GiST
-        index implementations should be unaffected.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Overhaul GiST memory management (Neil)
-       </para>
-
-       <para>
-        GiST methods are now always invoked in a short-lived memory
-        context. Therefore, memory allocated via <function>palloc()</function>
-        will be reclaimed automatically, so GiST index implementations
-        do not need to manually release allocated memory via
-        <function>pfree()</function>.
-       </para>
-      </listitem>
-     </itemizedlist>
-    </sect3>
-
-
-    <sect3>
-     <title>Modifications des modules contrib</title>
-     <itemizedlist>
-  
-      <listitem>
-       <para>
-        Ajout du module contrib <filename>/contrib/pg_buffercache</filename>
-        (Mark Kirkwood)
-       </para>
-       <para>
-        Ceci affiche le contenu du cache tampon pour le débogage et pour des
-        tests de performance.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Suppression de <filename>/contrib/array</filename> car il est devenu
-        obsolète (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Nettoyage du module <filename>/contrib/lo</filename> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Déplacement de <filename>/contrib/findoidjoins</filename> dans
-        <filename>/src/tools</filename> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Renommage des opérateurs <literal>&lt;&lt;</literal>, <literal>&gt;&gt;</literal>,
-        <literal>&amp;&lt;</literal> et <literal>&amp;&gt;</literal> dans
-        <filename>/contrib/cube</filename>
-       </para>
-       <para>
-        Ces opérateurs n'étaient plus utiles.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de <filename>/contrib/btree_gist</filename> (Janko Richter)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de <filename>/contrib/pgbench</filename> (Tomoaki Sato, Tatsuo)
-       </para>
-       <para>
-        Il existe maintenant une fonctionnalité pour tester avec des scripts SQL
-        fournis par l'utilisateur, plutôt que par des séquences de commandes
-        codées en dur.
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Amélioration de <filename>/contrib/pgcrypto</filename> (Marko Kreen)
-       </para>
-
-       <itemizedlist>
-  
-        <listitem>
-         <para>
-          Implémentation du chiffrement des clés OpenPGP symétriques et public
-         </para>
-         <para>
-          Les algorithmes à clé publique RSA et Elgamal sont supportés.
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Construction autonome&nbsp;: inclut les hashs SHA256/384/512, et Fortuna PRNG
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Construction OpenSSL&nbsp;: support de 3DES, utilisation d'un AES
-          interne avec OpenSSL &lt; 0.9.7
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Prend les paramètres de constructions (OpenSSL, zlib) à partir du
-          résultat de <filename>configure</filename>
-         </para>
-         <para>
-          Il n'est plus nécessaire de modifier le fichier
-          <filename>Makefile</filename>.
-         </para>
-        </listitem>
-
-        <listitem>
-         <para>
-          Suppression du support pour <filename>libmhash</filename> et
-          <filename>libmcrypt</filename>
-         </para>
-        </listitem>
-
-       </itemizedlist>
-      </listitem>
-
-     </itemizedlist>
-    </sect3>
-  
-   </sect2>
-  </sect1>
-
- <sect1 id="release-8-0-21">
-  <title>Version 8.0.21</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-03-16</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.0.20.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.21</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-   </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.
-      (CVE-2009-0922)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
-      argument des codes de format inappropriés pour la donnée en argument
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de <literal>MUST</literal> (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-8-0-20">
-  <title>Version 8.0.20</title>
-
-  <note>
-  <title>Date de version</title>
-  <simpara>2009-02-02</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.0.19.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.20</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</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</command>
-      (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>
-      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>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de fuseaux horaires avec la version 2009a de
-      <application>tzdata</application> (pour le Kathmandou et des corrections
-      historiques de DST en Switzerland et à Cuba)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-0-19">
-  <title>Version 8.0.19</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-11-03</simpara>
-  </note>
-
-  <para>
-   Cette version contient des corrections de la version 8.0.18.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.19</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-    version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-    antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-   </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</quote> 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 d'un crash possible lorsque des fonctions profondément
-      imbriquées sont appelées à partir d'un trigger (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure qu'une erreur est renvoyée quand une fonction trigger PL/pgsql
-      nouvellement définie est appelée comme une fonction normale (Tom)
-     </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</option>
-      (Ron Mayer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
-      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</command> par
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Correction d'une régression récente de <literal>pg_ctl restart</literal> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Mise à jour des fichiers de données de fuseaux horaires vers la version
-      2008i de <application>tzdata</application> (pour les modifications légales de DST en
-      Argentine, au Brésil, à l'Île Maurice et en Syrie)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-0-18">
-  <title>Version 8.0.18</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-09-22</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.0.17.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.18</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
-    However, if you are upgrading from a version earlier than 8.0.6,
-    see the release notes for 8.0.6.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Widen local lock counters from 32 to 64 bits (Tom)
-     </para>
-
-     <para>
-      This responds to reports that the counters could overflow in
-      sufficiently long transactions, leading to unexpected <quote>lock is
-      already held</quote> errors.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add checks in executor startup to ensure that the tuples produced by an
-      <command>INSERT</command> or <command>UPDATE</command> will match the target table's
-      current rowtype (Tom)
-     </para>
-
-     <para>
-      <command>ALTER COLUMN TYPE</command>, followed by re-use of a previously
-      cached plan, could produce this type of situation.  The check protects
-      against data corruption and/or crashes that could ensue.
-     </para>
-    </listitem>
-
-    <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</literal> query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to estimate that <literal>GROUP BY</literal> 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>
-      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
-      about the encoding of data sent to or from Tcl (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix PL/Python to work with Python 2.5
-     </para>
-
-     <para>
-      This is a back-port of fixes made during the 8.2 development cycle.
-     </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>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to properly preserve postmaster
-      command-line arguments across a <literal>restart</literal> (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Update time zone data files to <application>tzdata</application> release 2008f (for
-      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
-      Pakistan, Palestine, and Paraguay)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-0-17">
-  <title>Version 8.0.17</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-06-12</simpara>
-  </note>
-
-  <para>
-   This release contains one serious bug fix over 8.0.16.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.17</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
-    However, if you are upgrading from a version earlier than 8.0.6,
-    see the release notes for 8.0.6.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
-      be <literal>(-42)::integer</literal> due to operator precedence rules.
-      Usually this would make little difference, but it could interact with
-      another recent patch to cause
-      <productname>PostgreSQL</productname> to reject what had been a valid
-      <command>SELECT DISTINCT</command> view query.  Since this could result in
-      <application>pg_dump</application> 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-8-0-16">
-  <title>Version 8.0.16</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>never released</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 8.0.15.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.16</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 8.0.X.
-    However, if you are upgrading from a version earlier than 8.0.6,
-    see the release notes for 8.0.6.
-   </para>
-
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Fix <command>ALTER TABLE ADD COLUMN ... PRIMARY KEY</command> so that the new
-      column is correctly checked to see if it's been initialized to all
-      non-nulls (Brendan Jurd)
-     </para>
-
-     <para>
-      Previous versions neglected to check this requirement at all.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix possible <command>CREATE TABLE</command> failure when inheriting the
-      <quote>same</quote> constraint from multiple parent relations that
-      inherited that constraint from a common ancestor (Tom)
-     </para>
-    </listitem>
-
-    <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>
-      Update time zone data files to <application>tzdata</application> release 2008c (for
-      DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba,
-      Argentina/San_Luis, and Chile)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix incorrect result from <application>ecpg</application>'s
-      <function>PGTYPEStimestamp_sub()</function> function (Michael)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix core dump in <filename>contrib/xml2</filename>'s
-      <function>xpath_table()</function> function when the input query returns a
-      NULL value (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <filename>contrib/xml2</filename>'s makefile to not override
-      <literal>CFLAGS</literal> (Tom)
-     </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 rare crash when an error occurs during a query using a hash index
-      (Heikki)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix input of datetime values for February 29 in years BC (Tom)
-     </para>
-
-     <para>
-      The former coding was mistaken about which years were leap years.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <quote>unrecognized node type</quote> error in some variants of
-      <command>ALTER OWNER</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <application>pg_ctl</application> to correctly extract the postmaster's port
-      number from command-line options (Itagaki Takahiro, Tom)
-     </para>
-
-     <para>
-      Previously, <literal>pg_ctl start -w</literal> could try to contact the
-      postmaster on the wrong port, leading to bogus reports of startup
-      failure.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use <option>-fwrapv</option> to defend against possible misoptimization
-      in recent <application>gcc</application> versions (Tom)
-     </para>
-
-     <para>
-      This is known to be necessary when building <productname>PostgreSQL</productname>
-      with <application>gcc</application> 4.3 or later.
-     </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-8-0-15">
-  <title>Version 8.0.15</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-01-07</simpara>
-  </note>
-
-  <para>
-   Cette version contient divers correctifs de la version 8.0.14,
-   et inclut des corrections pour des failles de sécurité importantes.
-   Pour plus d'informations sur les nouvelles fonctionnalités de la
-   version majeure 8.0, voir <xref linkend="release-8-0"/>.
-  </para>
-
-  <para>
-   Ceci est la dernière version 8.0.X pour laquelle la communauté
-   <productname>PostgreSQL</productname> produira des paquets binaires pour
-   <productname>Windows</productname>.
-   Les utilisateurs Windows sont encouragés à migrer vers la version 8.2.X ou
-   ultérieures car il existe des corrections spécifiques à Windows dans la
-   version 8.2.X qui ne peuvent pas être portées aux anciennes versions. La
-   8.0.X continuera à être supportée sur les autres plateformes.
-  </para>
-
-  <sect2>
-   <title>Migration vers la version 8.0.15</title>
-
-   <para>
-    Les utilisateurs des versions 8.1.X n'ont pas besoin d'effectuer d'une
-    étape de sauvegarde/restauration. Néamoins, si vous mettez à jour à partir
-    d'une version précédant la version 8.0.6, voir les notes de version de la
-    8.0.6.
-   </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épâration 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.0.14 é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>
-      Mise à jour des fichiers de données de fuseaux horaires avec la version
-      2007k de <application>tzdata</application> (en particulier, les
-      modifications récentes en Argentine) (Tom)
-     </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>
-      Préserve les paramètres du tablespace et de stockage des index qui sont
-      reconstruits suite à un <command>ALTER TABLE ... ALTER COLUMN
-      TYPE</command> (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que la restauration d'archive commence toujours une nouvelle
-      timeline, plutôt que ne le faire que quand une heure d'arrêt de la
-      restauration ne soit utilisée (Simon)
-     </para>
-
-     <para>
-      Ceci évite un risque très particulier de tentative de ré-écriture sur
-      une copie archivée existante du dernier journal de transaction. Cela
-      semble plus simple et plus clair que la définition originale.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que le <command>VACUUM</command> n'utilise pas tout
-      <varname>maintenance_work_mem</varname> quand la table est trop petite
-      pour que cela soit utilisé (Alvaro)
-     </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/Perl pour continuer l'exécution quand le langage Perl
-      de la plateforme définit le type <literal>bool</literal> en tant que
-      <literal>int</literal> plutôt qu'en tant que <literal>char</literal>
-      (Tom)
-     </para>
-
-     <para>
-      Bien que ceci peut arriver partout, aucune construction standard de Perl
-      ne faisait cela... jusqu'à <productname>Mac OS X</productname> 10.5.
-     </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>
-      Correction de <application>pg_dump</application> pour qu'il gère
-      correctement les tables héritées qui ont des expressions par défaut
-      différentes de celles de leur parents (Tom)
-     </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-8-0-14">
-   <title>Version 8.0.14</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-09-17</simpara>
-   </note>
-
-   <para>
-    Cette version contient divers correctifs de la version 8.0.13.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.14</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
-       correctement (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
-       est corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation est corrigée de sorte que les messages ne sont plus
-       entremêlés lorsque syslog est utilisé (Andrew)&nbsp;;
-      </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)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la gestion incorrecte de certains cas limites de clés étrangères est
-       corrigée (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>CLUSTER</command> ne plante
-       plus en tentant de travailler sur les tables temporaires d'autres
-       sessions (Alvaro)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les règles de la base de données concernant les fuseaux horaires, en
-       particulier les changements prévus pour la Nouvelle-Zélande, sont mises
-       à jour (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       les sockets et sémaphores Windows sont améliorés (Magnus)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       le nom du fuseau horaire (<literal>%Z</literal>) dans les estampilles
-       temporelles des journaux sous Windows sont supprimés parce qu'il peut y
-       avoir des incompatibilités d'encodage (Tom)&nbsp;;
-      </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-8-0-13">
-   <title>Version 8.0.13</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-04-23</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.12, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.13</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Supporte le placement explicite du schéma des tables temporaires dans
-      <varname>search_path</varname>, 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</varname>. 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</command> pour plus
-      d'informations.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue pouvant corrompre des données dans la façon
-      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
-      (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>
-
-     <listitem>
-     <para>
-      Correction des spécifications des fuseaux horaires POSIX
-      pour suivre les nouvelles règles USA DST (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-0-12">
-   <title>Version 8.0.12</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-07</simpara>
-   </note>
-
-   <para>
-    Cette version contient une correction de la 8.0.11.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.12</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-    <itemizedlist>
-
-     <listitem>
-     <para>
-      Suppression d'une vérification trop restrictive pour la longueur du type
-      dans les contraintes et les index fonctionnels (Tom)
-     </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-0-11">
-   <title>Version 8.0.11</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-02-05</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.10, dont la
-    correction d'une faille de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.11</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </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</literal> (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-8-0-10">
-   <title>Version 8.0.10</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2007-01-08</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.9.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.10</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </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>
-        Correction d'un cas rare de tronquage d'une grosse relation à la limite
-	du Go par <command>VACUUM</command> (Tom)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
-        Corrections de bogues affectant les index hash de plusieurs Go (Tom)
-       </para>
-      </listitem>
-
-     <listitem>
-      <para>
-       Correction d'un possible blocage mortel dans la gestion des signaux sous
-       Windows (Teodor)
-      </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>
-       Correction d'une perte mémoire dans ecpg lors d'une connexion (Michael)
-      </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>
-
-     <listitem>
-      <para>
-       Mise à jour de la base des fuseaux horaires
-      </para>
-
-      <para>
-       Ceci affecte les règles de changements d'heure en Australie et au Canada.
-      </para>
-     </listitem>
-
-    </itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-0-9">
-   <title>Version 8.0.9</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-10-16</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.8.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.9</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </para>
-
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Correction d'un arrêt brutal lors du référencement de valeurs
-  de <literal>NEW</literal> dans les expressions WHERE de règle (Tom)</para></listitem>
-<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 d'une mauvaise gestion des déclencheurs après quand
-  une requête contient une fonction SQL renvoyant plusieurs lignes
-  (Tom)</para></listitem>
-<listitem><para>Correction de <command>ALTER TABLE ... TYPE</command> pour qu'il vérifie
-<literal>NOT NULL</literal> dans une clause <literal>USING</literal> (Tom)</para></listitem>
-<listitem><para>Correction de <function>string_to_array()</function> pour gérer des
-  correspondances se surchargeant pour la chaîne de séparation</para>
-<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
-</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>Nombreuses corrections de fiabilité dans <application>ecpg</application> (Joachim
-Wieland)</para></listitem>
-<listitem><para>Correction de l'échappement des antislashs dans /contrib/dbmirror</para></listitem>
-<listitem><para>Correction de l'instabilité de la récupération de statistiques
-  sur Win32 (Tom, Andrew)</para></listitem>
-<listitem><para>Corrections pour les compilateurs <systemitem class="osname">AIX</systemitem> et
-<productname>Intel</productname> (Tom)</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-0-8">
-   <title>Version 8.0.8</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-05-23</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.7 incluant des
-    correctifs pour des problèmes de sécurité extrêmement sérieux.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.8</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </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()</function> de <application>libpq</application>)
-     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
-     <foreignphrase>ad hoc</foreignphrase>.
-    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
-ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
-quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
-de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
-et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
-<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
-<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de 
-<literal>\'</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</literal> pour les modèles impliquant
-<literal>|</literal> (Tom)</para></listitem>
-
-<listitem><para>Correction de <command>SELECT INTO</command> et <command>CREATE TABLE AS</command>
-pour créer des tables dans le tablespace par défaut, et non pas dans le répertoire
-base (Kris Jurka)</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>
-
-<listitem><para>Correction d'un problème pour la demande du mot de passe sur
-certains systèmes Win32 (Robert Kinberg)</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-  <sect1 id="release-8-0-7">
-   <title>Version 8.0.7</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-02-14</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.6.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.7</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.6, voir les notes de sortie de la 8.0.6.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un arrêt brutal potentiel dans <command>SET
-SESSION AUTHORIZATION</command> (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 8.0.4, 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à</quote> lors de la création d'un fichier pg_clog
-(Tom)</para></listitem>
-
-<listitem><para>Correction des cas pouvant amener des arrêts brutaux si un
-message d'invalidation de cache arrive juste au mauvais moment (Tom)</para></listitem>
-
-<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
-les paramètres <literal>UNKNOWN</literal> dans les instructions préparées
-(Neil)</para></listitem>
-
-<listitem><para>S'assure que <command>ALTER COLUMN TYPE</command> traitera les
-contraintes <literal>FOREIGN KEY</literal>, <literal>UNIQUE</literal> et
-<literal>PRIMARY KEY</literal> dans le bon ordre (Nakano Yoshihisa)</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>Autorise <application>pg_restore</application> à continuer tranquillement
-après un échec de <command>COPY</command>&nbsp;; auparavant, il essayait de traiter
-les données restantes du <command>COPY</command> comme des commandes SQL (Stephen
-Frost)</para></listitem>
-
-<listitem><para>Correction du bogue <literal>unregister</literal> de
-<application>pg_ctl</application> quand le répertoire des données n'est pas
-spécifié (Magnus)</para></listitem>
-
-<listitem><para>Correction du bogue sur <application>ecpg</application> pour AMD64 et
-PPC (Neil)</para></listitem>
-
-<listitem><para>Récupère proprement si une erreur survient lors du passage
-des arguments en <application>PL/python</application> (Neil)</para></listitem>
-
-<listitem><para>Correction de la gestion des locales par <application>PL/perl</application>
-sur Win32 pour correspondre au moteur (Andrew)</para></listitem>
-
-<listitem><para>Correction d'un bogue quand <literal>log_min_messages</literal> est
-configuré à <literal>DEBUG3</literal> ou plus bas dans le fichier <filename>postgresql.conf</filename>
-sur Win32 (Bruce)</para></listitem>
-
-<listitem><para>Correction l'option <literal>-L</literal> de spécification du chemin
-des bibliothèques de <application>pgxs</application> pour Win32, Cygwin, OS X, AIX
-(Bruce)</para></listitem>
-
-<listitem><para>Vérification de l'activation de SID lors de la vérification
-des droits administrateur sous Win32 (Magnus)</para></listitem>
-
-<listitem><para>Rejette proprement les données de type date en dehors de la
-plage (Kris Jurka)</para></listitem>
-
-<listitem><para>Correction de portabilité pour tester la présence de
-<function>finite</function> et <function>isinf</function> lors du configure (Tom)</para></listitem>
-
-
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
-  <sect1 id="release-8-0-6">
-   <title>Version 8.0.6</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2006-01-09</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la version 8.0.5.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.6</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
-     De plus, vous aurez sûrement besoin de lancer la commande
-     <command>REINDEX</command> 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</application> décrits ci-dessous.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-
-<listitem><para>Correction d'un code Windows de façon à ce que postmaster
-continue au lieu de quitter s'il n'y a plus de place dans
-ShmemBackendArray (Magnus)</para>
-<para>Le comportement précédent pouvait amener à une situation de déni de
-service si trop de demandes de connexion arrivaient en même temps. Ceci
-s'applique <emphasis>seulement</emphasis> au port Windows.</para></listitem>
-
-<listitem><para>Correction d'un bogue introduit dans la version 8.0 permettant à
-ReadBuffer de renvoyer une page déjà utilisée comme nouvelle, causant
-potentiellement des pertes de données récemment validées (Tom)</para></listitem>
-
-<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</command>
-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</application> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
-utilisation de <application>plperl</application> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</command> pour corriger des
-index existant sur des colonnes de type texte si cela vous arrivait.
-</para></listitem>
-
-<listitem><para>Permet un déplacement plus simple des répertoires d'installation
-(Tom)</para>
-<para>Les anciennes versions supportaient seulement un déplacement si tous les
-chemins d'installation étaient identiques sauf pour le dernier composant.
-</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>Quelques corrections pour les fonctions renvoyant <literal>RECORD</literal>
-(Tom) </para></listitem>
-
-<listitem><para>Correction d'un bogue dans gen_salt de <filename>/contrib/pgcrypto</filename>,
-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</filename> 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-8-0-5">
-   <title>Version 8.0.5</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2005-12-12</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections sur la 8.0.4.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.5</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
-    </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>Correction des problèmes du processus d'écriture en tâche de
-fond après avoir récupéré des erreurs (Tom)</para>
-<para>
-Le processus d'écriture en tâche de fond was found to leak buffer pins after write errors.
-Bien que non fatal en soi, ceci pourrait amener des blocages mystérieux sur des
-commandes VACUUM ultérieures.
-</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</filename> (Teodor)</para></listitem>
-
-<listitem><para>Corrections de compilation sur AIX et HPUX (Tom)</para></listitem>
-
-<listitem><para>Tente de nouveau les lectures et écritures de fichiers après
-une erreur NO_SYSTEM_RESOURCES sous Windows (Qingqing Zhou)</para></listitem>
-
-<listitem><para>Correction d'un échec intermittent quand <varname>log_line_prefix</varname>
-inclut <literal>%i</literal></para></listitem>
-
-<listitem><para>Correction du problème de performance de <application>psql</application>
-avec les scripts longs sur Windows (Merlin Moncure)</para></listitem>
-
-<listitem><para>Correction de mises à jour manquantes du fichier
-<filename>pg_group</filename></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</quote>.</para></listitem>
-
-<listitem><para>Retardait l'initialisation du fuseau horaire jusqu'à la création
-du fichier <filename>postmaster.pid</filename></para>
-<para>Ceci évite la confusion des scripts de démarrage qui s'attendent à voir
-apparaître rapidement le fichier pid.</para></listitem>
-
-<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
-quand une table a été supprimée</para></listitem>
-
-<listitem><para>Correction de problèmes avec des références de lignes entières
-(<literal>foo.*</literal>) pour des résultats de sous-requêtes</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
- 
-  <sect1 id="release-8-0-4">
-   <title>Version 8.0.4</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2005-10-04</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections de la 8.0.3.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.4</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.X. Néanmoins, si vous mettez à jour à partir d'une version
-     antérieure à la 8.0.3, voir les notes de sortie de la 8.0.3.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-<itemizedlist>
-<listitem><para>Fix error that allowed <command>VACUUM</command> to remove
-<literal>ctid</literal> chains too soon, and add more checking in code that follows
-<literal>ctid</literal> links</para>
-<para>This fixes a long-standing problem that could cause crashes in very rare
-circumstances.</para></listitem>
-<listitem><para>Fix <type>CHAR()</type> to properly pad spaces to the specified
-length when using a multiple-byte character set (Yoshiyuki Asaba)</para>
-<para>In prior releases, the padding of <type>CHAR()</type> was incorrect
-because it only padded to the specified number of bytes without
-considering how many characters were stored.</para></listitem>
-<listitem><para>Force a checkpoint before committing <command>CREATE
-DATABASE</command></para>
-<para>This should fix recent reports of <quote>index is not a btree</quote>
-failures when a crash occurs shortly after <command>CREATE
-DATABASE</command>.</para></listitem>
-<listitem><para>Fix the sense of the test for read-only transaction
-in <command>COPY</command></para>
-<para>The code formerly prohibited <command>COPY TO</command>, where it should
-prohibit <command>COPY FROM</command>.
-</para></listitem>
-<listitem><para>Handle consecutive embedded newlines in <command>COPY</command>
-CSV-mode input</para></listitem>
-<listitem><para>Fix <function>date_trunc(week)</function> for dates near year
-end</para></listitem>
-<listitem><para>Fix planning problem with outer-join ON clauses that reference
-only the inner-side relation</para></listitem>
-<listitem><para>Further fixes for <literal>x FULL JOIN y ON true</literal> corner
-cases</para></listitem>
-<listitem><para>Fix overenthusiastic optimization of <literal>x IN (SELECT
-DISTINCT ...)</literal> and related cases</para></listitem>
-<listitem><para>Fix mis-planning of queries with small <literal>LIMIT</literal>
-values due to poorly thought out <quote>fuzzy</quote> cost
-comparison</para></listitem>
-<listitem><para>Make <function>array_in</function> and <function>array_recv</function> more
-paranoid about validating their OID parameter</para></listitem>
-<listitem><para>Fix missing rows in queries like <literal>UPDATE a=... WHERE
-a...</literal> with GiST index on column <literal>a</literal></para></listitem>
-<listitem><para>Improve robustness of datetime parsing</para></listitem>
-<listitem><para>Improve checking for partially-written WAL
-pages</para></listitem>
-<listitem><para>Improve robustness of signal handling when SSL is
-enabled</para></listitem>
-<listitem><para>Improve MIPS and M68K spinlock code</para></listitem>
-<listitem><para>Don't try to open more than <literal>max_files_per_process</literal>
-files during postmaster startup</para></listitem>
-<listitem><para>Various memory leakage fixes</para></listitem>
-<listitem><para>Various portability improvements</para></listitem>
-<listitem><para>Update timezone data files</para></listitem>
-<listitem><para>Improve handling of DLL load failures on Windows</para></listitem>
-<listitem><para>Improve random-number generation on Windows</para></listitem>
-<listitem><para>Make <literal>psql -f filename</literal> return a nonzero exit code
-when opening the file fails</para></listitem>
-<listitem><para>Change <application>pg_dump</application> to handle inherited check
-constraints more reliably</para></listitem>
-<listitem><para>Fix password prompting in <application>pg_restore</application> on
-Windows</para></listitem>
-<listitem><para>Fix PL/PgSQL to handle <literal>var := var</literal> correctly when
-the variable is of pass-by-reference type</para></listitem>
-<listitem><para>Fix PL/Perl <literal>%_SHARED</literal> so it's actually
-shared</para></listitem>
-<listitem><para>Fix <filename>contrib/pg_autovacuum</filename> to allow sleep
-intervals over 2000 sec</para></listitem>
-<listitem><para>Update <filename>contrib/tsearch2</filename> to use current Snowball
-code</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
- 
-  <sect1 id="release-8-0-3">
-   <title>Version 8.0.3</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2005-05-09</simpara>
-   </note>
-
-   <para>
-    Cette version contient quelques corrections sur la 8.0.2, dont des
-    correctifs sur des failles de sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.3</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requise pour ceux utilisant une
-     version 8.0.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 8.0.X. Une séquence
-     sauvegarde/initdb/restauration utilisant le initdb de la 8.0.3 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</filename>
-     crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</type>
-     alors qu'elles n'acceptent pas les arguments <type>internal</type>. Ceci casse
-     la sûreté des types pour toutes les fonctions utilisant des arguments
-     <type>internal</type>.
-    </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 même procédure de
-     réparation manuelle que celle montrée dans les <link
-     linkend="release-7-4-8">notes de la version 7.4.8</link>.
-    </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>Modification de <filename>contrib/tsearch2</filename> pour éviter une
-utilisation non sécurisée des résultats <type>INTERNAL</type> de la fonction</para></listitem>
-<listitem><para>Prévention contre un second paramètre incorrect pour
-<function>record_out</function></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</type></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
-sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
-type <type>TIME WITH TIME ZONE</type></para></listitem>
-<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
-négatives dans les valeurs <type>INTERVAL</type></para>
-<para>Cette erreur est seulement survenue quand l'option de configuration
-<literal>--enable-integer-datetimes</literal> avait été utilisée.
-</para></listitem>
-<listitem><para>Correction de pg_dump pour qu'il sauvegarde correctement les
-noms des déclencheurs contenant <literal>%</literal> (Neil)</para></listitem>
-<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
-</para></listitem>
-<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
-<type>RECORD</type></para></listitem>
-<listitem><para>Empêche un arrêt brutal sur <literal>COALESCE(NULL,NULL)</literal></para></listitem>
-<listitem><para>Correction du makefile de Borland pour libpq</para></listitem>
-<listitem><para>Correction de <filename>contrib/btree_gist</filename> pour le type
-<type>timetz</type> (Teodor)</para></listitem>
-<listitem><para>Fait que <command>pg_ctl</command> vérifie le PID trouvé dans
-<filename>postmaster.pid</filename> pour voir s'il s'agit toujours d'un processus en
-vie</para></listitem>
-<listitem><para>Correction des problèmes de <command>pg_dump</command>/<command>pg_restore</command>
-causés par l'ajout de tampons horaires dans les sauvegardes</para></listitem>
-<listitem><para>Correction de l'interaction entre les curseurs et le lancement de
-déclencheurs déferrés lors de validation de transaction</para></listitem>
-<listitem><para>Correction d'une perte mémoire dans les fonctions SQL renvoyant
-des types de données passés par référence</para></listitem>
-</itemizedlist>
-
-   </sect2>
-  </sect1>
-
- <sect1 id="release-8-0-2">
-   <title>Version 8.0.2</title>
-
-   <note>
-     <title>Date de sortie</title>
-     <simpara>2005-04-07</simpara>
-   </note>
-
-   <para>
-     Cette version contient quelques corrections de la 8.0.1.
-     Pour plus d'informations sur les nouvelles fonctionnalités de la
-     version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-     <title>Migration vers la version 8.0.2</title>
-
-     <para>
-       Une sauvegarde/restauration n'est pas requise pour ceux utilisant les
-       versions 8.0.*. Cette version met à jour le numéro de version majeure
-       des bibliothèques <productname>PostgreSQL</productname>, donc il pourrait
-       être nécessaire de re-lier certaines applications utilisateurs si elles
-       n'arrivent pas à trouver la bonne bibliothèque partagée.
-     </para>
-   </sect2>
-
-   <sect2>
-     <title>Modifications</title>
-
-     <itemizedlist>
-       <listitem><para>Incrémentation du numéro de version majeure pour toutes
-         les bibliothèques d'interface (Bruce)</para>
-         <para>
-           Ceci aurait dû être fait depuis la 8.0.0. C'est requis pour que les
-	   versions 7.4.X des applications clientes de PostgreSQL, comme
-	   <application>psql</application>, puissent être utilisées sur la même machine
-	   que les applications 8.0.X. Ceci pourrait nécessiter une nouvelle
-	   édition des liens des applications clientes utilisant ces
-	   bibliothèques.
-       </para></listitem>
-       <listitem><para>Ajout du paramètre <varname>wal_sync_method</varname>, uniquement
-	 sous Windows, pour<option>fsync_writethrough</option> (Magnus, Bruce)</para>
-         <para>
-	   Ce paramètre fait que <productname>PostgreSQL</productname> écrit
-	   les WAL via le cache d'écriture du disque. Ce comportement était
-	   appelé auparavant <option>fsync</option> mais a été renommé car il agit
-	   complètement différemment de <option>fsync</option> sur les autres
-	   plateformes.
-	 </para>
-       </listitem>
-       <listitem><para>Active la valeur <option>open_datasync</option> du paramètre
-	 <varname>wal_sync_method</varname> sur Windows et le prend par défaut sur
-	 cette plateforme (Magnus, Bruce)</para>
-         <para>
-	   Comme la valeur par défaut n'est plus <option>fsync_writethrough</option>,
-	   une perte de données est possible lors d'une coupure de courant si
-	   le disque a activé le cache en écriture. Pour désactiver ce cache sur
-	   Windows, à partir du <application>Device Manager</application>, choisissez les
-	   propriétés du disque, puis <literal>Policies</literal>.
-	 </para>
-       </listitem>
-       <listitem><para>Le nouvel algorithme de gestion du cache <acronym>2Q</acronym>
-	 remplace <acronym>ARC</acronym> (Tom)</para>
-	 <para>
-	   Ceci a été accompli pour éviter un brevet logiciel en attente sur
-	   <acronym>ARC</acronym>. Le code <acronym>2Q</acronym> pourrait être un peu plus
-	   lent qu'<acronym>ARC</acronym> pour certains charges de travail. Un meilleur
-	   algorithme de gestion de cache apparaîtra pour la version 8.1.
-	 </para></listitem>
-       <listitem><para>Ajustements du planificateur pour améliorer le comportement
-	 sur les tables nouvellement créées (Tom)</para></listitem>
-       <listitem><para>Autorise plpgsql d'affecter un élément initialement
-	 <literal>NULL</literal> à un tableau (Tom)</para>
-	 <para>
-	   Auparavant, le tableau resterait <literal>NULL</literal> mais maintenant, il
-	   devient un tableau à un seul élément. Le moteur SQL principal a été
-	   modifié pour gérer un <command>UPDATE</command> d'une valeur de tableau NULL
-	   de cette façon dans la version 8.0 mais le cas similaire dans plpgsql
-	   a été oublié.
-	 </para>
-       </listitem>
-       <listitem><para>Conversion de <literal>\r\n</literal> et <literal>\r</literal> en <literal>\n</literal>
-	 dans le corps des fonctions en plpython (Michael Fuhr)</para>
-	 <para>
-	   Ceci empêche les erreurs de syntaxe quand le code plpython a été
-	   écrit sur un client Windows ou Mac.
-	 </para>
-       </listitem>
-       <listitem><para>Autorise les curseurs SPI pour gérer les commandes outils
-	 qui renvoient des lignes comme <command>EXPLAIN</command> (Tom)</para></listitem>
-       <listitem><para>Correction de l'échec de <command>CLUSTER</command> après
-	 <command>ALTER TABLE SET WITHOUT OIDS</command> (Tom)</para></listitem>
-       <listitem><para>Réduction de l'utilisation de la mémoire d'<command>ALTER
-	 TABLE ADD COLUMN</command> (Neil)</para></listitem>
-       <listitem><para>Correction d'<command>ALTER LANGUAGE RENAME</command> (Tom)</para></listitem>
-       <listitem><para>Documentation des options <literal>register</literal> et
-	 <literal>unregister</literal> de <application>pg_ctl</application> spécifiques à Windows
-	 (Magnus)</para></listitem>
-       <listitem><para>S'assure que les opérations effectuées lors de l'arrêt
-	 du moteur sont comptées par le récupérateur de statistiques</para>
-	 <para>
-	   Ceci devrait résoudre les rapports de <application>pg_autovacuum</application>
-	   ne nettoyant pas assez fréquemment les catalogues systèmes &mdash; il
-	   n'était pas tenu au courant des suppressions de catalogues causées
-	   par la suppression de table temporaire lors de l'arrêt du moteur.
-	 </para></listitem>
-       <listitem><para>Modification de la valeur par défaut, sous Windows, pour
-	 le paramètre de configuration <varname>log_destination</varname> par
-	 <option>eventlog</option> (Magnus)</para>
-	 <para>
-	   Par défaut, un serveur fonctionnant sous Windows enverra maintenant
-	   la sortie des traces au gestionnaire des traces de Windows plutôt
-	   que sur la sortie standard des erreurs.
-	 </para></listitem>
-       <listitem><para>Rend l'authentification Kerberos fonctionnel sur Windows
-	 (Magnus)</para></listitem>
-       <listitem><para>Autorise <command>ALTER DATABASE RENAME</command> pour les
-	 superutilisateurs qui n'ont pas le droit CREATEDB (Tom)</para></listitem>
-       <listitem><para>Modification des entrées WAL pour les commandes
-	 <command>CREATE</command> et <command>DROP DATABASE</command> pour ne pas spécifier
-	 les chemins absolus (Tom)</para>
-	 <para>Ceci permet la récupération à un instant sur une machine différente
-	   avec des emplacements de bases de données pouvant être différents. Notez
-	   que <command>CREATE TABLESPACE</command> est toujours hasardeux dans certaines
-	   situations.</para></listitem>
-       <listitem><para>Correction d'un arrêt brutal suivant l'arrêt d'un serveur
-	 avec une transaction ouverte qui a créé une table et ouvert un curseur
-	 sur elle (Tom)</para></listitem>
-       <listitem><para>Correction de <function>array_map()</function> pour qu'il puisse
-	 appeler des fonctions de langages de procédures (Tom)</para></listitem>
-       <listitem><para>Plusieurs corrections pour <filename>contrib/tsearch2</filename>
-	 et <filename>contrib/btree_gist</filename> (Teodor)</para></listitem>
-       <listitem><para>Correction de quelques arrêts brutaux de certaines
-	 fonctions de <filename>contrib/pgcrypto</filename> concernant certaines
-	 plateformes (Marko Kreen)</para></listitem>
-       <listitem><para>Correction de <filename>contrib/intagg</filename> pour les
-	 plateformes 64 bits (Tom)</para></listitem>
-       <listitem><para>Correction de bogues d'ecpg dans l'analyse d'instructions
-	 <command>CREATE</command> (Michael)</para></listitem>
-       <listitem><para>Contournement d'un bogue de gcc sur powerpc et amd64 posant
-	 des problèmes sur ecpg (Christof Petig)</para></listitem>
-       <listitem><para>N'utilise pas les versions <function>upper()</function>,
-	 <function>lower()</function> et <function>initcap()</function> prenant compte de la
-	 locale utilisée lorsque la locale est <literal>C</literal> (Bruce)</para>
-	 <para>
-	   Ceci permet à ces fonctions de fonctionner sur les plateformes qui
-	   génèrent des erreurs pour les données non 7 bits lorsque la locale
-	   est <literal>C</literal>.</para></listitem>
-       <listitem><para>Correction de <function>quote_ident()</function> pour mettre entre
-	 guillemets les noms qui correspondent à des mots clés (Tom)</para></listitem>
-       <listitem><para>Correction de <function>to_date()</function> pour correspondre
-	 raisonnablement quand les champs <literal>CC</literal> et <literal>YY</literal> sont
-	 utilisées tous les deux (Karel)</para></listitem>
-       <listitem><para>Empêche <function>to_char(interval)</function> d'échouer quand
-	 lui est passée une intervalle de zéro mois (Tom)</para></listitem>
-       <listitem><para>Correction du mauvais mois renvoyé par
-	 <function>date_trunc('week')</function> (Bruce)</para>
-	 <para>
-	   <function>date_trunc('week')</function> a renvoyé la mauvaise année pour les
-	   quelques premiers jours de Janvier pour certaines années.
-	 </para></listitem>
-       <listitem><para>Utilise la longueur par défaut du masque pour la classe
-	 <literal>D</literal> d'adresses pour les types de données <type>INET</type> (Tom)
-	 </para></listitem>
-</itemizedlist>
-
-</sect2>
-</sect1>
-
-  <sect1 id="release-8-0-1">
-   <title>Version 8.0.1</title>
-
-   <note>
-   <title>Date de sortie</title>
-   <simpara>2005-01-31</simpara>
-   </note>
-
-   <para>
-    Cette version contient une grande variété de corrections provenant de la
-    version 8.0.0, incluant plusieurs problèmes relatifs sur la sécurité.
-    Pour plus d'informations sur les nouvelles fonctionnalités de la
-    version majeure 8.0, voir <xref linkend="release-8-0"/>.
-   </para>
-
-   <sect2>
-    <title>Migration vers la version 8.0.1</title>
-
-    <para>
-     Une sauvegarde/restauration n'est pas requis pour ceux utilisant la
-     version 8.0.0.
-    </para>
-   </sect2>
-
-   <sect2>
-    <title>Modifications</title>
-
-     <itemizedlist>
-       <listitem><para>Interdiction de <command>LOAD</command> aux utilisateurs
-	 standards</para>
-	 <para>
-	   Sur les plateformes qui exécutent 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</command> peut être
-	   utilisé pour que le serveur exécute un code arbitraire. Merci à
-	   NGS Software pour nous l'avoir indiqué.</para></listitem>
-       <listitem><para>Vérification comme le créateur d'une fonction d'agrégat
-	 a le droit d'exécutr les fonctions de transition spécifiées</para>
-         <para>
-	   Cet aperçu est rendu possible pour dépasser un déni de droit sur EXECUTE
-	   pour une fonction.</para></listitem>
-       <listitem><para>Correctif de sécurité et de problèmes pour les 64 bits
-	 dans contrib/intagg</para></listitem>
-       <listitem><para>Ajout du marquage STRICT nécessaire pour certaines
-	 fonctions de contrib functions (Kris Jurka)</para></listitem>
-       <listitem><para>Évite l'écrasement de tampon quand la déclaration de
-	 curseur de plpgsql a trop de paramètres (Neil)</para></listitem>
-       <listitem><para>Fait que <command>ALTER TABLE ADD COLUMN</command> force les
-	 contraintes de domaines dans tous les cas</para></listitem>
-       <listitem><para>Correction d'une erreur de planification pour des
-	 jointures externes FULL et RIGHT</para>
-         <para>
-	   Le résultat de la jointure a été pris par erreur pour être trié de la
-	   même façon que l'entrée gauche. This could not only deliver mis-sorted
-	   output to the user, but in case of nested merge joins could give
-	   outright wrong answers.</para></listitem>
-       <listitem><para>Amélioration de la plantification des requêtes d'agrégats
-	 groupées</para></listitem>
-       <listitem><para><command>ROLLBACK TO <replaceable>point_de_sauvegarde</replaceable></command>
-	 ferme les curseurs créés depuis le point de sauvegarde</para></listitem>
-       <listitem><para>Correction de la taille inadéquate de la pile du serveur
-	 sur Windows</para></listitem>
-       <listitem><para>Évite SHGetSpecialFolderPath() sur Windows (Magnus)</para></listitem>
-       <listitem><para>Correction de quelques problèmes lors de l'exécution de
-	 pg_autovacuum en tant que service Windows (Dave Page)</para></listitem>
-       <listitem><para>Corrections de plusieurs bogues mineurs dans pg_dump/pg_restore</para></listitem>
-       <listitem><para>Correction d'une erreur de segmentation dans ecpg avec
-	 les structures nommées utilisées dans les typedefs (Michael)</para></listitem>
-     </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-8-0">
-  <title>Version 8.0</title>
-
-  <note>
-   <title>Date de sortie</title>
-   <simpara>2005-01-19</simpara>
-  </note>
-
-  <sect2>
-   <title>Overview</title>
-
-   <para>
-    Major changes in this release:
-
-    <variablelist>
-     <varlistentry>
-      <term>
-       Microsoft Windows Native Server
-      </term>
-
-      <listitem>
-       <para>
-        This is the first <productname>PostgreSQL</productname> release
-        to run natively on <trademark class="registered">Microsoft Windows</trademark> as
-        a server. It can run as a <productname>Windows</productname> service. This
-        release supports NT-based Windows releases like
-        <productname>Windows 2000</productname>, <productname>Windows XP</productname>, and
-        <productname>Windows 2003</productname>. Older releases like
-        <productname>Windows 95</productname>, <productname>Windows 98</productname>, and
-        <productname>Windows ME</productname> are not supported because these operating
-        systems do not have the infrastructure to support
-        <productname>PostgreSQL</productname>. A separate installer
-        project has been created to ease installation on
-        <productname>Windows</productname> &mdash; see <ulink
-        url="http://www.postgresql.org/ftp/win32/"></ulink>.
-       </para>
-
-       <para>
-        Although tested throughout our release cycle, the Windows port
-        does not have the benefit of years of use in production
-        environments that <productname>PostgreSQL</productname> has on
-        Unix platforms.  Therefore it should be treated with the same
-        level of caution as you would a new product.
-       </para>
-
-       <para>
-        Previous releases required the Unix emulation toolkit
-        <productname>Cygwin</productname> in order to run the server on Windows
-        operating systems.  <productname>PostgreSQL</productname> has
-        supported native clients on Windows for many years.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Savepoints
-      </term>
-
-      <listitem>
-       <para>
-        Savepoints allow specific parts of a transaction to be aborted
-        without affecting the remainder of the transaction. Prior
-        releases had no such capability; there was no way to recover
-        from a statement failure within a transaction except by
-        aborting the whole transaction. This feature is valuable for
-        application writers who require error recovery within a
-        complex transaction.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Point-In-Time Recovery
-      </term>
-
-      <listitem>
-       <para>
-        In previous releases there was no way to recover from disk
-        drive failure except to restore from a previous backup or use
-        a standby replication server.  Point-in-time recovery allows
-        continuous backup of the server.  You can recover either to
-        the point of failure or to some transaction in the past.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Tablespaces
-      </term>
-
-      <listitem>
-       <para>
-        Tablespaces allow administrators to select different file systems
-        for storage of individual tables, indexes, and databases.
-        This improves performance and control over disk space
-        usage. Prior releases used <application>initlocation</application> and
-        manual symlink management for such tasks.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Improved Buffer Management, <command>CHECKPOINT</command>,
-       <command>VACUUM</command>
-      </term>
-
-      <listitem>
-       <para>
-        This release has a more intelligent buffer replacement strategy,
-        which will make better use of available shared buffers and
-        improve performance. The performance impact of vacuum and
-        checkpoints is also lessened.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       Change Column Types
-      </term>
-
-      <listitem>
-       <para>
-        A column's data type can now be changed with <command>ALTER
-        TABLE</command>.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-       New Perl Server-Side Language
-      </term>
-
-      <listitem>
-       <para>
-        A new version of the <application>plperl</application> server-side language now
-        supports a persistent shared storage area, triggers, returning records
-        and arrays of records, and SPI calls to access the database.
-       </para>
-      </listitem>
-     </varlistentry>
-
-     <varlistentry>
-      <term>
-        Comma-separated-value (CSV) support in <command>COPY</command>
-      </term>
-
-      <listitem>
-       <para>
-        <command>COPY</command> can now read and write
-        comma-separated-value files. It has the flexibility to
-        interpret non-standard quoting and separation characters too.
-       </para>
-      </listitem>
-     </varlistentry>
-
-    </variablelist>
-   </para>
-  </sect2>
-
-  <sect2>
-   <title>Migration vers la version 8.0</title>
-                                      
-   <para>
-    A dump/restore using <application>pg_dump</application> is
-    required for those wishing to migrate data from any previous
-    release.
-   </para>
-   
-   <para>
-    Observe the following incompatibilities:
-
-    <itemizedlist>
-
-     <listitem>
-      <para>
-       In <option>READ COMMITTED</option> serialization mode, volatile functions
-       now see the results of concurrent transactions committed up to the
-       beginning of each statement within the function, rather than up to the
-       beginning of the interactive command that called the function.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Functions declared <option>STABLE</option> or <option>IMMUTABLE</option> always
-       use the snapshot of the calling query, and therefore do not see the
-       effects of actions taken after the calling query starts, whether in
-       their own transaction or other transactions.  Such a function must be
-       read-only, too, meaning that it cannot use any SQL commands other than
-       <command>SELECT</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Non-deferred <option>AFTER</option> triggers are now fired immediately
-       after completion of the triggering query, rather than upon
-       finishing the current interactive command. This makes a
-       différence when the triggering query occurred within a function:
-       the trigger is invoked before the function proceeds to its next
-       operation.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameters <varname>virtual_host</varname> and
-       <varname>tcpip_socket</varname> have been replaced with a more general
-       parameter <varname>listen_addresses</varname>. Also, the server now listens on
-       <literal>localhost</literal> by default, which eliminates the need for the
-       <literal>-i</literal> postmaster switch in many scenarios.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameters <varname>SortMem</varname> and
-       <varname>VacuumMem</varname> have been renamed to <varname>work_mem</varname>
-       and <varname>maintenance_work_mem</varname> to better reflect their
-       use. The original names are still supported in
-       <command>SET</command> and <command>SHOW</command>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameters <varname>log_pid</varname>,
-       <varname>log_timestamp</varname>, and <varname>log_source_port</varname> have been
-       replaced with a more general parameter <varname>log_line_prefix</varname>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameter <varname>syslog</varname> has been
-       replaced with a more logical <varname>log_destination</varname> variable to
-       control the log output destination.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameter <varname>log_statement</varname> has been
-       changed so it can selectively log just database modification or
-       data définition statements.  Server configuration parameter
-       <varname>log_duration</varname> now prints only when <varname>log_statement</varname>
-       prints the query.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Server configuration parameter <varname>max_expr_depth</varname> parameter has
-       been replaced with <varname>max_stack_depth</varname> which measures the
-       physical stack size rather than the expression nesting depth. This
-       helps prevent session termination due to stack overflow caused by
-       recursive functions.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The <function>length()</function> function no longer counts trailing spaces in
-       <type>CHAR(n)</type> values.
-      </para>
-     </listitem>
-
-    <listitem>
-     <para>
-      Casting an integer to <type>BIT(N)</type> selects the rightmost N bits of the
-      integer, not the leftmost N bits as before.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Updating an element or slice of a NULL array value now produces
-      a non-NULL array result, namely an array containing
-      just the assigned-to positions.
-     </para>
-    </listitem>
-
-     <listitem>
-      <para>
-       Syntax checking of array input values has been tightened up
-       considerably. Junk that was previously allowed in odd places with
-       odd results now causes an error. Empty-string element values
-       must now be written as <literal>""</literal>, rather than writing nothing.
-       Also changed behavior with respect to whitespace surrounding
-       array elements: trailing whitespace is now ignored, for symmetry
-       with leading whitespace (which has always been ignored).
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Overflow in integer arithmetic operations is now detected and
-       reported as an error.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The arithmetic operators associated with the single-byte
-       <type>"char"</type> data type have been removed.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The <function>extract()</function> function (also called
-       <function>date_part</function>) now returns the proper year for BC dates.
-       It previously returned one less than the correct year. The
-       function now also returns the proper values for millennium and
-       century.
-      </para>
-     </listitem>
-
-    <listitem>
-     <para>
-      <type>CIDR</type> values now must have their non-masked bits be zero.
-      For exemple, we no longer allow
-      <literal>204.248.199.1/31</literal> as a <type>CIDR</type> value. Such
-      values should never have been accepted by
-      <productname>PostgreSQL</productname> and will now be rejected.
-     </para>
-    </listitem>
-
-     <listitem>
-      <para>
-       <command>EXECUTE</command> now returns a completion tag that
-       matches the executed statement.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <application>psql</application>'s <command>\copy</command> command now reads or
-       writes to the query's <literal>stdin/stdout</literal>, rather than
-       <application>psql</application>'s <literal>stdin/stdout</literal>. The previous
-       behavior can be accessed via new
-       <option>pstdin</option>/<option>pstdout</option> parameters.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-      The JDBC client interface has been removed from the core
-      distribution, and is now hosted at <ulink url=
-      "http://jdbc.postgresql.org"></ulink>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-      The Tcl client interface has also been removed. There are several
-      Tcl interfaces now hosted at <ulink url=
-      "http://gborg.postgresql.org"></ulink>.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The server now uses its own time zone database, rather than the
-       one supplied by the operating system. This will provide consistent
-       behavior across all platforms.  In most cases, there should be
-       little noticeable différence in time zone behavior, except that
-       the time zone names used by <command>SET</command>/<command>SHOW</command>
-       <varname>TimeZone</varname> may
-       be different from what your platform provides.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <application>Configure</application>'s threading option no longer requires
-       users to run tests or edit configuration files; threading options
-       are now detected automatically.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Now that tablespaces have been implemented,
-       <application>initlocation</application> has been removed.
-      </para>
-     </listitem>
-
-     <listitem>
-     <para>
-     The API for user-defined GiST indexes has been changed. The
-     Union and PickSplit methods are now passed a pointer to a
-     special <structname>GistEntryVector</structname> structure,
-     rather than a <type>bytea</type>.
-     </para>
-     </listitem>
-
-
-    </itemizedlist>
-   </para>
-  </sect2>
-
-  <sect2>
-   <title>Deprecated Features</title>
-
-   <para>
-    Some aspects of <productname>PostgreSQL</productname>'s behavior
-    have been determined to be suboptimal. For the sake of backward
-    compatibility these have not been removed in 8.0, but they are
-    considered deprecated and will be removed in the next major
-    release.
-    </para>
-
-   <itemizedlist>
-    <listitem>
-     <para>
-      The 8.1 release will remove the function
-       <function>to_char()</function> for intervals.
-     </para>
-    </listitem>
-
-     <listitem>
-      <para>
-       The server now warns of empty strings passed to
-       <type>oid</type>/<type>float4</type>/<type>float8</type> data
-       types, but continues to interpret them as zeroes as before.
-       In the next major release, empty strings will be considered
-       invalid input for these data types.
-      </para>
-     </listitem>
-
-    <listitem>
-     <para>
-      By default, tables in <productname>PostgreSQL</productname> 8.0
-      and earlier are created with <type>OID</type>s. In the next release,
-      this will <emphasis>not</emphasis> be the case: to create a table
-      that contains <type>OID</type>s, the <option>WITH OIDS</option> clause must
-      be specified or the <varname>default_with_oids</varname>
-      configuration parameter must be set. Users are encouraged to
-      explicitly specify <option>WITH OIDS</option> if their tables
-      require OID for compatibility with future releases of
-      <productname>PostgreSQL</productname>.
-     </para>
-    </listitem>
-   </itemizedlist>
-  </sect2>
-
-  <sect2>
-   <title>Modifications</title>
-
-   <para>
-    Below you will find a detailed account of the changes between
-    release 8.0 and the previous major release.
-   </para>
-
-  <sect3>
-   <title>Performance Improvements</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Support cross-data-type index usage (Tom)
-     </para>
-     <para>
-      Before this change, many queries would not use an index if the data
-      types did not match exactly. This improvement makes index usage more
-      intuitive and consistent.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New buffer replacement strategy that improves caching (Jan)
-     </para>
-     <para>
-      Prior releases used a least-recently-used (LRU) cache to keep
-      recently referenced pages in memory. The LRU algorithm
-      did not consider the number of times a specific cache entry was
-      accessed, so large table scans could force out useful cache pages.
-      The new cache algorithm uses four separate lists to track most
-      recently used and most frequently used cache pages and dynamically 
-      optimize their replacement based on the work load. This should
-      lead to much more efficient use of the shared buffer cache.
-      Administrators who have tested shared buffer sizes in the past
-      should retest with this new cache replacement policy.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add subprocess to write dirty buffers periodically to reduce
-      checkpoint writes (Jan)
-     </para>
-     <para>
-      In previous releases, the checkpoint process, which runs every few
-      minutes, would write all dirty buffers to the operating system's
-      buffer cache then flush all dirty operating system buffers to
-      disk. This resulted in a periodic spike in disk usage that often
-      hurt performance. The new code uses a background writer to trickle
-      disk writes at a steady pace so checkpoints have far fewer dirty
-      pages to write to disk. Also, the new code does not issue a global
-      <function>sync()</function> call, but instead <function>fsync()</function>s just
-      the files written since the last checkpoint. This should improve
-      performance and minimize degradation during checkpoints.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add ability to prolong vacuum to reduce performance impact (Jan)
-     </para>
-     <para>
-      On busy systems, <command>VACUUM</command> performs many I/O
-      requests which can hurt performance for other users. This
-      release allows you to slow down <command>VACUUM</command> to
-      reduce its impact on other users, though this increases the
-      total duration of <command>VACUUM</command>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve B-tree index performance for duplicate keys (Dmitry Tkach, Tom)
-     </para>
-     <para>
-      This improves the way indexes are scanned when many duplicate
-      values exist in the index.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use dynamically-generated table size estimates while planning (Tom)
-     </para>
-     <para>
-      Formerly the planner estimated table sizes using the values seen
-      by the last <command>VACUUM</command> or <command>ANALYZE</command>,
-      both as to physical table size (number of pages) and number of rows.
-      Now, the current physical table size is obtained from the kernel,
-      and the number of rows is estimated by multiplying the table size
-      by the row density (rows per page) seen by the last
-      <command>VACUUM</command> or <command>ANALYZE</command>.  This should
-      produce more reliable estimates in cases where the table size has
-      changed significantly since the last housekeeping command.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improved index usage with <literal>OR</literal> clauses (Tom)
-     </para>
-     <para>
-      This allows the optimizer to use indexes in statements with many OR
-      clauses that would not have been indexed in the past.  It can also use
-      multi-column indexes where the first column is specified and the second
-      column is part of an <literal>OR</literal> clause.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve matching of partial index clauses (Tom)
-     </para>
-     <para>
-      The server is now smarter about using partial indexes in queries
-      involving complex <option>WHERE</option> clauses.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve performance of the GEQO optimizer (Tom)
-     </para>
-     <para>
-      The GEQO optimizer is used to plan queries involving many tables (by
-      default, twelve or more). This release speeds up the way queries are
-      analyzed to decrease time spent in optimization.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Miscellaneous optimizer improvements
-     </para>
-     <para>
-      There is not room here to list all the minor improvements made, but
-      numerous special cases work better than in prior releases.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve lookup speed for C functions (Tom)
-     </para>
-     <para>
-      This release uses a hash table to lookup information for dynamically
-      loaded C functions. This improves their speed so they perform nearly as
-      quickly as functions that are built into the server executable.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add type-specific <command>ANALYZE</command> statistics
-      capability (Mark Cave-Ayland)
-     </para>
-     <para>
-      This feature allows more flexibility in generating statistics
-      for non-standard data types.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <command>ANALYZE</command> now collects statistics for
-      expression indexes (Tom)
-     </para>
-     <para>
-      Expression indexes (also called functional indexes) allow users to
-      index not just columns but the results of expressions and function
-      calls. With this release, the optimizer can gather and use statistics
-      about the contents of expression indexes.  This will greatly improve
-      the quality of planning for queries in which an expression index is
-      relevant.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New two-stage sampling method for <command>ANALYZE</command>
-      (Manfred Koizar)
-     </para>
-     <para>
-      This gives better statistics when the density of valid rows is very
-      different in different regions of a table.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Speed up <command>TRUNCATE</command> (Tom)
-     </para>
-     <para>
-      This buys back some of the performance loss observed in 7.4, while still
-      keeping <command>TRUNCATE</command> transaction-safe.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Server Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Add WAL file archiving and point-in-time recovery (Simon Riggs)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add tablespaces so admins can control disk layout (Gavin)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add a built-in log rotation program (Andreas Pflug)
-     </para>
-     <para>
-      It is now possible to log server messages conveniently without
-      relying on either <application>syslog</application> or an external log
-      rotation program.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add new read-only server configuration parameters to show server
-      compile-time settings: <varname>block_size</varname>,
-      <varname>integer_datetimes</varname>, <varname>max_function_args</varname>,
-      <varname>max_identifier_length</varname>, <varname>max_index_keys</varname>  (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make quoting of <literal>sameuser</literal>, <literal>samegroup</literal>, and
-      <literal>all</literal> remove special meaning of these terms in
-      <filename>pg_hba.conf</filename> (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use clearer IPv6 name <literal>::1/128</literal> for
-      <literal>localhost</literal> in default <filename>pg_hba.conf</filename> (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use CIDR format in <filename>pg_hba.conf</filename> exemples (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Rename server configuration parameters <varname>SortMem</varname> and
-      <varname>VacuumMem</varname> to <varname>work_mem</varname> and
-      <varname>maintenance_work_mem</varname> (Old names still supported) (Tom)
-     </para>
-     <para>
-      This change was made to clarify that bulk operations such as index and
-      foreign key creation use <varname>maintenance_work_mem</varname>, while
-      <varname>work_mem</varname> is for workspaces used during query exécution.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow logging of session disconnections using server configuration
-      <varname>log_disconnections</varname> (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add new server configuration parameter <varname>log_line_prefix</varname> to
-      allow control of information emitted in each log line (Andrew)
-     </para>
-     <para>
-      Available information includes user name, database name, remote IP
-      address, and session start time.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove server configuration parameters <varname>log_pid</varname>,
-      <varname>log_timestamp</varname>, <varname>log_source_port</varname>; functionality
-      superseded by <varname>log_line_prefix</varname> (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Replace the <varname>virtual_host</varname> and <varname>tcpip_socket</varname>
-      parameters with a unified <varname>listen_addresses</varname> parameter
-      (Andrew, Tom)
-     </para>
-     <para>
-      <varname>virtual_host</varname> could only specify a single IP address to
-      listen on.  <varname>listen_addresses</varname> allows multiple addresses
-      to be specified.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Listen on localhost by default, which eliminates the need for the
-      <option>-i</option> postmaster switch in many scenarios (Andrew)
-     </para>
-     <para>
-      Listening on localhost (<literal>127.0.0.1</literal>) opens no new
-      security holes but allows configurations like Windows and JDBC,
-      which do not support local sockets, to work without special
-      adjustments.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove <varname>syslog</varname> server configuration parameter, and add more
-      logical <varname>log_destination</varname> variable to control log output
-      location (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Change server configuration parameter <varname>log_statement</varname> to take
-      values <varname>all</varname>, <varname>mod</varname>, <varname>ddl</varname>, or
-      <varname>none</varname> to select which queries are logged (Bruce)
-     </para>
-     <para>
-      This allows administrators to log only data définition changes or
-      only data modification statements.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Some logging-related configuration parameters could formerly be adjusted
-      by ordinary users, but only in the <quote>more verbose</quote> direction.
-      They are now treated more strictly: only superusers can set them.
-      However, a superuser may use <command>ALTER USER</command> to provide per-user
-      settings of these values for non-superusers.  Also, it is now possible
-      for superusers to set values of superuser-only configuration parameters
-      via <literal>PGOPTIONS</literal>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow configuration files to be placed outside the data directory (mlw)
-     </para>
-     <para>
-      By default, configuration files are kept in the cluster's top directory.
-      With this addition, configuration files can be placed outside the
-      data directory, easing administration.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Plan prepared queries only when first executed so constants can be
-      used for statistics (Oliver Jowett)
-     </para>
-     <para>
-      Prepared statements plan queries once and execute them many
-      times. While prepared queries avoid the overhead of re-planning
-      on each use, the quality of the plan suffers from not knowing the exact
-      parameters to be used in the query.  In this release, planning of
-      unnamed prepared statements is delayed until the first exécution,
-      and the actual parameter values of that exécution are used as
-      optimization hints.  This allows use of out-of-line parameter passing
-      without incurring a performance penalty.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>DECLARE CURSOR</command> to take parameters
-      (Oliver Jowett)
-     </para>
-     <para>
-      It is now useful to issue <command>DECLARE CURSOR</command> in a
-      <function>Parse</function> message with parameters. The parameter values
-      sent at <function>Bind</function> time will be substituted into the
-      exécution of the cursor's query.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix hash joins and aggregates of <type>inet</type> and
-      <type>cidr</type> data types (Tom)
-     </para>
-     <para>
-      Release 7.4 handled hashing of mixed <type>inet</type> and
-      <type>cidr</type> values incorrectly.  (This bug did not exist
-      in prior releases because they wouldn't try to hash either
-      data type.)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <varname>log_duration</varname> print only when <varname>log_statement</varname>
-      prints the query (Ed L.)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Query Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Add savepoints (nested transactions) (Alvaro)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Unsupported isolation levels are now accepted and promoted to the
-      nearest supported level (Peter)
-     </para>
-     <para>
-      The SQL specification states that if a database doesn't support a
-      specific isolation level, it should use the next more restrictive level.
-      This change complies with that recommendation.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>BEGIN WORK</command> to specify transaction
-      isolation levels like <command>START TRANSACTION</command> does
-      (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix table permission checking for cases in which rules generate
-      a query type different from the originally submitted query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Implement dollar quoting to simplify single-quote usage (Andrew, Tom, 
-      David Fetter)
-     </para>
-     <para>
-      In previous releases, because single quotes had to be used to
-      quote a function's body, the use of single quotes inside the
-      function text required use of two single quotes or other error-prone
-      notations. With this release we add the ability to use "dollar
-      quoting" to quote a block of text.  The ability to use different
-      quoting delimiters at different nesting levels greatly simplifies
-      the task of quoting correctly, especially in complex functions.
-      Dollar quoting can be used anywhere quoted text is needed.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <literal>CASE val WHEN compval1 THEN ...</literal> evaluate <literal>val</literal>
-only once (Tom)
-     </para>
-     <para>
-      <option>CASE</option> no longer evaluates the tested expression multiple
-      times. This has benefits when the expression is complex or is
-      volatile.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Test <option>HAVING</option> before computing target list of an
-      aggregate query (Tom)
-     </para>
-     <para>
-      Fixes improper failure of cases such as <literal>SELECT SUM(win)/SUM(lose)
-      ... GROUP BY ... HAVING SUM(lose) &gt; 0</literal>.  This should work but
-formerly
-      could fail with divide-by-zero.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Replace <varname>max_expr_depth</varname> parameter with
-      <varname>max_stack_depth</varname> parameter, measured in kilobytes of stack
-      size (Tom)
-     </para>
-     <para>
-     This gives us a fairly bulletproof defense against crashing due to 
-     runaway recursive functions. Instead of measuring the depth of expression
-     nesting, we now directly measure the size of the exécution stack.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow arbitrary row expressions (Tom)
-     </para>
-     <para>
-      This release allows SQL expressions to contain arbitrary composite
-      types, that is, row values. It also allows functions to more easily
-      take rows as arguments and return row values.
-     </para>
-    </listitem>
-      
-    <listitem>
-     <para>
-      Allow <option>LIKE</option>/<option>ILIKE</option> to be used as the operator
-      in row and subselect comparisons (Fabien Coelho)
-     </para>
-    </listitem>
-      
-    <listitem>
-     <para>
-      Avoid locale-specific case conversion of basic ASCII letters in
-      identifiers and keywords (Tom)
-     </para>
-     <para>
-      This solves the <quote>Turkish problem</quote> with mangling of words
-      containing <literal>I</literal> and  <literal>i</literal>.  Folding of characters
-      outside the 7-bit-ASCII set is still locale-aware.
-     </para>
-    </listitem>
-      
-    <listitem>
-     <para>
-      Improve syntax error reporting (Fabien, Tom)
-     </para>
-     <para>
-      Syntax error reports are more useful than before.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Change <command>EXECUTE</command> to return a completion tag
-      matching the executed statement (Kris Jurka)
-     </para>
-     <para>
-      Previous releases return an <command>EXECUTE</command> tag for
-      any <command>EXECUTE</command> call. In this release, the tag
-      returned will reflect the command executed.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid emitting <option>NATURAL CROSS JOIN</option> in rule listings (Tom)
-     </para>
-     <para>
-      Such a clause makes no logical sense, but in some cases the rule
-      decompiler formerly produced this syntax.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Object Manipulation Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Add <command>COMMENT ON</command> for casts, conversions, languages,
-      operator classes, and large objects (Christopher)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add new server configuration parameter <varname>default_with_oids</varname> to
-      control whether tables are created with <type>OID</type>s by default (Neil)
-     </para>
-     <para>
-      This allows administrators to control whether <command>CREATE
-      TABLE</command> commands create tables with or without <type>OID</type>
-      columns by default.  (Note: the current factory default setting for
-      <varname>default_with_oids</varname> is <literal>TRUE</literal>, but the default
-      will become <literal>FALSE</literal> in future releases.)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>WITH</option> / <option>WITHOUT OIDS</option> clause to
-      <command>CREATE TABLE AS</command> (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>ALTER TABLE DROP COLUMN</command> to drop an <type>OID</type>
-      column (<command>ALTER TABLE SET WITHOUT OIDS</command> still works)
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow composite types as table columns (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>ALTER ... ADD COLUMN</command> with defaults and
-      <option>NOT NULL</option> constraints; works per SQL spec (Rod)
-     </para>
-     <para>
-      It is now possible for <option>ADD COLUMN</option> to create a column
-      that is not initially filled with NULLs, but with a specified
-      default value.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <command>ALTER COLUMN TYPE</command> to change column's type (Rod)
-     </para>
-     <para>
-      It is now possible to alter a column's data type without dropping
-      and re-adding the column.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow multiple <command>ALTER</command> actions in a single <command>ALTER
-      TABLE</command> command (Rod)
-     </para>
-     <para>
-      This is particularly useful for <command>ALTER</command> commands that
-      rewrite the table (which include <option>ALTER COLUMN TYPE</option> and
-      <option>ADD COLUMN</option> with a default). By grouping
-      <command>ALTER</command> commands together, the table need be rewritten
-      only once.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>ALTER TABLE</command> to add <type>SERIAL</type>
-      columns (Tom)
-     </para>
-     <para>
-      This falls out from the new capability of specifying defaults for new
-      columns.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow changing the owners of aggregates, conversions, databases,
-      functions, operators, operator classes, schemas, types, and tablespaces
-      (Christopher, Euler Taveira de Oliveira)
-     </para>
-     <para>
-      Previously this required modifying the system tables directly.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow temporary object creation to be limited to <option>SECURITY
-      DEFINER</option> functions (Sean Chittenden)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>ALTER TABLE ... SET WITHOUT CLUSTER</option> (Christopher)
-     </para>
-     <para>
-      Prior to this release, there was no way to clear an auto-cluster
-      specification except to modify the system tables.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Constraint/Index/<type>SERIAL</type> names are now
-      <replaceable>table_column_type</replaceable>
-      with numbers appended to guarantee uniqueness within the schema
-      (Tom)
-     </para>
-     <para>
-      The SQL specification states that such names should be unique
-      within a schema.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>pg_get_serial_sequence()</function> to return a
-      <type>SERIAL</type> column's sequence name (Christopher)
-     </para>
-     <para>
-      This allows automated scripts to reliably find the <type>SERIAL</type>
-      sequence name.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Warn when primary/foreign key data type mismatch requires costly lookup
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <command>ALTER INDEX</command> command to allow moving of indexes
-      between tablespaces (Gavin)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <command>ALTER TABLE OWNER</command> change dépendent sequence
-      ownership too (Alvaro)
-     </para>
-    </listitem>
-
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Utility Command Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Allow <command>CREATE SCHEMA</command> to create triggers,
-      indexes, and sequences (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>ALSO</option> keyword to <command>CREATE RULE</command> (Fabien
-      Coelho)
-     </para>
-     <para>
-      This allows <option>ALSO</option> to be added to rule creation to contrast it
-with
-      <option>INSTEAD</option> rules.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>NOWAIT</option> option to <command>LOCK</command> (Tatsuo)
-     </para>
-     <para>
-      This allows the <command>LOCK</command> command to fail if it
-      would have to wait for the requested lock.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <command>COPY</command> to read and write
-      comma-separated-value (CSV) files (Andrew, Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Generate error if the <command>COPY</command> delimiter and NULL
-      string conflict (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <command>GRANT</command>/<command>REVOKE</command> behavior
-      follows the SQL spec more closely
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Avoid locking conflict between <command>CREATE INDEX</command>
-      and <command>CHECKPOINT</command> (Tom)
-     </para>
-     <para>
-      In 7.3 and 7.4, a long-running B-tree index build could block concurrent
-      <command>CHECKPOINT</command>s from completing, thereby causing WAL bloat because
-the
-      WAL log could not be recycled.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Database-wide <command>ANALYZE</command> does not hold locks
-      across tables (Tom)
-     </para>
-     <para>
-      This reduces the potential for deadlocks against other backends
-      that want exclusive locks on tables.  To get the benefit of this
-      change, do not execute database-wide <command>ANALYZE</command>
-      inside a transaction block (<command>BEGIN</command> block); it
-      must be able to commit and start a new transaction for each
-      table.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <command>REINDEX</command> does not exclusively lock the index's
-      parent table anymore
-     </para>
-     <para>
-      The index itself is still exclusively locked, but readers of the
-      table can continue if they are not using the particular index
-      being rebuilt.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Erase MD5 user passwords when a user is renamed (Bruce)
-     </para>
-     <para>
-      <productname>PostgreSQL</productname> uses the user name as salt
-      when encrypting passwords via MD5. When a user's name is changed,
-      the salt will no longer match the stored MD5 password, so the
-      stored password becomes useless.  In this release a notice is
-      generated and the password is cleared.  A new password must then
-      be assigned if the user is to be able to log in with a password.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <application>pg_ctl</application> <option>kill</option> option for Windows (Andrew)
-     </para>
-     <para>
-      Windows does not have a <literal>kill</literal> command to send signals to
-      backends so this capability was added to <application>pg_ctl</application>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Information schema improvements
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>--pwfile</option> option to
-      <application>initdb</application> so the initial password can be
-      set by GUI tools (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Detect locale/encoding mismatch in
-      <application>initdb</application> (Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>register</option> command to <application>pg_ctl</application> to
-      register Windows operating system service (Dave Page)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Data Type and Function Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      More complete support for composite types (row types)  (Tom)
-     </para>
-     <para>
-      Composite values can be used in many places where only scalar values
-      worked before.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Reject non-rectangular array values as erroneous (Joe)
-     </para>
-     <para>
-      Formerly, <function>array_in</function> would silently build a
-      surprising result.
-     </para>
-    </listitem>
-
-     <listitem>
-      <para>
-       Overflow in integer arithmetic operations is now detected (Tom)
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       The arithmetic operators associated with the single-byte
-       <type>"char"</type> data type have been removed.
-      </para>
-      <para>
-       Formerly, the parser would select these operators in many situations
-       where an <quote>unable to select an operator</quote> error would be more
-       appropriate, such as <literal>NULL * NULL</literal>.  If you actually want
-       to do arithmetic on a <type>"char"</type> column, you can cast it to
-       integer explicitly.
-      </para>
-     </listitem>
-
-    <listitem>
-      <para>
-       Syntax checking of array input values considerably tightened up (Joe)
-      </para>
-     <para>
-       Junk that was previously allowed in odd places with odd results
-       now causes an <literal>ERROR</literal>, for exemple, non-whitespace
-       after the closing right brace.
-      </para>
-    </listitem>
-
-    <listitem>
-      <para>
-       Empty-string array element values must now be written as
-       <literal>""</literal>, rather than writing nothing (Joe)
-      </para>
-     <para>
-       Formerly, both ways of writing an empty-string element value were
-       allowed, but now a quoted empty string is required.  The case where
-       nothing at all appears will probably be considered to be a NULL
-       element value in some future release.
-      </para>
-    </listitem>
-
-    <listitem>
-      <para>
-       Array element trailing whitespace is now ignored (Joe)
-      </para>
-     <para>
-       Formerly leading whitespace was ignored, but trailing whitespace
-       between an element value and the delimiter or right brace was
-       significant.  Now trailing whitespace is also ignored.
-      </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Emit array values with explicit array bounds when lower bound is not one
-      (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Accept <literal>YYYY-monthname-DD</literal> as a date string (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <function>netmask</function> and <function>hostmask</function> functions
-      return maximum-length mask length (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Change factorial function to return <type>numeric</type> (Gavin)
-     </para>
-     <para>
-      Returning <type>numeric</type> allows the factorial function to
-      work for a wider range of input values.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <function>to_char</function>/<function>to_date()</function> date conversion
-      improvements (Kurt Roeckx, Fabien Coelho)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <function>length()</function> disregard trailing spaces in
-      <type>CHAR(n)</type> (Gavin)
-     </para>
-     <para>
-      This change was made to improve consistency: trailing spaces are
-      semantically insignificant in <type>CHAR(n)</type> data, so they
-      should not be counted by <function>length()</function>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Warn about empty string being passed to
-      <type>OID</type>/<type>float4</type>/<type>float8</type> data types (Neil)
-     </para>
-     <para>
-      8.1 will throw an error instead.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow leading or trailing whitespace in
-      <type>int2</type>/<type>int4</type>/<type>int8</type>/<type>float4</type>/<type>float8</type>
-      input routines
-      (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Better support for IEEE <literal>Infinity</literal> and <literal>NaN</literal>
-      values in <type>float4</type>/<type>float8</type> (Neil)
-     </para>
-     <para>
-      These should now work on all platforms that support IEEE-compliant
-      floating point arithmetic.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>week</option> option to <function>date_trunc()</function> (Robert Creager)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>to_char</function> for <literal>1 BC</literal>
-      (previously it returned <literal>1 AD</literal>) (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>date_part(year)</function> for BC dates (previously it
-      returned one less than the correct year) (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>date_part()</function> to return the proper millennium and
-      century (Fabien Coelho)
-     </para>
-     <para>
-      In previous versions, the century and millennium results had a wrong
-      number and started in the wrong year, as compared to standard
-      reckoning of such things.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>ceiling()</function> as an alias for <function>ceil()</function>,
-      and <function>power()</function> as an alias for <function>pow()</function> for
-      standards compliance (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Change <function>ln()</function>, <function>log()</function>,
-      <function>power()</function>, and <function>sqrt()</function> to emit the correct
-      <literal>SQLSTATE</literal> error codes for certain error conditions, as
-      specified by SQL:2003 (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>width_bucket()</function> function as defined by SQL:2003 (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>generate_series()</function> functions to simplify working
-      with numeric sets (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix <function>upper/lower/initcap()</function> functions to work with
-      multibyte encodings (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add boolean and bitwise integer <option>AND</option>/<option>OR</option>
-      aggregates (Fabien Coelho)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New session information functions to return network addresses for client
-      and server (Sean Chittenden)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add function to determine the area of a closed path (Sean Chittenden)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add function to send cancel request to other backends (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <type>interval</type> plus <type>datetime</type> operators (Tom)
-     </para>
-     <para>
-      The reverse ordering, <type>datetime</type> plus <type>interval</type>,
-      was already supported, but both are required by the SQL standard.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Casting an integer to <type>BIT(N)</type> selects the rightmost N bits
-      of the integer
-      (Tom)
-     </para>
-     <para>
-      In prior releases, the leftmost N bits were selected, but this was
-      deemed unhelpful, not to mention inconsistent with casting from bit
-      to int.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Require <type>CIDR</type> values to have all non-masked bits be zero
-      (Kevin Brintnall)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Server-Side Language Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      In <literal>READ COMMITTED</literal> serialization mode, volatile functions
-      now see the results of concurrent transactions committed up to the
-      beginning of each statement within the function, rather than up to the
-      beginning of the interactive command that called the function.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Functions declared <literal>STABLE</literal> or <literal>IMMUTABLE</literal> always
-      use the snapshot of the calling query, and therefore do not see the
-      effects of actions taken after the calling query starts, whether in
-      their own transaction or other transactions.  Such a function must be
-      read-only, too, meaning that it cannot use any SQL commands other than
-      <command>SELECT</command>.  There is a considerable performance gain from
-      declaring a function <literal>STABLE</literal> or <literal>IMMUTABLE</literal>
-      rather than <literal>VOLATILE</literal>.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Non-deferred <option>AFTER</option> triggers are now fired immediately
-      after completion of the triggering query, rather than upon
-      finishing the current interactive command. This makes a différence
-      when the triggering query occurred within a function: the trigger
-      is invoked before the function proceeds to its next operation. For
-      exemple, if a function inserts a new row into a table, any
-      non-deferred foreign key checks occur before proceeding with the
-      function.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow function parameters to be declared with names (Dennis Bj&ouml;rklund)
-     </para>
-     <para>
-      This allows better documentation of functions.  Whether the names
-      actually do anything dépends on the specific function language
-      being used.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow PL/pgSQL parameter names to be referenced in the function (Dennis
-      Bj&ouml;rklund)
-     </para>
-     <para>
-      This basically creates an automatic alias for each named parameter.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Do minimal syntax checking of PL/pgSQL functions at creation time (Tom)
-     </para>
-     <para>
-      This allows us to catch simple syntax errors sooner.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      More support for composite types (row and record variables) in PL/pgSQL
-     </para>
-     <para>
-      For exemple, it now works to pass a rowtype variable to another function
-      as a single variable.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Default values for PL/pgSQL variables can now reference previously
-      declared variables
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve parsing of PL/pgSQL FOR loops (Tom)
-     </para>
-     <para>
-      Parsing is now driven by presence of <literal>".."</literal> rather than
-      data type of <option>FOR</option> variable. This makes no différence for
-      correct functions, but should result in more understandable error
-      messages when a mistake is made.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Major overhaul of PL/Perl server-side language (Command Prompt, Andrew
-Dunstan)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      In PL/Tcl, SPI commands are now run in subtransactions.  If an error
-      occurs, the subtransaction is cleaned up and the error is reported
-      as an ordinary Tcl error, which can be trapped with <literal>catch</literal>.
-      Formerly, it was not possible to catch such errors.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Accept <command>ELSEIF</command> in PL/pgSQL (Neil)
-     </para>
-     <para>
-      Previously PL/pgSQL only allowed <command>ELSIF</command>, but many people
-      are accustomed to spelling this keyword <command>ELSEIF</command>.
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title><application>psql</application> Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Improve <application>psql</application> information display about database
-      objects (Christopher)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <application>psql</application> to display group membership in
-      <command>\du</command> and <command>\dg</command> (Markus Bertheau)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Prevent <application>psql</application> <command>\dn</command> from showing
-      temporary schemas (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <application>psql</application> to handle tilde user expansion for file
-      names (Zach Irmen)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <application>psql</application> to display fancy prompts, including
-      color, via <application>readline</application> (Reece Hart, Chet Ramey)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make <application>psql</application> <command>\copy</command> match <command>COPY</command>
-command syntax
-      fully (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Show the location of syntax errors (Fabien Coelho, Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <command>CLUSTER</command> information to <application>psql</application>
-      <command>\d</command> display
-      (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Change <application>psql</application> <command>\copy stdin/stdout</command> to read
-      from command input/output (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>pstdin</option>/<option>pstdout</option> to read from
-      <application>psql</application>'s <literal>stdin</literal>/<literal>stdout</literal> (Mark
-      Feit)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add global <application>psql</application> configuration file,
-<filename>psqlrc.sample</filename>
-      (Bruce)
-     </para>
-     <para>
-      This allows a central file where global <application>psql</application> startup
-commands can
-      be stored.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Have <application>psql</application> <command>\d+</command> indicate if the table
-      has an <type>OID</type> column (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      On Windows, use binary mode in <application>psql</application> when reading files so
-control-Z
-      is not seen as end-of-file
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Have <command>\dn+</command> show permissions and description for schemas (Dennis
-      Bj&ouml;rklund)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve tab completion support (Stefan Kaltenbrunn, Greg Sabino Mullane)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow boolean settings to be set using upper or lower case (Michael
-Paesold)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title><application>pg_dump</application> Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Use dépendency information to improve the reliability of
-      <application>pg_dump</application> (Tom)
-     </para>
-     <para>
-      This should solve the longstanding problems with related objects
-      sometimes being dumped in the wrong order.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Have <application>pg_dump</application> output objects in alphabetical order if
-possible (Tom)
-     </para>
-     <para>
-      This should make it easier to identify changes between
-      dump files.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <application>pg_restore</application> to ignore some SQL errors (Fabien Coelho)
-     </para>
-     <para>
-      This makes <application>pg_restore</application>'s behavior similar to the
-      results of feeding a <application>pg_dump</application> output script to
-      <application>psql</application>. In most cases, ignoring errors and plowing
-      ahead is the most useful thing to do. Also added was a pg_restore
-      option to give the old behavior of exiting on an error.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <application>pg_restore</application> <option>-l</option> display now includes
-      objects' schema names
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New begin/end markers in <application>pg_dump</application> text output (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add start/stop times for
-      <application>pg_dump</application>/<application>pg_dumpall</application> in verbose mode
-      (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow most <application>pg_dump</application> options in
-      <application>pg_dumpall</application> (Christopher)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Have <application>pg_dump</application> use <command>ALTER OWNER</command> rather
-      than <command>SET SESSION AUTHORIZATION</command> by default
-      (Christopher)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>libpq Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make libpq's <option>SIGPIPE</option> handling thread-safe (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>PQmbdsplen()</function> which returns the display length
-      of a character (Tatsuo)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add thread locking to <application>SSL</application> and
-      <application>Kerberos</application> connections (Manfred Spraul)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <function>PQoidValue()</function>, <function>PQcmdTuples()</function>, and
-      <function>PQoidStatus()</function> to work on <command>EXECUTE</command>
-      commands (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>PQserverVersion()</function> to provide more convenient
-      access to the server version number (Greg Sabino Mullane)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <function>PQprepare/PQsendPrepared()</function> functions to support
-      preparing statements without necessarily specifying the data types
-      of their parameters (Abhijit Menon-Sen)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Many ECPG improvements, including <command>SET DESCRIPTOR</command> (Michael)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Source Code Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Allow the database server to run natively on Windows (Claudio, Magnus,
-Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Shell script commands converted to C versions for Windows support (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Create an extension makefile framework (Fabien Coelho, Peter)
-     </para>
-     <para>
-      This simplifies the task of building extensions outside the original
-      source tree.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Support relocatable installations (Bruce)
-     </para>
-     <para>
-      Directory paths for installed files (such as the
-      <filename>/share</filename> directory) are now computed relative to the
-      actual location of the executables, so that an installation tree
-      can be moved to another place without reconfiguring and
-      rebuilding.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use <option>--with-docdir</option> to choose installation location of
-documentation; also
-      allow <option>--infodir</option> (Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add <option>--without-docdir</option> to prevent installation of documentation
-(Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Upgrade to <application>DocBook</application> V4.2 SGML (Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <literal>PostgreSQL</literal> <application>CVS</application> tag (Marc)
-     </para>
-     <para>
-      This was done to make it easier for organizations to manage their
-      own copies of the <productname>PostgreSQL</productname>
-      <application>CVS</application> repository. File version stamps from the master
-      repository will not get munged by checking into or out of a copied
-      repository.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Clarify locking code (Manfred Koizar)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Buffer manager cleanup (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Decouple platform tests from CPU spinlock code (Bruce, Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add inlined test-and-set code on PA-RISC for <application>gcc</application>
-      (ViSolve, Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improve i386 spinlock code (Manfred Spraul)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Clean up spinlock assembly code to avoid warnings from newer
-      <application>gcc</application> releases (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove JDBC from source tree; now a separate project
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove the libpgtcl client interface; now a separate project
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      More accurately estimate memory and file descriptor usage (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Improvements to the Mac OS X startup scripts (Ray A.)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <function>fsync()</function> test program (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Major documentation improvements (Neil, Peter)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove <application>pg_encoding</application>; not needed
-      anymore
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove <application>pg_id</application>; not needed anymore
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Remove <application>initlocation</application>; not needed
-      anymore
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Auto-detect thread flags (no more manual testing) (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Use Olson's public domain <application>timezone</application> library (Magnus)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      With threading enabled, use thread flags on Unixware for 
-      backend executables too (Bruce)
-     </para>
-     <para>
-      Unixware can not mix threaded and non-threaded object files in the
-      same executable, so everything must be compiled as threaded.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <application>psql</application> now uses a <application>flex</application>-generated
-      lexical analyzer to process command strings
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Reimplement the linked list data structure used throughout the
-      backend (Neil)
-     </para>
-     <para>
-      This improves performance by allowing list append and length
-      operations to be more efficient.
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow dynamically loaded modules to create their own server configuration
-      parameters (Thomas Hallgren)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New Brazilian version of FAQ (Euler Taveira de Oliveira)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add French FAQ (Guillaume Lelarge)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <application>pgevent</application> for Windows logging
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Make libpq and ECPG build as proper shared libraries on OS X (Tom)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-
-  <sect3>
-   <title>Contrib Changes</title>
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Overhaul of <filename>contrib/dblink</filename> (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      <filename>contrib/dbmirror</filename> improvements (Steven Singer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <filename>contrib/xml2</filename> (John Gray, Torchbox)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Updated <filename>contrib/mysql</filename>
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New version of <filename>contrib/btree_gist</filename> (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      New <filename>contrib/trgm</filename>, trigram matching for
-      <productname>PostgreSQL</productname> (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Many <filename>contrib/tsearch2</filename> improvements (Teodor)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add double metaphone to <filename>contrib/fuzzystrmatch</filename> (Andrew)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Allow <filename>contrib/pg_autovacuum</filename> to run as a Windows service (Dave
-Page)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Add functions to <filename>contrib/dbsize</filename> (Andreas Pflug)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Removed <filename>contrib/pg_logger</filename>: obsoleted by integrated logging
-      subprocess
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Removed <filename>contrib/rserv</filename>: obsoleted by various separate projects
-     </para>
-    </listitem>
-
-   </itemizedlist>
-  </sect3>
-
-  </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.
-      (CVE-2009-0922)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      N'autorise plus <command>CREATE CONVERSION</command> 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()</function> a pour
-      argument des codes de format inappropriés pour la donnée en argument
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Ajout de <literal>MUST</literal> (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</command>
-      (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</quote> 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</option>
-      (Ron Mayer)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      S'assure que <function>SPI_getvalue</function> et <function>SPI_getbinval</function>
-      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</command> par
-      <application>ecpg</application> (Michael)
-     </para>
-    </listitem>
-
-   </itemizedlist>
-
-  </sect2>
- </sect1>
-
- <sect1 id="release-7-4-22">
-  <title>Version 7.4.22</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-09-22</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 7.4.21.
-   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.22</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</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</literal> query (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fix planner to estimate that <literal>GROUP BY</literal> 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>Version 7.4.21</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>2008-06-12</simpara>
-  </note>
-
-  <para>
-   This release contains one serious bug fix over 7.4.20.
-   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.21</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</title>
-
-   <itemizedlist>
-
-    <listitem>
-     <para>
-      Make <function>pg_get_ruledef()</function> 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</literal>, which is subtly incorrect: it should
-      be <literal>(-42)::integer</literal> due to operator precedence rules.
-      Usually this would make little difference, but it could interact with
-      another recent patch to cause
-      <productname>PostgreSQL</productname> to reject what had been a valid
-      <command>SELECT DISTINCT</command> view query.  Since this could result in
-      <application>pg_dump</application> 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>Version 7.4.20</title>
-
-  <note>
-  <title>Date de sortie</title>
-  <simpara>never released</simpara>
-  </note>
-
-  <para>
-   This release contains a variety of fixes from 7.4.19.
-   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.20</title>
-
-   <para>
-    Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 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>Modifications</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.
-   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.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.
-    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.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>
-       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
-       correctement (Tom)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       la journalisation excessive des messages d'erreur <acronym>SSL</acronym>
-       est corrigée (Tom)&nbsp;;
-      </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)&nbsp;;
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       <command>CLUSTER</command> ne plante
-       plus en tentant de travailler sur les tables temporaires d'autres
-       sessions (Alvaro)&nbsp;;
-      </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é.
-    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.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</varname>, 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</varname>. 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</command> pour plus
-      d'informations.
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'arrêts brutaux dans <filename>/contrib/tsearch2</filename> (Teodor)
-     </para>
-     </listitem>
-
-     <listitem>
-     <para>
-      Correction d'un bogue pouvant corrompre des données dans la façon
-      dont <command>VACUUM FULL</command> gère les chaînes <command>UPDATE</command>
-      (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é.
-    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.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</literal> (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.
-    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.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.
-    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.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()</function> pour gérer des
-  correspondances se surchargeant pour la chaîne de séparation</para>
-<para>Par exemple, <literal>string_to_array('123xx456xxx789', 'xx')</literal>.
-</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>Ajustement 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.
-    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.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()</function> de <application>libpq</application>)
-     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
-     <foreignphrase>ad hoc</foreignphrase>.
-    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
-ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
-quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
-de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
-et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
-<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
-<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de 
-<literal>\'</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</literal> pour les modèles impliquant
-<literal>|</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.
-    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.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</command> (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à</quote> lors de la création d'un fichier pg_clog
-(Tom)</para></listitem>
-
-<listitem><para>Vérification correcte des contraintes <literal>DOMAIN</literal> pour
-les paramètres <literal>UNKNOWN</literal> 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</function> et <function>isinf</function> 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.
-    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.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</command> 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</application> 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</command>
-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</application> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
-utilisation de <application>plperl</application> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</command> 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</filename>,
-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</filename> 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.
-    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.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</filename> (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</quote>.</para></listitem>
-
-<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
-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.
-    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 à 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</command>
-       de supprimer les chaînes <literal>ctid</literal> trop tôt, et ajout de
-       vérification supplémentaire dans le code qui suit les liens
-       <literal>ctid</literal></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()</type> 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()</type> é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</command></para>
-       <para>Le code empêchait <command>COPY TO</command> alors qu'il aurait dû interdire
-       <command>COPY FROM</command>.</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</literal></para></listitem>
-      <listitem><para>Rend <function>array_in</function> et <function>array_recv</function> 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...</literal> avec un index GiST sur la
-       colonne <literal>a</literal></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</literal>
-       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</literal> quand la variable est passée par
-       référence</para></listitem>
-      <listitem><para>Mise à jour de <filename>contrib/tsearch2</filename> 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 failles de sécurité.
-    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.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</filename>
-     crée plusieurs fonctions déclarant par erreur renvoyées <type>internal</type>
-     alors qu'elles n'acceptent pas les arguments <type>internal</type>. Ceci casse
-     la sûreté des types pour toutes les fonctions utilisant des arguments
-     <type>internal</type>.
-    </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&nbsp;:
-
-<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</filename>, 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</quote>, alors soit <filename>tsearch2</filename>
-     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</emphasis>
-     base de données d'une installation, ceci incluant <literal>template1</literal>
-     et devant idéalement inclure aussi <literal>template0</literal>. 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</literal> peut
-     être corrigé de la même façon que les autres bases de données alors que
-     <literal>template0</literal> 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</literal> 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>Modification de <filename>contrib/tsearch2</filename> pour éviter une
-utilisation non sécurisée des résultats <type>INTERNAL</type> 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</type></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
-sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
-type <type>TIME WITH TIME ZONE</type></para></listitem>
-<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
-négatives dans les valeurs <type>INTERVAL</type></para>
-<para>Cette erreur est seulement survenue quand l'option de configuration
-<literal>--enable-integer-datetimes</literal> 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</application>,
-comme quoi il ne lançait pas assez fréquemment VACUUM sur les catalogues
-systèmes &mdash; 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>%</literal> (Neil)</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</filename> pour les nouvelles
-constructions d'OpenSSL (Marko Kreen)</para></listitem>
-<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
-</para></listitem>
-<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
-<type>RECORD</type></para></listitem>
-<listitem><para>Empêche <function>to_char(interval)</function> 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)</literal></para></listitem>
-<listitem><para>Correction de <function>array_map</function> pour appeler correctement
-les fonctions PL</para></listitem>
-<listitem><para>Correction de la vérification des droits dans <command>ALTER
-DATABASE RENAME</command></para></listitem>
-<listitem><para>Correction de <command>ALTER LANGUAGE RENAME</command></para></listitem>
-<listitem><para>Make <function>RemoveFromWaitQueue</function> 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</command></para></listitem>
-<listitem><para>Correction d'un échec de <command>CLUSTER</command> après
-<command>ALTER TABLE SET WITHOUT OIDS</command></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é.
-    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.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</command> 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</command> 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.
-    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.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</quote>, 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</application> 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</filename> 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</quote></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</literal> d'ajouter <literal>-D</literal>
-plusieurs fois</para></listitem>
-<listitem><para>Correction du problème de valeurs NULL dans les index
-GiST</para></listitem>
-<listitem><para><literal>::</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.
-    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.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.
-    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.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</literal>
-proprement dans COPY IN</para></listitem>
-<listitem><para><application>pg_dump</application> 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.
-    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.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 identifieurs 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</quote> 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.
-    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.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</type> a un mauvais label d'alignement&nbsp;; ceci est un
-     problème parce que le catalogue système <structname>pg_statistic</structname> utilise
-     des colonnes <type>anyarray</type>. 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</literal> sur des
-     colonnes doublement alignées doubles (telles que <type>float8</type> et
-     <type>timestamp</type>). 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</structname> devrait
-     être marquée comme ayant un accès public en mise à jour pour permettre
-     l'utilisation de <literal>UPDATE pg_settings</literal> comme substitut pour
-     <command>SET</command>. 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</literal>.
-    </para>
-
-    <para>
-     Si vous ne souhaitez pas lancer un initdb, la procédure suivante corrigera
-     <structname>pg_statistic</structname>. En tant que superutilisateur de la base de
-     données, faites&nbsp;:
-
-<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</structname>.
-    </para>
-
-    <para>
-     Pour corriger l'erreur <structname>pg_settings</structname>, faites simplement&nbsp;:
-<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</emphasis>
-     base de données d'une installation, ceci incluant <literal>template1</literal>, et
-     idéalement <literal>template0</literal>. 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</literal> peut être corrigé de la même façon que toute
-     autre base de données, mais corriger <literal>template0</literal> 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</literal> 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&nbsp;:
-</para>
-
-<itemizedlist>
-<listitem><para>Correction du bogue d'alignement de
-<structname>pg_statistics</structname> 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</structname></para></listitem>
-<listitem><para>Correction de quelques bogues de l'optimiseur, la plupart
-amenant des erreurs <quote>variable not found in subplan target lists</quote>
-errors (NdT&nbsp;: 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</quote> (manque de mémoire) lors d'une opération
-<command>COPY IN</command></para></listitem>
-<listitem><para>Correction de problèmes avec <command>SELECT INTO</command> /
-<command>CREATE TABLE AS</command> à partir de tables sans OID</para></listitem>
-<listitem><para>Correction de problèmes avec les tests de régression
-<filename>alter_table</filename> 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</literal>.</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</literal> à ecpg pour
-<literal>SELECT/INSERT/UPDATE/DELETE</literal> (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.
-    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.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&nbsp;:
-<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 &gt; 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&nbsp;:
-
-    <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&nbsp;; 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</varname>.
-       </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&oelig;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>
-   </para>
-  </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&nbsp;:
-
-    <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&nbsp;; 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</replaceable>)</type> aux types
-<type>varchar(<replaceable>n</replaceable>)</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</replaceable>)</type> mesure
-maintenant <replaceable>p</replaceable> 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</literal> était interprétée comme une
-date d'octobre même  si <varname>datestyle</varname> 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</varname>.
-      </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&nbsp;; 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>,
-<function>current_timestamp</function> 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</command> 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()</function> ou
-<function>current_timestamp</function>. Elles fonctionneront dans toutes les situations.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       Le signe dollar (<literal>$</literal>) n'est plus permis dans les noms
-d'opérateurs. À la place, cela peut être un caractère dans les identifieurs, à
-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</replaceable></literal>) sont écrits adjacents à ceux des opérateurs.
-      </para>
-     </listitem>
-    </itemizedlist>
-   </para>
-  </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&nbsp;; efface avec
-<varname>zero_damaged_pages</varname> (Tom)</para></listitem>
-    <listitem><para>Nouveau protocole client/serveur&nbsp;: 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&nbsp;; 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>/<literal>NOT IN</literal> via des tables
-de découpages (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Amélioration des performances de <literal>NOT IN
-(<replaceable>subquery</replaceable>)</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</varname> et
-      <varname>log_min_messages</varname> (Bruce)</para>
-     <para>
-      Ceci a été fait pour que la plupart des paramètres contrôlant les
-      traces serveur commencent avec <literal>log_</literal>.
-     </para>
-    </listitem>
-
-    <listitem><para>Renommage de <varname>show_*_stats</varname> en
-      <varname>log_*_stats</varname> (Bruce)</para></listitem>
-    <listitem><para>Renommage de <varname>show_source_port</varname> en
-<varname>log_source_port</varname> (Bruce)</para></listitem>
-    <listitem><para>Renommage de <varname>hostname_lookup</varname> en
-<varname>log_hostname</varname> (Bruce)</para></listitem>
-
-    <listitem>
-     <para>Ajout de <varname>checkpoint_warning</varname> 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</literal> plutôt que
-      <literal>LOG</literal> (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>/<varname>client_min_messages</varname> contrôle
-      maintenant la sortie <varname>debug_*</varname> (Bruce)
-     </para>
-     <para>
-      Ceci centralise les informations de débogages du client de façon à 
-      ce que toutes les sorties de débogages 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>&nbsp;:
-      <literal>context</literal>, <literal>type</literal>, <literal>source</literal>,
-      <literal>min_val</literal>, <literal>max_val</literal> (Joe)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Par défaut, <varname>shared_buffers</varname> vaut 1000 et
-      <varname>max_connections</varname> 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</literal> 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</literal> 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>/<literal>OFFSET</literal>
-      (Tom)</para>
-     <para>
-      Dans les versions précédentes, <literal>LIMIT</literal>/<literal>OFFSET</literal>
-      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 identifieurs 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</literal> 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>,
-      <literal>LAST</literal>, <literal>ABSOLUTE <replaceable>n</replaceable></literal>,
-      <literal>RELATIVE <replaceable>n</replaceable></literal> 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</command> (Bruce)</para></listitem>
-
-    <listitem>
-     <para>
-      Interdit les retours chariot comme valeur de données, les
-      antislash-retour-chariot et <literal>\r</literal> sont toujours autorisés (Bruce)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>Modifications sur <command>COPY</command> (binaire, <literal>\.</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>/<command>NOTIFY</command> (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>, <literal>pg_shadow</literal> et
-      <literal>pg_group</literal>.
-     </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>, <function>oidsrand</function> et
-      <function>userfntest</function> rarement utilisées (Neil)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>Ajout de la fonction <function>md5()</function> 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> <replaceable>op</replaceable> ANY/SOME/ALL
-      (<replaceable>array_expr</replaceable>)</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>,
-      <function>array_cat</function>, <function>array_lower</function>,
-      <function>array_prepend</function>, <function>array_to_string</function>,
-      <function>array_upper</function>, <function>string_to_array</function> (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</type> ou <type>text</type>
-      (Tom)
-     </para>
-    </listitem>
-
-    <listitem>
-     <para>
-      Fait que <type>float(<replaceable>p</replaceable>)</type> mesure la précision
-      <replaceable>p</replaceable> 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>, <literal>DMY</literal> et <literal>YMD</literal> pour initialiser
-      l'ordre du champ en entrée&nbsp;; honore <literal>US</literal> et
-      <literal>European</literal> 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>/<function>max()</function> (Tom)</para>
-     <para>
-      NaN était déjà trié après les valeurs numériques ordinaires dans la
-      plupart des cas, mais <function>min()</function> et <function>max()</function> 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</literal> ou
-      <literal>0405</literal> (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</literal> 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>\?</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</command> 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</command> 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>/<command>REVOKE</command> 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>,
-      <option>-s</option>, <option>-x</option> de pg_dump (Tom)
-     </para>
-    </listitem>
-
-    <listitem><para>Empêche pg_dump de mettre en minuscule les identifieurs
-      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>Conversion des scripts d'administration en C
-(Peter)</para></listitem>
-    <listitem><para>Bison &gt;= 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()</function> 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>, <envar>PGPORT</envar>, <envar>PGUSER</envar> (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'adddépend (Rod)</para></listitem>
-    <listitem><para>Mise à jour de spi/timetravel (Böjthe
-Zoltán)</para></listitem>
-    <listitem><para>Correction de l'option <option>-s</option> 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>
-       <command>CREATE DOMAIN ... DEFAULT NULL</command> fonctionne
-       correctement (Tom)&nbsp;;
-      </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)&nbsp;;
-      </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</varname>, 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</varname>. 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</command> 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</command> gère les chaînes <command>UPDATE</command>
-      (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 vers la 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()</function> de <application>libpq</application>)
-     pour réaliser l'échappement des chaînes plutôt que de se fier à un code
-     <foreignphrase>ad hoc</foreignphrase>.
-    </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</productname> 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>\'</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>''</literal> et plus <literal>\'</literal> comme représentation d'un guillemet simple
-ASCII dans des chaînes SQL. Par défaut, <literal>\'</literal> est rejetté seulement
-quand <varname>client_encoding</varname> 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</varname> 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&nbsp;; le but
-de <varname>backslash_quote</varname> 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</application> pour le rendre conscient des considérations de
-codage</para>
-<para>Ceci corrige les applications utilisant <application>libpq</application> 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</productname> devraient migrer vers <function>PQescapeStringConn()</function>
-et <function>PQescapeByteaConn()</function> 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</quote> 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>, <function>alt_to_iso</function>,
-<function>euc_tw_to_big5</function>, <function>euc_tw_to_mic</function>,
-<function>mic_to_euc_tw</function> étaient toutes cassées à différents niveaux.
-</para></listitem>
-
-<listitem><para>Nettoyage des utilisations restantes et parasites de 
-<literal>\'</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</command> (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à</quote> 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</function> et <function>isinf</function> 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</command> 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</application> 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</command>
-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</application> ne
-changera pas de locale après</para>
-<para>Ceci corrige un problème qui survenait si le <application>postmaster</application>
-était lancé avec les variables d'environnement spécifiant une locale différente
-que celle indiquée par <application>initdb</application>. Sous ces conditions, toute
-utilisation de <application>plperl</application> pouvait amener une corruption des index.
-Vous pourriez avoir besoin de lancer <command>REINDEX</command> 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</filename>,
-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</filename> 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</filename> (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</quote>.</para></listitem>
-
-<listitem><para>Empêchement d'un arrêt brutal dans <application>pg_autovacuum</application>
-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</command>
-       de supprimer les chaînes <literal>ctid</literal> trop tôt, et ajout de
-       vérification supplémentaire dans le code qui suit les liens
-       <literal>ctid</literal></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()</type> 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()</type> é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...</literal> avec un index GiST sur la
-       colonne <literal>a</literal></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</literal> 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 failles 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&nbsp;:
-
-<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</emphasis>
-     base de données d'une installation, ceci incluant <literal>template1</literal>
-     et devant idéalement inclure aussi <literal>template0</literal>. 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</literal> peut
-     être corrigé de la même façon que les autres bases de données alors que
-     <literal>template0</literal> 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</literal> 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</type></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
-sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
-type <type>TIME WITH TIME ZONE</type></para></listitem>
-<listitem><para>Correction d'un mauvais affichage des secondes fractionnelles
-négatives dans les valeurs <type>INTERVAL</type></para>
-<para>Cette erreur est seulement survenue quand l'option de configuration
-<literal>--enable-integer-datetimes</literal> 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>%</literal> (Neil)</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</filename> pour les nouvelles
-constructions d'OpenSSL (Marko Kreen)</para></listitem>
-<listitem><para>Encore plus de correctifs 64 bits pour <filename>contrib/intagg</filename>
-</para></listitem>
-<listitem><para>Empêche une optimisation incorrecte des fonctions renvoyant
-<type>RECORD</type></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</command> 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</command> 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</quote>, 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</application> 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</filename> 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 exemple 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 OID
-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 conversion
-<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 conversion 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</application> 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</application> 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</application> à fonctionner avec les serveurs
-pré-7.2 (Philip)</para></listitem>
-<listitem><para>Corrections de contrib/adddépend (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&nbsp;:
-
-    <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</literal>
-        soit <literal>RESTRICT</literal> 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</ulink> 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 identifieurs peuvent être d'une taille maximum de 63 octets. De
-        plus, <literal>OPAQUE</literal> est maintenant obsolète&nbsp;: il existe des
-        <quote>pseudo-types de données</quote> pour représenter chacune des
-        significations précédentes de <literal>OPAQUE</literal> dans l'argument et les
-        types de résultat de la fonction.
-       </para>
-      </listitem>
-     </varlistentry>
-
-    </variablelist>
-   </para>
-  </sect2>
-
-  <sect2>
-   <title>Migration vers la version 7.3</title>
-
-   <para>
-    Une sauvegarde/restauration utilisant <application>pg_dump</application> 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&nbsp;; pour plus d'informations, voir&nbsp;:
-    <ulink url="http://developer.postgresql.org/~momjian/upgrade_tips_7.3"></ulink>.
-   </para>
-
-   <para>
-    Observez les incompatibilités suivantes&nbsp;:
-
-    <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é&nbsp;; 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</literal>&nbsp;; 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/adddépend/</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>
-   </para>
-
-  </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 #,#&nbsp;; 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 nom_colonne 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/adddépend 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</application> 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 identifieurs
-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</application> 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</application>
-(Peter)</para></listitem>
-<listitem><para>Sauvegarde les colonnes serial comme SERIAL
-(Tom)</para></listitem>
-<listitem><para>Activation du support des gros fichiers, &gt;2&nbsp;Go pour
-<application>pg_dump</application> (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 nom_type
-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&nbsp;: 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 &gt;= 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 identifieurs 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 identifieurs 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 &gt;= 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 identifieurs 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</type></para>
-<para>Le code de comparaison était mauvais dans le cas où le commutateur de
-configuration <literal>--enable-integer-datetimes</literal> avait été utilisé.
-NOTE : si vous avez un index sur une colonne <type>TIME WITH TIME ZONE</type>, il
-sera nécessaire de le <command>REINDEX</command>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)</function> pour les valeurs de
-type <type>TIME WITH TIME ZONE</type></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>%</literal> (Neil)</para></listitem>
-<listitem><para>Empêche <function>to_char(interval)</function> d'arrêter brutalement le
-serveur (dump core) pour les formats relatifs au mois</para></listitem>
-<listitem><para>Correction de <filename>contrib/pgcrypto</filename> 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</command> 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</command> 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</quote>, 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</application> 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</filename> 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&nbsp;; 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</application> 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</application> 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</productname> pour une utilisation avec
-    des applications gèrant de gros volumes.
-   </para>
-
-   <para>
-    Modifications majeures dans cette version&nbsp;:
-
-    <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</command> 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</command>, 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>
-   </para>
-  </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&nbsp;:
-
-    <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</filename> et
-       <filename>pg_ident.conf</filename> sont maintenant rechargés après réception
-       d'un signal <systemitem>SIGHUP</systemitem>, pas avec chaque connexion.
-      </para>
-     </listitem>
-
-     <listitem>
-      <para>
-       La fonction <filename>octet_length()</filename> 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>
-
-   <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&nbsp;;
-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 &lt;&lt; et &lt;&lt;= 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 =,
-&lt;&gt;, &gt;, &gt;=, &lt; et &lt;=</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&nbsp;: 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&nbsp;: 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</application>, 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</application></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</application></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</application></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</application></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</application> (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&nbsp;:
-
-    <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&nbsp;Ko - 32&nbsp;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>
-   </para>
-
-   <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 nom_utilisateur/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 définitions 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 nom_utilisateur (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 dépendency 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 dépendency 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 exemples (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 identifieurs 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&oelig;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-&gt;timestamp et timespan-&gt;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 &amp; 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&nbsp;; 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&nbsp;:
-
-    <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</literal> actuellement. <literal>JOIN</literal>,
-        <literal>NATURAL JOIN</literal>, <literal>JOIN</literal>/<literal>USING</literal> et
-        <literal>JOIN</literal>/<literal>ON</literal> sont disponibles ainsi que les noms de
-        corrélation des colonnes.
-       </para>
-      </listitem>
-     </varlistentry>
-
-    </variablelist>
-   </para>
-
-   <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&nbsp;; 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&nbsp;:
-
-     <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>
-    </para>
-
-   </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) &gt; 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 &gt; 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-debug 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 &lt;unspecified&gt; 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 &lt;zakkr at zf.jcu.cz&gt;)
-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, &gt;= and &lt;= (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 &gt; lowbound AND x &lt; 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 &gt; 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 &lt;&gt; 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 -&gt; oidvector and int28 -&gt; 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</application> 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 &gt;yucao at falcon.kla-tencor.com&lt;
-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 dépendencies 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 quelquechose 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>/<systemitem>ix86</systemitem> and
-<systemitem class="osname">NetBSD</systemitem>/<systemitem>arm32</systemitem>.
-       </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</systemitem> and <systemitem
-class="osname">AIX</systemitem> 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&lt;-&gt;float8 and text&lt;-&gt;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 "dépendent"(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 nom_utilisateur/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>
-Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 6.3 or 6.3.1.  A 
-<literal>make distclean</literal>, <literal>make</literal>, and <literal>make install</literal> 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 dépendency 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>
-Une sauvegarde/restauration n'est pas nécessaire aux utilisateurs de la version 6.3.  A 
-<literal>make distclean</literal>, <literal>make</literal>, and <literal>make install</literal> 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</type> 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 indépendent 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 &lt;= 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 exemples(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 &amp; 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 exemple 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</replaceable> 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 &amp; 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 &amp; 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 "&lt;===&gt;" with "&lt;-&gt;"(Thomas)
-Replace "above" operator "!^" with "&gt;^" and "below" operator "!|" with
-"&lt;^"(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 &amp; 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 exemple 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 &amp; 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 &amp; 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 &amp; 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 différences 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</quote> 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</quote> does not seem to produce random results on my test
-  machine (Linux/<application>gcc</application>/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 &lt; or &lt;= 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 définition
-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 OID
-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 &lt;&gt;(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 &amp; 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 OID(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 antislashed, 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</productname> 1.01 and 1.02 to
-<productname>Postgres95</productname> 1.02.1.
-</para>
-<para>
-If you are starting afresh with <productname>Postgres95</productname> 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</productname> 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</command>.  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' &lt;in_file &gt;out_file
-</programlisting>
-</para>
-<para>
-If you are loading an older binary copy or non-<systemitem>stdout</systemitem> 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-8.4;
+&release-8.3;
+&release-8.2;
+&release-8.1;
+&release-8.0;
+&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</productname> 1.0 to <productname>Postgres95</productname>
-1.01.  
-</para>
-<para>
-If you are starting afresh with <productname>Postgres95</productname> 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</productname> version 1.01 with databases created with
-<productname>Postgres95</productname> version 1.0, the following steps are required:  
-</para>
-<procedure>
-<step>
-<para>
-Set the définition 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 an exemple 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 -&gt; int2
-                integer, int -&gt; int4
-                float, real  -&gt; 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.
-        For exemple:
-                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/trunk/postgresql/rowtypes.xml
===================================================================
--- traduc/trunk/postgresql/rowtypes.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/rowtypes.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -16,10 +16,10 @@
  </indexterm>
 
  <para>
-  Un <firstterm>type composite</firstterm> décrit la structure d'une ligne ou d'un
-  enregistrement&nbsp;; il est en essence une simple liste de noms de champs et
-  de leur types de données. <productname>PostgreSQL</productname> autorise
-  l'utilisation de valeurs de types composite identiques de plusieurs façons à
+  Un <firstterm>type composite</firstterm> représente la structure d'une ligne
+  ou d'un enregistrement&nbsp;; il est en essence une simple liste de noms de
+  champs et de leur types de données. <productname>PostgreSQL</productname>
+  autorise l'utilisation de types composite identiques de plusieurs façons à
   l'utilisation des types simples. Par exemple, une colonne d'une table peut
   être déclarée comme étant de type composite.
  </para>
@@ -156,8 +156,8 @@
 <programlisting>SELECT element.nom FROM disponible WHERE element.prix &gt; 9.99;</programlisting>
 
   Ceci ne fonctionnera pas car le nom <literal>element</literal> est pris pour le nom
-  d'une table, et non pas d'un champ, suivant les règles de la syntaxe SQL. Vous
-  devez l'écrire ainsi&nbsp;:
+  d'une table, et non pas d'une colonne de <literal>disponible</literal>, suivant les
+  règles de la syntaxe SQL. Vous devez l'écrire ainsi&nbsp;:
 
 <programlisting>SELECT (element).nom FROM disponible WHERE (element).prix &gt; 9.99;</programlisting>
 
@@ -230,7 +230,7 @@
    éléments qui sont interprétés suivant les règles de conversion
    d'entrées/sorties pour les types de champs individuels, plus des décorations
    indiquant la structure composite. Cette décoration consiste en des parenthèses
-   (<literal>(</literal> et <literal>)</literal>) autour de la valeur entière ainsi que des
+   autour de la valeur entière ainsi que des
    virgules (<literal>,</literal>) entre les éléments adjacents. Des espace blancs en
    dehors des parenthèses sont ignorés mais à l'intérieur des parenthèses, ils
    sont considérés comme faisant partie de la valeur du champ et pourrait ou non
@@ -243,7 +243,7 @@
 
   <para>
    Comme indiqué précédemment, lors de l'écriture d'une valeur composite, vous
-   pouvez saisir des guillemets doubles autour de chaque valeur de champ
+   pouvez utiliser des guillemets doubles autour de chaque valeur de champ
    individuel. Vous <emphasis>devez</emphasis> le faire si la valeur du champ pourrait
    sinon gêner l'analyseur de la valeur du champ composite. En particulier, les
    champs contenant des parenthèses, des virgules, des guillemets doubles ou des
@@ -253,8 +253,9 @@
    à l'intérieur d'une valeur de champ à guillemets doubles est pris pour
    représenter un caractère guillemet double, en analogie aux règles des
    guillemets simples dans les chaînes SQL littérales.) Autrement, vous pouvez
-   utiliser l'échappement par antislash pour protéger tous les caractères de
-   données qui auraient été pris pour une syntaxe composite.
+   éviter les guillemets et utiliser l'échappement par antislash pour protéger
+   tous les caractères de données qui auraient été pris pour une syntaxe
+   composite.
   </para>
 
   <para>

Modified: traduc/trunk/postgresql/runtime.xml
===================================================================
--- traduc/trunk/postgresql/runtime.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/runtime.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -1399,9 +1399,8 @@
    (<xref linkend="auth-pg-hba-conf"/>) et avoir les fichiers SSL pour la clé,
    <filename>server.key</filename>, et pour le certificat,
    <filename>server.crt</filename> (<xref linkend="ssl-tcp"/>). Le client TCP
-   doit se connecter en utilisant <literal>sslmode='require'</literal>,
-   spécifier <literal>sslverify='cn'</literal>
-   ou <literal>sslverify='cert'</literal> et avoir les fichiers de certificat
+   doit se connecter en utilisant <literal>sslmode='verify-ca'</literal> ou
+   <literal>'verify-full'</literal> et avoir les fichiers de certificat
    requis présent (<xref linkend="libpq-connect"/>).
   </para>
  </sect1>

Modified: traduc/trunk/postgresql/start.xml
===================================================================
--- traduc/trunk/postgresql/start.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/start.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -172,7 +172,7 @@
 <screen>createdb: command not found</screen>
     alors <productname>PostgreSQL</productname> n'a pas été installé
     correctement.  Soit il n'a pas été installé du tout, soit le
-    chemin n'a pas été configuré correctement.  Essayez d'appeler
+    chemin système n'a pas été configuré correctement.  Essayez d'appeler
     la commande avec le chemin absolu&nbsp;:
 <screen><prompt>$</prompt> <userinput>/usr/local/pgsql/bin/createdb ma_base</userinput></screen>
     Le chemin sur votre serveur peut être différent. Contactez votre
@@ -306,7 +306,8 @@
       <para>
        Utilisez un outil existant avec une interface graphique comme
        <application>pgAdmin</application> ou une suite bureautique
-       avec un support <acronym>ODBC</acronym> pour créer et manipuler
+       avec un support <acronym>ODBC</acronym> ou <acronym>JDBC</acronym>
+       pour créer et manipuler
        une base.  Ces possibilités ne sont pas couvertes dans ce
        tutoriel.
       </para>
@@ -327,7 +328,8 @@
 <screen><prompt>$</prompt> <userinput>psql ma_base</userinput></screen>
     Si vous n'indiquez pas le nom de la base, alors <command>psql</command>
     utilisera par défaut le nom de votre compte utilisateur.  Vous avez déjà
-    découvert ce schéma dans la section précédente.
+    découvert ce schéma dans la section précédente en utilisant
+    <command>createdb</command>.
    </para>
 
    <para>
@@ -405,7 +407,7 @@
     <literal>man psql</literal> à l'invite du shell système pour voir
     la documentation. Dans ce tutoriel, nous ne verrons pas ces
     caractéristiques explicitement mais vous pouvez les utiliser
-    vous-même quand bon vous semblera.
+    vous-même quand cela vous sera utile.
    </para>
 
   </sect1>

Modified: traduc/trunk/postgresql/storage.xml
===================================================================
--- traduc/trunk/postgresql/storage.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/storage.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -484,7 +484,10 @@
 particulier puisse être stocké dans n'importe quelle page. Dans les index, la
 première page est généralement réservée comme <firstterm>métapage</firstterm> contenant
 des informations de contrôle, et il peut exister différents types de pages à
-l'intérieur de l'index, suivant la méthode d'accès à l'index.
+l'intérieur de l'index, suivant la méthode d'accès à l'index. Les tables ont
+aussi une carte de visibilité dans un fichier de suffixe <literal>_vm</literal>,
+pour tracer les pages dont on sait qu'elles ne contiennent pas de lignes mortes
+et qui n'ont pas du coup besoin de VACUUM.
 </para>
 
 <para>

Modified: traduc/trunk/postgresql/syntax.xml
===================================================================
--- traduc/trunk/postgresql/syntax.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/syntax.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -434,7 +434,7 @@
     </caution>
 
     <para>
-     Le caractère de code zéro ne peut être placé dans une constante de type
+     Le caractère zéro (octet nul) ne peut être placé dans une constante de type
      chaîne.
     </para>
    </sect3>
@@ -493,6 +493,17 @@
     </para>
 
     <para>
+     Also, the Unicode escape syntax for string constants only works
+     when the configuration
+     parameter <xref linkend="guc-standard-conforming-strings"/> is
+     turned on.  This is because otherwise this syntax could confuse
+     clients that parse the SQL statements to the point that it could
+     lead to SQL injections and similar security issues.  If the
+     parameter is set to off, this syntax will be rejected with an
+     error message.
+    </para>
+
+    <para>
      Pour inclure le caractère d'échappement littéralement dans la chaîne,
      écrivez-le deux fois.
     </para>
@@ -888,7 +899,7 @@
    </indexterm>
 
    <para>
-    Un commentaire est une séquence arbitraire de caractères commençant avec
+    Un commentaire est une séquence de caractères commençant avec
     deux tirets et s'étendant jusqu'à la fin de la ligne, par exemple&nbsp;:
 <programlisting>-- Ceci est un commentaire standard en SQL</programlisting>
    </para>
@@ -906,8 +917,8 @@
    </para>
 
    <para>
-    Un commentaire est supprimé du flux en entrée avant une analyse plus
-    poussée de la syntaxe et est remplacé par un espace blanc.
+    Les commentaires sont supprimés du flux en entrée avant une analyse plus
+    poussée de la syntaxe et sont remplacés par un espace blanc.
    </para>
   </sect2>
 
@@ -1702,7 +1713,7 @@
     seulement être utilisés de cette façon s'ils sont entre des guillemets
     doubles à cause des conflits de syntaxe. Du coup, l'utilisation de la
     syntaxe de conversion du style fonction amène à des inconsistances et
-    devrait probablement être évitée dans les nouvelles applications.
+    devrait probablement être évitée.
    </para>
    <note>
     <para>

Modified: traduc/trunk/postgresql/textsearch.xml
===================================================================
--- traduc/trunk/postgresql/textsearch.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/textsearch.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -493,13 +493,13 @@
 <programlisting>
 SELECT title
 FROM pgweb
-WHERE to_tsvector(title || body) @@ to_tsquery('create &amp; table')
+WHERE to_tsvector(title || ' ' || body) @@ to_tsquery('create &amp; table')
 ORDER BY last_mod_date DESC LIMIT 10;
 </programlisting>
 
-    Pour plus de clareté, nous omettons la fonction <function>coalesce</function>
-    qui est nécessaire pour rechercher les lignes contenant <literal>NULL</literal>
-    dans un des deux champs.
+    Pour plus de clareté, nous omettons les appels à la fonction
+    <function>coalesce</function> qui est nécessaire pour rechercher les lignes
+    contenant <literal>NULL</literal> dans un des deux champs.
    </para>
 
    <para>
@@ -571,7 +571,7 @@
     Les index peuvent même concaténer des colonnes&nbsp;:
 
 <programlisting>
-CREATE INDEX pgweb_idx ON pgweb USING gin(to_tsvector('english', title || body));
+CREATE INDEX pgweb_idx ON pgweb USING gin(to_tsvector('english', title || ' ' || body));
 </programlisting>
    </para>
 
@@ -586,7 +586,7 @@
 <programlisting>
 ALTER TABLE pgweb ADD COLUMN textsearchable_index_col tsvector;
 UPDATE pgweb SET textsearchable_index_col =
-     to_tsvector('english', coalesce(title,'') || coalesce(body,''));
+     to_tsvector('english', coalesce(title,'') || ' ' || coalesce(body,''));
 </programlisting>
 
     Puis nous créons un index <acronym>GIN</acronym> pour accélérer la
@@ -602,7 +602,8 @@
 SELECT title
 FROM pgweb
 WHERE textsearchable_index_col @@ to_tsquery('create &amp; table')
-ORDER BY last_mod_date DESC LIMIT 10;
+ORDER BY last_mod_date DESC
+LIMIT 10;
 </programlisting>
    </para>
 
@@ -1059,7 +1060,8 @@
 SELECT title, ts_rank_cd(textsearch, query) AS rank
 FROM apod, to_tsquery('neutrino|(dark &amp; matter)') query
 WHERE query @@ textsearch
-ORDER BY rank DESC LIMIT 10;
+ORDER BY rank DESC
+LIMIT 10;
                      title                     |   rank
 -----------------------------------------------+----------
  Neutrinos in the Sun                          |      3.1
@@ -1080,7 +1082,8 @@
 SELECT title, ts_rank_cd(textsearch, query, 32 /* rank/(rank+1) */ ) AS rank
 FROM apod, to_tsquery('neutrino|(dark &amp; matter)') query
 WHERE  query @@ textsearch
-ORDER BY rank DESC LIMIT 10;
+ORDER BY rank DESC
+LIMIT 10;
                      title                     |        rank
 -----------------------------------------------+-------------------
  Neutrinos in the Sun                          | 0.756097569485493
@@ -1147,10 +1150,11 @@
       <para>
        <literal>StartSel</literal>, <literal>StopSel</literal>&nbsp;: les chaînes
        qui permettent de délimiter les mots de la requête parmi le reste des
-       mots.
+       mots. Vous devez mettre ces chaînes entre guillemets doubles si elles
+       contiennent des espaces ou des virgules.
       </para>
      </listitem>
-     <listitem >
+     <listitem>
       <para>
        <literal>MaxWords</literal>, <literal>MinWords</literal>&nbsp;: ces
        nombres déterminent les limites minimum et maximum des résumés à
@@ -1161,37 +1165,36 @@
       <para>
        <literal>ShortWord</literal>&nbsp;: les mots de cette longueur et les mots
        plus petits seront supprimés au début et à la fin d'un résumé. La valeur
-       par défaut est de trois pour éliminer les articles anglais.
+       par défaut est de trois pour éliminer les articles anglais communs.
       </para>
      </listitem>
      <listitem>
       <para>
-       <literal>MaxFragments</literal>&nbsp;: nombre maximum de résumé ou de
-       fragments de texte qui correspondent aux mots de la requête. Cela
-       déclenche aussi une fonction de génération de résumé différente de
-       celle par défaut. Cette fonction cherche des fragments de texte avec
-       autant de mots que possible et combine ces fragments autour des mots de
-       la recherche. En résultat, les mots de la requête sont proches du milieu
-       de chaque fragment et ont des mots de chaque côté. Chaque fragment sera
-       d'au moins MaxWords et n'aura pas de mots de taille inférieure ou égale
-       à ShortWord au début et à la fin du fragement. Si tous les mots de la
-       requête ne font pas partie du document, alors un fragment seul de
-       MinWords sera affiché.
+       <literal>HighlightAll</literal>&nbsp;: booléen&nbsp;; si
+       <literal>true</literal>, le document complet sera utilisé pour le
+       surlignage, en ignorant les trois paramètres précédents.
       </para>
      </listitem>
      <listitem>
       <para>
-       <literal>FragmentDelimiter</literal>&nbsp;: quand plus d'un fragment est
-       affiché, alors les fragments seront séparés par ce délimiteur. Cette
-       option est intéressante seulement si MaxFragments est supérieur à 1 et
-       qu'il y a plus d'un fragment à afficher. Cette option n'a pas d'effet sur
-       la fonction par défaut de génération de résumé.
+       <literal>MaxFragments</literal>: maximum number of text excerpts
+       or fragments to display.  The default value of zero selects a
+       non-fragment-oriented headline generation method.  A value greater than
+       zero selects fragment-based headline generation.  This method
+       finds text fragments with as many query words as possible and
+       stretches those fragments around the query words.  As a result
+       query words are close to the middle of each fragment and have words on
+       each side. Each fragment will be of at most <literal>MaxWords</literal> and
+       words of length <literal>ShortWord</literal> or less are dropped at the start
+       and end of each fragment. If not all query words are found in the
+       document, then a single fragment of the first <literal>MinWords</literal>
+       in the document will be displayed.
       </para>
      </listitem>
      <listitem>
       <para>
-       <literal>HighlightAll</literal>&nbsp;: booléen&nbsp;; si
-       <literal>true</literal>, le document complet sera surligné.
+       <literal>FragmentDelimiter</literal>&nbsp;: quand plus d'un fragment est
+       affiché, alors les fragments seront séparés par ce délimiteur.
       </para>
      </listitem>
     </itemizedlist>
@@ -1199,7 +1202,9 @@
     Toute option omise recevra une valeur par défaut&nbsp;:
 
 <programlisting>
-StartSel=&lt;b&gt;, StopSel=&lt;/b&gt;, MaxFragments=0, FragmentDelimiter=" ... ", MaxWords=35, MinWords=15, ShortWord=3, HighlightAll=FALSE
+StartSel=&lt;b&gt;, StopSel=&lt;/b&gt;,
+MaxWords=35, MinWords=15, ShortWord=3, HighlightAll=FALSE,
+MaxFragments=0, FragmentDelimiter=" ... "
 </programlisting>
    </para>
 
@@ -1207,17 +1212,20 @@
     Par exemple&nbsp;:
 
 <programlisting>
-SELECT ts_headline('english', 'The most common type of search
+SELECT ts_headline('english',
+  'The most common type of search
 is to find all documents containing given query terms 
 and return them in order of their similarity to the
-query.', to_tsquery('query &amp; similarity'));
+query.',
+  to_tsquery('query &amp; similarity'));
                         ts_headline                         
 ------------------------------------------------------------
- given &lt;b&gt;query&lt;/b&gt; terms
+ containing given &lt;b&gt;query&lt;/b&gt; terms 
  and return them in order of their &lt;b&gt;similarity&lt;/b&gt; to the
  &lt;b&gt;query&lt;/b&gt;.
 
-SELECT ts_headline('english', 'The most common type of search
+SELECT ts_headline('english',
+  'The most common type of search
 is to find all documents containing given query terms
 and return them in order of their similarity to the
 query.',
@@ -1225,10 +1233,9 @@
   'StartSel = &lt;, StopSel = &gt;');
                       ts_headline                      
 -------------------------------------------------------
- given &lt;query&gt; terms
+ containing given &lt;query&gt; terms
  and return them in order of their &lt;similarity&gt; to the
- &lt;query&gt;.
-</programlisting>
+ &lt;query&gt;.</programlisting>
    </para>
 
    <para>
@@ -1244,7 +1251,8 @@
 FROM (SELECT id, body, q, ts_rank_cd(ti, q) AS rank
       FROM apod, to_tsquery('stars') q
       WHERE ti @@ q
-      ORDER BY rank DESC LIMIT 10) AS foo;
+      ORDER BY rank DESC
+      LIMIT 10) AS foo;
 </programlisting>
    </para>
 
@@ -2688,11 +2696,10 @@
    </para>
 
    <para>
-    Les dictionnaires Ispell supportent la séparation des mots composés. C'est
-    une fonctionnaité intéressante et <productname>PostgreSQL</productname> la
-    supporte. Notez que le fichier d'affixes doit indiquer une option spéciale
-    qui marque les mots du dictionnaire qui peuvent participer à une formation
-    composée&nbsp;:
+    Les dictionnaires Ispell supportent la séparation des mots composés, une
+    fonctionnalité intéressante. Notez que le fichier d'affixes doit indiquer
+    une option spéciale qui marque les mots du dictionnaire qui peuvent
+    participer à une formation composée&nbsp;:
 
 <programlisting>
 compoundwords  controlled z
@@ -2890,10 +2897,10 @@
 
   <para>
    Le comportement d'une configuration personnalisée de recherche plein texte
-   peut facilement devenir suffisamment compliqué pour être confuse ou
-   indésirable. Les fonctions décrites dans cette section sont utiles pour
-   tester les objets de recherche plein texte. Vous pouvez tester une
-   configuration complète ou tester séparément analyseurs et dictionnaires.
+   peut facilement devenir confuse. Les fonctions décrites dans cette section
+   sont utiles pour tester les objets de recherche plein texte. Vous pouvez
+   tester une configuration complète ou tester séparément analyseurs et
+   dictionnaires.
   </para>
 
   <sect2 id="textsearch-configuration-testing">
@@ -3305,7 +3312,7 @@
 
   <para>
    Il y a des différences de performances substantielles entre les deux types
-   d'index, donc il est important de comprendre lequel utiliser.
+   d'index, donc il est important de comprendre leurs caractéristiques.
   </para>
 
   <para>
@@ -3709,8 +3716,8 @@
      Le paramétrage de la configuration de la recherche plein texte est
      complètement différent maintenant. Au lieu d'insérer manuellement des
      lignes dans les tables de configuration, la recherche se configure avec
-     des commandes SQL spécialisées indiquées dans tout ce chapitre. Il n'existe
-     pas encore de support automatisé pour convertir une configuration
+     des commandes SQL spécialisées indiquées dans tout ce chapitre. Il
+     n'existe pas de support automatisé pour convertir une configuration
      personnalisée existante pour la 8.3. Vous devez vous en occuper
      manuellement.
     </para>

Modified: traduc/trunk/postgresql/typeconv.xml
===================================================================
--- traduc/trunk/postgresql/typeconv.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/typeconv.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -56,7 +56,7 @@
 
 <para>
 L'analyseur de <productname>PostgreSQL</productname> divise
-les éléments lexicaux en seulement cinq catégories fondamentales&nbsp;:
+les éléments lexicaux en cinq catégories fondamentales&nbsp;:
 les entiers, les nombres non entiers, les chaînes de caractères, les
 identifieurs et
 les mots-clé.  Les constantes de la plupart des types non-numériques
@@ -64,7 +64,7 @@
 langage <acronym>SQL</acronym> permet de spécifier le nom des types
 avec une chaîne et ce mécanisme peut être utilisé dans
 <productname>PostgreSQL</productname> pour lancer l'analyseur sur le
-bon chemin.  Par exemple, la requête
+bon chemin.  Par exemple, la requête&nbsp;:
 
 <screen>SELECT text 'Origin' AS "label", point '(0,0)' AS "value";
 
@@ -153,8 +153,8 @@
 </para>
 
 <para>
-Les catalogues systèmes stockent les informations concernant la
-validité des conversions entre les types de données et la façon
+Les catalogues systèmes stockent les informations concernant l'existence de
+conversions entre certains types de données et la façon
 d'exécuter ces conversions.  Les conversions sont appelées
 <firstterm>casts</firstterm> en anglais. Des conversions de types
 supplémentaires peuvent être ajoutées par l'utilisateur avec la commande
@@ -232,11 +232,10 @@
 </indexterm>
 
   <para>
-   L'opérateur spécifique à employer dans un appel d'opérateurs
-   est déterminé par la procédure ci-dessous.  Notez que cette
-   procédure est indirectement affectée par l'ordre d'insertion des
-   opérateurs.  Voir la <xref linkend="sql-precedence"/> pour plus
-   de détails.
+   L'opérateur spécifique employé est déterminé par la procédure ci-dessous.
+   Notez que cette procédure est indirectement affectée par l'ordre d'insertion
+   des opérateurs. Voir la <xref linkend="sql-precedence"/> pour plus de
+   détails.
   </para>
 
 <procedure>
@@ -280,8 +279,8 @@
 <para>
 Si un argument lors d'une invocation d'opérateur binaire est de type
 <type>unknown</type> (NdT&nbsp;: inconnu), alors considérer pour ce contrôle
-que c'est le même type que l'autre argument.  Les autres cas impliquant le
-type <type>unknown</type> ne trouveront jamais une correspondance à ce
+que c'est le même type que l'autre argument.  Les cas impliquant deux types
+<type>unknown</type> ne trouveront jamais une correspondance à ce
 niveau.
 </para>
 </step>

Modified: traduc/trunk/postgresql/version.xml
===================================================================
--- traduc/trunk/postgresql/version.xml	2009-05-19 10:51:45 UTC (rev 1323)
+++ traduc/trunk/postgresql/version.xml	2009-05-22 10:49:15 UTC (rev 1324)
@@ -1,2 +1,2 @@
-<!ENTITY version "8.4beta1">
+<!ENTITY version "8.4beta2">
 <!ENTITY majorversion "8.4">



Plus d'informations sur la liste de diffusion Trad