Skip to content

Commit

Permalink
Les dernières traductions de cette version mineure
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Mar 9, 2015
1 parent 11ced8f commit 77be909
Show file tree
Hide file tree
Showing 7 changed files with 149 additions and 138 deletions.
63 changes: 31 additions & 32 deletions postgresql/auto-explain.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@
nœud du plan est calculé pour
tous les ordres exécutés, qu'ils durent suffisamment longtemps pour être réellement tracés, ou non.
Ceci peut avoir des conséquences très négatives sur les performances.
Turning off <varname>auto_explain.log_timing</varname> ameliorates the
performance cost, at the price of obtaining less information.
Désactiver <varname>auto_explain.log_timing</varname> améliore les
performances au prix d'une information moindre.
</para>
</note>
</listitem>
Expand All @@ -101,12 +101,12 @@
</indexterm>
<listitem>
<para>
<varname>auto_explain.log_buffers</varname> controls whether buffer
usage statistics are printed when an execution plan is logged; it's
equivalent to the <literal>BUFFERS</literal> option of <command>EXPLAIN</command>.
This parameter has no effect
unless <varname>auto_explain.log_analyze</varname> is enabled.
This parameter is off by default.
<varname>auto_explain.log_buffers</varname> contrôle l'affichage des
statistiques sur l'utilisation des buffers quand un plan d'exécution est
tracé&nbsp;; il s'agit de l'équivalent de l'option <literal>BUFFERS</literal>
d'<command>EXPLAIN</command>. Ce paramètre n'a d'effet que si
<varname>auto_explain.log_analyze</varname> est activé. Ce paramètre est
désactivé par défaut.
</para>
</listitem>
</varlistentry>
Expand All @@ -120,17 +120,16 @@
</indexterm>
<listitem>
<para>
<varname>auto_explain.log_timing</varname> controls whether per-node
timing information is printed when an execution plan is logged; it's
equivalent to the <literal>TIMING</literal> option of <command>EXPLAIN</command>.
The overhead of repeatedly reading the system clock can slow down
queries significantly on some systems, so it may be useful to set this
parameter to off when only actual row counts, and not exact times, are
needed.
This parameter has no effect
unless <varname>auto_explain.log_analyze</varname> is enabled.
This parameter is on by default.
Only superusers can change this setting.
<varname>auto_explain.log_timing</varname> contrôle l'horodatage des
nœuds du plan d'exécution quand ce dernier est tracé&nbsp;; il s'agit de
l'équivalent de l'option <literal>TIMING</literal>
d'<command>EXPLAIN</command>. La surcharge relative à la lecture répétée
de l'horloge système peut ralentir de façon significative les requêtes
sur certains systèmes, donc il peut être utile de désactiver ce paramètre
quand seul le décompte de lignes est important, et non pas la durée. Ce
paramètre n'a pas d'effet si <varname>auto_explain.log_analyze</varname>
n'est pas activé. Ce paramètre est activé par défaut. Seuls les
superutilisateurs peuvent modificer ce paramétrage.
</para>
</listitem>
</varlistentry>
Expand All @@ -144,10 +143,10 @@
</indexterm>
<listitem>
<para>
<varname>auto_explain.log_verbose</varname> controls whether verbose
details are printed when an execution plan is logged; it's
equivalent to the <literal>VERBOSE</literal> option of <command>EXPLAIN</command>.
This parameter is off by default.
<varname>auto_explain.log_verbose</varname> contrôle l'affichage de détails
verbeux lorsqu'un plan d'exécution est tracé&nbsp;; il s'agit de l'équivalent
de l'option <literal>VERBOSE</literal> d'<command>EXPLAIN</command>. Ce
paramètre est désactivé par défaut.
</para>
</listitem>
</varlistentry>
Expand All @@ -161,11 +160,11 @@
</indexterm>
<listitem>
<para>
<varname>auto_explain.log_format</varname> selects the
<command>EXPLAIN</command> output format to be used.
The allowed values are <literal>text</literal>, <literal>xml</literal>,
<literal>json</literal>, and <literal>yaml</literal>. The default is text.
Only superusers can change this setting.
<varname>auto_explain.log_format</varname> sélectionne le format en sortie
de la commande <command>EXPLAIN</command>. Les valeurs autorisées sont
<literal>text</literal>, <literal>xml</literal>, <literal>json</literal>
et <literal>yaml</literal>. La valeur par défaut est <literal>text</literal>.
Seuls les superutilisateurs peuvent modifier ce paramétrage.
</para>
</listitem>
</varlistentry>
Expand All @@ -191,10 +190,10 @@
</variablelist>

