Skip to content

Commit

Permalink
Mise à jour en version 14.4
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Jun 17, 2022
1 parent 8f1ffbe commit 7a7b161
Show file tree
Hide file tree
Showing 12 changed files with 535 additions and 63 deletions.
18 changes: 10 additions & 8 deletions postgresql/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7804,14 +7804,16 @@ COPY postgres_log FROM '/chemin/complet/vers/le/logfile.csv' WITH csv;
<primary>paramètre de configuration <varname>track_activities</varname></primary>
</indexterm>
<para>
Active la collecte d'informations sur la commande en cours d'exécution
dans chaque session, avec son identifiant et l'heure de démarrage de la
commande. Ce paramètre
est activé par défaut. Même si le paramètre est activé, cette information
n'est pas visible par tous les utilisateurs, mais uniquement par les
super-utilisateurs et l'utilisateur possédant la session
traitée&nbsp;; de ce fait, cela ne représente pas une faille de
sécurité. Seuls les super-utilisateurs peuvent modifier ce paramètre.
Active la collecte d'informations sur la commande en cours d'exécution dans
chaque session, avec son identifiant et l'heure de démarrage de la
commande. Ce paramètre est activé par défaut. Même si le paramètre est
activé, cette information n'est pas visible par tous les utilisateurs, mais
uniquement par les super-utilisateurs, les rôles membres du rôle
<literal>pg_read_all_stats</literal> et l'utilisateur possédant les
sessions indiquées (ceci incluant les sessions appartenant à un rôle dont
ils possèdent les droits) traitée&nbsp;; de ce fait, cela ne représente pas
une faille de sécurité. Seuls les super-utilisateurs peuvent modifier ce
paramètre.
</para>
</listitem>
</varlistentry>
Expand Down
17 changes: 9 additions & 8 deletions postgresql/datatype.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3914,14 +3914,15 @@ opposition de deux choses -->
</para>

<para>
Le standard IEEE 802-2001 spécifie la seconde forme affichée
(avec les tirets) comme forme canonique pour les adresses MAC, et
la première forme (avec les :) comme la notation à bits retournés,
ce qui donne l'équivalence 08-00-2b-01-02-03 = 01:00:4D:08:04:0C.
Cette convention est largement ignorée aujourd'hui et n'a de
sens que pour des protocoles réseau obsolètes (comme Token Ring).
PostgreSQL ne tient pas compte des bits retournés, et tous les formats
acceptés utilisent l'ordre canonique LSB.
Le standard IEEE 802-2001 spécifie la seconde forme affichée (avec les
tirets) comme forme canonique pour les adresses MAC, et la première
forme (avec les caractères deux-points) comme utilisé par la notation à
bits retournés, MSB en premier, ce qui donne l'équivalence
08-00-2b-01-02-03 = 01:00:4D:08:04:0C. Cette convention est largement
ignorée aujourd'hui et n'a de sens que pour des protocoles réseau
obsolètes (comme Token Ring). PostgreSQL ne tient pas compte des bits
retournés&nbsp;; tous les formats acceptés utilisent l'ordre canonique
LSB.
</para>

<para>
Expand Down
11 changes: 8 additions & 3 deletions postgresql/func.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1058,7 +1058,7 @@ repeat('Pg', 4) <returnvalue>PgPgPgPg</returnvalue>
</para>
<para>
<literal>@ -5.0</literal>
<returnvalue>5</returnvalue>
<returnvalue>5.0</returnvalue>
</para></entry>
</row>

Expand Down Expand Up @@ -1476,7 +1476,7 @@ repeat('Pg', 4) <returnvalue>PgPgPgPg</returnvalue>
</para>
<para>
<literal>log(2.0, 64.0)</literal>
<returnvalue>6.0000000000</returnvalue>
<returnvalue>6.0000000000000000</returnvalue>
</para></entry>
</row>

