Skip to content

Commit

Permalink
Mise à jour en version 14.11
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Feb 13, 2024
1 parent bc2935d commit fba3a58
Show file tree
Hide file tree
Showing 20 changed files with 1,302 additions and 57 deletions.
2 changes: 1 addition & 1 deletion postgresql/client-auth.xml
Original file line number Diff line number Diff line change
Expand Up @@ -642,7 +642,7 @@ hostnogssenc <replaceable>database</replaceable> <replaceable>user</replaceabl
Pour voir le <literal>DN</literal> d'un certificat client dans ce
format, faire
<programlisting>
openssl x509 -in myclient.crt -noout --subject -nameopt RFC2253 | sed "s/^subject=//"
openssl x509 -in myclient.crt -noout -subject -nameopt RFC2253 | sed "s/^subject=//"
</programlisting>
Il est important de faire attention lors de l'utilisation de cette
option, tout spécialement lors de l'utilisation d'expression
Expand Down
28 changes: 19 additions & 9 deletions postgresql/ddl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1124,10 +1124,11 @@ CREATE TABLE commande_produits (

<para>
Une clé étrangère doit référencer les colonnes qui soit sont une clé
primaire, soit forment une contrainte d'unicité. Cela signifie que les
colonnes référencées ont toujours un index (celui qui garantit la clé
primaire ou la contrainte unique). Donc les vérifications sur la ligne de
référence seront performantes. Comme la suppression d'une ligne de la
primaire, soit forment une contrainte d'unicité, soit sont les colonnes d'un
index d'unicité non partiel. Cela signifie que les
colonnes référencées ont toujours un index pour permettre des recherches
efficaces pour savoir si une ligne référençante a une correspondance.
Comme la suppression d'une ligne de la
table référencée ou la mise à jour d'une colonne référencée nécessitera
un parcours de la table référée pour trouver les lignes correspondant à
l'ancienne valeur, il est souvent intéressant d'indexer les colonnes
Expand Down Expand Up @@ -2260,9 +2261,16 @@ ALTER TABLE produits ADD FOREIGN KEY (id_groupe_produit) REFERENCES groupes_prod
<primary><type>aclitem</type></primary>
</indexterm>
Les droits accordés à un objet particulier sont affichés comme une liste
d'entrées <type>aclitem</type>, où chaque <type>aclitem</type> décrit les
droits d'un bénéficiaire à qui des droits ont été octroyés par un
utilisateur différent. Par exemple, <literal>calvin=r*w/hobbes</literal>
d'entrées <type>aclitem</type>, chacune ayant le format&nbsp;:
<synopsis>
<replaceable>grantee</replaceable><literal>=</literal><replaceable>privilege-abbreviation</replaceable><optional><literal>*</literal></optional>...<literal>/</literal><replaceable>grantor</replaceable>
</synopsis>
Chaque <type>aclitem</type> liste tous les droits d'un rôle qui ont été
donnés par un rôle particulier. Les droits spécifiques sont représentés par
des abréviations sur une lettre à partir de
<xref linkend="privilege-abbrevs-table"/>, avec un <literal>*</literal>
ajouté si le droit a été donné avec l'option <literal>grant</literal>.
Par exemple, <literal>calvin=r*w/hobbes</literal>
indique que le rôle <literal>calvin</literal> a le droit
<literal>SELECT</literal> (<literal>r</literal>) avec possibilité de
transmission (<foreignphrase><quote>with grant
Expand Down Expand Up @@ -4192,7 +4200,7 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02

<programlisting>CREATE INDEX measurement_usls_idx ON ONLY measurement (unitsales);

CREATE INDEX measurement_usls_200602_idx
CREATE INDEX CONCURRENTLY measurement_usls_200602_idx
ON measurement_y2006m02 (unitsales);
ALTER INDEX measurement_usls_idx
ATTACH PARTITION measurement_usls_200602_idx;
Expand Down Expand Up @@ -4315,7 +4323,9 @@ ALTER INDEX measurement_city_id_logdate_key
Utiliser <literal>ONLY</literal> pour ajouter ou supprimer une
contrainte uniquement sur la table partitionnée est supportée tant
qu'il n'y a pas de partitions. Dès qu'une partition existe, utiliser
<literal>ONLY</literal> renverra une erreur. À la place, des
<literal>ONLY</literal> renverra une erreur pour toute contrainte autre
que <literal>UNIQUE</literal> et <literal>PRIMARY KEY</literal>. À la
place, des
contraintes sur les partitions elles-mêmes peuvent être ajoutées et
(si elles ne sont pas présentes sur la table parent) supprimées.
</para>
Expand Down
13 changes: 8 additions & 5 deletions postgresql/fdwhandler.xml
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,15 @@
fonction de validation doit être enregistrée comme prenant deux
arguments&nbsp;: un tableau de texte contenant les options à
valider et un OID représentant le type d'objet avec lequel les
options sont validées (sous la forme d'un OID du catalogue système
options sont associées. Ce dernier correspond à l'OID du catalogue système
où sera stocké l'objet, donc
<literal>ForeignDataWrapperRelationId</literal>,
<literal>ForeignServerRelationId</literal>,
<literal>UserMappingRelationId</literal> ou
<literal>ForeignTableRelationId</literal>).
<itemizedlist spacing="compact">
<listitem><para><literal>AttributeRelationId</literal></para></listitem>
<listitem><para><literal>ForeignDataWrapperRelationId</literal></para></listitem>
<listitem><para><literal>ForeignServerRelationId</literal></para></listitem>
<listitem><para><literal>ForeignTableRelationId</literal></para></listitem>
<listitem><para><literal>UserMappingRelationId</literal></para></listitem>
</itemizedlist>
Si aucune fonction de validation n'est fournie, les options ne sont
pas vérifiées au moment de la création ou de la modification de
l'objet.
Expand Down
2 changes: 1 addition & 1 deletion postgresql/high-availability.xml
Original file line number Diff line number Diff line change
Expand Up @@ -703,7 +703,7 @@ ce que les nœuds s'accordent dans un système transactionnel sérialisable.
restaurer le fichier à partir de l'archive à nouveau. Cette boucle de
retentatives de l'archive, <filename>pg_wal</filename> et par la
réplication en flux continue
jusqu'à ce que le serveur soit stoppé ou que le failover (bascule) soit
jusqu'à ce que le serveur soit arrêté ou promu.
déclenché.
</para>

Expand Down
34 changes: 33 additions & 1 deletion postgresql/indices.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,38 @@
jointures.
</para>

<para>
En général, les index <productname>PostgreSQL</productname> peuvent être
utilisées pour optimiser les requêtes qui contiennent une ou plusieurs
clauses <literal>WHERE</literal> ou <literal>JOIN</literal> de la forme

<synopsis>
<replaceable>colonne-indexee</replaceable> <replaceable>operateur-indexable</replaceable> <replaceable>valeur-comparaison</replaceable>
</synopsis>

Ici, la <replaceable>colonne-indexee</replaceable> est n'importe quel colonne
ou expression de la définition de l'index.
L'<replaceable>operateur-indexable</replaceable> est un opérateur qui est un
membre de la <firstterm>classe d'opérateur</firstterm> de l'index pour la
colonne indexée. (Plus de détails là-dessus ci-dessous.) et la
<replaceable>valeur-comparaison</replaceable> peut être toute expression qui
n'est pas volatile et ne fait pas référence à la table de l'index.
</para>

<para>
Dans certains case, l'optimiseur de requêtes peut extraire une clause
indexable de cette forme à partir d'une autre construction SQL. Un exemple
simple qui, si la clause originale est

<synopsis>
<replaceable>valeur-comparaison</replaceable> <replaceable>operateur</replaceable> <replaceable>colonne-indexee</replaceable>
</synopsis>

alors elle peut être inversée dans une forme indexable si
l'<replaceable>operateur</replaceable> original a un opérateur de commutation
qui est un membre de la classe d'opérateur de l'index.
</para>

<para>
Créer un index sur une grosse table peut prendre beaucoup de temps. Par
défaut, <productname>PostgreSQL</productname> autorise la lecture
Expand Down Expand Up @@ -117,7 +149,7 @@
d'index&nbsp;: B-tree, Hash, GiST, SP-GiST, GIN, BRIN et l'extension
<link linkend="bloom">bloom</link>. Chaque type
d'index utilise un algorithme différent qui convient à un type
particulier de requêtes. Par défaut, la commande <link
particulier de clauses indexables. Par défaut, la commande <link
linkend="sql-createindex"><command>CREATE INDEX</command></link> crée un
index B-tree, ce qui convient dans la plupart des situations. Les autres
types d'index sont sélectionnés en écrivant le mot clé
Expand Down
35 changes: 19 additions & 16 deletions postgresql/information_schema.xml
Original file line number Diff line number Diff line change
Expand Up @@ -711,8 +711,8 @@
Un encodage d'un certain répertoire de caractères. La plupart
des anciens répertoires de caractères utilisent seulement un
encodage. Du coup, il n'y a pas de noms séparés pour eux (par
exemple <literal>LATIN1</literal> est une forme d'encodage
applicable au répertoire <literal>LATIN1</literal>). Par contre,
exemple <literal>LATIN2</literal> est une forme d'encodage
applicable au répertoire <literal>LATIN2</literal>). Par contre,
Unicode dispose des formats d'encodage <literal>UTF8</literal>,
<literal>UTF16</literal>, etc. (ils ne sont pas tous supportés
par PostgreSQL). Les formes d'encodage ne sont pas exposés comme
Expand Down Expand Up @@ -4982,10 +4982,12 @@ ORDER BY c.ordinal_position;
<title><literal>routine_column_usage</literal></title>

