Skip to content

Commit

Permalink
Mise à jour en version 13.4
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Aug 16, 2021
1 parent 91acb98 commit 3cdbd8e
Show file tree
Hide file tree
Showing 34 changed files with 2,388 additions and 109 deletions.
6 changes: 3 additions & 3 deletions postgresql/advanced.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
référence à une table :

<programlisting>CREATE VIEW ma_vue AS
SELECT ville, t_basse, t_haute, prcp, date, emplacement
SELECT nom, t_basse, t_haute, prcp, date, emplacement
FROM temps, villes
WHERE ville = nom;

Expand Down Expand Up @@ -101,12 +101,12 @@ SELECT * FROM ma_vue;</programlisting>
La nouvelle déclaration des tables ressemble alors à ceci&nbsp;:

<programlisting>CREATE TABLE villes (
ville varchar(80) primary key,
nom varchar(80) primary key,
emplacement point
);

CREATE TABLE temps (
ville varchar(80) references villes,
ville varchar(80) references villes(nom),
t_haute int,
t_basse int,
prcp real,
Expand Down
13 changes: 11 additions & 2 deletions postgresql/backup.xml
Original file line number Diff line number Diff line change
Expand Up @@ -279,13 +279,22 @@
<para>
La commande <command>split</command> permet de découper le fichier en
fichiers plus petits, de taille acceptable par le système de fichiers sous-jacent.
Par exemple, pour faire des morceaux de 1&nbsp;Mo&nbsp;:
Par exemple, pour faire des morceaux de 2&nbsp;Go&nbsp;:

<programlisting>pg_dump <replaceable class="parameter">base_de_donnees</replaceable> | split -b 1m - <replaceable class="parameter">nom_fichier</replaceable></programlisting>
<programlisting>pg_dump <replaceable class="parameter">base_de_donnees</replaceable> | split -b 2G - <replaceable class="parameter">nom_fichier</replaceable></programlisting>

Pour restaurer&nbsp;:

<programlisting>cat <replaceable class="parameter">nom_fichier</replaceable>* | psql <replaceable class="parameter">base_de_donnees</replaceable></programlisting>

Si vous utilisez GNU <application>split</application>, il est possible de
l'utiliser avec <application>gzip</application>&nbsp;:

<programlisting>
pg_dump <replaceable class="parameter">dbname</replaceable> | split -b 2G --filter='gzip > $FILE.gz'
</programlisting>

Le résultat peut être restauré en utilisant <command>zcat</command>.
</para>
</formalpara>

Expand Down
90 changes: 88 additions & 2 deletions postgresql/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1844,6 +1844,12 @@ include 'nom_fichier'
être utile de contrôler ceci en configurant <xref
linkend="guc-autovacuum-work-mem"/> séparément.
</para>

<para>
Notez que pour la récupération des identifiants de lignes mortes,
<command>VACUUM</command> est capable d'utiliser uniquement
<literal>1GB</literal> de mémoire.
</para>
</listitem>
</varlistentry>

Expand All @@ -1861,6 +1867,16 @@ include 'nom_fichier'
valeur de <xref linkend="guc-maintenance-work-mem"/> doit être utilisée à
la place. Ce paramétrage n'a pas d'effet sur le comportement de
<command>VACUUM</command> lorsqu'il est exécuté dans d'autres contextes.
Ce paramètre peut seulement être configuré dans le fichier
<filename>postgresql.conf</filename> ou sur la ligne de commande du
serveur.
</para>
<para>
Pour la récupération des identifiants de lignes mortes, autovacuum est
capable d'utiliser au maximum <literal>1 Go</literal> de mémoire, donc
configurer <varname>autovacuum_work_mem</varname> à une valeur
supérieure n'a aucun effet sur le nombre de lignes mortes que
l'autovacuum peut récupérer lors du parcours d'une table.
</para>
</listitem>
</varlistentry>
Expand Down Expand Up @@ -4827,7 +4843,8 @@ ANY <replaceable class="parameter">nb_sync</replaceable> ( <replaceable class="p
<varname>max_worker_processes</varname>.
</para>
<para>
La valeur par défaut est 4.
La valeur par défaut est 4. Ce paramètre peut seulement être configuré au
démarrage du serveur.
</para>
</listitem>
</varlistentry>
Expand All @@ -4854,7 +4871,9 @@ ANY <replaceable class="parameter">nb_sync</replaceable> ( <replaceable class="p
<varname>max_logical_replication_workers</varname>.
</para>
<para>
La valeur par défaut est 2.
La valeur par défaut est 2. Ce paramètre peut seulement être configuré
dans le fichier <filename>postgresql.conf</filename> ou sur la ligne de
commande du serveur.
</para>
</listitem>
</varlistentry>
Expand Down Expand Up @@ -8404,6 +8423,67 @@ COPY postgres_log FROM '/chemin/complet/vers/le/logfile.csv' WITH csv;
</listitem>
</varlistentry>

<varlistentry id="guc-transaction-isolation" xreflabel="transaction_isolation">
<term><varname>transaction_isolation</varname> (<type>enum</type>)
<indexterm>
<primary>transaction isolation level</primary>
</indexterm>
<indexterm>
<primary>paramètre de configuration <varname>transaction_isolation</varname></primary>
</indexterm>
</term>
<listitem>
<para>
Ce paramètre reflète le niveau d'isolation de la transaction. Au début de
chaque transaction, il est configuré à la valeur courante du paramètre
<xref linkend="guc-default-transaction-isolation"/>. Toute tentative
ultérieure de modification est équivalente à une commande <xref
linkend="sql-set-transaction"/>.
</para>
</listitem>
</varlistentry>

<varlistentry id="guc-transaction-read-only" xreflabel="transaction_read_only">
<term><varname>transaction_read_only</varname> (<type>boolean</type>)
<indexterm>
<primary>read-only transaction</primary>
</indexterm>
<indexterm>
<primary>paramètre de configuration <varname>transaction_read_only</varname></primary>
</indexterm>
</term>
<listitem>
<para>
Ce paramètre reflète le statut lecture-seule de la transaction
courante. Au début de chaque transaction, il est configuré à la
valeur courante du paramètre <xref
linkend="guc-default-transaction-read-only"/>. Toute tentative de
modification ultérieure est équivalente à une commande <xref
linkend="sql-set-transaction"/>.
</para>
</listitem>
</varlistentry>

<varlistentry id="guc-transaction-deferrable" xreflabel="transaction_deferrable">
<term><varname>transaction_deferrable</varname> (<type>boolean</type>)
<indexterm>
<primary>deferrable transaction</primary>
</indexterm>
<indexterm>
<primary>paramètre de configuration <varname>transaction_deferrable</varname></primary>
</indexterm>
</term>
<listitem>
<para>
Ce paramètre reflète le statut de reportabilité de la transaction
courante. Au début de chaque transaction, il est configuré à la valeur
courante du paramètre <xref
linkend="guc-default-transaction-deferrable"/>. Toute tentative de
modification ultérieure est équivalente à une commande <xref
linkend="sql-set-transaction"/>.
</para>
</listitem>
</varlistentry>

<varlistentry id="guc-session-replication-role" xreflabel="session_replication_role">
<term><varname>session_replication_role</varname> (<type>enum</type>)</term>
Expand Down Expand Up @@ -9809,6 +9889,12 @@ SET XML OPTION { DOCUMENT | CONTENT };
redémarrage pour que l'outil puisse avoir le contrôle et
prendre toute action qui lui semble approprié.
</para>

<para>
Ce paramètre peut seulement être configuré dans le fichier
<filename>postgresql.conf</filename> ou sur la ligne de commande du
serveur.
</para>
</listitem>
</varlistentry>

Expand Down
74 changes: 55 additions & 19 deletions postgresql/datatype.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2004,15 +2004,23 @@ SELECT 'abc \153\154\155 \052\251\124'::bytea;
</row>
<row>
<entry><literal>04:05:06.789-8</literal></entry>
<entry>ISO 8601</entry>
<entry>ISO 8601, avec le décalage UTC comme fuseau horaire</entry>
</row>
<row>
<entry><literal>04:05:06-08:00</literal></entry>
<entry>ISO 8601</entry>
<entry>ISO 8601, avec le décalage UTC comme fuseau horaire</entry>
</row>
<row>
<entry><literal>04:05-08:00</literal></entry>
<entry>ISO 8601</entry>
<entry>ISO 8601, avec le décalage UTC comme fuseau horaire</entry>
</row>
<row>
<entry><literal>040506+0730</literal></entry>
<entry>ISO 8601, avec le décalage UTC avec un fuseau horaire en heure fractionnée</entry>
</row>
<row>
<entry><literal>040506+07:30:00</literal></entry>
<entry>décalage UTC exprimé en secondes (non autorisé dans ISO 8601)</entry>
</row>
<row>
<entry><literal>040506-08</literal></entry>
Expand Down Expand Up @@ -2055,25 +2063,29 @@ SELECT 'abc \153\154\155 \052\251\124'::bytea;
<entry><literal>PST8PDT</literal></entry>
<entry>Nommage POSIX du fuseau horaire</entry>
</row>
<row>
<entry><literal>-8:00:00</literal></entry>
<entry>Décalage UTC pour la zone PST</entry>
</row>
<row>
<entry>-8:00</entry>
<entry>Décalage ISO-8601 pour la zone PST</entry>
<entry>Décalage ISO-8601 pour la zone PST (format étendu ISO 8601)</entry>
</row>
<row>
<entry>-800</entry>
<entry>Décalage ISO-8601 pour la zone PST</entry>
<entry>Décalage ISO-8601 pour la zone PST (format basique ISO 8601)</entry>
</row>
<row>
<entry>-8</entry>
<entry>Décalage ISO-8601 pour la zone PST</entry>
<entry>Décalage ISO-8601 pour la zone PST (format basique ISO 8601)</entry>
</row>
<row>
<entry><literal>zulu</literal></entry>
<entry>Abréviation militaire de GMT</entry>
</row>
<row>
<entry><literal>z</literal></entry>
<entry>Version courte de <literal>zulu</literal></entry>
<entry>Version courte de <literal>zulu</literal> (aussi dans ISO 8601)</entry>
</row>
</tbody>
</tgroup>
Expand Down Expand Up @@ -2434,6 +2446,25 @@ SELECT 'abc \153\154\155 \052\251\124'::bytea;
</tgroup>
</table>

<para>
Dans le style <acronym>ISO</acronym>, le fuseau horaire est toujours
affiché sous la forme d'un décalage numérique signé de UTC, avec un
signe positif utilisé pour les zones à l'est de Greenwich. Le décalage
sera affiché sous la forme <replaceable>hh</replaceable>
(heures seulement) s'il s'agit d'un nombre intégral d'heures, ou sous la
forme <replaceable>hh</replaceable>:<replaceable>mm</replaceable> s'il
s'agit d'un nombre intégral de minutes, et enfin sous la forme
<replaceable>hh</replaceable>:<replaceable>mm</replaceable>:<replaceable>ss</replaceable>.
(Le troisième cas n'est pas possible pour tout standard moderne de
fuseau horaire, mais il peut apparaître en travaillant sur des jours
antérieurs à l'adoption des fuseaux horaires standardisés.) Pour les
autres styles de dates, le fuseau horaire est affiché comme une
abréviation alphabétique si l'une d'entre elles est d'utilisation
commune dans le fuseau actuel. Sinon, il apparaît comme un décalage
numérique signé dans le format basique ISO 8601
(<replaceable>hh</replaceable> ou <replaceable>hhmm</replaceable>).
</para>

<para>
Le style de date/heure peut être sélectionné à l'aide de la
commande <command>SET datestyle</command>, du paramètre
Expand Down Expand Up @@ -2778,16 +2809,20 @@ P <optional> <replaceable>années</replaceable>-<replaceable>mois</replaceable>-
</para>

<para>
Dans le format verbeux de saisie, et dans certains champs des formats
plus compacts, les valeurs de champs peuvent avoir des parties décimales&nbsp;;
par exemple, <literal>'1.5 week'</literal> ou <literal>'01:02:03.45'</literal>.
Ces entrées sont converties en un nombre approprié de mois, jours et secondes
pour être stockées. Quand ceci entraînerait le stockage d'une valeur décimale
pour les mois ou les jours, la partie décimale est ajoutée aux champs d'ordre
inférieur en utilisant les facteurs de conversion suivants&nbsp;:&nbsp;1&nbsp;mois
&nbsp;=&nbsp;30&nbsp;jours, 1&nbsp;jour&nbsp;=&nbsp;24heures.
Par exemple, <literal>'1.5 month'</literal> devient 1 mois et 15 jours.
Seules les secondes pourront apparaître comme décimales en sortie.
Les valeurs des champs peuvent avoir des parties fractionnelles&nbsp;:
par exemple, <literal>'1.5 weeks'</literal> ou
<literal>'01:02:03.45'</literal>. Néanmoins, comme l'intervalle stocke
en interne seulement les trois unités sous forme d'entier (mois, jours,
microsecondes), les unités fractionelles doivent être divisées en plus
petites unités. Les parties fractionnelles des unités supérieures aux
mois est tronquées en un nombre entier de mois, par exemple
<literal>'1.5 years'</literal> devient <literal>'1 year 6
mons'</literal>. Les parties fractionnelles des semaines et jours sont
calculées comme un nombre entier de jours et de microsecondes, en
supposant 30 jours par mois et 24 heures par jour, par exemple
<literal>'1.75 months'</literal> devient <literal>1 mon 22 days
12:00:00</literal>. Seules les secondes seront affichées en fractionné
en sortie.
</para>

<para>
Expand Down Expand Up @@ -2831,10 +2866,11 @@ P <optional> <replaceable>années</replaceable>-<replaceable>mois</replaceable>-

<para>
En interne, les valeurs <type>interval</type> sont enregistrées comme des
mois, jours et secondes. C'est fait ainsi parce que le nombre de jours
mois, jours et microsecondes. C'est fait ainsi parce que le nombre de jours
dans un mois varie, et un jour peut avoir 23 ou 25 heures s'il y a eu un
changement d'heure. Les champs mois et jours sont des entiers, alors que
le champ des secondes peut contenir des fractions. Comme les intervalles
le champ des microsecondes peut contenir des secondes fractionnelles.
Comme les intervalles
sont habituellement créés à partir de chaînes constantes ou de
soustractions de <type>timestamp</type>, cette méthode de stockage
fonctionne bien dans la plupart des cas, mais peut être la cause de
Expand Down
34 changes: 29 additions & 5 deletions postgresql/ddl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4082,6 +4082,11 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02
</programlisting>
</para>

<para>
La commande <command>ATTACH PARTITION</command> prend un verrou
<literal>SHARE UPDATE EXCLUSIVE</literal> sur la table partitionnée.
</para>

<para>
Avant d'exécuter une commande <command>ATTACH PARTITION</command>, il est
recommandé de créer une contrainte <literal>CHECK</literal> sur la table
Expand All @@ -4091,10 +4096,28 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02
valider la contrainte implicite de partition. Sans la contrainte
<literal>CHECK</literal>, la table sera parcourue pour valider la
contrainte de partition, alors qu'elle aura pris un verrou <literal>ACCESS
EXCLUSIVE</literal> sur cette partition et un verrou <literal>SHARE UPDATE
EXCLUSIVE</literal> sur la table parente. Il est recommandé de supprimer
la contrainte <literal>CHECK</literal> redondante après la fin de la
commande <command>ATTACH PARTITION</command>.
EXCLUSIVE</literal> sur cette partition. Il est recommandé de supprimer
la contrainte <literal>CHECK</literal> redondante
après la fin de la commande <command>ATTACH PARTITION</command>. Si la
table en cours d'attachement est elle-même une table partitionnée, alors
chacune de ses sous-partitions sera verrouillée récursivement et
parcourue jusqu'à ce qu'une contrainte <literal>CHECK</literal>
convenable soit rencontrée ou que les partitions feuilles sont
atteintes.
</para>

<para>
De façon similaire, si la table partitionnée a une partition par défaut
(<literal>DEFAULT</literal>), il est recommandé de créer une contrainte
<literal>CHECK</literal> qui exclut la contrainte de la partition à
attacher. Si cela n'est pas fait, alors la partition
<literal>DEFAULT</literal> sera parcourue pour vérifier qu'elle ne
contienne aucun enregistrement qui devrait être placé dans la partition
en cours d'attachement. Cette opération sera réalisée en détenant un
verrou <literal>ACCESS EXCLUSIVE</literal> sur la partition par défaut.
Si la partition par défaut est elle-même une table partitionnées, alors
chacune de ses partitions sera vérifiée récursivement de la même façon
que la table en cours d'attachement, comme indiqué ci-dessus.
</para>

<para>
Expand Down Expand Up @@ -4206,7 +4229,8 @@ ALTER INDEX measurement_city_id_logdate_key
<para>
Comme une hiérarchie de partitionnement consistant en la table
partitionnée et ses partitions est toujours une hiérarchie d'héritage,
toutes les règles normales d'héritage s'appliquent comme décrites dans
<structfield>tableoid</structfield> et toutes les règles normales
d'héritage s'appliquent comme décrites dans
<xref linkend="ddl-inherit"/>, avec quelques exceptions&nbsp;:

<itemizedlist>
Expand Down
2 changes: 1 addition & 1 deletion postgresql/ecpg.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8748,7 +8748,7 @@ int dectoint(decimal *np, int *ip);
de celle d'<productname>Informix</productname>.
<productname>Informix</productname> limite un integer entre
-32767 et 32767, alors que la limite de l'implémentation d'ECPG
dépend de l'architecture (<literal>-INT_MAX .. INT_MAX</literal>).
dépend de l'architecture (<literal>INT_MIN .. INT_MAX</literal>).
</para>
</listitem>
</varlistentry>
Expand Down
1 change: 1 addition & 0 deletions postgresql/filelist.xml
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@
<!ENTITY spgist SYSTEM "spgist.xml">
<!ENTITY gin SYSTEM "gin.xml">
<!ENTITY brin SYSTEM "brin.xml">
<!ENTITY hash SYSTEM "hash.xml">
<!ENTITY planstats SYSTEM "planstats.xml">
<!ENTITY tableam SYSTEM "tableam.xml">
<!ENTITY indexam SYSTEM "indexam.xml">
Expand Down

0 comments on commit 3cdbd8e

Please sign in to comment.