Expand Down Expand Up @@ -18799,7 +18799,7 @@ SELECT NULLIF(value, '(none)') ...
Est-ce que l'élément est contenu dans l'intervalle multiple&nbsp;?
</para>
<para>
<literal>42 &lt;@ '{[1,7)}'::int4multirange</literal>
<literal>4 &lt;@ '{[1,7)}'::int4multirange</literal>
<returnvalue>t</returnvalue>
</para></entry>
</row>
Expand Down Expand Up @@ -19877,6 +19877,11 @@ SELECT NULLIF(value, '(none)') ...
</indexterm>
<function>range_intersect_agg</function> ( <parameter>value</parameter>
<type>anyrange</type> )
<returnvalue>anyrange</returnvalue>
</para>
<para role="func_signature">
<function>range_intersect_agg</function> ( <parameter>value</parameter>
<type>anymultirange</type> )
<returnvalue>anymultirange</returnvalue>
</para>
<para>
Expand Down
6 changes: 6 additions & 0 deletions postgresql/intarray.xml
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,12 @@
</para>
<para>
Supprime les doublons adjacents.
Souvent utilisé avec <function>sort</function> pour supprimer tous les
doublons.
</para>
<para>
<literal>uniq('{1,2,2,3,1,1}'::integer[])</literal>
<returnvalue>{1,2,3,1}</returnvalue>
</para>
<para>
<literal>uniq(sort('{1,2,3,2,1}'::integer[]))</literal>
Expand Down
59 changes: 35 additions & 24 deletions postgresql/json.xml
Original file line number Diff line number Diff line change
Expand Up @@ -425,18 +425,22 @@ SELECT doc-&gt;'site_name' FROM websites
</para>
<para>
La classe d'opérateur GIN par défaut pour <type>jsonb</type> supporte les
requêtes avec des opérateurs de haut niveau clé-existe <literal>?</literal>, <literal>?&amp;</literal>
et des opérateurs <literal>?|</literal> et l'opérateur path/valeur-existe
<literal>@&gt;</literal>.
requêtes avec des opérateurs clé-existe <literal>?</literal>,
<literal>?</literal>, <literal>?|</literal>
et <literal>?&amp;</literal>, l'opérateur de contenant
<literal>@&gt;</literal>, et les opérateurs de correspondance
<type>jsonpath</type> <literal>@?</literal> et <literal>@@</literal>.
et l'opérateur path/valeur-existe
(Pour des détails sur la sémantique que ces opérateurs implémentent,
voir <xref linkend="functions-jsonb-op-table"/>.)
Un exemple de création d'index avec cette classe d'opérateurs est&nbsp;:
<programlisting>
CREATE INDEX idxgin ON api USING GIN (jdoc);
</programlisting>
La classe d'opérateurs GIN qui n'est pas par défaut <literal>jsonb_path_ops
</literal> supporte l'indexation de l'opérateur <literal>@&gt;</literal>
seulement. Un exemple de création d'index avec cette classe d'opérateurs est&nbsp;:
</literal> ne supporte pas les opérateurs clé-existe mais il supporte
<literal>@&gt;</literal>, <literal>@?</literal> et <literal>@@</literal>.
Un exemple de création d'index avec cette classe d'opérateurs est&nbsp;:
<programlisting>
CREATE INDEX idxginp ON api USING GIN (jdoc jsonb_path_ops);
</programlisting>
Expand Down Expand Up @@ -496,23 +500,7 @@ CREATE INDEX idxgintags ON api USING GIN ((jdoc -&gt; 'tags'));
(Plus d'informations sur les index sur expression peuvent être
trouvées dans <xref linkend="indexes-expressional"/>.)
</para>
<para>
Les index GIN supportent aussi les opérateurs <literal>@@</literal>
et <literal>@?</literal> qui réalisent la correspondance avec le
<literal>jsonpath</literal>.
<programlisting>
SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @@ '$.tags[*] == "qui"';
</programlisting>
<programlisting>
SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @? '$.tags[*] ? (@ == "qui")';
</programlisting>
L'index GIN extrait les informations de la forme suivante du
<literal>jsonpath</literal>&nbsp;: <replaceable>chaîne d'accès</replaceable> = <replaceable>const</replaceable>.
La chaîne d'accès peut être <literal>.key</literal>,
<literal>[*]</literal> et <literal>[<replaceable>index</replaceable>]</literal>.
<literal>jsonb_ops</literal> supporte aussi les accesseurs <literal>.*</literal>
et <literal>.**</literal>.
</para>

<para>
Une autre approche pour le requêtage et l'exploitation de l'inclusion, par exemple&nbsp;:
<programlisting>
Expand All @@ -530,10 +518,33 @@ SELECT jdoc-&gt;'guid', jdoc-&gt;'name' FROM api WHERE jdoc @&gt; '{"tags": ["qu
et plus rapides pour la recherche qu'un simple index.
</para>