<para>
In ordinary usage, these parameters are set
in <filename>postgresql.conf</filename>, although superusers can alter them
on-the-fly within their own sessions.
Voici un exemple typique d'utilisation&nbsp;:
D'ordinaire, ces paramètres sont configurés dans le fichier
<filename>postgresql.conf</filename>, bien que les superutilisateurs puissent
les modifier à la volée dans leur session. Voici un exemple typique
d'utilisation&nbsp;:
</para>

<programlisting>
Expand Down
6 changes: 3 additions & 3 deletions postgresql/libpq.xml
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,9 @@ PGconn *PQconnectdbParams(const char * const *keywords,
<para>
Quand <literal>expand_dbname</literal> est différent de zéro, la valeur
du mot-clé <parameter>dbname</parameter> peut être reconnue comme une
chaîne de connexion. Only the first occurrence of
<parameter>dbname</parameter> is expanded this way, any subsequent
<parameter>dbname</parameter> value is processed as plain database name.
chaîne de connexion. Seule la première occurrence de
<parameter>dbname</parameter> est interprétée de cette façon, toute autre
valeur pour <parameter>dbname</parameter> est traitée comme un nom de base.
Les formats possibles sont disponibles dans
<xref linkend="libpq-connstring"/> avec de nombreux détails.
</para>
Expand Down
29 changes: 15 additions & 14 deletions postgresql/ref/psql-ref.xml
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@
<listitem>
<para>
Affiche toutes les lignes non vides en entrée sur la sortie standard
lorsqu'elles sont lues. (This does not apply to lines read
interactively.) C'est équivalent à initialiser la variable
lorsqu'elles sont lues. (Ceci ne s'applique pas aux lignes lues de
façon interactive.) C'est équivalent à initialiser la variable
<varname>ECHO</varname> à <literal>all</literal>.
</para>
</listitem>
Expand Down Expand Up @@ -1867,11 +1867,11 @@ lo_import 152801
<term><literal>\o</literal> or <literal>\out [ |<replaceable class="parameter">commande</replaceable> ]</literal></term>
<listitem>
<para>
Arranges to save future query results to the file <replaceable
class="parameter">filename</replaceable> or pipe future results
to the shell command <replaceable
class="parameter">command</replaceable>. If no argument is
specified, the query output is reset to the standard output.
S'arrange pour sauvegarder les résultats des prochaines requêtes dans
le fichier <replaceable class="parameter">nomfichier</replaceable> ou
d'envoyer les résultats à la commande shell <replaceable
class="parameter">commande</replaceable>. Si aucun argument n'est
fourni, le résultat de la requête va sur la sortie standard.
</para>

<para>
Expand Down Expand Up @@ -2338,13 +2338,14 @@ lo_import 152801
class="parameter">nomfichier</replaceable> ]</literal></term>
<listitem>
<para>
Print <application>psql</application>'s command line history
to <replaceable class="parameter">filename</replaceable>.
If <replaceable class="parameter">filename</replaceable> is omitted,
the history is written to the standard output (using the pager if
appropriate). This command is not available
if <application>psql</application> was built
without <application>Readline</application> support.
Sauvegarde l'historique de la ligne de commande de
<application>psql</application> dans <replaceable
class="parameter">nomfichier</replaceable>. Si <replaceable
class="parameter">nomfichier</replaceable> est omis, l'historique est
écrit sur la sortie standard (en utilisant le paginateur si
nécessaire). Cette commande n'est pas disponible si
<application>psql</application> a été construit sans le support de
<application>Readline</application>.
</para>

</listitem>
Expand Down
17 changes: 9 additions & 8 deletions postgresql/runtime.xml
Original file line number Diff line number Diff line change
Expand Up @@ -751,19 +751,20 @@ DETAIL: Failed system call was semget(5440126, 17, 03600).</screen>
</para>

<para>
These semaphore-related settings are read-only as far as
<command>sysctl</command> is concerned, but can be set in
<filename>/boot/loader.conf</filename>:
Ces paramètres relatifs aux sémaphores sont en lecture seule en ce qui
concerne <command>sysctl</command>, mais peuvent être configurés dans
<filename>/boot/loader.conf</filename>&nbsp;:
<programlisting>
kern.ipc.semmni=256
kern.ipc.semmns=512
kern.ipc.semmnu=256
</programlisting>
After modifying these values a reboot is required for the new
settings to take effect.
(Note: FreeBSD does not use <varname>SEMMAP</varname>. Older versions
would accept but ignore a setting for <literal>kern.ipc.semmap</literal>;
newer versions reject it altogether.)
Après modification de ces valeurs, un redémarrage est nécessaire pour
que les nouvelles valeurs prennent effet.
(Note&nbsp;: FreeBSD n'utilise pas <varname>SEMMAP</varname>. Les
anciennes versions accepteraient, tout en l'ignorant, une configuration
de <literal>kern.ipc.semmap</literal>&nbsp;; les nouvelles versions la
rejettent directement.)
</para>