<para>
La vue <literal>routine_column_usage</literal> a pour but d'identifier
toutes les colonnes utilisées par une fonction ou procédure. Actuellement,
cette information n'est pas tracée par
<productname>PostgreSQL</productname>.
La vue <literal>routine_column_usage</literal> identifie toutes les colonnes
qui sont utilisées par une fonction ou une procédure, soit dans le corps
SQL soit dans les expressions par défaut des paramètres. (Ceci fonctionne
seulement pour les corps SQL sans guillemets, les corps sans guillemets ou
les fonctions dans d'autres langages.) Une colonne est uniquement inclus
si sa table a pour propriétaire un rôle actuellement activé.
</para>

<table>
Expand Down Expand Up @@ -5231,11 +5233,12 @@ ORDER BY c.ordinal_position;
<title><literal>routine_routine_usage</literal></title>

<para>
La vue <literal>routine_routine_usage</literal> a pour but d'identifier
toutes les fonctions ou procédure utilisées par une autre (ou la même)
fonction ou procédure, soit dans le corps ou dans les expressions par
défaut de paramètre. Actuellement, seules les fonctions utilisées dans les
expression par défaut des paramètres sont tracées. Une entrée est incluse
La vue <literal>routine_routine_usage</literal> identifie
toutes les fonctions ou procédures utilisées par une autre (ou la même)
fonction ou procédure, soit dans le corps SQL ou dans les expressions par
défaut de paramètre. (Ceci fonctionne seulement dans le corps SQL sans
guillemets, les corps sans guillemets ou les fonctions dans d'autres
langages.) Une entrée est incluse
ici seulement si la fonction utilisée appartient à un rôle actif
maintenant. (Il n'y a aucune restriction sur la fonction appelante.)
</para>
Expand Down Expand Up @@ -5329,12 +5332,12 @@ ORDER BY c.ordinal_position;
<title><literal>routine_sequence_usage</literal></title>

<para>
La vue <literal>routine_sequence_usage</literal> a pour but d'identifier
La vue <literal>routine_sequence_usage</literal> identifie
toutes les séquences qui sont utilisées par une fonction ou une procédure,
soit dans le corps soit en paramètre par défaut des expressions.
Actuellement, seules les séquences utilisées dans les paramètres par
défaut des expressions sont tracées. Une séquence est seulement incluse si
la séquence est la propriété d'un rôle actuellement actif.
soit dans le corps SQL soit dans les expressions par défaut des paramètres.
(Ceci fonctionne seulement pour les corps SQL sans guillmets, les corps sans
guillemets les fonctions dans d'autres langages.) Une séquence est seulement
incluse si la séquence est la propriété d'un rôle actuellement actif.
</para>

<table>
Expand Down
6 changes: 3 additions & 3 deletions postgresql/legal.xml
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<date>2023</date>
<date>2024</date>

<copyright>
<year>1996&ndash;2023</year>
<year>1996&ndash;2024</year>
<holder>The PostgreSQL Global Development Group</holder>
</copyright>

<legalnotice id="legalnotice">
<title>Legal Notice</title>

<para>
<productname>PostgreSQL</productname> is Copyright &copy; 1996&ndash;2023
<productname>PostgreSQL</productname> is Copyright &copy; 1996&ndash;2024
by the PostgreSQL Global Development Group.
</para>

Expand Down
12 changes: 7 additions & 5 deletions postgresql/libpq.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4920,11 +4920,13 @@ char *PQresultVerboseErrorMessage(const PGresult *res,
<parameter>arg</parameter> vaut 0. Renvoie 0 si OK, -1 en cas d'erreur.
</para>
<para>
Dans l'état non bloquant, les appels à
<xref linkend="libpq-PQsendQuery"/>, <xref linkend="libpq-PQputline"/>,
<xref linkend="libpq-PQputnbytes"/>, <xref linkend="libpq-PQputCopyData"/>
et <xref linkend="libpq-PQendcopy"/> ne bloqueront pas mais renverront à la
place une erreur s'ils ont besoin d'être de nouveau appelés.
Dans l'état non bloquant, les appels réussis à <xref
linkend="libpq-PQsendQuery"/>, <xref linkend="libpq-PQputline"/>, <xref
linkend="libpq-PQputnbytes"/>, <xref linkend="libpq-PQputCopyData"/> et
<xref linkend="libpq-PQendcopy"/> ne bloqueront pas&nbsp;; leurs
modifications seront stockées dans un tampon local de sortie jusqu'à ce
qu'elles soient vidées sur disque. Les appels échoués renverront une
erreur et devront être tentés de nouveau.
</para>
<para>
Notez que <xref linkend="libpq-PQexec"/> n'honore pas le mode non
Expand Down
2 changes: 1 addition & 1 deletion postgresql/logical-replication.xml
Original file line number Diff line number Diff line change
Expand Up @@ -525,7 +525,7 @@
<quote>apply</quote>.
Le processus walsender démarre le décodage logique (décrit dans la
section <xref linkend="protocol-logical-replication"/>) des fichiers
WAL et charge le plugin de décodage logique standard (pgoutput).
WAL et charge le plugin de décodage logique standard (<literal>pgoutput</literal>).
Ce plugin transforme les changements lus depuis les fichiers WAL vers
le protocole de réplication logique
(voir <xref linkend="protocol-logical-replication"/>)
Expand Down
3 changes: 2 additions & 1 deletion postgresql/plpython.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1335,7 +1335,8 @@ plan = plpy.prepare("INSERT INTO operations (resultat) VALUES ($1)", ["text"])
plpy.execute(plan, [result])
$$ LANGUAGE plpythonu;
</programlisting>
Notez que l'utilisation de <literal>try/catch</literal> est toujours
Notez que l'utilisation de <literal>try</literal>/<literal>catch</literal>
est toujours
requis. Sinon, l'exception se propagerait en haut de la pile Python
et causerait l'annulation de la fonction entière avec une erreur
<productname>PostgreSQL</productname>, pour que la table
Expand Down
54 changes: 50 additions & 4 deletions postgresql/protocol.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2564,6 +2564,8 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;"
<listitem>
<para>
Le nom d'une option passée au plugin de décodage logique du slot.
Voir <xref linkend="protocol-logical-replication"/> pour les options
qui sont acceptées par le plugin standard (<literal>pgoutput</literal>).
</para>
</listitem>
</varlistentry>
Expand Down Expand Up @@ -2929,12 +2931,18 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;"
du protocole de réplication physique en flux.
</para>

<para>
Le décodage logique de <productname>PostgreSQL</productname> supporte des
plugins de sortie. <literal>pgoutput</literal> est celui utilisé en standard
pour la réplication logique native.
</para>

<sect2 id="protocol-logical-replication-params">
<title>Paramètres de la réplication logique en flux</title>

<para>
La commande <literal>START_REPLICATION</literal> de réplication logique
accepte les paramètres suivants&nbsp;:
En utilisant la commande <literal>START_REPLICATION</literal>,
<literal>pgoutput</literal> accepte les paramètres suivants&nbsp;:

<variablelist>
<varlistentry>
Expand All @@ -2944,7 +2952,8 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;"
<listitem>
<para>
Version de protocole. Actuellement, les versions <literal>1</literal> et
<literal>2</literal> sont supportées. La version <literal>2</literal>
<literal>2</literal> sont supportées. Une version valide est requise.
La version <literal>2</literal>
est seulement suportée pour la version serveur 14 et ultérieure, et elle
permet un flux de larges transactions.
</para>
Expand All @@ -2960,7 +2969,44 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;"
Liste de noms de publications, séparés par des virgules, pour
souscription (récupération des modifications). Les noms de publication
individuels sont traités comme des noms d'objet standard et peuvent
être mis entre guillemets si nécessaire.
être mis entre guillemets si nécessaire. Il est requis d'indiquer
au moins un nom de publication.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term>
binary
</term>
<listitem>
<para>
Option booléenne pour utiliser le mode de transfert binaire. Le mode
binaire est plus rapide que le mode texte mais un peu moins robuste.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term>
messages
</term>
<listitem>
<para>
Option booléenne pour activer l'envoi de messages qui sont écrits par
<function>pg_logical_emit_message</function>.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term>
streaming
</term>
<listitem>
<para>
Option booléenne pour activer l'envoi en flux des transactions en
cours. Il est requis d'activer au minimum la version 2 du protocole.
</para>
</listitem>
</varlistentry>
Expand Down
2 changes: 1 addition & 1 deletion postgresql/ref/alter_event_trigger.xml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ ALTER EVENT TRIGGER <replaceable class="parameter">nom</replaceable> RENAME TO <
</varlistentry>

<varlistentry>
<term><literal>DISABLE</literal>/<literal>ENABLE [ REPLICA | ALWAYS ] TRIGGER</literal></term>
<term><literal>DISABLE</literal>/<literal>ENABLE [ REPLICA | ALWAYS ]</literal></term>
<listitem>
<para>
Ces formes configurent le déclenchement des triggers sur événement. Un
Expand Down
2 changes: 1 addition & 1 deletion postgresql/ref/alter_foreign_data_wrapper.xml
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ ALTER FOREIGN DATA WRAPPER <replaceable class="parameter">nom</replaceable> RENA
Modifier wrapper de données distantes <literal>dbi</literal>, ajouter
l'option <literal>foo</literal>, supprimer <literal>bar</literal>&nbsp;:
<programlisting>
ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo '1', DROP 'bar');
ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo '1', DROP bar);
</programlisting>
</para>

Expand Down
3 changes: 2 additions & 1 deletion postgresql/ref/copy.xml
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,8 @@ de&nbsp;:</phrase>
</para>
<para>
Pour les requêtes <command>INSERT</command>, <command>UPDATE</command> et
<command>DELETE</command>, une clause RETURNING doit être fournie, et
<command>DELETE</command>, une clause <literal>RETURNING</literal> doit
être fournie, et
la relation cible ne doit avoir ni règle conditionnelle, ni règle
<literal>ALSO</literal>, ni règle <literal>INSTEAD</literal> qui
ajoute plusieurs requêtes.
Expand Down

0 comments on commit fba3a58

Please sign in to comment.