<para>
Les index GIN acceptent aussi les opérateurs <literal>@?</literal>
et <literal>@@</literal>, qui réalisent la correspondance
<type>jsonpath</type>matching. Voici deux exemples&nbsp;:
<programlisting>
SELECT jdoc->'guid', jdo->'name' FROM api WHERE jdoc @? '$.tags[*] ? (@ == "qui")';
</programlisting>
<programlisting>
SELECT jdoc->'guid', jdo->'name' FROM api WHERE jdoc @@ '$.tags[*] == "qui"';
</programlisting>
Pour ces opérateurs, l'index GIN extrait les clauses de la forme
<literal><replaceableaccessors_chain</replaceable> =
<replaceable>constat</replaceable></literal> en dehors du modèle
<type>jsonpath</type>, et réalise la recherche dans l'index en se basant sur
les clés et valeurs mentionnées dans ces clauses. La chaîne d'accessoires
peut inclure les accessoires
<literal>.<replaceable>key</replaceable></literal>, <literal>[*]</literal>,
et <literal>[<replaceable>index</replaceable>]</literal>. La classe
d'opérateur <literal>jsonb_ops</literal> accepte aussi les accessoires
<literal>.*</literal> et <literal>.**</literal>, mais ce n'est pas le cas de
la classe d'opérateur <literal>jsonb_path_ops</literal>.
</para>

<para>
Bien que la classe d'opérateur <literal>jsonb_path_ops</literal> ne supporte
que les requêtes avec les opérateurs <literal>@&gt;</literal>, <literal>@@</literal>
et <literal>@?</literal>, elle a des
que les requêtes avec les opérateurs <literal>@&gt;</literal>, <literal>@?</literal>
et <literal>@@</literal>, elle a des
avantages de performances notables par rapport à la classe d'opérateur par
défaut <literal>jsonb_ops</literal>. Un index <literal>jsonb_path_ops</literal>
est généralement bien plus petit qu'un index <literal>jsonb_ops</literal>
Expand Down
17 changes: 11 additions & 6 deletions postgresql/libpq.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7809,9 +7809,10 @@ myEventProc(PGEventId evtId, void *evtInfo, void *passThrough)
<primary><envar>PGSERVICEFILE</envar></primary>
</indexterm>
<envar>PGSERVICEFILE</envar> indique le nom du fichier service de
connexion par utilisateur. S'il n'est pas configuré, sa valeur par
défaut est <filename>~/.pg_service.conf</filename>
(voir <xref linkend="libpq-pgservice"/>).
connexion par utilisateur (voir <xref linkend="libpq-pgservice"/>).
La valeur par défaut est <filename>~/.pg_service.conf</filename>, ou
<filename>%APPDATA%\postgresql\.pg_service.conf</filename> sur
Microsoft Windows.
</para>
</listitem>

Expand Down Expand Up @@ -8184,9 +8185,13 @@ myEventProc(PGEventId evtId, void *evtInfo, void *passThrough)
Les noms de service peuvent être définis soit comme un fichier par
utilisateur soit comme un fichier du système. Si le même nom de service
existe dans les deux cas, le fichier utilisateur a priorité. Par défaut,
le fichier service de l'utilisateur s'appelle
<filename>~/.pg_service.conf</filename>&nbsp;; ce nom et ce chemin peuvent
être surchargés en configurant la variable d'environnement
le fichier service par utilisateur est nommé
<filename>~/.pg_service.conf</filename>.
Sur Microsoft Windows, il est nommé
<filename>%APPDATA%\postgresql\.pg_service.conf</filename> (où
<filename>%APPDATA%</filename> fait référence au sous-répertoire Application Data
du profile de l'utilisateur). Un autre nom de fichier peut être indiqué en
configurant la variable d'environnement
<envar>PGSERVICEFILE</envar>. Le fichier du système est nommé
<filename>pg_service.conf</filename>. Par défaut, il est recherché dans le
répertoire <filename>etc</filename> de l'installation
Expand Down
8 changes: 7 additions & 1 deletion postgresql/limits.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,13 @@
</row>

<row>
<entry>taille de champs</entry>
<entry>colonnes dans un résultat</entry>
<entry>1664</entry>
<entry></entry>
</row>

<row>
<entry>taille d'un champs</entry>
<entry>1 Go</entry>
<entry></entry>
</row>
Expand Down
14 changes: 11 additions & 3 deletions postgresql/ref/create_foreign_table.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,12 @@ CREATE FOREIGN TABLE [ IF NOT EXISTS ] <replaceable class="parameter">nom_table<
{ <replaceable class="parameter">nom_colonne</replaceable> [ WITH OPTIONS ] [ <replaceable class="parameter">contrainte_colonne</replaceable> [ ... ] ]
| <replaceable>contrainte_table</replaceable> }
[, ... ]
) ] <replaceable class="parameter">spec_limites_partition</replaceable>
) ]
{ FOR VALUES <replaceable class="parameter">spec_limites_partition</replaceable> | DEFAULT }
SERVER <replaceable class="parameter">nom_serveur</replaceable>
[ OPTIONS ( <replaceable class="parameter">option</replaceable> '<replaceable class="parameter">value</replaceable>' [, ... ] ) ]