<para>
Expand Down
64 changes: 33 additions & 31 deletions postgresql/syntax.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2248,52 +2248,54 @@ SELECT ROW(table.*) IS NULL FROM table; -- détecte toutes les lignes non NULL</
</para>

<para>
<literal>CASE</literal> is not a cure-all for such issues, however.
One limitation of the technique illustrated above is that it does not
prevent early evaluation of constant subexpressions.
As described in <xref linkend="xfunc-volatility"/>, functions and
operators marked <literal>IMMUTABLE</literal> can be evaluated when
the query is planned rather than when it is executed. Thus for example
Néanmoins, <literal>CASE</literal> n'est pas un remède à tout. Une limitation
à la technique illustrée ci-dessus est qu'elle n'empêche pas l'évaluation
en avance des sous-expressions constantes. Comme décrit dans <xref
linkend="xfunc-volatility"/>, les fonctions et les opérateurs marqués
<literal>IMMUTABLE</literal> peuvent être évalués quand la requête est
planifiée plutôt que quand elle est exécutée. Donc, par exemple&nbsp;:
<programlisting>
SELECT CASE WHEN x &gt; 0 THEN x ELSE 1/0 END FROM tab;
</programlisting>
is likely to result in a division-by-zero failure due to the planner
trying to simplify the constant subexpression,
even if every row in the table has <literal>x &gt; 0</literal> so that the
<literal>ELSE</literal> arm would never be entered at run time.
va produire comme résultat un échec pour division par zéro car le
planificateur a essayé de simplifier la sous-expression constante, même
si chaque ligne de la table a <literal>x &gt; 0</literal> de façon à ce
que la condition <literal>ELSE</literal> ne soit jamais exécutée.
</para>

<para>
While that particular example might seem silly, related cases that don't
obviously involve constants can occur in queries executed within
functions, since the values of function arguments and local variables
can be inserted into queries as constants for planning purposes.
Within <application>PL/pgSQL</application> functions, for example, using an
<literal>IF</literal>-<literal>THEN</literal>-<literal>ELSE</literal> statement to protect
a risky computation is much safer than just nesting it in a
<literal>CASE</literal> expression.
Bien que cet exemple particulier puisse sembler stupide, il existe de
nombreux cas moins évident, n'impliquant pas de constantes, mais plutôt
des requêtes exécutées par des fonctions, quand les valeurs des arguments
des fonctions et de variables locales peuvent être insérées dans les requêtes
en tant que constantes toujours dans le but de la planification. À l'intéreur
de fonctions <application>PL/pgSQL</application>, par exemple, en utilisant
une instruction <literal>IF</literal>-<literal>THEN</literal>-
<literal>ELSE</literal> pour proteger un calcul risqué est beaucoup plus sûr
que dans une expression <literal>CASE</literal>.
</para>

<para>
Another limitation of the same kind is that a <literal>CASE</literal> cannot
prevent evaluation of an aggregate expression contained within it,
because aggregate expressions are computed before other
expressions in a <literal>SELECT</literal> list or <literal>HAVING</literal> clause
are considered. For example, the following query can cause a
division-by-zero error despite seemingly having protected against it:
Une limitation de même type est qu'un <literal>CASE</literal> ne peut
pas empêcher l'évaluation d'une expression d'agrégat qui y est contenue
car les expressions d'agrégat sont calculées avant que les autres
expressions dans une liste <literal>SELECT</literal> et dans une clause
<literal>HAVING</literal> ne soient considérées. Par exemple, la requête
suivante peut causer une erreur de division par zéro bien qu'elle semble
protéger contre ce problème&nbsp;:
<programlisting>
SELECT CASE WHEN min(employees) > 0
THEN avg(expenses / employees)
END
FROM departments;
</programlisting>
The <function>min()</function> and <function>avg()</function> aggregates are computed
concurrently over all the input rows, so if any row
has <structfield>employees</structfield> equal to zero, the division-by-zero error
will occur before there is any opportunity to test the result of
<function>min()</function>. Instead, use a <literal>WHERE</literal>
clause to prevent problematic input rows from
reaching an aggregate function in the first place.
Les agrégats <function>min()</function> et <function>avg()</function> sont
calculés en même temps sur toutes les lignes en entrée, donc si une ligne
a sa colonne <structfield>employees</structfield> à zéro, l'erreur de
division par zéro surviendra avant le test du résultat de
<function>min()</function>. Utilisez à la place une clause
<literal>WHERE</literal> pour empêcher les lignes problématiques en entrée
d'atteindre la fonction d'agrégat.
</para>
</sect2>
</sect1>
Expand Down

0 comments on commit 77be909

Please sign in to comment.