<phrase>where <replaceable class="parameter">contrainte_colonne</replaceable> is:</phrase>
<phrase> <replaceable class="parameter">contrainte_colonne</replaceable> vaut&nbsp;:</phrase>

[ CONSTRAINT <replaceable class="parameter">nom_contrainte</replaceable> ]
{ NOT NULL |
Expand All @@ -47,6 +48,13 @@ CREATE FOREIGN TABLE [ IF NOT EXISTS ] <replaceable class="parameter">nom_table<

[ CONSTRAINT <replaceable class="parameter">nom_contrainte</replaceable> ]
CHECK ( <replaceable class="parameter">expression</replaceable> ) [ NO INHERIT ]

<phrase>et <replaceable class="parameter">spec_limites_partition</replaceable> vaut&nbsp;:</phrase>

IN ( <replaceable class="parameter">expr_limite_partition</replaceable> [, ...] ) |
FROM ( { <replaceable class="parameter">expr_limite_partition</replaceable> | MINVALUE | MAXVALUE } [, ...] )
TO ( { <replaceable class="parameter">expr_limite_partition</replaceable> | MINVALUE | MAXVALUE } [, ...] ) |
WITH ( MODULUS <replaceable class="parameter">literal_numerique</replaceable>, REMAINDER <replaceable class="parameter">numeric_literal</replaceable> )
</synopsis>
</refsynopsisdiv>

Expand Down Expand Up @@ -167,7 +175,7 @@ CHECK ( <replaceable class="parameter">expression</replaceable> ) [ NO INHERIT ]
</varlistentry>

<varlistentry>
<term><literal>PARTITION OF <replaceable>table_parent</replaceable> FOR VALUES <replaceable class="parameter">spec_limites_partition</replaceable></literal></term>
<term><literal>PARTITION OF <replaceable>table_parent</replaceable> { FOR VALUES <replaceable class="parameter">spec_limites_partition</replaceable> | DEFAULT }</literal></term>
<listitem>
<para>
Cette syntaxe peut être utilisée pour créer la table distante en tant
Expand Down
10 changes: 5 additions & 5 deletions postgresql/ref/create_index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -653,7 +653,8 @@
</para>

<para>
Dans la construction en parallèle d'un index, l'index est enregistré dans
Dans la construction en parallèle d'un index, l'index est enregistré comme
un index <quote>invalide</quote> dans
les catalogues systèmes dans une transaction, puis les deux parcours de
table interviennent dans deux transactions supplémentaires. Avant chaque
parcours de table, la construction de l'index doit attendre la fin des
Expand All @@ -664,7 +665,8 @@
transactions utilisées par toute phase des constructions concurrentes
d'index sur les autres tables, si les index impliqués sont partiels ou
ont des colonnes qui ne sont pas des références de colonne simple.
Ensuite, l'index peut être marqué comme utilisable, et la commande
Ensuite, l'index peut être marqué comme <quote>valide</quote> et prêt à
être utilisé, et la commande
<command>CREATE INDEX</command> se termine. Néanmoins, même après cela,
l'index pourrait ne pas être immédiatement utilisable pour les autres
requêtes&nbsp;: dans le pire des cas, il ne peut pas être utilisé tant
Expand Down Expand Up @@ -904,9 +906,7 @@
<para>
Comme pour toute transaction longue, <command>CREATE INDEX</command> sur
une table peut affecter les lignes pouvant être supprimées par un
<command>VACUUM</command> concurrent sur toute autre table. En dehors de
ceci, il y a des opérations avec l'option <literal>CONCURRENTLY</literal>
pour des index non partiels et sans expressions.
<command>VACUUM</command> concurrent sur toute autre table.
</para>

<para>
Expand Down
4 changes: 1 addition & 3 deletions postgresql/ref/reindex.xml
Original file line number Diff line number Diff line change
Expand Up @@ -489,9 +489,7 @@ Indexes:
<para>
Comme toute transaction longue, <command>REINDEX</command> sur une table
peut affecter les lignes supprimables par un <command>VACUUM</command>
concurrent sur toute autre table. En dehors de ceci, il existe des
opérations avec l'option <literal>CONCURRENTLY</literal> pour les index qui
ne sont pas partielles et qui sont sans expression.
concurrent sur toute autre table.
</para>

<para>
Expand Down

0 comments on commit 7a7b161

Please sign in to comment.