Translation updates
authorPeter Eisentraut <[email protected]>
Mon, 5 Nov 2018 13:52:07 +0000 (14:52 +0100)
committerPeter Eisentraut <[email protected]>
Mon, 5 Nov 2018 13:52:07 +0000 (14:52 +0100)
Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git
Source-Git-Hash: 0c3afa7194c2708cf0b1f6f3de858ed69b60abba

30 files changed:
src/backend/po/de.po
src/backend/po/fr.po
src/backend/po/it.po
src/backend/po/ru.po
src/backend/po/sv.po
src/bin/initdb/po/fr.po
src/bin/initdb/po/ru.po
src/bin/pg_basebackup/po/fr.po
src/bin/pg_basebackup/po/it.po
src/bin/pg_basebackup/po/ru.po
src/bin/pg_controldata/po/fr.po
src/bin/pg_controldata/po/it.po
src/bin/pg_controldata/po/ru.po
src/bin/pg_controldata/po/sv.po
src/bin/pg_ctl/po/it.po
src/bin/pg_dump/po/fr.po
src/bin/pg_dump/po/it.po
src/bin/pg_dump/po/ru.po
src/bin/pg_resetxlog/po/ru.po
src/bin/pg_rewind/po/fr.po
src/bin/pg_rewind/po/it.po
src/bin/pg_rewind/po/ru.po
src/bin/psql/po/it.po
src/bin/psql/po/ru.po
src/bin/psql/po/sv.po
src/bin/scripts/po/fr.po
src/bin/scripts/po/it.po
src/interfaces/ecpg/preproc/po/it.po
src/interfaces/ecpg/preproc/po/ru.po
src/interfaces/libpq/po/ru.po

index 356357da7ff7442f2462de1c5115679468ba5e33..5d21afa8bff5e3d81fb77a284992650a4f1c7c9e 100644 (file)
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: PostgreSQL 9.6\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
 "POT-Creation-Date: 2018-08-06 09:18+0000\n"
-"PO-Revision-Date: 2018-05-06 09:07-0400\n"
+"PO-Revision-Date: 2018-11-05 09:30+0100\n"
 "Last-Translator: Peter Eisentraut <[email protected]>\n"
 "Language-Team: German <[email protected]>\n"
 "Language: de\n"
@@ -12234,7 +12234,7 @@ msgstr "Constraint in der ON-CONFLICT-Klausel hat keinen zugehörigen Index"
 #: optimizer/util/plancat.c:679
 #, c-format
 msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints"
-msgstr "ON CONFLICT DO UDPATE nicht unterstützt mit Exclusion-Constraints"
+msgstr "ON CONFLICT DO UPDATE nicht unterstützt mit Exclusion-Constraints"
 
 #: optimizer/util/plancat.c:784
 #, c-format
index c0c2fb0958ac20152b548fec22d13eb9adae82a0..db34f7c7c70ec15783c6011bf0c7c45a8e4c24e6 100644 (file)
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 9.6\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2018-02-04 22:39+0000\n"
-"PO-Revision-Date: 2018-02-10 17:50+0100\n"
+"POT-Creation-Date: 2018-11-01 18:28+0000\n"
+"PO-Revision-Date: 2018-11-02 13:32+0100\n"
 "Last-Translator: Guillaume Lelarge <[email protected]>\n"
 "Language-Team: French <[email protected]>\n"
 "Language: fr\n"
@@ -17,38 +17,48 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 2.0.3\n"
+"X-Generator: Poedit 2.2\n"
 
 #: ../common/config_info.c:131 ../common/config_info.c:139 ../common/config_info.c:147 ../common/config_info.c:155 ../common/config_info.c:163 ../common/config_info.c:171 ../common/config_info.c:179 ../common/config_info.c:187 ../common/config_info.c:195
 msgid "not recorded"
 msgstr "non enregistré"
 
-#: ../common/controldata_utils.c:52 commands/copy.c:2855 commands/extension.c:3144 utils/adt/genfile.c:134
+#: ../common/controldata_utils.c:53 commands/copy.c:2859 commands/extension.c:3144 utils/adt/genfile.c:134
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » pour une lecture : %m"
 
-#: ../common/controldata_utils.c:56
+#: ../common/controldata_utils.c:57
 #, c-format
 msgid "%s: could not open file \"%s\" for reading: %s\n"
 msgstr "%s : n'a pas pu ouvrir le fichier « %s » en lecture : %s\n"
 
-#: ../common/controldata_utils.c:66 access/transam/timeline.c:346 access/transam/xlog.c:3226 access/transam/xlog.c:10468 access/transam/xlog.c:10481 access/transam/xlog.c:10897 access/transam/xlog.c:10940 access/transam/xlog.c:10979 access/transam/xlog.c:11022 access/transam/xlogfuncs.c:660 access/transam/xlogfuncs.c:679 commands/extension.c:3154 replication/logical/origin.c:672 replication/logical/origin.c:702
-#: replication/logical/reorderbuffer.c:3115 replication/walsender.c:504 storage/file/copydir.c:202 utils/adt/genfile.c:151
+#: ../common/controldata_utils.c:70 access/transam/timeline.c:346 access/transam/xlog.c:3259 access/transam/xlog.c:10570 access/transam/xlog.c:10583 access/transam/xlog.c:10999 access/transam/xlog.c:11042 access/transam/xlog.c:11081 access/transam/xlog.c:11124 access/transam/xlogfuncs.c:660 access/transam/xlogfuncs.c:679 commands/extension.c:3154 replication/logical/origin.c:690 replication/logical/origin.c:720
+#: replication/logical/reorderbuffer.c:3292 replication/walsender.c:507 storage/file/copydir.c:202 utils/adt/genfile.c:151
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "n'a pas pu lire le fichier « %s » : %m"
 
-#: ../common/controldata_utils.c:69
+#: ../common/controldata_utils.c:73
 #, c-format
 msgid "%s: could not read file \"%s\": %s\n"
 msgstr "%s : n'a pas pu lire le fichier « %s » : %s\n"
 
-#: ../common/controldata_utils.c:86
+#: ../common/controldata_utils.c:81
+#, c-format
+msgid "could not read file \"%s\": read %d of %d"
+msgstr "n'a pas pu lire le fichier « %s » : lu %d sur %d"
+
+#: ../common/controldata_utils.c:85
+#, c-format
+msgid "%s: could not read file \"%s\": read %d of %d\n"
+msgstr "%s : n'a pas pu lire le fichier « %s » : lu %d sur %d\n"
+
+#: ../common/controldata_utils.c:103
 msgid "calculated CRC checksum does not match value stored in file"
 msgstr "la somme de contrôle CRC calculée ne correspond par à la valeur enregistrée dans le fichier"
 
-#: ../common/controldata_utils.c:88
+#: ../common/controldata_utils.c:105
 #, c-format
 msgid ""
 "WARNING: Calculated CRC checksum does not match value stored in file.\n"
@@ -63,11 +73,11 @@ msgstr ""
 "Les résultats ci-dessous ne sont pas dignes de confiance.\n"
 "\n"
 
-#: ../common/controldata_utils.c:97
+#: ../common/controldata_utils.c:114
 msgid "byte ordering mismatch"
 msgstr "différence de l'ordre des octets"
 
-#: ../common/controldata_utils.c:99
+#: ../common/controldata_utils.c:116
 #, c-format
 msgid ""
 "WARNING: possible byte ordering mismatch\n"
@@ -141,9 +151,9 @@ msgstr "n'a pas pu lire le répertoire « %s » : %s\n"
 msgid "could not close directory \"%s\": %s\n"
 msgstr "n'a pas pu fermer le répertoire « %s » : %s\n"
 
-#: ../common/psprintf.c:179 ../port/path.c:630 ../port/path.c:668 ../port/path.c:685 access/transam/twophase.c:1262 access/transam/xlog.c:6122 lib/stringinfo.c:258 libpq/auth.c:864 libpq/auth.c:1227 libpq/auth.c:1295 libpq/auth.c:1811 postmaster/bgworker.c:310 postmaster/bgworker.c:813 postmaster/postmaster.c:2405 postmaster/postmaster.c:2436 postmaster/postmaster.c:3970 postmaster/postmaster.c:4668 postmaster/postmaster.c:4743
-#: postmaster/postmaster.c:5416 postmaster/postmaster.c:5738 replication/libpqwalreceiver/libpqwalreceiver.c:143 replication/logical/logical.c:169 storage/buffer/localbuf.c:436 storage/file/fd.c:735 storage/file/fd.c:1163 storage/file/fd.c:1281 storage/file/fd.c:1998 storage/ipc/procarray.c:1062 storage/ipc/procarray.c:1548 storage/ipc/procarray.c:1555 storage/ipc/procarray.c:1969 storage/ipc/procarray.c:2580 utils/adt/formatting.c:1522
-#: utils/adt/formatting.c:1642 utils/adt/formatting.c:1763 utils/adt/pg_locale.c:463 utils/adt/pg_locale.c:647 utils/adt/regexp.c:219 utils/adt/varlena.c:4440 utils/adt/varlena.c:4461 utils/fmgr/dfmgr.c:216 utils/hash/dynahash.c:429 utils/hash/dynahash.c:535 utils/hash/dynahash.c:1046 utils/mb/mbutils.c:376 utils/mb/mbutils.c:709 utils/misc/guc.c:3888 utils/misc/guc.c:3904 utils/misc/guc.c:3917 utils/misc/guc.c:6863 utils/misc/tzparser.c:468
+#: ../common/psprintf.c:179 ../port/path.c:630 ../port/path.c:668 ../port/path.c:685 access/transam/twophase.c:1272 access/transam/xlog.c:6169 lib/stringinfo.c:258 libpq/auth.c:868 libpq/auth.c:1236 libpq/auth.c:1304 libpq/auth.c:1822 postmaster/bgworker.c:310 postmaster/bgworker.c:806 postmaster/postmaster.c:2405 postmaster/postmaster.c:2436 postmaster/postmaster.c:3970 postmaster/postmaster.c:4668 postmaster/postmaster.c:4743
+#: postmaster/postmaster.c:5416 postmaster/postmaster.c:5738 replication/libpqwalreceiver/libpqwalreceiver.c:143 replication/logical/logical.c:174 storage/buffer/localbuf.c:436 storage/file/fd.c:735 storage/file/fd.c:1163 storage/file/fd.c:1281 storage/file/fd.c:1998 storage/ipc/procarray.c:1073 storage/ipc/procarray.c:1559 storage/ipc/procarray.c:1566 storage/ipc/procarray.c:1986 storage/ipc/procarray.c:2597 utils/adt/formatting.c:1522
+#: utils/adt/formatting.c:1642 utils/adt/formatting.c:1763 utils/adt/pg_locale.c:463 utils/adt/pg_locale.c:647 utils/adt/regexp.c:223 utils/adt/varlena.c:4552 utils/adt/varlena.c:4573 utils/fmgr/dfmgr.c:216 utils/hash/dynahash.c:429 utils/hash/dynahash.c:535 utils/hash/dynahash.c:1046 utils/mb/mbutils.c:376 utils/mb/mbutils.c:709 utils/misc/guc.c:3888 utils/misc/guc.c:3904 utils/misc/guc.c:3917 utils/misc/guc.c:6887 utils/misc/tzparser.c:468
 #: utils/mmgr/aset.c:510 utils/mmgr/mcxt.c:767 utils/mmgr/mcxt.c:802 utils/mmgr/mcxt.c:839 utils/mmgr/mcxt.c:876 utils/mmgr/mcxt.c:910 utils/mmgr/mcxt.c:939 utils/mmgr/mcxt.c:973 utils/mmgr/mcxt.c:1055 utils/mmgr/mcxt.c:1089 utils/mmgr/mcxt.c:1138
 #, c-format
 msgid "out of memory"
@@ -211,7 +221,7 @@ msgstr "n'a pas pu supprimer le fichier ou répertoire « %s » : %s\n"
 msgid "could not look up effective user ID %ld: %s"
 msgstr "n'a pas pu trouver l'identifiant réel %ld de l'utilisateur : %s"
 
-#: ../common/username.c:47 libpq/auth.c:1758
+#: ../common/username.c:47 libpq/auth.c:1769
 msgid "user does not exist"
 msgstr "l'utilisateur n'existe pas"
 
@@ -342,12 +352,24 @@ msgstr ""
 "n'a pas pu obtenir le SID du groupe des utilisateurs avec pouvoir :\n"
 "code d'erreur %lu\n"
 
-#: access/brin/brin.c:810
+#: access/brin/brin.c:794 access/gin/ginfast.c:988 access/transam/xlog.c:9985 access/transam/xlog.c:10509 access/transam/xlogfuncs.c:288 access/transam/xlogfuncs.c:315 access/transam/xlogfuncs.c:354 access/transam/xlogfuncs.c:375 access/transam/xlogfuncs.c:396 access/transam/xlogfuncs.c:466 access/transam/xlogfuncs.c:522
+#, c-format
+msgid "recovery is in progress"
+msgstr "restauration en cours"
+
+#: access/brin/brin.c:795
+#, c-format
+msgid "BRIN control functions cannot be executed during recovery."
+msgstr ""
+"Les fonctions de contrôle BRIN ne peuvent pas\n"
+"être exécutées lors de la restauration."
+
+#: access/brin/brin.c:816
 #, c-format
 msgid "\"%s\" is not a BRIN index"
 msgstr "« %s » n'est pas un index BRIN"
 
-#: access/brin/brin.c:826
+#: access/brin/brin.c:832
 #, c-format
 msgid "could not open parent table of index %s"
 msgstr "n'a pas pu ouvrir la table parent de l'index %s"
@@ -419,7 +441,7 @@ msgstr "il manque des opérateurs à la classe d'opérateur « %s » de la méth
 msgid "operator class \"%s\" of access method %s is missing support function %d"
 msgstr "la classe d'opérateur « %s » de la méthode d'accès %s nécessite la fonction de support %d"
 
-#: access/common/heaptuple.c:708 access/common/heaptuple.c:1339
+#: access/common/heaptuple.c:708 access/common/heaptuple.c:1365
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "le nombre de colonnes (%d) dépasse la limite (%d)"
@@ -434,7 +456,7 @@ msgstr "le nombre de colonnes indexées (%d) dépasse la limite (%d)"
 msgid "index row requires %zu bytes, maximum size is %zu"
 msgstr "la ligne index requiert %zu octets, la taille maximum est %zu"
 
-#: access/common/printtup.c:292 tcop/fastpath.c:182 tcop/fastpath.c:532 tcop/postgres.c:1711
+#: access/common/printtup.c:292 tcop/fastpath.c:182 tcop/fastpath.c:532 tcop/postgres.c:1734
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "code de format non supporté : %d"
@@ -531,22 +553,17 @@ msgstr "la posting list est trop longue"
 msgid "Reduce maintenance_work_mem."
 msgstr "Réduisez le maintenance_work_mem"
 
-#: access/gin/ginfast.c:993 access/transam/xlog.c:9883 access/transam/xlog.c:10407 access/transam/xlogfuncs.c:288 access/transam/xlogfuncs.c:315 access/transam/xlogfuncs.c:354 access/transam/xlogfuncs.c:375 access/transam/xlogfuncs.c:396 access/transam/xlogfuncs.c:466 access/transam/xlogfuncs.c:522
-#, c-format
-msgid "recovery is in progress"
-msgstr "restauration en cours"
-
-#: access/gin/ginfast.c:994
+#: access/gin/ginfast.c:989
 #, c-format
 msgid "GIN pending list cannot be cleaned up during recovery."
 msgstr "la pending list GIN ne peut pas être nettoyée lors de la restauration"
 
-#: access/gin/ginfast.c:1001
+#: access/gin/ginfast.c:996
 #, c-format
 msgid "\"%s\" is not a GIN index"
 msgstr "« %s » n'est pas un index GIN"
 
-#: access/gin/ginfast.c:1012
+#: access/gin/ginfast.c:1007
 #, c-format
 msgid "cannot access temporary indexes of other sessions"
 msgstr "ne peut pas accéder aux index temporaires d'autres sessions"
@@ -575,19 +592,19 @@ msgstr ""
 msgid "operator class \"%s\" of access method %s is missing support function %d or %d"
 msgstr "la classe d'opérateur « %s » de la méthode d'accès %s nécessite la fonction de support %d ou %d"
 
-#: access/gist/gist.c:681 access/gist/gistvacuum.c:258
+#: access/gist/gist.c:681 access/gist/gistvacuum.c:257
 #, c-format
 msgid "index \"%s\" contains an inner tuple marked as invalid"
 msgstr "l'index « %s » contient une ligne interne marquée comme invalide"
 
-#: access/gist/gist.c:683 access/gist/gistvacuum.c:260
+#: access/gist/gist.c:683 access/gist/gistvacuum.c:259
 #, c-format
 msgid "This is caused by an incomplete page split at crash recovery before upgrading to PostgreSQL 9.1."
 msgstr ""
 "Ceci est dû à la division d'une page incomplète à la restauration suite à un\n"
 "crash avant la mise à jour en 9.1."
 
-#: access/gist/gist.c:684 access/gist/gistutil.c:738 access/gist/gistutil.c:749 access/gist/gistvacuum.c:261 access/hash/hashutil.c:172 access/hash/hashutil.c:183 access/hash/hashutil.c:195 access/hash/hashutil.c:216 access/nbtree/nbtpage.c:518 access/nbtree/nbtpage.c:529
+#: access/gist/gist.c:684 access/gist/gistutil.c:738 access/gist/gistutil.c:749 access/gist/gistvacuum.c:260 access/hash/hashutil.c:172 access/hash/hashutil.c:183 access/hash/hashutil.c:195 access/hash/hashutil.c:216 access/nbtree/nbtpage.c:518 access/nbtree/nbtpage.c:529
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Merci d'exécuter REINDEX sur cet objet."
@@ -691,85 +708,85 @@ msgstr "il manque des opérateurs inter-type pour la famille d'opérateur « %s
 msgid "\"%s\" is an index"
 msgstr "« %s » est un index"
 
-#: access/heap/heapam.c:1300 access/heap/heapam.c:1328 access/heap/heapam.c:1360 catalog/aclchk.c:1763 commands/tablecmds.c:9095 commands/tablecmds.c:12203
+#: access/heap/heapam.c:1300 access/heap/heapam.c:1328 access/heap/heapam.c:1360 catalog/aclchk.c:1763 commands/tablecmds.c:9105 commands/tablecmds.c:12200
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "« %s » est un type composite"
 
-#: access/heap/heapam.c:2567
+#: access/heap/heapam.c:2573
 #, c-format
 msgid "cannot insert tuples during a parallel operation"
 msgstr "ne peut pas insérer les lignes lors d'une opération parallèle"
 
-#: access/heap/heapam.c:3017
+#: access/heap/heapam.c:3018
 #, c-format
 msgid "cannot delete tuples during a parallel operation"
 msgstr "ne peut pas supprimer les lignes lors d'une opération parallèle"
 
-#: access/heap/heapam.c:3063
+#: access/heap/heapam.c:3064
 #, c-format
 msgid "attempted to delete invisible tuple"
 msgstr "a tenté de supprimer la ligne invisible"
 
-#: access/heap/heapam.c:3489 access/heap/heapam.c:6274
+#: access/heap/heapam.c:3490 access/heap/heapam.c:6283
 #, c-format
 msgid "cannot update tuples during a parallel operation"
 msgstr "ne peut pas mettre à jour les lignes lors d'une opération parallèle"
 
-#: access/heap/heapam.c:3611
+#: access/heap/heapam.c:3612
 #, c-format
 msgid "attempted to update invisible tuple"
 msgstr "a tenté de mettre à jour la ligne invisible"
 
-#: access/heap/heapam.c:4964 access/heap/heapam.c:5002 access/heap/heapam.c:5254 executor/execMain.c:2311
+#: access/heap/heapam.c:4965 access/heap/heapam.c:5003 access/heap/heapam.c:5255 executor/execMain.c:2316
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "n'a pas pu obtenir un verrou sur la relation « %s »"
 
-#: access/heap/hio.c:322 access/heap/rewriteheap.c:667
+#: access/heap/hio.c:322 access/heap/rewriteheap.c:680
 #, c-format
 msgid "row is too big: size %zu, maximum size %zu"
 msgstr "la ligne est trop grande : taille %zu, taille maximale %zu"
 
-#: access/heap/rewriteheap.c:926
+#: access/heap/rewriteheap.c:939
 #, c-format
 msgid "could not write to file \"%s\", wrote %d of %d: %m"
 msgstr "n'a pas pu écrire le fichier « %s », a écrit %d de %d : %m"
 
-#: access/heap/rewriteheap.c:966 access/heap/rewriteheap.c:1178 access/heap/rewriteheap.c:1275 access/transam/timeline.c:407 access/transam/timeline.c:483 access/transam/xlog.c:3093 access/transam/xlog.c:3255 replication/logical/snapbuild.c:1605 replication/slot.c:1105 replication/slot.c:1190 storage/file/fd.c:630 storage/file/fd.c:3151 storage/smgr/md.c:1041 storage/smgr/md.c:1274 storage/smgr/md.c:1447 utils/misc/guc.c:6885
+#: access/heap/rewriteheap.c:979 access/heap/rewriteheap.c:1197 access/heap/rewriteheap.c:1294 access/transam/timeline.c:407 access/transam/timeline.c:483 access/transam/xlog.c:3126 access/transam/xlog.c:3288 replication/logical/snapbuild.c:1621 replication/slot.c:1113 replication/slot.c:1203 storage/file/fd.c:630 storage/file/fd.c:3151 storage/smgr/md.c:1042 storage/smgr/md.c:1275 storage/smgr/md.c:1448 utils/misc/guc.c:6909
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le fichier « %s » : %m"
 
-#: access/heap/rewriteheap.c:1021 access/heap/rewriteheap.c:1141 access/transam/timeline.c:315 access/transam/timeline.c:461 access/transam/xlog.c:3049 access/transam/xlog.c:3198 access/transam/xlog.c:10217 access/transam/xlog.c:10255 access/transam/xlog.c:10664 postmaster/postmaster.c:4435 replication/logical/origin.c:546 replication/slot.c:1062 storage/file/copydir.c:176 storage/smgr/md.c:327 utils/time/snapmgr.c:1275
+#: access/heap/rewriteheap.c:1034 access/heap/rewriteheap.c:1154 access/transam/timeline.c:315 access/transam/timeline.c:461 access/transam/xlog.c:3083 access/transam/xlog.c:3231 access/transam/xlog.c:10319 access/transam/xlog.c:10357 access/transam/xlog.c:10766 postmaster/postmaster.c:4435 replication/logical/origin.c:546 replication/slot.c:1067 storage/file/copydir.c:176 storage/smgr/md.c:328 utils/time/snapmgr.c:1275
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier « %s » : %m"
 
-#: access/heap/rewriteheap.c:1150
+#: access/heap/rewriteheap.c:1163
 #, c-format
 msgid "could not truncate file \"%s\" to %u: %m"
 msgstr "n'a pas pu tronquer le fichier « %s » en %u : %m"
 
-#: access/heap/rewriteheap.c:1157 replication/walsender.c:486 storage/smgr/md.c:1899
+#: access/heap/rewriteheap.c:1170 replication/walsender.c:489 storage/smgr/md.c:1937
 #, c-format
 msgid "could not seek to end of file \"%s\": %m"
 msgstr "n'a pas pu trouver la fin du fichier « %s » : %m"
 
-#: access/heap/rewriteheap.c:1168 access/transam/timeline.c:367 access/transam/timeline.c:401 access/transam/timeline.c:477 access/transam/xlog.c:3084 access/transam/xlog.c:3248 postmaster/postmaster.c:4445 postmaster/postmaster.c:4455 replication/logical/origin.c:555 replication/logical/origin.c:594 replication/logical/origin.c:610 replication/logical/snapbuild.c:1589 replication/slot.c:1091 storage/file/copydir.c:213
-#: utils/init/miscinit.c:1228 utils/init/miscinit.c:1237 utils/init/miscinit.c:1244 utils/misc/guc.c:6846 utils/misc/guc.c:6877 utils/misc/guc.c:8727 utils/misc/guc.c:8741 utils/time/snapmgr.c:1280 utils/time/snapmgr.c:1287
+#: access/heap/rewriteheap.c:1186 access/transam/timeline.c:367 access/transam/timeline.c:401 access/transam/timeline.c:477 access/transam/xlog.c:3114 access/transam/xlog.c:3281 postmaster/postmaster.c:4445 postmaster/postmaster.c:4455 replication/logical/origin.c:561 replication/logical/origin.c:606 replication/logical/origin.c:628 replication/logical/snapbuild.c:1602 replication/slot.c:1099 storage/file/copydir.c:213
+#: utils/init/miscinit.c:1236 utils/init/miscinit.c:1245 utils/init/miscinit.c:1252 utils/misc/guc.c:6870 utils/misc/guc.c:6901 utils/misc/guc.c:8751 utils/misc/guc.c:8765 utils/time/snapmgr.c:1280 utils/time/snapmgr.c:1287
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "n'a pas pu écrire dans le fichier « %s » : %m"
 
-#: access/heap/rewriteheap.c:1251 access/transam/xlog.c:10486 access/transam/xlogarchive.c:114 access/transam/xlogarchive.c:468 replication/logical/origin.c:533 replication/logical/reorderbuffer.c:2648 replication/logical/reorderbuffer.c:2705 replication/logical/snapbuild.c:1538 replication/logical/snapbuild.c:1901 replication/slot.c:1164 storage/ipc/dsm.c:326 storage/smgr/md.c:427 storage/smgr/md.c:476 storage/smgr/md.c:1394
+#: access/heap/rewriteheap.c:1270 access/transam/xlog.c:10588 access/transam/xlogarchive.c:114 access/transam/xlogarchive.c:468 replication/logical/origin.c:533 replication/logical/reorderbuffer.c:2800 replication/logical/snapbuild.c:1545 replication/logical/snapbuild.c:1929 replication/slot.c:1174 storage/ipc/dsm.c:326 storage/smgr/md.c:428 storage/smgr/md.c:477 storage/smgr/md.c:1395
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "n'a pas pu supprimer le fichier « %s » : %m"
 
-#: access/heap/rewriteheap.c:1265 access/transam/timeline.c:111 access/transam/timeline.c:236 access/transam/timeline.c:334 access/transam/xlog.c:3025 access/transam/xlog.c:3142 access/transam/xlog.c:3183 access/transam/xlog.c:3456 access/transam/xlog.c:3534 access/transam/xlogutils.c:701 replication/basebackup.c:404 replication/basebackup.c:1151 replication/logical/origin.c:665 replication/logical/reorderbuffer.c:2171
-#: replication/logical/reorderbuffer.c:2418 replication/logical/reorderbuffer.c:3097 replication/logical/snapbuild.c:1582 replication/logical/snapbuild.c:1666 replication/slot.c:1179 replication/walsender.c:479 replication/walsender.c:2154 storage/file/copydir.c:169 storage/file/fd.c:613 storage/file/fd.c:3063 storage/file/fd.c:3130 storage/smgr/md.c:609 utils/error/elog.c:1879 utils/init/miscinit.c:1163 utils/init/miscinit.c:1284
-#: utils/init/miscinit.c:1362 utils/misc/guc.c:7105 utils/misc/guc.c:7138
+#: access/heap/rewriteheap.c:1284 access/transam/timeline.c:111 access/transam/timeline.c:236 access/transam/timeline.c:334 access/transam/xlog.c:3059 access/transam/xlog.c:3175 access/transam/xlog.c:3216 access/transam/xlog.c:3489 access/transam/xlog.c:3567 access/transam/xlogutils.c:701 replication/basebackup.c:407 replication/basebackup.c:1154 replication/logical/origin.c:683 replication/logical/reorderbuffer.c:2331
+#: replication/logical/reorderbuffer.c:2575 replication/logical/reorderbuffer.c:3274 replication/logical/snapbuild.c:1589 replication/logical/snapbuild.c:1682 replication/slot.c:1189 replication/walsender.c:482 replication/walsender.c:2162 storage/file/copydir.c:169 storage/file/fd.c:613 storage/file/fd.c:3063 storage/file/fd.c:3130 storage/smgr/md.c:610 utils/error/elog.c:1879 utils/init/miscinit.c:1171 utils/init/miscinit.c:1292
+#: utils/init/miscinit.c:1370 utils/misc/guc.c:7129 utils/misc/guc.c:7162
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » : %m"
@@ -784,7 +801,7 @@ msgstr "la méthode d'accès « %s » n'est pas de type %s"
 msgid "index access method \"%s\" does not have a handler"
 msgstr "la méthode d'accès « %s » n'a pas de handler"
 
-#: access/index/indexam.c:155 catalog/objectaddress.c:1196 commands/indexcmds.c:1803 commands/tablecmds.c:242 commands/tablecmds.c:12194
+#: access/index/indexam.c:155 catalog/objectaddress.c:1196 commands/indexcmds.c:1815 commands/tablecmds.c:242 commands/tablecmds.c:12191
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "« %s » n'est pas un index"
@@ -830,12 +847,12 @@ msgstr "l'index « %s » n'est pas un btree"
 msgid "version mismatch in index \"%s\": file version %d, code version %d"
 msgstr "la version ne correspond pas dans l'index « %s » : version du fichier %d, version du code %d"
 
-#: access/nbtree/nbtpage.c:1152
+#: access/nbtree/nbtpage.c:1160
 #, c-format
 msgid "index \"%s\" contains a half-dead internal page"
 msgstr "l'index « %s » contient une page interne à moitié morte"
 
-#: access/nbtree/nbtpage.c:1154
+#: access/nbtree/nbtpage.c:1162
 #, c-format
 msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it."
 msgstr "Ceci peut être dû à un VACUUM interrompu en version 9.3 ou antérieure, avant la mise à jour. Merci d'utiliser REINDEX."
@@ -1008,36 +1025,36 @@ msgstr "ne peut pas tronquer jusqu'au MutiXact %u car il n'existe pas sur disque
 msgid "invalid MultiXactId: %u"
 msgstr "MultiXactId invalide : %u"
 
-#: access/transam/parallel.c:634
+#: access/transam/parallel.c:638
 #, c-format
 msgid "parallel worker failed to initialize"
 msgstr "échec de l'initialisation du worker parallèle"
 
-#: access/transam/parallel.c:635
+#: access/transam/parallel.c:639
 #, c-format
 msgid "More details may be available in the server log."
 msgstr "Plus de détails sont disponibles dans les traces du serveur."
 
-#: access/transam/parallel.c:695
+#: access/transam/parallel.c:699
 #, c-format
 msgid "postmaster exited during a parallel transaction"
 msgstr "postmaster a quitté pendant une transaction parallèle"
 
-#: access/transam/parallel.c:884
+#: access/transam/parallel.c:888
 #, c-format
 msgid "lost connection to parallel worker"
 msgstr "perte de la connexion au processus parallèle"
 
-#: access/transam/parallel.c:946 access/transam/parallel.c:948
+#: access/transam/parallel.c:950 access/transam/parallel.c:952
 msgid "parallel worker"
 msgstr "processus parallèle"
 
-#: access/transam/parallel.c:1089
+#: access/transam/parallel.c:1093
 #, c-format
 msgid "could not map dynamic shared memory segment"
 msgstr "n'a pas pu mapper le segment de mémoire partagée dynamique"
 
-#: access/transam/parallel.c:1094
+#: access/transam/parallel.c:1098
 #, c-format
 msgid "invalid magic number in dynamic shared memory segment"
 msgstr "numéro magique invalide dans le segment de mémoire partagée dynamique"
@@ -1129,7 +1146,7 @@ msgstr ""
 "Les identifiants timeline doivent être plus petits que les enfants des\n"
 "identifiants timeline."
 
-#: access/transam/timeline.c:412 access/transam/timeline.c:488 access/transam/xlog.c:3099 access/transam/xlog.c:3260 access/transam/xlogfuncs.c:685 commands/copy.c:1709 storage/file/copydir.c:223
+#: access/transam/timeline.c:412 access/transam/timeline.c:488 access/transam/xlog.c:3132 access/transam/xlog.c:3293 access/transam/xlogfuncs.c:685 commands/copy.c:1709 storage/file/copydir.c:223
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "n'a pas pu fermer le fichier « %s » : %m"
@@ -1215,93 +1232,93 @@ msgstr ""
 "n'a pas pu ouvrir le fichier d'état de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1178
+#: access/transam/twophase.c:1182
 #, c-format
 msgid "could not stat two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu récupérer des informations sur le fichier d'état de la validation\n"
 "en deux phases nommé « %s » : %m"
 
-#: access/transam/twophase.c:1210
+#: access/transam/twophase.c:1219
 #, c-format
 msgid "could not read two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu lire le fichier d'état de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1263 access/transam/xlog.c:6123
+#: access/transam/twophase.c:1273 access/transam/xlog.c:6170
 #, c-format
 msgid "Failed while allocating an XLog reading processor."
 msgstr "Échec lors de l'allocation d'un processeur de lecture XLog"
 
-#: access/transam/twophase.c:1269
+#: access/transam/twophase.c:1279
 #, c-format
 msgid "could not read two-phase state from xlog at %X/%X"
 msgstr "n'a pas pu lire le fichier d'état de la validation en deux phases depuis les journaux de transaction à %X/%X"
 
-#: access/transam/twophase.c:1277
+#: access/transam/twophase.c:1287
 #, c-format
 msgid "expected two-phase state data is not present in xlog at %X/%X"
 msgstr ""
 "le fichier d'état de la validation en deux phases attendu n'est pas présent\n"
 "dans les journaux de transaction à %X/%X"
 
-#: access/transam/twophase.c:1512
+#: access/transam/twophase.c:1522
 #, c-format
 msgid "could not remove two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu supprimer le fichier d'état de la validation en deux phases\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1542
+#: access/transam/twophase.c:1552
 #, c-format
 msgid "could not recreate two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu re-créer le fichier d'état de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1551 access/transam/twophase.c:1558
+#: access/transam/twophase.c:1567 access/transam/twophase.c:1579
 #, c-format
 msgid "could not write two-phase state file: %m"
 msgstr "n'a pas pu écrire dans le fichier d'état de la validation en deux phases : %m"
 
-#: access/transam/twophase.c:1570
+#: access/transam/twophase.c:1594
 #, c-format
 msgid "could not fsync two-phase state file: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le fichier d'état de la\n"
 "validation en deux phases : %m"
 
-#: access/transam/twophase.c:1576
+#: access/transam/twophase.c:1600
 #, c-format
 msgid "could not close two-phase state file: %m"
 msgstr "n'a pas pu fermer le fichier d'état de la validation en deux phases : %m"
 
-#: access/transam/twophase.c:1649
+#: access/transam/twophase.c:1673
 #, c-format
 msgid "%u two-phase state file was written for long-running prepared transactions"
 msgid_plural "%u two-phase state files were written for long-running prepared transactions"
 msgstr[0] "le fichier d'état de la validation en deux phases %u a été écrit pour des transaction préparée de longue duré"
 msgstr[1] "les fichiers d'état de la validation en deux phases %u a été écrit pour des transaction préparée de longue duré"
 
-#: access/transam/twophase.c:1713
+#: access/transam/twophase.c:1737
 #, c-format
 msgid "removing future two-phase state file \"%s\""
 msgstr "suppression du futur fichier d'état de la validation en deux phases nommé « %s »"
 
-#: access/transam/twophase.c:1729 access/transam/twophase.c:1740 access/transam/twophase.c:1860 access/transam/twophase.c:1871 access/transam/twophase.c:1948
+#: access/transam/twophase.c:1753 access/transam/twophase.c:1764 access/transam/twophase.c:1884 access/transam/twophase.c:1895 access/transam/twophase.c:1972
 #, c-format
 msgid "removing corrupt two-phase state file \"%s\""
 msgstr ""
 "suppression du fichier d'état corrompu de la validation en deux phases nommé\n"
 "« %s »"
 
-#: access/transam/twophase.c:1849 access/transam/twophase.c:1937
+#: access/transam/twophase.c:1873 access/transam/twophase.c:1961
 #, c-format
 msgid "removing stale two-phase state file \"%s\""
 msgstr "suppression du vieux fichier d'état de la validation en deux phases nommé « %s »"
 
-#: access/transam/twophase.c:1955
+#: access/transam/twophase.c:1979
 #, c-format
 msgid "recovering prepared transaction %u"
 msgstr "récupération de la transaction préparée %u"
@@ -1353,42 +1370,42 @@ msgstr ""
 "la limite de réinitialisation de l'identifiant de transaction est %u,\n"
 "limité par la base de données d'OID %u"
 
-#: access/transam/xact.c:943
+#: access/transam/xact.c:965
 #, c-format
 msgid "cannot have more than 2^32-2 commands in a transaction"
 msgstr "ne peux pas avoir plus de 2^32-2 commandes dans une transaction"
 
-#: access/transam/xact.c:1467
+#: access/transam/xact.c:1489
 #, c-format
 msgid "maximum number of committed subtransactions (%d) exceeded"
 msgstr "nombre maximum de sous-transactions validées (%d) dépassé"
 
-#: access/transam/xact.c:2260
+#: access/transam/xact.c:2288
 #, c-format
 msgid "cannot PREPARE a transaction that has operated on temporary tables"
 msgstr ""
 "ne peut pas préparer (PREPARE) une transaction qui a travaillé sur des\n"
 "tables temporaires"
 
-#: access/transam/xact.c:2270
+#: access/transam/xact.c:2298
 #, c-format
 msgid "cannot PREPARE a transaction that has exported snapshots"
 msgstr "ne peut pas préparer (PREPARE) une transaction qui a exporté des snapshots"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3148
+#: access/transam/xact.c:3176
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "%s ne peut pas être exécuté dans un bloc de transaction"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3158
+#: access/transam/xact.c:3186
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "%s ne peut pas être exécuté dans un sous-bloc de transaction"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3168
+#: access/transam/xact.c:3196
 #, c-format
 msgid "%s cannot be executed from a function or multi-command string"
 msgstr ""
@@ -1396,207 +1413,212 @@ msgstr ""
 "contenant plusieurs commandes"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3239
+#: access/transam/xact.c:3267
 #, c-format
 msgid "%s can only be used in transaction blocks"
 msgstr "%s peut seulement être utilisé dans des blocs de transaction"
 
-#: access/transam/xact.c:3423
+#: access/transam/xact.c:3451
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "une transaction est déjà en cours"
 
-#: access/transam/xact.c:3591 access/transam/xact.c:3694
+#: access/transam/xact.c:3619 access/transam/xact.c:3722
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "aucune transaction en cours"
 
-#: access/transam/xact.c:3602
+#: access/transam/xact.c:3630
 #, c-format
 msgid "cannot commit during a parallel operation"
 msgstr "ne peut pas valider pendant une opération parallèle"
 
-#: access/transam/xact.c:3705
+#: access/transam/xact.c:3733
 #, c-format
 msgid "cannot abort during a parallel operation"
 msgstr "ne peut pas annuler pendant une opération en parallèle"
 
-#: access/transam/xact.c:3747
+#: access/transam/xact.c:3775
 #, c-format
 msgid "cannot define savepoints during a parallel operation"
 msgstr "ne peut pas définir de points de sauvegarde lors d'une opération parallèle"
 
-#: access/transam/xact.c:3814
+#: access/transam/xact.c:3842
 #, c-format
 msgid "cannot release savepoints during a parallel operation"
 msgstr "ne peut pas relâcher de points de sauvegarde pendant une opération parallèle"
 
-#: access/transam/xact.c:3825 access/transam/xact.c:3877 access/transam/xact.c:3883 access/transam/xact.c:3939 access/transam/xact.c:3989 access/transam/xact.c:3995
+#: access/transam/xact.c:3853 access/transam/xact.c:3905 access/transam/xact.c:3911 access/transam/xact.c:3967 access/transam/xact.c:4017 access/transam/xact.c:4023
 #, c-format
 msgid "no such savepoint"
 msgstr "aucun point de sauvegarde"
 
-#: access/transam/xact.c:3927
+#: access/transam/xact.c:3955
 #, c-format
 msgid "cannot rollback to savepoints during a parallel operation"
 msgstr "ne peut pas retourner à un point de sauvegarde pendant un opération parallèle"
 
-#: access/transam/xact.c:4055
+#: access/transam/xact.c:4083
 #, c-format
 msgid "cannot start subtransactions during a parallel operation"
 msgstr "ne peut pas lancer de sous-transactions pendant une opération parallèle"
 
-#: access/transam/xact.c:4122
+#: access/transam/xact.c:4150
 #, c-format
 msgid "cannot commit subtransactions during a parallel operation"
 msgstr "ne peut pas valider de sous-transactions pendant une opération parallèle"
 
-#: access/transam/xact.c:4751
+#: access/transam/xact.c:4779
 #, c-format
 msgid "cannot have more than 2^32-1 subtransactions in a transaction"
 msgstr "ne peut pas avoir plus de 2^32-1 sous-transactions dans une transaction"
 
-#: access/transam/xlog.c:2305
+#: access/transam/xlog.c:2318
 #, c-format
 msgid "could not seek in log file %s to offset %u: %m"
 msgstr "n'a pas pu se déplacer dans le fichier de transactions « %s » au décalage %u : %m"
 
-#: access/transam/xlog.c:2325
+#: access/transam/xlog.c:2338
 #, c-format
 msgid "could not write to log file %s at offset %u, length %zu: %m"
 msgstr "n'a pas pu écrire le fichier de transactions %s au décalage %u, longueur %zu : %m"
 
-#: access/transam/xlog.c:2588
+#: access/transam/xlog.c:2613
 #, c-format
 msgid "updated min recovery point to %X/%X on timeline %u"
 msgstr "mise à jour du point minimum de restauration sur %X/%X pour la timeline %u"
 
-#: access/transam/xlog.c:3230
+#: access/transam/xlog.c:3263
 #, c-format
 msgid "not enough data in file \"%s\""
 msgstr "données insuffisantes dans le fichier « %s »"
 
-#: access/transam/xlog.c:3371
+#: access/transam/xlog.c:3404
 #, c-format
 msgid "could not open transaction log file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le journal des transactions « %s » : %m"
 
-#: access/transam/xlog.c:3560 access/transam/xlog.c:5353
+#: access/transam/xlog.c:3593 access/transam/xlog.c:5400
 #, c-format
 msgid "could not close log file %s: %m"
 msgstr "n'a pas pu fermer le fichier de transactions « %s » : %m"
 
-#: access/transam/xlog.c:3624 access/transam/xlogutils.c:696 replication/walsender.c:2149
+#: access/transam/xlog.c:3657 access/transam/xlogutils.c:696 replication/walsender.c:2157
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "le segment demandé du journal de transaction, %s, a déjà été supprimé"
 
-#: access/transam/xlog.c:3685 access/transam/xlog.c:3760 access/transam/xlog.c:3958
+#: access/transam/xlog.c:3718 access/transam/xlog.c:3793 access/transam/xlog.c:3991
 #, c-format
 msgid "could not open transaction log directory \"%s\": %m"
 msgstr "n'a pas pu ouvrir le répertoire des journaux de transactions « %s » : %m"
 
-#: access/transam/xlog.c:3841
+#: access/transam/xlog.c:3874
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "recyclage du journal de transactions « %s »"
 
-#: access/transam/xlog.c:3853
+#: access/transam/xlog.c:3886
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "suppression du journal de transactions « %s »"
 
-#: access/transam/xlog.c:3873
+#: access/transam/xlog.c:3906
 #, c-format
 msgid "could not rename old transaction log file \"%s\": %m"
 msgstr "n'a pas pu renommer l'ancien journal de transactions « %s » : %m"
 
-#: access/transam/xlog.c:3885
+#: access/transam/xlog.c:3918
 #, c-format
 msgid "could not remove old transaction log file \"%s\": %m"
 msgstr "n'a pas pu supprimer l'ancien journal de transaction « %s » : %m"
 
-#: access/transam/xlog.c:3918 access/transam/xlog.c:3928
+#: access/transam/xlog.c:3951 access/transam/xlog.c:3961
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "le répertoire « %s » requis pour les journaux de transactions n'existe pas"
 
-#: access/transam/xlog.c:3934
+#: access/transam/xlog.c:3967
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "création du répertoire manquant « %s » pour les journaux de transactions"
 
-#: access/transam/xlog.c:3937
+#: access/transam/xlog.c:3970
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "n'a pas pu créer le répertoire « %s » manquant : %m"
 
-#: access/transam/xlog.c:3968
+#: access/transam/xlog.c:4001
 #, c-format
 msgid "removing transaction log backup history file \"%s\""
 msgstr "suppression du fichier historique des journaux de transaction « %s »"
 
-#: access/transam/xlog.c:4049
+#: access/transam/xlog.c:4082
 #, c-format
 msgid "unexpected timeline ID %u in log segment %s, offset %u"
 msgstr "identifiant timeline %u inattendu dans le journal de transactions %s, décalage %u"
 
-#: access/transam/xlog.c:4171
+#: access/transam/xlog.c:4210
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr ""
 "le nouveau timeline %u n'est pas un fils du timeline %u du système de bases\n"
 "de données"
 
-#: access/transam/xlog.c:4185
+#: access/transam/xlog.c:4224
 #, c-format
 msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
 msgstr ""
 "la nouvelle timeline %u a été créée à partir de la timeline de la base de données système %u\n"
 "avant le point de restauration courant %X/%X"
 
-#: access/transam/xlog.c:4204
+#: access/transam/xlog.c:4243
 #, c-format
 msgid "new target timeline is %u"
 msgstr "la nouvelle timeline cible est %u"
 
-#: access/transam/xlog.c:4284
+#: access/transam/xlog.c:4323
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier de contrôle « %s » : %m"
 
-#: access/transam/xlog.c:4295 access/transam/xlog.c:4531
+#: access/transam/xlog.c:4334 access/transam/xlog.c:4578
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "n'a pas pu écrire le fichier de contrôle : %m"
 
-#: access/transam/xlog.c:4301 access/transam/xlog.c:4537
+#: access/transam/xlog.c:4340 access/transam/xlog.c:4584
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le fichier de contrôle : %m"
 
-#: access/transam/xlog.c:4306 access/transam/xlog.c:4542
+#: access/transam/xlog.c:4345 access/transam/xlog.c:4589
 #, c-format
 msgid "could not close control file: %m"
 msgstr "n'a pas pu fermer le fichier de contrôle : %m"
 
-#: access/transam/xlog.c:4324 access/transam/xlog.c:4520
+#: access/transam/xlog.c:4364 access/transam/xlog.c:4567
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier de contrôle « %s » : %m"
 
-#: access/transam/xlog.c:4330
+#: access/transam/xlog.c:4373
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "n'a pas pu lire le fichier de contrôle : %m"
 
-#: access/transam/xlog.c:4343 access/transam/xlog.c:4352 access/transam/xlog.c:4376 access/transam/xlog.c:4383 access/transam/xlog.c:4390 access/transam/xlog.c:4395 access/transam/xlog.c:4402 access/transam/xlog.c:4409 access/transam/xlog.c:4416 access/transam/xlog.c:4423 access/transam/xlog.c:4430 access/transam/xlog.c:4437 access/transam/xlog.c:4444 access/transam/xlog.c:4453 access/transam/xlog.c:4460 access/transam/xlog.c:4469
-#: access/transam/xlog.c:4476 access/transam/xlog.c:4485 access/transam/xlog.c:4492 utils/init/miscinit.c:1380
+#: access/transam/xlog.c:4376
+#, c-format
+msgid "could not read from control file: read %d bytes, expected %d"
+msgstr "n'a pas pu lire le fichier de contrôle : %d octets lus, %d attendus"
+
+#: access/transam/xlog.c:4390 access/transam/xlog.c:4399 access/transam/xlog.c:4423 access/transam/xlog.c:4430 access/transam/xlog.c:4437 access/transam/xlog.c:4442 access/transam/xlog.c:4449 access/transam/xlog.c:4456 access/transam/xlog.c:4463 access/transam/xlog.c:4470 access/transam/xlog.c:4477 access/transam/xlog.c:4484 access/transam/xlog.c:4491 access/transam/xlog.c:4500 access/transam/xlog.c:4507 access/transam/xlog.c:4516
+#: access/transam/xlog.c:4523 access/transam/xlog.c:4532 access/transam/xlog.c:4539 utils/init/miscinit.c:1388
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "les fichiers de la base de données sont incompatibles avec le serveur"
 
-#: access/transam/xlog.c:4344
+#: access/transam/xlog.c:4391
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
 msgstr ""
@@ -1604,300 +1626,300 @@ msgstr ""
 "%d (0x%08x) alors que le serveur a été compilé avec un PG_CONTROL_VERSION à\n"
 "%d (0x%08x)."
 
-#: access/transam/xlog.c:4348
+#: access/transam/xlog.c:4395
 #, c-format
 msgid "This could be a problem of mismatched byte ordering.  It looks like you need to initdb."
 msgstr ""
 "Ceci peut être un problème d'incohérence dans l'ordre des octets.\n"
 "Il se peut que vous ayez besoin d'initdb."
 
-#: access/transam/xlog.c:4353
+#: access/transam/xlog.c:4400
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
 msgstr ""
 "Le cluster de base de données a été initialisé avec un PG_CONTROL_VERSION à\n"
 "%d alors que le serveur a été compilé avec un PG_CONTROL_VERSION à %d."
 
-#: access/transam/xlog.c:4356 access/transam/xlog.c:4380 access/transam/xlog.c:4387 access/transam/xlog.c:4392
+#: access/transam/xlog.c:4403 access/transam/xlog.c:4427 access/transam/xlog.c:4434 access/transam/xlog.c:4439
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Il semble que vous avez besoin d'initdb."
 
-#: access/transam/xlog.c:4367
+#: access/transam/xlog.c:4414
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "somme de contrôle incorrecte dans le fichier de contrôle"
 
-#: access/transam/xlog.c:4377
+#: access/transam/xlog.c:4424
 #, c-format
 msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
 msgstr ""
 "Le cluster de base de données a été initialisé avec un CATALOG_VERSION_NO à\n"
 "%d alors que le serveur a été compilé avec un CATALOG_VERSION_NO à %d."
 
-#: access/transam/xlog.c:4384
+#: access/transam/xlog.c:4431
 #, c-format
 msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec un MAXALIGN à %d alors\n"
 "que le serveur a été compilé avec un MAXALIGN à %d."
 
-#: access/transam/xlog.c:4391
+#: access/transam/xlog.c:4438
 #, c-format
 msgid "The database cluster appears to use a different floating-point number format than the server executable."
 msgstr ""
 "Le cluster de bases de données semble utiliser un format différent pour les\n"
 "nombres à virgule flottante de celui de l'exécutable serveur."
 
-#: access/transam/xlog.c:4396
+#: access/transam/xlog.c:4443
 #, c-format
 msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
 msgstr ""
 "Le cluster de base de données a été initialisé avec un BLCKSZ à %d alors que\n"
 "le serveur a été compilé avec un BLCKSZ à %d."
 
-#: access/transam/xlog.c:4399 access/transam/xlog.c:4406 access/transam/xlog.c:4413 access/transam/xlog.c:4420 access/transam/xlog.c:4427 access/transam/xlog.c:4434 access/transam/xlog.c:4441 access/transam/xlog.c:4448 access/transam/xlog.c:4456 access/transam/xlog.c:4463 access/transam/xlog.c:4472 access/transam/xlog.c:4479 access/transam/xlog.c:4488 access/transam/xlog.c:4495
+#: access/transam/xlog.c:4446 access/transam/xlog.c:4453 access/transam/xlog.c:4460 access/transam/xlog.c:4467 access/transam/xlog.c:4474 access/transam/xlog.c:4481 access/transam/xlog.c:4488 access/transam/xlog.c:4495 access/transam/xlog.c:4503 access/transam/xlog.c:4510 access/transam/xlog.c:4519 access/transam/xlog.c:4526 access/transam/xlog.c:4535 access/transam/xlog.c:4542
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Il semble que vous avez besoin de recompiler ou de relancer initdb."
 
-#: access/transam/xlog.c:4403
+#: access/transam/xlog.c:4450
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec un RELSEG_SIZE à %d\n"
 "alors que le serveur a été compilé avec un RELSEG_SIZE à %d."
 
-#: access/transam/xlog.c:4410
+#: access/transam/xlog.c:4457
 #, c-format
 msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
 msgstr ""
 "Le cluster de base de données a été initialisé avec un XLOG_BLCKSZ à %d\n"
 "alors que le serveur a été compilé avec un XLOG_BLCKSZ à %d."
 
-#: access/transam/xlog.c:4417
+#: access/transam/xlog.c:4464
 #, c-format
 msgid "The database cluster was initialized with XLOG_SEG_SIZE %d, but the server was compiled with XLOG_SEG_SIZE %d."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec un XLOG_SEG_SIZE à %d\n"
 "alors que le serveur a été compilé avec un XLOG_SEG_SIZE à %d."
 
-#: access/transam/xlog.c:4424
+#: access/transam/xlog.c:4471
 #, c-format
 msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec un NAMEDATALEN à %d\n"
 "alors que le serveur a été compilé avec un NAMEDATALEN à %d."
 
-#: access/transam/xlog.c:4431
+#: access/transam/xlog.c:4478
 #, c-format
 msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
 msgstr ""
 "Le groupe de bases de données a été initialisé avec un INDEX_MAX_KEYS à %d\n"
 "alors que le serveur a été compilé avec un INDEX_MAX_KEYS à %d."
 
-#: access/transam/xlog.c:4438
+#: access/transam/xlog.c:4485
 #, c-format
 msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec un TOAST_MAX_CHUNK_SIZE\n"
 "à %d alors que le serveur a été compilé avec un TOAST_MAX_CHUNK_SIZE à %d."
 
-#: access/transam/xlog.c:4445
+#: access/transam/xlog.c:4492
 #, c-format
 msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
 msgstr ""
 "Le cluster de base de données a été initialisé avec un LOBLKSIZE à %d alors que\n"
 "le serveur a été compilé avec un LOBLKSIZE à %d."
 
-#: access/transam/xlog.c:4454
+#: access/transam/xlog.c:4501
 #, c-format
 msgid "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the server was compiled with HAVE_INT64_TIMESTAMP."
 msgstr "Le cluster de bases de données a été initialisé sans HAVE_INT64_TIMESTAMPalors que le serveur a été compilé avec."
 
-#: access/transam/xlog.c:4461
+#: access/transam/xlog.c:4508
 #, c-format
 msgid "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the server was compiled without HAVE_INT64_TIMESTAMP."
 msgstr ""
 "Le cluster de bases de données a été initialisé avec HAVE_INT64_TIMESTAMP\n"
 "alors que le serveur a été compilé sans."
 
-#: access/transam/xlog.c:4470
+#: access/transam/xlog.c:4517
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
 msgstr ""
 "Le cluster de base de données a été initialisé sans USE_FLOAT4_BYVAL\n"
 "alors que le serveur a été compilé avec USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:4477
+#: access/transam/xlog.c:4524
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
 msgstr ""
 "Le cluster de base de données a été initialisé avec USE_FLOAT4_BYVAL\n"
 "alors que le serveur a été compilé sans USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:4486
+#: access/transam/xlog.c:4533
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
 msgstr ""
 "Le cluster de base de données a été initialisé sans USE_FLOAT8_BYVAL\n"
 "alors que le serveur a été compilé avec USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4493
+#: access/transam/xlog.c:4540
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
 msgstr ""
 "Le cluster de base de données a été initialisé avec USE_FLOAT8_BYVAL\n"
 "alors que le serveur a été compilé sans USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4914
+#: access/transam/xlog.c:4961
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "n'a pas pu écrire le « bootstrap » du journal des transactions : %m"
 
-#: access/transam/xlog.c:4920
+#: access/transam/xlog.c:4967
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le « bootstrap » du journal des\n"
 "transactions : %m"
 
-#: access/transam/xlog.c:4925
+#: access/transam/xlog.c:4972
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "n'a pas pu fermer le « bootstrap » du journal des transactions : %m"
 
-#: access/transam/xlog.c:5000
+#: access/transam/xlog.c:5047
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier de restauration « %s » : %m"
 
-#: access/transam/xlog.c:5046 access/transam/xlog.c:5131
+#: access/transam/xlog.c:5093 access/transam/xlog.c:5178
 #, c-format
 msgid "invalid value for recovery parameter \"%s\": \"%s\""
 msgstr "valeur invalide pour le paramètre de restauration « %s » : « %s »"
 
-#: access/transam/xlog.c:5049
+#: access/transam/xlog.c:5096
 #, c-format
 msgid "Valid values are \"pause\", \"promote\", and \"shutdown\"."
 msgstr "Les valeurs valides sont « pause », « promote » et « shutdown »."
 
-#: access/transam/xlog.c:5069
+#: access/transam/xlog.c:5116
 #, c-format
 msgid "recovery_target_timeline is not a valid number: \"%s\""
 msgstr "recovery_target_timeline n'est pas un nombre valide : « %s »"
 
-#: access/transam/xlog.c:5086
+#: access/transam/xlog.c:5133
 #, c-format
 msgid "recovery_target_xid is not a valid number: \"%s\""
 msgstr "recovery_target_xid n'est pas un nombre valide : « %s »"
 
-#: access/transam/xlog.c:5117
+#: access/transam/xlog.c:5164
 #, c-format
 msgid "recovery_target_name is too long (maximum %d characters)"
 msgstr "recovery_target_name est trop long (%d caractères maximum)"
 
-#: access/transam/xlog.c:5134
+#: access/transam/xlog.c:5181
 #, c-format
 msgid "The only allowed value is \"immediate\"."
 msgstr "La seule valeur autorisée est « immediate »."
 
-#: access/transam/xlog.c:5147 access/transam/xlog.c:5158 commands/extension.c:534 commands/extension.c:542 utils/misc/guc.c:5640
+#: access/transam/xlog.c:5194 access/transam/xlog.c:5205 commands/extension.c:534 commands/extension.c:542 utils/misc/guc.c:5640
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "le paramètre « %s » requiert une valeur booléenne"
 
-#: access/transam/xlog.c:5193
+#: access/transam/xlog.c:5240
 #, c-format
 msgid "parameter \"%s\" requires a temporal value"
 msgstr "le paramètre « %s » requiert une valeur temporelle"
 
-#: access/transam/xlog.c:5195 catalog/dependency.c:990 catalog/dependency.c:991 catalog/dependency.c:997 catalog/dependency.c:998 catalog/dependency.c:1009 catalog/dependency.c:1010 catalog/objectaddress.c:1100 commands/tablecmds.c:796 commands/tablecmds.c:9556 commands/user.c:1045 commands/view.c:499 libpq/auth.c:307 replication/syncrep.c:929 storage/lmgr/deadlock.c:1139 storage/lmgr/proc.c:1278 utils/adt/acl.c:5286 utils/misc/guc.c:5662
-#: utils/misc/guc.c:5755 utils/misc/guc.c:9701 utils/misc/guc.c:9735 utils/misc/guc.c:9769 utils/misc/guc.c:9803 utils/misc/guc.c:9838
+#: access/transam/xlog.c:5242 catalog/dependency.c:990 catalog/dependency.c:991 catalog/dependency.c:997 catalog/dependency.c:998 catalog/dependency.c:1009 catalog/dependency.c:1010 catalog/objectaddress.c:1100 commands/tablecmds.c:796 commands/tablecmds.c:9562 commands/user.c:1045 commands/view.c:503 libpq/auth.c:307 replication/syncrep.c:929 storage/lmgr/deadlock.c:1139 storage/lmgr/proc.c:1278 utils/adt/acl.c:5361 utils/misc/guc.c:5662
+#: utils/misc/guc.c:5755 utils/misc/guc.c:9727 utils/misc/guc.c:9761 utils/misc/guc.c:9795 utils/misc/guc.c:9829 utils/misc/guc.c:9864
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: access/transam/xlog.c:5202
+#: access/transam/xlog.c:5249
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "paramètre de restauration « %s » non reconnu"
 
-#: access/transam/xlog.c:5213
+#: access/transam/xlog.c:5260
 #, c-format
 msgid "recovery command file \"%s\" specified neither primary_conninfo nor restore_command"
 msgstr "le fichier de restauration « %s » n'a spécifié ni primary_conninfo ni restore_command"
 
-#: access/transam/xlog.c:5215
+#: access/transam/xlog.c:5262
 #, c-format
 msgid "The database server will regularly poll the pg_xlog subdirectory to check for files placed there."
 msgstr ""
 "Le serveur de la base de données va régulièrement interroger le sous-répertoire\n"
 "pg_xlog pour vérifier les fichiers placés ici."
 
-#: access/transam/xlog.c:5222
+#: access/transam/xlog.c:5269
 #, c-format
 msgid "recovery command file \"%s\" must specify restore_command when standby mode is not enabled"
 msgstr ""
 "le fichier de restauration « %s » doit spécifier restore_command quand le mode\n"
 "de restauration n'est pas activé"
 
-#: access/transam/xlog.c:5243
+#: access/transam/xlog.c:5290
 #, c-format
 msgid "standby mode is not supported by single-user servers"
 msgstr "le mode de restauration n'est pas supporté pour les serveurs mono-utilisateur"
 
-#: access/transam/xlog.c:5262
+#: access/transam/xlog.c:5309
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "le timeline cible, %u, de la restauration n'existe pas"
 
-#: access/transam/xlog.c:5383
+#: access/transam/xlog.c:5430
 #, c-format
 msgid "archive recovery complete"
 msgstr "restauration terminée de l'archive"
 
-#: access/transam/xlog.c:5442 access/transam/xlog.c:5670
+#: access/transam/xlog.c:5489 access/transam/xlog.c:5717
 #, c-format
 msgid "recovery stopping after reaching consistency"
 msgstr "arrêt de la restauration après avoir atteint le point de cohérence"
 
-#: access/transam/xlog.c:5530
+#: access/transam/xlog.c:5577
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "arrêt de la restauration avant validation de la transaction %u, %s"
 
-#: access/transam/xlog.c:5537
+#: access/transam/xlog.c:5584
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "arrêt de la restauration avant annulation de la transaction %u, %s"
 
-#: access/transam/xlog.c:5582
+#: access/transam/xlog.c:5629
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "restauration en arrêt au point de restauration « %s », heure %s"
 
-#: access/transam/xlog.c:5650
+#: access/transam/xlog.c:5697
 #, c-format
 msgid "recovery stopping after commit of transaction %u, time %s"
 msgstr "arrêt de la restauration après validation de la transaction %u, %s"
 
-#: access/transam/xlog.c:5658
+#: access/transam/xlog.c:5705
 #, c-format
 msgid "recovery stopping after abort of transaction %u, time %s"
 msgstr "arrêt de la restauration après annulation de la transaction %u, %s"
 
-#: access/transam/xlog.c:5697
+#: access/transam/xlog.c:5744
 #, c-format
 msgid "recovery has paused"
 msgstr "restauration en pause"
 
-#: access/transam/xlog.c:5698
+#: access/transam/xlog.c:5745
 #, c-format
 msgid "Execute pg_xlog_replay_resume() to continue."
 msgstr "Exécuter pg_xlog_replay_resume() pour continuer."
 
-#: access/transam/xlog.c:5905
+#: access/transam/xlog.c:5952
 #, c-format
 msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
 msgstr ""
@@ -1905,266 +1927,266 @@ msgstr ""
 "paramètrage plus bas que celui du serveur maître des journaux de transactions\n"
 "(la valeur était %d)"
 
-#: access/transam/xlog.c:5931
+#: access/transam/xlog.c:5978
 #, c-format
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr ""
 "le journal de transactions a été généré avec le paramètre wal_level configuré\n"
 "à « minimal », des données pourraient manquer"
 
-#: access/transam/xlog.c:5932
+#: access/transam/xlog.c:5979
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
 msgstr ""
 "Ceci peut arriver si vous configurez temporairement wal_level à minimal sans avoir\n"
 "pris une nouvelle sauvegarde de base."
 
-#: access/transam/xlog.c:5943
+#: access/transam/xlog.c:5990
 #, c-format
 msgid "hot standby is not possible because wal_level was not set to \"replica\" or higher on the master server"
 msgstr ""
 "les connexions en lecture seules ne sont pas possibles parce que le paramètre wal_level\n"
 "n'a pas été positionné à « replica » ou plus sur le serveur maître"
 
-#: access/transam/xlog.c:5944
+#: access/transam/xlog.c:5991
 #, c-format
 msgid "Either set wal_level to \"replica\" on the master, or turn off hot_standby here."
 msgstr ""
 "Vous devez soit positionner le paramètre wal_level à « replica » sur le maître,\n"
 "soit désactiver le hot_standby ici."
 
-#: access/transam/xlog.c:6001
+#: access/transam/xlog.c:6048
 #, c-format
 msgid "control file contains invalid data"
 msgstr "le fichier de contrôle contient des données invalides"
 
-#: access/transam/xlog.c:6007
+#: access/transam/xlog.c:6054
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "le système de bases de données a été arrêté à %s"
 
-#: access/transam/xlog.c:6012
+#: access/transam/xlog.c:6059
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "le système de bases de données a été arrêté pendant la restauration à %s"
 
-#: access/transam/xlog.c:6016
+#: access/transam/xlog.c:6063
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "le système de bases de données a été interrompu ; dernier lancement connu à %s"
 
-#: access/transam/xlog.c:6020
+#: access/transam/xlog.c:6067
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "le système de bases de données a été interrompu lors d'une restauration à %s"
 
-#: access/transam/xlog.c:6022
+#: access/transam/xlog.c:6069
 #, c-format
 msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
 msgstr ""
 "Ceci signifie probablement que des données ont été corrompues et que vous\n"
 "devrez utiliser la dernière sauvegarde pour la restauration."
 
-#: access/transam/xlog.c:6026
+#: access/transam/xlog.c:6073
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr ""
 "le système de bases de données a été interrompu lors d'une récupération à %s\n"
 "(moment de la journalisation)"
 
-#: access/transam/xlog.c:6028
+#: access/transam/xlog.c:6075
 #, c-format
 msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
 msgstr ""
 "Si c'est arrivé plus d'une fois, des données ont pu être corrompues et vous\n"
 "pourriez avoir besoin de choisir une cible de récupération antérieure."
 
-#: access/transam/xlog.c:6032
+#: access/transam/xlog.c:6079
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "le système de bases de données a été interrompu ; dernier lancement connu à %s"
 
-#: access/transam/xlog.c:6088
+#: access/transam/xlog.c:6135
 #, c-format
 msgid "entering standby mode"
 msgstr "entre en mode standby"
 
-#: access/transam/xlog.c:6091
+#: access/transam/xlog.c:6138
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "début de la restauration de l'archive au XID %u"
 
-#: access/transam/xlog.c:6095
+#: access/transam/xlog.c:6142
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "début de la restauration de l'archive à %s"
 
-#: access/transam/xlog.c:6099
+#: access/transam/xlog.c:6146
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "début de la restauration PITR à « %s »"
 
-#: access/transam/xlog.c:6103
+#: access/transam/xlog.c:6150
 #, c-format
 msgid "starting point-in-time recovery to earliest consistent point"
 msgstr "début de la restauration de l'archive jusqu'au point de cohérence le plus proche"
 
-#: access/transam/xlog.c:6106
+#: access/transam/xlog.c:6153
 #, c-format
 msgid "starting archive recovery"
 msgstr "début de la restauration de l'archive"
 
-#: access/transam/xlog.c:6150 access/transam/xlog.c:6278
+#: access/transam/xlog.c:6197 access/transam/xlog.c:6325
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "l'enregistrement du point de vérification est à %X/%X"
 
-#: access/transam/xlog.c:6164
+#: access/transam/xlog.c:6211
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "n'a pas pu localiser l'enregistrement redo référencé par le point de vérification"
 
-#: access/transam/xlog.c:6165 access/transam/xlog.c:6172
+#: access/transam/xlog.c:6212 access/transam/xlog.c:6219
 #, c-format
 msgid "If you are not restoring from a backup, try removing the file \"%s/backup_label\"."
 msgstr ""
 "Si vous n'avez pas pu restaurer une sauvegarde, essayez de supprimer le\n"
 "fichier « %s/backup_label »."
 
-#: access/transam/xlog.c:6171
+#: access/transam/xlog.c:6218
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "n'a pas pu localiser l'enregistrement d'un point de vérification requis"
 
-#: access/transam/xlog.c:6197 commands/tablespace.c:641
+#: access/transam/xlog.c:6244 commands/tablespace.c:641
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "n'a pas pu créer le lien symbolique « %s » : %m"
 
-#: access/transam/xlog.c:6229 access/transam/xlog.c:6235
+#: access/transam/xlog.c:6276 access/transam/xlog.c:6282
 #, c-format
 msgid "ignoring file \"%s\" because no file \"%s\" exists"
 msgstr "ignore le fichier « %s » car le fichier « %s » n'existe pas"
 
-#: access/transam/xlog.c:6231 access/transam/xlog.c:11101
+#: access/transam/xlog.c:6278 access/transam/xlog.c:11203
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\"."
 msgstr "Le fichier « %s » a été renommé en « %s »."
 
-#: access/transam/xlog.c:6237
+#: access/transam/xlog.c:6284
 #, c-format
 msgid "Could not rename file \"%s\" to \"%s\": %m."
 msgstr "N'a pas pu renommer le fichier « %s » en « %s » : %m"
 
-#: access/transam/xlog.c:6288 access/transam/xlog.c:6303
+#: access/transam/xlog.c:6335 access/transam/xlog.c:6350
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "n'a pas pu localiser un enregistrement d'un point de vérification valide"
 
-#: access/transam/xlog.c:6297
+#: access/transam/xlog.c:6344
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "utilisation du précédent enregistrement d'un point de vérification à %X/%X"
 
-#: access/transam/xlog.c:6341
+#: access/transam/xlog.c:6388
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
 msgstr "la timeline requise %u n'est pas un fils de l'historique de ce serveur"
 
-#: access/transam/xlog.c:6343
+#: access/transam/xlog.c:6390
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
 msgstr "Le dernier checkpoint est à %X/%X sur la timeline %u, mais dans l'historique de la timeline demandée, le serveur est sorti de cette timeline à %X/%X."
 
-#: access/transam/xlog.c:6359
+#: access/transam/xlog.c:6406
 #, c-format
 msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
 msgstr "la timeline requise, %u, ne contient pas le point de restauration minimum (%X/%X) sur la timeline %u"
 
-#: access/transam/xlog.c:6390
+#: access/transam/xlog.c:6437
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "prochain ID de transaction invalide"
 
-#: access/transam/xlog.c:6473
+#: access/transam/xlog.c:6521
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "ré-exécution invalide dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:6484
+#: access/transam/xlog.c:6532
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "enregistrement de ré-exécution invalide dans le point de vérification d'arrêt"
 
-#: access/transam/xlog.c:6512
+#: access/transam/xlog.c:6560
 #, c-format
 msgid "database system was not properly shut down; automatic recovery in progress"
 msgstr ""
 "le système de bases de données n'a pas été arrêté proprement ; restauration\n"
 "automatique en cours"
 
-#: access/transam/xlog.c:6516
+#: access/transam/xlog.c:6564
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr "la restauration après crash commence avec la timeline %u et a la timeline %u en cible"
 
-#: access/transam/xlog.c:6560
+#: access/transam/xlog.c:6608
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label contient des données incohérentes avec le fichier de contrôle"
 
-#: access/transam/xlog.c:6561
+#: access/transam/xlog.c:6609
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr ""
 "Ceci signifie que la sauvegarde a été corrompue et que vous devrez utiliser\n"
 "la dernière sauvegarde pour la restauration."
 
-#: access/transam/xlog.c:6635
+#: access/transam/xlog.c:6700
 #, c-format
 msgid "initializing for hot standby"
 msgstr "initialisation pour « Hot Standby »"
 
-#: access/transam/xlog.c:6767
+#: access/transam/xlog.c:6832
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "la ré-exécution commence à %X/%X"
 
-#: access/transam/xlog.c:6992
+#: access/transam/xlog.c:7057
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr ""
 "le point d'arrêt de la restauration demandée se trouve avant le point\n"
 "cohérent de restauration"
 
-#: access/transam/xlog.c:7030
+#: access/transam/xlog.c:7095
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "ré-exécution faite à %X/%X"
 
-#: access/transam/xlog.c:7035 access/transam/xlog.c:8994
+#: access/transam/xlog.c:7100 access/transam/xlog.c:9074
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "la dernière transaction a eu lieu à %s (moment de la journalisation)"
 
-#: access/transam/xlog.c:7044
+#: access/transam/xlog.c:7109
 #, c-format
 msgid "redo is not required"
 msgstr "la ré-exécution n'est pas nécessaire"
 
-#: access/transam/xlog.c:7119 access/transam/xlog.c:7123
+#: access/transam/xlog.c:7184 access/transam/xlog.c:7188
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "le journal de transactions se termine avant la fin de la sauvegarde de base"
 
-#: access/transam/xlog.c:7120
+#: access/transam/xlog.c:7185
 #, c-format
 msgid "All WAL generated while online backup was taken must be available at recovery."
 msgstr ""
 "Tous les journaux de transactions générés pendant la sauvegarde en ligne\n"
 "doivent être disponibles pour la restauration."
 
-#: access/transam/xlog.c:7124
+#: access/transam/xlog.c:7189
 #, c-format
 msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
 msgstr ""
@@ -2172,219 +2194,219 @@ msgstr ""
 "pg_stop_backup() et tous les journaux de transactions générés entre les deux\n"
 "doivent être disponibles pour la restauration."
 
-#: access/transam/xlog.c:7127
+#: access/transam/xlog.c:7192
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "Le journal de transaction se termine avant un point de restauration cohérent"
 
-#: access/transam/xlog.c:7154
+#: access/transam/xlog.c:7226
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "identifiant d'un timeline nouvellement sélectionné : %u"
 
-#: access/transam/xlog.c:7565
+#: access/transam/xlog.c:7645
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "état de restauration cohérent atteint à %X/%X"
 
-#: access/transam/xlog.c:7756
+#: access/transam/xlog.c:7836
 #, c-format
 msgid "invalid primary checkpoint link in control file"
 msgstr "lien du point de vérification primaire invalide dans le fichier de contrôle"
 
-#: access/transam/xlog.c:7760
+#: access/transam/xlog.c:7840
 #, c-format
 msgid "invalid secondary checkpoint link in control file"
 msgstr "lien du point de vérification secondaire invalide dans le fichier de contrôle"
 
-#: access/transam/xlog.c:7764
+#: access/transam/xlog.c:7844
 #, c-format
 msgid "invalid checkpoint link in backup_label file"
 msgstr "lien du point de vérification invalide dans le fichier backup_label"
 
-#: access/transam/xlog.c:7781
+#: access/transam/xlog.c:7861
 #, c-format
 msgid "invalid primary checkpoint record"
 msgstr "enregistrement du point de vérification primaire invalide"
 
-#: access/transam/xlog.c:7785
+#: access/transam/xlog.c:7865
 #, c-format
 msgid "invalid secondary checkpoint record"
 msgstr "enregistrement du point de vérification secondaire invalide"
 
-#: access/transam/xlog.c:7789
+#: access/transam/xlog.c:7869
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "enregistrement du point de vérification invalide"
 
-#: access/transam/xlog.c:7800
+#: access/transam/xlog.c:7880
 #, c-format
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "identifiant du gestionnaire de ressource invalide dans l'enregistrement primaire du point de vérification"
 
-#: access/transam/xlog.c:7804
+#: access/transam/xlog.c:7884
 #, c-format
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "identifiant du gestionnaire de ressource invalide dans l'enregistrement secondaire du point de vérification"
 
-#: access/transam/xlog.c:7808
+#: access/transam/xlog.c:7888
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "identifiant du gestionnaire de ressource invalide dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:7820
+#: access/transam/xlog.c:7900
 #, c-format
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "xl_info invalide dans l'enregistrement du point de vérification primaire"
 
-#: access/transam/xlog.c:7824
+#: access/transam/xlog.c:7904
 #, c-format
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "xl_info invalide  dans l'enregistrement du point de vérification secondaire"
 
-#: access/transam/xlog.c:7828
+#: access/transam/xlog.c:7908
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "xl_info invalide dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:7839
+#: access/transam/xlog.c:7919
 #, c-format
 msgid "invalid length of primary checkpoint record"
 msgstr "longueur invalide de l'enregistrement primaire du point de vérification"
 
-#: access/transam/xlog.c:7843
+#: access/transam/xlog.c:7923
 #, c-format
 msgid "invalid length of secondary checkpoint record"
 msgstr "longueur invalide de l'enregistrement secondaire du point de vérification"
 
-#: access/transam/xlog.c:7847
+#: access/transam/xlog.c:7927
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "longueur invalide de l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:8015
+#: access/transam/xlog.c:8095
 #, c-format
 msgid "shutting down"
 msgstr "arrêt en cours"
 
-#: access/transam/xlog.c:8539
+#: access/transam/xlog.c:8619
 #, c-format
 msgid "concurrent transaction log activity while database system is shutting down"
 msgstr ""
 "activité en cours du journal de transactions alors que le système de bases\n"
 "de données est en cours d'arrêt"
 
-#: access/transam/xlog.c:8793
+#: access/transam/xlog.c:8873
 #, c-format
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "restartpoint ignoré, la récupération est déjà terminée"
 
-#: access/transam/xlog.c:8816
+#: access/transam/xlog.c:8896
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "ignore le point de redémarrage, déjà réalisé à %X/%X"
 
-#: access/transam/xlog.c:8992
+#: access/transam/xlog.c:9072
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "la ré-exécution en restauration commence à %X/%X"
 
-#: access/transam/xlog.c:9125
+#: access/transam/xlog.c:9205
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "point de restauration « %s » créé à %X/%X"
 
-#: access/transam/xlog.c:9255
+#: access/transam/xlog.c:9343
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "identifiant de timeline précédent %u inattendu (identifiant de la timeline courante %u) dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:9264
+#: access/transam/xlog.c:9352
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr ""
 "identifiant timeline %u inattendu (après %u) dans l'enregistrement du point\n"
 "de vérification"
 
-#: access/transam/xlog.c:9280
+#: access/transam/xlog.c:9368
 #, c-format
 msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
 msgstr "identifiant timeline %u inattendu dans l'enregistrement du checkpoint, avant d'atteindre le point de restauration minimum %X/%X sur la timeline %u"
 
-#: access/transam/xlog.c:9351
+#: access/transam/xlog.c:9439
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr "la sauvegarde en ligne a été annulée, la restauration ne peut pas continuer"
 
-#: access/transam/xlog.c:9407 access/transam/xlog.c:9454 access/transam/xlog.c:9477
+#: access/transam/xlog.c:9495 access/transam/xlog.c:9551 access/transam/xlog.c:9574
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr ""
 "identifiant timeline %u inattendu (devrait être %u) dans l'enregistrement du\n"
 "point de vérification"
 
-#: access/transam/xlog.c:9752
+#: access/transam/xlog.c:9854
 #, c-format
 msgid "could not fsync log segment %s: %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le segment du journal des transactions %s : %m"
 
-#: access/transam/xlog.c:9776
+#: access/transam/xlog.c:9878
 #, c-format
 msgid "could not fsync log file %s: %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le fichier de transactions « %s » : %m"
 
-#: access/transam/xlog.c:9784
+#: access/transam/xlog.c:9886
 #, c-format
 msgid "could not fsync write-through log file %s: %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le journal des transactions %s : %m"
 
-#: access/transam/xlog.c:9793
+#: access/transam/xlog.c:9895
 #, c-format
 msgid "could not fdatasync log file %s: %m"
 msgstr "n'a pas pu synchroniser sur disque (fdatasync) le journal de transactions %s : %m"
 
-#: access/transam/xlog.c:9884 access/transam/xlog.c:10408 access/transam/xlogfuncs.c:289 access/transam/xlogfuncs.c:316 access/transam/xlogfuncs.c:355 access/transam/xlogfuncs.c:376 access/transam/xlogfuncs.c:397
+#: access/transam/xlog.c:9986 access/transam/xlog.c:10510 access/transam/xlogfuncs.c:289 access/transam/xlogfuncs.c:316 access/transam/xlogfuncs.c:355 access/transam/xlogfuncs.c:376 access/transam/xlogfuncs.c:397
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr ""
 "les fonctions de contrôle des journaux de transactions ne peuvent pas\n"
 "être exécutées lors de la restauration."
 
-#: access/transam/xlog.c:9893 access/transam/xlog.c:10417
+#: access/transam/xlog.c:9995 access/transam/xlog.c:10519
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr ""
 "Le niveau de journalisation (configuré par wal_level) n'est pas suffisant pour\n"
 "faire une sauvegarde en ligne."
 
-#: access/transam/xlog.c:9894 access/transam/xlog.c:10418 access/transam/xlogfuncs.c:322
+#: access/transam/xlog.c:9996 access/transam/xlog.c:10520 access/transam/xlogfuncs.c:322
 #, c-format
 msgid "wal_level must be set to \"replica\" or \"logical\" at server start."
 msgstr ""
 "wal_level doit être configuré à « replica » ou « logical »\n"
 "au démarrage du serveur."
 
-#: access/transam/xlog.c:9899
+#: access/transam/xlog.c:10001
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "label de sauvegarde trop long (%d octets maximum)"
 
-#: access/transam/xlog.c:9936 access/transam/xlog.c:10208 access/transam/xlog.c:10246
+#: access/transam/xlog.c:10038 access/transam/xlog.c:10310 access/transam/xlog.c:10348
 #, c-format
 msgid "a backup is already in progress"
 msgstr "une sauvegarde est déjà en cours"
 
-#: access/transam/xlog.c:9937
+#: access/transam/xlog.c:10039
 #, c-format
 msgid "Run pg_stop_backup() and try again."
 msgstr "Exécutez pg_stop_backup() et tentez de nouveau."
 
-#: access/transam/xlog.c:10032
+#: access/transam/xlog.c:10134
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
 msgstr "Les journaux générés avec full_page_writes=off ont été rejoués depuis le dernier restartpoint."
 
-#: access/transam/xlog.c:10034 access/transam/xlog.c:10615
+#: access/transam/xlog.c:10136 access/transam/xlog.c:10717
 #, c-format
 msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
 msgstr ""
@@ -2392,86 +2414,86 @@ msgstr ""
 "corrompue et ne doit pas être utilisée. Activez full_page_writes et lancez\n"
 "CHECKPOINT sur le maître, puis recommencez la sauvegarde."
 
-#: access/transam/xlog.c:10101 replication/basebackup.c:1027 utils/adt/misc.c:498
+#: access/transam/xlog.c:10203 replication/basebackup.c:1030 utils/adt/misc.c:498
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "n'a pas pu lire le lien symbolique « %s » : %m"
 
-#: access/transam/xlog.c:10108 replication/basebackup.c:1032 utils/adt/misc.c:503
+#: access/transam/xlog.c:10210 replication/basebackup.c:1035 utils/adt/misc.c:503
 #, c-format
 msgid "symbolic link \"%s\" target is too long"
 msgstr "la cible du lien symbolique « %s » est trop long"
 
-#: access/transam/xlog.c:10161 commands/tablespace.c:391 commands/tablespace.c:553 replication/basebackup.c:1048 utils/adt/misc.c:511
+#: access/transam/xlog.c:10263 commands/tablespace.c:391 commands/tablespace.c:553 replication/basebackup.c:1051 utils/adt/misc.c:511
 #, c-format
 msgid "tablespaces are not supported on this platform"
 msgstr "les tablespaces ne sont pas supportés sur cette plateforme"
 
-#: access/transam/xlog.c:10202 access/transam/xlog.c:10240 access/transam/xlog.c:10456 access/transam/xlogarchive.c:106 access/transam/xlogarchive.c:265 commands/copy.c:1825 commands/copy.c:2861 commands/extension.c:3133 commands/tablespace.c:782 commands/tablespace.c:873 guc-file.l:1002 replication/basebackup.c:410 replication/basebackup.c:478 replication/logical/snapbuild.c:1496 storage/file/copydir.c:72 storage/file/copydir.c:115
+#: access/transam/xlog.c:10304 access/transam/xlog.c:10342 access/transam/xlog.c:10558 access/transam/xlogarchive.c:106 access/transam/xlogarchive.c:265 commands/copy.c:1825 commands/copy.c:2865 commands/extension.c:3133 commands/tablespace.c:782 commands/tablespace.c:873 guc-file.l:1002 replication/basebackup.c:413 replication/basebackup.c:481 replication/logical/snapbuild.c:1503 storage/file/copydir.c:72 storage/file/copydir.c:115
 #: storage/file/fd.c:2925 storage/file/fd.c:3017 utils/adt/dbsize.c:70 utils/adt/dbsize.c:220 utils/adt/dbsize.c:300 utils/adt/genfile.c:114 utils/adt/genfile.c:333
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "n'a pas pu tester le fichier « %s » : %m"
 
-#: access/transam/xlog.c:10209 access/transam/xlog.c:10247
+#: access/transam/xlog.c:10311 access/transam/xlog.c:10349
 #, c-format
 msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
 msgstr ""
 "Si vous êtes certain qu'aucune sauvegarde n'est en cours, supprimez le\n"
 "fichier « %s » et recommencez de nouveau."
 
-#: access/transam/xlog.c:10226 access/transam/xlog.c:10264 access/transam/xlog.c:10676
+#: access/transam/xlog.c:10328 access/transam/xlog.c:10366 access/transam/xlog.c:10778
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "impossible d'écrire le fichier « %s » : %m"
 
-#: access/transam/xlog.c:10433
+#: access/transam/xlog.c:10535
 #, c-format
 msgid "exclusive backup not in progress"
 msgstr "une sauvegarde exclusive n'est pas en cours"
 
-#: access/transam/xlog.c:10460
+#: access/transam/xlog.c:10562
 #, c-format
 msgid "a backup is not in progress"
 msgstr "une sauvegarde n'est pas en cours"
 
-#: access/transam/xlog.c:10550 access/transam/xlog.c:10563 access/transam/xlog.c:10911 access/transam/xlog.c:10917 access/transam/xlog.c:11001 access/transam/xlogfuncs.c:690
+#: access/transam/xlog.c:10652 access/transam/xlog.c:10665 access/transam/xlog.c:11013 access/transam/xlog.c:11019 access/transam/xlog.c:11103 access/transam/xlogfuncs.c:690
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "données invalides dans le fichier « %s »"
 
-#: access/transam/xlog.c:10567 replication/basebackup.c:939
+#: access/transam/xlog.c:10669 replication/basebackup.c:942
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr "le standby a été promu lors de la sauvegarde en ligne"
 
-#: access/transam/xlog.c:10568 replication/basebackup.c:940
+#: access/transam/xlog.c:10670 replication/basebackup.c:943
 #, c-format
 msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
 msgstr ""
 "Cela signifie que la sauvegarde en cours de réalisation est corrompue et ne\n"
 "doit pas être utilisée. Recommencez la sauvegarde."
 
-#: access/transam/xlog.c:10613
+#: access/transam/xlog.c:10715
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed during online backup"
 msgstr ""
 "le journal de transactions généré avec full_page_writes=off a été rejoué lors\n"
 "de la sauvegarde en ligne"
 
-#: access/transam/xlog.c:10725
+#: access/transam/xlog.c:10827
 #, c-format
 msgid "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
 msgstr "nettoyage de pg_stop_backup terminé, en attente des journaux de transactions requis à archiver"
 
-#: access/transam/xlog.c:10735
+#: access/transam/xlog.c:10837
 #, c-format
 msgid "pg_stop_backup still waiting for all required WAL segments to be archived (%d seconds elapsed)"
 msgstr ""
 "pg_stop_backup toujours en attente de la fin de l'archivage des segments de\n"
 "journaux de transactions requis (%d secondes passées)"
 
-#: access/transam/xlog.c:10737
+#: access/transam/xlog.c:10839
 #, c-format
 msgid "Check that your archive_command is executing properly.  pg_stop_backup can be canceled safely, but the database backup will not be usable without all the WAL segments."
 msgstr ""
@@ -2479,12 +2501,12 @@ msgstr ""
 "peut être annulé avec sûreté mais la sauvegarde de la base ne sera pas\n"
 "utilisable sans tous les segments WAL."
 
-#: access/transam/xlog.c:10744
+#: access/transam/xlog.c:10846
 #, c-format
 msgid "pg_stop_backup complete, all required WAL segments have been archived"
 msgstr "pg_stop_backup terminé, tous les journaux de transactions requis ont été archivés"
 
-#: access/transam/xlog.c:10748
+#: access/transam/xlog.c:10850
 #, c-format
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr ""
@@ -2493,57 +2515,57 @@ msgstr ""
 "transactions sont copiés par d'autre moyens pour terminer la sauvegarde."
 
 #. translator: %s is an XLog record description
-#: access/transam/xlog.c:11041
+#: access/transam/xlog.c:11143
 #, c-format
 msgid "xlog redo at %X/%X for %s"
 msgstr "xlog redo à %X/%X pour %s"
 
-#: access/transam/xlog.c:11090
+#: access/transam/xlog.c:11192
 #, c-format
 msgid "online backup mode was not canceled"
 msgstr "le mode de sauvegarde en ligne n'a pas été annulé"
 
-#: access/transam/xlog.c:11091
+#: access/transam/xlog.c:11193
 #, c-format
 msgid "File \"%s\" could not be renamed to \"%s\": %m."
 msgstr "Le fichier « %s » n'a pas pu être renommé en « %s » : %m"
 
-#: access/transam/xlog.c:11100 access/transam/xlog.c:11112 access/transam/xlog.c:11122
+#: access/transam/xlog.c:11202 access/transam/xlog.c:11214 access/transam/xlog.c:11224
 #, c-format
 msgid "online backup mode canceled"
 msgstr "mode de sauvegarde en ligne annulé"
 
-#: access/transam/xlog.c:11113
+#: access/transam/xlog.c:11215
 #, c-format
 msgid "Files \"%s\" and \"%s\" were renamed to \"%s\" and \"%s\", respectively."
 msgstr "Les fichiers « %s » et « %s » sont renommés respectivement « %s » et « %s »."
 
-#: access/transam/xlog.c:11123
+#: access/transam/xlog.c:11225
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\", but file \"%s\" could not be renamed to \"%s\": %m."
 msgstr "Le fichier « %s » a été renommé en « %s », mais le fichier « %s » n'a pas pu être renommé en « %s » : %m"
 
-#: access/transam/xlog.c:11245 access/transam/xlogutils.c:718 replication/walreceiver.c:999 replication/walsender.c:2166
+#: access/transam/xlog.c:11349 access/transam/xlogutils.c:720 replication/walreceiver.c:993 replication/walsender.c:2174
 #, c-format
 msgid "could not seek in log segment %s to offset %u: %m"
 msgstr "n'a pas pu se déplacer dans le journal de transactions %s au décalage %u : %m"
 
-#: access/transam/xlog.c:11257
+#: access/transam/xlog.c:11363
 #, c-format
 msgid "could not read from log segment %s, offset %u: %m"
 msgstr "n'a pas pu lire le journal de transactions %s, décalage %u : %m"
 
-#: access/transam/xlog.c:11731
+#: access/transam/xlog.c:11877
 #, c-format
 msgid "received promote request"
 msgstr "a reçu une demande de promotion"
 
-#: access/transam/xlog.c:11744
+#: access/transam/xlog.c:11890
 #, c-format
 msgid "trigger file found: %s"
 msgstr "fichier trigger trouvé : %s"
 
-#: access/transam/xlog.c:11753
+#: access/transam/xlog.c:11899
 #, c-format
 msgid "could not stat trigger file \"%s\": %m"
 msgstr "n'a pas pu tester le fichier trigger « %s » : %m"
@@ -2571,7 +2593,7 @@ msgstr "n'a pas pu restaurer le fichier « %s » à partir de l'archive : %s"
 msgid "%s \"%s\": %s"
 msgstr "%s « %s »: %s"
 
-#: access/transam/xlogarchive.c:458 replication/logical/snapbuild.c:1619 replication/slot.c:496 replication/slot.c:1009 replication/slot.c:1117 storage/file/fd.c:641 storage/file/fd.c:699 utils/time/snapmgr.c:1298
+#: access/transam/xlogarchive.c:458 replication/logical/snapbuild.c:1635 replication/slot.c:496 replication/slot.c:1014 replication/slot.c:1125 storage/file/fd.c:641 storage/file/fd.c:699 utils/time/snapmgr.c:1298
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "n'a pas pu renommer le fichier « %s » en « %s » : %m"
@@ -2596,7 +2618,7 @@ msgstr "annulation de la sauvegarde due à la déconnexion du processus serveur
 msgid "a backup is already in progress in this session"
 msgstr "une sauvegarde est déjà en cours dans cette session"
 
-#: access/transam/xlogfuncs.c:93 commands/tablespace.c:705 commands/tablespace.c:715 postmaster/postmaster.c:1426 replication/basebackup.c:298 replication/basebackup.c:638 storage/file/copydir.c:53 storage/file/copydir.c:96 storage/file/fd.c:2383 storage/file/fd.c:2990 storage/ipc/dsm.c:300 utils/adt/genfile.c:439 utils/adt/misc.c:411 utils/misc/tzparser.c:339
+#: access/transam/xlogfuncs.c:93 commands/tablespace.c:705 commands/tablespace.c:715 postmaster/postmaster.c:1426 replication/basebackup.c:298 replication/basebackup.c:641 storage/file/copydir.c:53 storage/file/copydir.c:96 storage/file/fd.c:2383 storage/file/fd.c:2990 storage/ipc/dsm.c:300 utils/adt/genfile.c:439 utils/adt/misc.c:411 utils/misc/tzparser.c:339
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "n'a pas pu ouvrir le répertoire « %s » : %m"
@@ -2611,15 +2633,15 @@ msgstr "une sauvegarde non exclusive est en cours"
 msgid "Did you mean to use pg_stop_backup('f')?"
 msgstr "Souhaitiez-vous utiliser pg_stop_backup('f') ?"
 
-#: access/transam/xlogfuncs.c:197 commands/event_trigger.c:1445 commands/event_trigger.c:1996 commands/extension.c:1732 commands/extension.c:1841 commands/extension.c:2034 commands/prepare.c:702 executor/execQual.c:1757 executor/execQual.c:1782 executor/execQual.c:2157 executor/execQual.c:5438 executor/functions.c:1031 foreign/foreign.c:492 replication/logical/logicalfuncs.c:175 replication/logical/origin.c:1398 replication/slotfuncs.c:189
-#: replication/walsender.c:2892 utils/adt/jsonfuncs.c:1483 utils/adt/jsonfuncs.c:1613 utils/adt/jsonfuncs.c:1801 utils/adt/jsonfuncs.c:1928 utils/adt/jsonfuncs.c:2694 utils/adt/pgstatfuncs.c:554 utils/adt/pgstatfuncs.c:655 utils/fmgr/funcapi.c:61 utils/misc/guc.c:8436 utils/mmgr/portalmem.c:1088
+#: access/transam/xlogfuncs.c:197 commands/event_trigger.c:1467 commands/event_trigger.c:2019 commands/extension.c:1732 commands/extension.c:1841 commands/extension.c:2034 commands/prepare.c:702 executor/execQual.c:1757 executor/execQual.c:1782 executor/execQual.c:2157 executor/execQual.c:5438 executor/functions.c:1031 foreign/foreign.c:492 replication/logical/logicalfuncs.c:175 replication/logical/origin.c:1416 replication/slotfuncs.c:189
+#: replication/walsender.c:2910 utils/adt/jsonfuncs.c:1483 utils/adt/jsonfuncs.c:1613 utils/adt/jsonfuncs.c:1801 utils/adt/jsonfuncs.c:1928 utils/adt/jsonfuncs.c:2694 utils/adt/pgstatfuncs.c:554 utils/adt/pgstatfuncs.c:655 utils/fmgr/funcapi.c:61 utils/misc/guc.c:8460 utils/mmgr/portalmem.c:1088
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr ""
 "la fonction avec set-value a été appelé dans un contexte qui n'accepte pas\n"
 "un ensemble"
 
-#: access/transam/xlogfuncs.c:201 commands/event_trigger.c:1449 commands/event_trigger.c:2000 commands/extension.c:1736 commands/extension.c:1845 commands/extension.c:2038 commands/prepare.c:706 foreign/foreign.c:497 replication/logical/logicalfuncs.c:179 replication/logical/origin.c:1402 replication/slotfuncs.c:193 replication/walsender.c:2896 utils/adt/pgstatfuncs.c:558 utils/adt/pgstatfuncs.c:659 utils/misc/guc.c:8440
+#: access/transam/xlogfuncs.c:201 commands/event_trigger.c:1471 commands/event_trigger.c:2023 commands/extension.c:1736 commands/extension.c:1845 commands/extension.c:2038 commands/prepare.c:706 foreign/foreign.c:497 replication/logical/logicalfuncs.c:179 replication/logical/origin.c:1420 replication/slotfuncs.c:193 replication/walsender.c:2914 utils/adt/pgstatfuncs.c:558 utils/adt/pgstatfuncs.c:659 utils/misc/guc.c:8464
 #: utils/misc/pg_config.c:44 utils/mmgr/portalmem.c:1092
 #, c-format
 msgid "materialize mode required, but it is not allowed in this context"
@@ -2669,154 +2691,154 @@ msgstr ""
 "Les fonctions de contrôle de la restauration peuvent seulement être exécutées\n"
 "lors de la restauration."
 
-#: access/transam/xlogreader.c:276
+#: access/transam/xlogreader.c:297
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "décalage invalide de l'enregistrement %X/%X"
 
-#: access/transam/xlogreader.c:284
+#: access/transam/xlogreader.c:305
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "« contrecord » est requis par %X/%X"
 
-#: access/transam/xlogreader.c:325 access/transam/xlogreader.c:624
+#: access/transam/xlogreader.c:346 access/transam/xlogreader.c:643
 #, c-format
 msgid "invalid record length at %X/%X: wanted %u, got %u"
 msgstr "longueur invalide de l'enregistrement à %X/%X : voulait %u, a eu %u"
 
-#: access/transam/xlogreader.c:340
+#: access/transam/xlogreader.c:361
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "longueur trop importante de l'enregistrement %u à %X/%X"
 
-#: access/transam/xlogreader.c:381
+#: access/transam/xlogreader.c:402
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "il n'existe pas de drapeau contrecord à %X/%X"
 
-#: access/transam/xlogreader.c:394
+#: access/transam/xlogreader.c:415
 #, c-format
 msgid "invalid contrecord length %u at %X/%X"
 msgstr "longueur %u invalide du contrecord à %X/%X"
 
-#: access/transam/xlogreader.c:632
+#: access/transam/xlogreader.c:651
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "identifiant du gestionnaire de ressources invalide %u à %X/%X"
 
-#: access/transam/xlogreader.c:646 access/transam/xlogreader.c:663
+#: access/transam/xlogreader.c:665 access/transam/xlogreader.c:682
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
 msgstr "enregistrement avec prev-link %X/%X incorrect à %X/%X"
 
-#: access/transam/xlogreader.c:700
+#: access/transam/xlogreader.c:719
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr ""
 "somme de contrôle des données du gestionnaire de ressources incorrecte à\n"
 "l'enregistrement %X/%X"
 
-#: access/transam/xlogreader.c:733
+#: access/transam/xlogreader.c:756
 #, c-format
 msgid "invalid magic number %04X in log segment %s, offset %u"
 msgstr "numéro magique invalide %04X dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:747 access/transam/xlogreader.c:798
+#: access/transam/xlogreader.c:770 access/transam/xlogreader.c:821
 #, c-format
 msgid "invalid info bits %04X in log segment %s, offset %u"
 msgstr "bits d'information %04X invalides dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:773
+#: access/transam/xlogreader.c:796
 #, c-format
 msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
 msgstr "le fichier WAL provient d'un système différent : l'identifiant système de la base dans le fichier WAL est %s, alors que l'identifiant système de la base dans pg_control est %s"
 
-#: access/transam/xlogreader.c:780
+#: access/transam/xlogreader.c:803
 #, c-format
 msgid "WAL file is from different database system: incorrect XLOG_SEG_SIZE in page header"
 msgstr "le fichier WAL provient d'un système différent : XLOG_SEG_SIZE invalide dans l'en-tête de page"
 
-#: access/transam/xlogreader.c:786
+#: access/transam/xlogreader.c:809
 #, c-format
 msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header"
 msgstr "le fichier WAL provient d'un système différent : XLOG_BLCKSZ invalide dans l'en-tête de page"
 
-#: access/transam/xlogreader.c:812
+#: access/transam/xlogreader.c:840
 #, c-format
 msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
 msgstr "pageaddr %X/%X inattendue dans le journal de transactions %s, segment %u"
 
-#: access/transam/xlogreader.c:837
+#: access/transam/xlogreader.c:865
 #, c-format
 msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
 msgstr "identifiant timeline %u hors de la séquence (après %u) dans le segment %s, décalage %u"
 
-#: access/transam/xlogreader.c:1081
+#: access/transam/xlogreader.c:1109
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u désordonné à %X/%X"
 
-#: access/transam/xlogreader.c:1103
+#: access/transam/xlogreader.c:1131
 #, c-format
 msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA configuré, mais aucune donnée inclus à %X/%X"
 
-#: access/transam/xlogreader.c:1110
+#: access/transam/xlogreader.c:1138
 #, c-format
 msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA non configuré, mais la longueur des données est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1143
+#: access/transam/xlogreader.c:1171
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE initialisé, mais décalage du trou %u longueur %u longueur de l'image du bloc %u à %X/%X"
 
-#: access/transam/xlogreader.c:1159
+#: access/transam/xlogreader.c:1187
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE non initialisé, mais décalage du trou %u longueur %u à %X/%X"
 
-#: access/transam/xlogreader.c:1174
+#: access/transam/xlogreader.c:1202
 #, c-format
 msgid "BKPIMAGE_IS_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_IS_COMPRESSED configuré, mais la longueur de l'image du bloc est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1189
+#: access/transam/xlogreader.c:1217
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_IS_COMPRESSED configuré, mais la longueur de l'image du bloc est %u à %X/%X"
 
-#: access/transam/xlogreader.c:1205
+#: access/transam/xlogreader.c:1233
 #, c-format
 msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X"
 msgstr "BKPBLOCK_SAME_REL configuré, mais pas de relation précédente à %X/%X"
 
-#: access/transam/xlogreader.c:1217
+#: access/transam/xlogreader.c:1245
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u invalide à %X/%X"
 
-#: access/transam/xlogreader.c:1297
+#: access/transam/xlogreader.c:1325
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "enregistrement de longueur invalide à %X/%X"
 
-#: access/transam/xlogreader.c:1386
+#: access/transam/xlogreader.c:1414
 #, c-format
 msgid "invalid compressed image at %X/%X, block %d"
 msgstr "image compressée invalide à %X/%X, bloc %d"
 
-#: access/transam/xlogutils.c:739 replication/walsender.c:2183
+#: access/transam/xlogutils.c:743 replication/walsender.c:2191
 #, c-format
 msgid "could not read from log segment %s, offset %u, length %lu: %m"
 msgstr "n'a pas pu lire le journal de transactions %s, décalage %u, longueur %lu : %m"
 
-#: bootstrap/bootstrap.c:269 postmaster/postmaster.c:813 tcop/postgres.c:3497
+#: bootstrap/bootstrap.c:269 postmaster/postmaster.c:813 tcop/postgres.c:3526
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s requiert une valeur"
 
-#: bootstrap/bootstrap.c:274 postmaster/postmaster.c:818 tcop/postgres.c:3502
+#: bootstrap/bootstrap.c:274 postmaster/postmaster.c:818 tcop/postgres.c:3531
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s requiert une valeur"
@@ -2960,13 +2982,13 @@ msgstr "options en conflit ou redondantes"
 msgid "default privileges cannot be set for columns"
 msgstr "les droits par défaut ne peuvent pas être configurés pour les colonnes"
 
-#: catalog/aclchk.c:1502 catalog/objectaddress.c:1390 commands/analyze.c:380 commands/copy.c:4480 commands/sequence.c:1491 commands/tablecmds.c:5211 commands/tablecmds.c:5317 commands/tablecmds.c:5377 commands/tablecmds.c:5490 commands/tablecmds.c:5547 commands/tablecmds.c:5641 commands/tablecmds.c:5737 commands/tablecmds.c:7929 commands/tablecmds.c:8191 commands/tablecmds.c:8611 commands/trigger.c:642 parser/analyze.c:2228
-#: parser/parse_relation.c:2639 parser/parse_relation.c:2701 parser/parse_target.c:951 parser/parse_type.c:127 utils/adt/acl.c:2845 utils/adt/ruleutils.c:1987
+#: catalog/aclchk.c:1502 catalog/objectaddress.c:1390 commands/analyze.c:380 commands/copy.c:4484 commands/sequence.c:1491 commands/tablecmds.c:5211 commands/tablecmds.c:5317 commands/tablecmds.c:5377 commands/tablecmds.c:5490 commands/tablecmds.c:5547 commands/tablecmds.c:5641 commands/tablecmds.c:5737 commands/tablecmds.c:7929 commands/tablecmds.c:8191 commands/tablecmds.c:8611 commands/trigger.c:642 parser/analyze.c:2254
+#: parser/parse_relation.c:2639 parser/parse_relation.c:2701 parser/parse_target.c:951 parser/parse_type.c:127 utils/adt/acl.c:2888 utils/adt/ruleutils.c:2001
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "la colonne « %s » de la relation « %s » n'existe pas"
 
-#: catalog/aclchk.c:1771 catalog/objectaddress.c:1203 commands/sequence.c:1078 commands/tablecmds.c:224 commands/tablecmds.c:12168 utils/adt/acl.c:2078 utils/adt/acl.c:2108 utils/adt/acl.c:2140 utils/adt/acl.c:2172 utils/adt/acl.c:2200 utils/adt/acl.c:2230
+#: catalog/aclchk.c:1771 catalog/objectaddress.c:1203 commands/sequence.c:1078 commands/tablecmds.c:224 commands/tablecmds.c:12165 utils/adt/acl.c:2078 utils/adt/acl.c:2108 utils/adt/acl.c:2140 utils/adt/acl.c:2172 utils/adt/acl.c:2200 utils/adt/acl.c:2230
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "« %s » n'est pas une séquence"
@@ -3449,12 +3471,12 @@ msgstr "le type composite %s ne peut pas être membre de lui-même"
 msgid "no collation was derived for column \"%s\" with collatable type %s"
 msgstr "aucun collationnement n'a été dérivé pour la colonne « %s » de type collationnable %s"
 
-#: catalog/heap.c:586 commands/createas.c:204 commands/createas.c:501 commands/indexcmds.c:1136 commands/view.c:103 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1513 utils/adt/formatting.c:1565 utils/adt/formatting.c:1633 utils/adt/formatting.c:1685 utils/adt/formatting.c:1754 utils/adt/formatting.c:1818 utils/adt/like.c:213 utils/adt/selfuncs.c:5434 utils/adt/varlena.c:1421 utils/adt/varlena.c:1826
+#: catalog/heap.c:586 commands/createas.c:204 commands/createas.c:501 commands/indexcmds.c:1148 commands/view.c:105 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1513 utils/adt/formatting.c:1565 utils/adt/formatting.c:1633 utils/adt/formatting.c:1685 utils/adt/formatting.c:1754 utils/adt/formatting.c:1818 utils/adt/like.c:213 utils/adt/selfuncs.c:5463 utils/adt/varlena.c:1421 utils/adt/varlena.c:1826
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Utilisez la clause COLLARE pour configurer explicitement le collationnement."
 
-#: catalog/heap.c:1067 catalog/index.c:792 commands/tablecmds.c:2623
+#: catalog/heap.c:1067 catalog/index.c:798 commands/tablecmds.c:2623
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "la relation « %s » existe déjà"
@@ -3516,12 +3538,12 @@ msgstr "ne peut pas utiliser les références de colonnes dans l'expression par
 msgid "default expression must not return a set"
 msgstr "l'expression par défaut ne doit pas renvoyer un ensemble"
 
-#: catalog/heap.c:2625 rewrite/rewriteHandler.c:1120
+#: catalog/heap.c:2625 rewrite/rewriteHandler.c:1121
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "la colonne « %s » est de type %s alors que l'expression par défaut est de type %s"
 
-#: catalog/heap.c:2630 commands/prepare.c:374 parser/parse_node.c:428 parser/parse_target.c:539 parser/parse_target.c:789 parser/parse_target.c:799 rewrite/rewriteHandler.c:1125
+#: catalog/heap.c:2630 commands/prepare.c:374 parser/parse_node.c:428 parser/parse_target.c:539 parser/parse_target.c:789 parser/parse_target.c:799 rewrite/rewriteHandler.c:1126
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "Vous devez réécrire l'expression ou lui appliquer une transformation de type."
@@ -3558,59 +3580,59 @@ msgstr "La table « %s » référence « %s »."
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr "Tronquez la table « %s » en même temps, ou utilisez TRUNCATE ... CASCADE."
 
-#: catalog/index.c:210 parser/parse_utilcmd.c:1474 parser/parse_utilcmd.c:1560
+#: catalog/index.c:212 parser/parse_utilcmd.c:1474 parser/parse_utilcmd.c:1560
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "les clés primaires multiples ne sont pas autorisées pour la table « %s »"
 
-#: catalog/index.c:228
+#: catalog/index.c:230
 #, c-format
 msgid "primary keys cannot be expressions"
 msgstr "les clés primaires ne peuvent pas être des expressions"
 
-#: catalog/index.c:742 catalog/index.c:1160
+#: catalog/index.c:748 catalog/index.c:1172
 #, c-format
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr "les index définis par l'utilisateur sur les tables du catalogue système ne sont pas supportés"
 
-#: catalog/index.c:752
+#: catalog/index.c:758
 #, c-format
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr ""
 "la création en parallèle d'un index sur les tables du catalogue système\n"
 "n'est pas supportée"
 
-#: catalog/index.c:770
+#: catalog/index.c:776
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "les index partagés ne peuvent pas être créés après initdb"
 
-#: catalog/index.c:784 commands/createas.c:249 commands/sequence.c:141 parser/parse_utilcmd.c:192
+#: catalog/index.c:790 commands/createas.c:249 commands/sequence.c:141 parser/parse_utilcmd.c:192
 #, c-format
 msgid "relation \"%s\" already exists, skipping"
 msgstr "la relation « %s » existe déjà, poursuite du traitement"
 
-#: catalog/index.c:820
+#: catalog/index.c:826
 #, c-format
 msgid "pg_class index OID value not set when in binary upgrade mode"
 msgstr "OID de l'index de pg_class non configuré en mode de mise à jour binaire"
 
-#: catalog/index.c:1422
+#: catalog/index.c:1434
 #, c-format
 msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
 msgstr "DROP INDEX CONCURRENTLY doit être la première action dans une transaction"
 
-#: catalog/index.c:2004
+#: catalog/index.c:2016
 #, c-format
 msgid "building index \"%s\" on table \"%s\""
 msgstr "construction de l'index « %s » sur la table « %s »"
 
-#: catalog/index.c:3322
+#: catalog/index.c:3339
 #, c-format
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "ne peut pas ré-indexer les tables temporaires des autres sessions"
 
-#: catalog/index.c:3454
+#: catalog/index.c:3471
 #, c-format
 msgid "index \"%s\" was reindexed"
 msgstr "l'index « %s » a été réindexée"
@@ -3690,7 +3712,7 @@ msgstr "la configuration de recherche plein texte « %s » n'existe pas"
 msgid "cross-database references are not implemented: %s"
 msgstr "les références entre bases de données ne sont pas implémentées : %s"
 
-#: catalog/namespace.c:2652 gram.y:13463 gram.y:14832 parser/parse_expr.c:799 parser/parse_target.c:1148
+#: catalog/namespace.c:2652 gram.y:13480 gram.y:14849 parser/parse_expr.c:799 parser/parse_target.c:1148
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "mauvaise qualification du nom (trop de points entre les noms) : %s"
@@ -3740,7 +3762,7 @@ msgstr "ne peut pas créer des tables temporaires lors de la restauration"
 msgid "cannot create temporary tables during a parallel operation"
 msgstr "ne peut pas créer des tables temporaires pendant une opération parallèle"
 
-#: catalog/namespace.c:3932 commands/tablespace.c:1173 commands/variable.c:63 utils/misc/guc.c:9868
+#: catalog/namespace.c:3932 commands/tablespace.c:1173 commands/variable.c:63 utils/misc/guc.c:9894
 #, c-format
 msgid "List syntax is invalid."
 msgstr "La syntaxe de la liste est invalide."
@@ -3791,17 +3813,17 @@ msgstr "le nom du trigger sur événement ne peut pas être qualifié"
 msgid "\"%s\" is not a table"
 msgstr "« %s » n'est pas une table"
 
-#: catalog/objectaddress.c:1217 commands/tablecmds.c:230 commands/tablecmds.c:4377 commands/tablecmds.c:12173 commands/view.c:141
+#: catalog/objectaddress.c:1217 commands/tablecmds.c:230 commands/tablecmds.c:4377 commands/tablecmds.c:12170 commands/view.c:143
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "« %s » n'est pas une vue"
 
-#: catalog/objectaddress.c:1224 commands/matview.c:174 commands/tablecmds.c:236 commands/tablecmds.c:12178
+#: catalog/objectaddress.c:1224 commands/matview.c:172 commands/tablecmds.c:236 commands/tablecmds.c:12175
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "« %s » n'est pas une vue matérialisée"
 
-#: catalog/objectaddress.c:1231 commands/tablecmds.c:254 commands/tablecmds.c:4380 commands/tablecmds.c:12183
+#: catalog/objectaddress.c:1231 commands/tablecmds.c:254 commands/tablecmds.c:4380 commands/tablecmds.c:12180
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "« %s » n'est pas une table distante"
@@ -3816,7 +3838,7 @@ msgstr "le nom de la colonne doit être qualifié"
 msgid "default value for column \"%s\" of relation \"%s\" does not exist"
 msgstr "la valeur par défaut de la colonne « %s » de la relation « %s » n'existe pas"
 
-#: catalog/objectaddress.c:1512 commands/functioncmds.c:128 commands/tablecmds.c:246 commands/typecmds.c:3229 parser/parse_type.c:226 parser/parse_type.c:255 parser/parse_type.c:795 utils/adt/acl.c:4379 utils/adt/regproc.c:1226
+#: catalog/objectaddress.c:1512 commands/functioncmds.c:128 commands/tablecmds.c:246 commands/typecmds.c:3229 parser/parse_type.c:226 parser/parse_type.c:255 parser/parse_type.c:795 utils/adt/acl.c:4454 utils/adt/regproc.c:1226
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "le type « %s » n'existe pas"
@@ -3836,7 +3858,7 @@ msgstr "la fonction %d (%s, %s) de %s n'existe pas"
 msgid "user mapping for user \"%s\" on server \"%s\" does not exist"
 msgstr "la correspondance pour l'utilisateur « %s » sur le serveur « %s » n'existe pas"
 
-#: catalog/objectaddress.c:1726 commands/foreigncmds.c:430 commands/foreigncmds.c:997 commands/foreigncmds.c:1359 foreign/foreign.c:692
+#: catalog/objectaddress.c:1726 commands/foreigncmds.c:430 commands/foreigncmds.c:997 commands/foreigncmds.c:1363 foreign/foreign.c:692
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "le serveur « %s » n'existe pas"
@@ -3936,47 +3958,47 @@ msgstr "type %s"
 msgid "cast from %s to %s"
 msgstr "conversion de %s en %s"
 
-#: catalog/objectaddress.c:2562
+#: catalog/objectaddress.c:2570
 #, c-format
 msgid "collation %s"
 msgstr "collationnement %s"
 
-#: catalog/objectaddress.c:2586
+#: catalog/objectaddress.c:2595
 #, c-format
 msgid "constraint %s on %s"
 msgstr "contrainte %s sur %s"
 
-#: catalog/objectaddress.c:2592
+#: catalog/objectaddress.c:2601
 #, c-format
 msgid "constraint %s"
 msgstr "contrainte %s"
 
-#: catalog/objectaddress.c:2609
+#: catalog/objectaddress.c:2628
 #, c-format
 msgid "conversion %s"
 msgstr "conversion %s"
 
-#: catalog/objectaddress.c:2646
+#: catalog/objectaddress.c:2666
 #, c-format
 msgid "default for %s"
 msgstr "valeur par défaut pour %s"
 
-#: catalog/objectaddress.c:2655
+#: catalog/objectaddress.c:2675
 #, c-format
 msgid "language %s"
 msgstr "langage %s"
 
-#: catalog/objectaddress.c:2660
+#: catalog/objectaddress.c:2680
 #, c-format
 msgid "large object %u"
 msgstr "« Large Object » %u"
 
-#: catalog/objectaddress.c:2665
+#: catalog/objectaddress.c:2685
 #, c-format
 msgid "operator %s"
 msgstr "opérateur %s"
 
-#: catalog/objectaddress.c:2697
+#: catalog/objectaddress.c:2717
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "classe d'opérateur %s pour la méthode d'accès %s"
@@ -3985,7 +4007,7 @@ msgstr "classe d'opérateur %s pour la méthode d'accès %s"
 #. first two %s's are data type names, the third %s is the
 #. description of the operator family, and the last %s is the
 #. textual form of the operator with arguments.
-#: catalog/objectaddress.c:2747
+#: catalog/objectaddress.c:2767
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "opérateur %d (%s, %s) de %s : %s"
@@ -3994,177 +4016,177 @@ msgstr "opérateur %d (%s, %s) de %s : %s"
 #. are data type names, the third %s is the description of the
 #. operator family, and the last %s is the textual form of the
 #. function with arguments.
-#: catalog/objectaddress.c:2797
+#: catalog/objectaddress.c:2817
 #, c-format
 msgid "function %d (%s, %s) of %s: %s"
 msgstr "fonction %d (%s, %s) de %s : %s"
 
-#: catalog/objectaddress.c:2837
+#: catalog/objectaddress.c:2857
 #, c-format
 msgid "rule %s on "
 msgstr "règle %s active "
 
-#: catalog/objectaddress.c:2859
+#: catalog/objectaddress.c:2879
 #, c-format
 msgid "transform for %s language %s"
 msgstr "transformation pour %s langage %s"
 
-#: catalog/objectaddress.c:2893
+#: catalog/objectaddress.c:2913
 #, c-format
 msgid "trigger %s on "
 msgstr "trigger %s actif "
 
-#: catalog/objectaddress.c:2910
+#: catalog/objectaddress.c:2930
 #, c-format
 msgid "schema %s"
 msgstr "schéma %s"
 
-#: catalog/objectaddress.c:2923
+#: catalog/objectaddress.c:2953
 #, c-format
 msgid "text search parser %s"
 msgstr "analyseur %s de la recherche plein texte"
 
-#: catalog/objectaddress.c:2938
+#: catalog/objectaddress.c:2979
 #, c-format
 msgid "text search dictionary %s"
 msgstr "dictionnaire %s de la recherche plein texte"
 
-#: catalog/objectaddress.c:2953
+#: catalog/objectaddress.c:3005
 #, c-format
 msgid "text search template %s"
 msgstr "modèle %s de la recherche plein texte"
 
-#: catalog/objectaddress.c:2968
+#: catalog/objectaddress.c:3031
 #, c-format
 msgid "text search configuration %s"
 msgstr "configuration %s de recherche plein texte"
 
-#: catalog/objectaddress.c:2976
+#: catalog/objectaddress.c:3040
 #, c-format
 msgid "role %s"
 msgstr "rôle %s"
 
-#: catalog/objectaddress.c:2989
+#: catalog/objectaddress.c:3053
 #, c-format
 msgid "database %s"
 msgstr "base de données %s"
 
-#: catalog/objectaddress.c:3001
+#: catalog/objectaddress.c:3065
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/objectaddress.c:3010
+#: catalog/objectaddress.c:3074
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "wrapper de données distantes %s"
 
-#: catalog/objectaddress.c:3019
+#: catalog/objectaddress.c:3083
 #, c-format
 msgid "server %s"
 msgstr "serveur %s"
 
-#: catalog/objectaddress.c:3047
+#: catalog/objectaddress.c:3111
 #, c-format
 msgid "user mapping for %s on server %s"
 msgstr "correspondance utilisateur pour %s sur le serveur %s"
 
-#: catalog/objectaddress.c:3082
+#: catalog/objectaddress.c:3146
 #, c-format
 msgid "default privileges on new relations belonging to role %s"
 msgstr "droits par défaut pour les nouvelles relations appartenant au rôle %s"
 
-#: catalog/objectaddress.c:3087
+#: catalog/objectaddress.c:3151
 #, c-format
 msgid "default privileges on new sequences belonging to role %s"
 msgstr "droits par défaut pour les nouvelles séquences appartenant au rôle %s"
 
-#: catalog/objectaddress.c:3092
+#: catalog/objectaddress.c:3156
 #, c-format
 msgid "default privileges on new functions belonging to role %s"
 msgstr "droits par défaut pour les nouvelles fonctions appartenant au rôle %s"
 
-#: catalog/objectaddress.c:3097
+#: catalog/objectaddress.c:3161
 #, c-format
 msgid "default privileges on new types belonging to role %s"
 msgstr "droits par défaut pour les nouveaux types appartenant au rôle %s"
 
-#: catalog/objectaddress.c:3103
+#: catalog/objectaddress.c:3167
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "droits par défaut appartenant au rôle %s"
 
-#: catalog/objectaddress.c:3111
+#: catalog/objectaddress.c:3175
 #, c-format
 msgid " in schema %s"
 msgstr " dans le schéma %s"
 
-#: catalog/objectaddress.c:3128
+#: catalog/objectaddress.c:3192
 #, c-format
 msgid "extension %s"
 msgstr "extension %s"
 
-#: catalog/objectaddress.c:3141
+#: catalog/objectaddress.c:3205
 #, c-format
 msgid "event trigger %s"
 msgstr "trigger sur événement %s"
 
-#: catalog/objectaddress.c:3173
+#: catalog/objectaddress.c:3237
 #, c-format
 msgid "policy %s on "
 msgstr "politique %s sur "
 
-#: catalog/objectaddress.c:3191
+#: catalog/objectaddress.c:3255
 #, c-format
 msgid "access method %s"
 msgstr "méthode d'accès %s"
 
-#: catalog/objectaddress.c:3251
+#: catalog/objectaddress.c:3315
 #, c-format
 msgid "table %s"
 msgstr "table %s"
 
-#: catalog/objectaddress.c:3255
+#: catalog/objectaddress.c:3319
 #, c-format
 msgid "index %s"
 msgstr "index %s"
 
-#: catalog/objectaddress.c:3259
+#: catalog/objectaddress.c:3323
 #, c-format
 msgid "sequence %s"
 msgstr "séquence %s"
 
-#: catalog/objectaddress.c:3263
+#: catalog/objectaddress.c:3327
 #, c-format
 msgid "toast table %s"
 msgstr "table TOAST %s"
 
-#: catalog/objectaddress.c:3267
+#: catalog/objectaddress.c:3331
 #, c-format
 msgid "view %s"
 msgstr "vue %s"
 
-#: catalog/objectaddress.c:3271
+#: catalog/objectaddress.c:3335
 #, c-format
 msgid "materialized view %s"
 msgstr "vue matérialisée %s"
 
-#: catalog/objectaddress.c:3275
+#: catalog/objectaddress.c:3339
 #, c-format
 msgid "composite type %s"
 msgstr "type composite %s"
 
-#: catalog/objectaddress.c:3279
+#: catalog/objectaddress.c:3343
 #, c-format
 msgid "foreign table %s"
 msgstr "table distante %s"
 
-#: catalog/objectaddress.c:3284
+#: catalog/objectaddress.c:3348
 #, c-format
 msgid "relation %s"
 msgstr "relation %s"
 
-#: catalog/objectaddress.c:3321
+#: catalog/objectaddress.c:3385
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "famille d'opérateur %s pour la méthode d'accès %s"
@@ -4221,81 +4243,81 @@ msgstr "le type de retour de la fonction de transition inverse %s n'est pas %s"
 msgid "strictness of aggregate's forward and inverse transition functions must match"
 msgstr "la fonction de transition d'agrégat en déplacement ne doit pas renvoyer null"
 
-#: catalog/pg_aggregate.c:395 catalog/pg_aggregate.c:545
+#: catalog/pg_aggregate.c:395 catalog/pg_aggregate.c:548
 #, c-format
 msgid "final function with extra arguments must not be declared STRICT"
 msgstr "la fonction finale avec des arguments supplémentaires ne doit pas être déclarée avec la clause STRICT"
 
-#: catalog/pg_aggregate.c:425
+#: catalog/pg_aggregate.c:426
 #, c-format
 msgid "return type of combine function %s is not %s"
 msgstr "le type de retour de la fonction de d'unification %s n'est pas %s"
 
-#: catalog/pg_aggregate.c:436
+#: catalog/pg_aggregate.c:438 executor/nodeAgg.c:3052
 #, c-format
 msgid "combine function with transition type %s must not be declared STRICT"
 msgstr "la fonction combine avec le type de transition %s ne doit pas être déclarée STRICT"
 
-#: catalog/pg_aggregate.c:455
+#: catalog/pg_aggregate.c:457
 #, c-format
 msgid "return type of serialization function %s is not %s"
 msgstr "le type de retour de la fonction de sérialisation %s n'est pas %s"
 
-#: catalog/pg_aggregate.c:475
+#: catalog/pg_aggregate.c:478
 #, c-format
 msgid "return type of deserialization function %s is not %s"
 msgstr "le type de retour de la fonction de désérialisation %s n'est pas %s"
 
-#: catalog/pg_aggregate.c:491 catalog/pg_proc.c:246 catalog/pg_proc.c:253
+#: catalog/pg_aggregate.c:494 catalog/pg_proc.c:246 catalog/pg_proc.c:253
 #, c-format
 msgid "cannot determine result data type"
 msgstr "n'a pas pu déterminer le type de données en résultat"
 
-#: catalog/pg_aggregate.c:492
+#: catalog/pg_aggregate.c:495
 #, c-format
 msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
 msgstr ""
 "Un agrégat renvoyant un type polymorphique doit avoir au moins un argument\n"
 "de type polymorphique."
 
-#: catalog/pg_aggregate.c:504 catalog/pg_proc.c:259
+#: catalog/pg_aggregate.c:507 catalog/pg_proc.c:259
 #, c-format
 msgid "unsafe use of pseudo-type \"internal\""
 msgstr "utilisation non sûre des pseudo-types « INTERNAL »"
 
-#: catalog/pg_aggregate.c:505 catalog/pg_proc.c:260
+#: catalog/pg_aggregate.c:508 catalog/pg_proc.c:260
 #, c-format
 msgid "A function returning \"internal\" must have at least one \"internal\" argument."
 msgstr ""
 "Une fonction renvoyant « internal » doit avoir au moins un argument du type\n"
 "« internal »."
 
-#: catalog/pg_aggregate.c:558
+#: catalog/pg_aggregate.c:561
 #, c-format
 msgid "moving-aggregate implementation returns type %s, but plain implementation returns type %s"
 msgstr "l'impémentation d'aggrégat glissant retourne le type %s, mais l'implémentation standard retourne le type %s"
 
-#: catalog/pg_aggregate.c:569
+#: catalog/pg_aggregate.c:572
 #, c-format
 msgid "sort operator can only be specified for single-argument aggregates"
 msgstr "l'opérateur de tri peut seulement être indiqué pour des agrégats à un seul argument"
 
-#: catalog/pg_aggregate.c:812 commands/typecmds.c:1705 commands/typecmds.c:1756 commands/typecmds.c:1787 commands/typecmds.c:1810 commands/typecmds.c:1831 commands/typecmds.c:1858 commands/typecmds.c:1885 commands/typecmds.c:1962 commands/typecmds.c:2004 parser/parse_func.c:364 parser/parse_func.c:393 parser/parse_func.c:418 parser/parse_func.c:432 parser/parse_func.c:507 parser/parse_func.c:518 parser/parse_func.c:1923
+#: catalog/pg_aggregate.c:819 commands/typecmds.c:1705 commands/typecmds.c:1756 commands/typecmds.c:1787 commands/typecmds.c:1810 commands/typecmds.c:1831 commands/typecmds.c:1858 commands/typecmds.c:1885 commands/typecmds.c:1962 commands/typecmds.c:2004 parser/parse_func.c:364 parser/parse_func.c:393 parser/parse_func.c:418 parser/parse_func.c:432 parser/parse_func.c:507 parser/parse_func.c:518 parser/parse_func.c:1923
 #, c-format
 msgid "function %s does not exist"
 msgstr "la fonction %s n'existe pas"
 
-#: catalog/pg_aggregate.c:818
+#: catalog/pg_aggregate.c:825
 #, c-format
 msgid "function %s returns a set"
 msgstr "la fonction %s renvoie un ensemble"
 
-#: catalog/pg_aggregate.c:833
+#: catalog/pg_aggregate.c:840
 #, c-format
 msgid "function %s must accept VARIADIC ANY to be used in this aggregate"
 msgstr "la fonction %s doit accepter VARIADIC ANY pour être utilisé dans cet agrégat"
 
-#: catalog/pg_aggregate.c:857
+#: catalog/pg_aggregate.c:864
 #, c-format
 msgid "function %s requires run-time type coercion"
 msgstr "la fonction %s requiert une coercion sur le type à l'exécution"
@@ -4662,7 +4684,7 @@ msgstr "les types de taille fixe doivent avoir un stockage de base"
 msgid "could not form array type name for type \"%s\""
 msgstr "n'a pas pu former le nom du type array pour le type de données %s"
 
-#: catalog/toasting.c:105 commands/indexcmds.c:389 commands/tablecmds.c:4359 commands/tablecmds.c:12061
+#: catalog/toasting.c:105 commands/indexcmds.c:390 commands/tablecmds.c:4359 commands/tablecmds.c:12058
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "« %s » n'est pas une table ou une vue matérialisée"
@@ -4834,7 +4856,7 @@ msgstr "la méthode d'accès « %s » existe déjà"
 msgid "must be superuser to drop access methods"
 msgstr "doit être super-utilisateur pour supprimer des méthodes d'accès"
 
-#: commands/amcmds.c:175 commands/indexcmds.c:164 commands/indexcmds.c:496 commands/opclasscmds.c:365 commands/opclasscmds.c:790
+#: commands/amcmds.c:175 commands/indexcmds.c:165 commands/indexcmds.c:497 commands/opclasscmds.c:365 commands/opclasscmds.c:790
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "la méthode d'accès « %s » n'existe pas"
@@ -4903,7 +4925,7 @@ msgstr "la colonne « %s » de la relation « %s » apparait plus d'une fois"
 msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
 msgstr "ANALYZE automatique de la table « %s.%s.%s » ; utilisation système : %s"
 
-#: commands/analyze.c:1215
+#: commands/analyze.c:1218
 #, c-format
 msgid "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead rows; %d rows in sample, %.0f estimated total rows"
 msgstr ""
@@ -4912,17 +4934,17 @@ msgstr ""
 "  %d lignes dans l'échantillon,\n"
 "  %.0f lignes totales estimées"
 
-#: commands/analyze.c:1294
+#: commands/analyze.c:1297
 #, c-format
 msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no child tables"
 msgstr "ignore l'analyse de l'arbre d'héritage « %s.%s » --- cet arbre d'héritage ne contient pas de tables enfants"
 
-#: commands/analyze.c:1383
+#: commands/analyze.c:1386
 #, c-format
 msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables"
 msgstr "ignore l'analyse de l'arbre d'héritage « %s.%s » --- cet arbre d'héritage ne contient pas de tables enfants analysables"
 
-#: commands/analyze.c:1431 commands/tablecmds.c:8093 executor/execQual.c:2927
+#: commands/analyze.c:1434 commands/tablecmds.c:8093 executor/execQual.c:2927
 msgid "could not convert row type"
 msgstr "n'a pas pu convertir le type de ligne"
 
@@ -4980,7 +5002,7 @@ msgstr "ne peut pas exécuter CLUSTER sur les tables temporaires des autres sess
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "Il n'existe pas d'index CLUSTER pour la table « %s »"
 
-#: commands/cluster.c:173 commands/tablecmds.c:9397 commands/tablecmds.c:11157
+#: commands/cluster.c:173 commands/tablecmds.c:9403 commands/tablecmds.c:11154
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "l'index « %s » pour la table « %s » n'existe pas"
@@ -4995,7 +5017,7 @@ msgstr "ne peut pas exécuter CLUSTER sur un catalogue partagé"
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "ne peut pas exécuter VACUUM sur les tables temporaires des autres sessions"
 
-#: commands/cluster.c:431 commands/tablecmds.c:11167
+#: commands/cluster.c:431 commands/tablecmds.c:11164
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "« %s » n'est pas un index de la table « %s »"
@@ -5083,12 +5105,12 @@ msgstr "la base de données « %s » n'existe pas"
 msgid "\"%s\" is not a table, view, materialized view, composite type, or foreign table"
 msgstr "« %s » n'est ni une table, ni une vue, ni une vue matérialisée, ni un type composite, ni une table distante"
 
-#: commands/constraint.c:60 utils/adt/ri_triggers.c:2715
+#: commands/constraint.c:60 utils/adt/ri_triggers.c:2660
 #, c-format
 msgid "function \"%s\" was not called by trigger manager"
 msgstr "la fonction « %s » n'a pas été appelée par le gestionnaire de triggers"
 
-#: commands/constraint.c:67 utils/adt/ri_triggers.c:2724
+#: commands/constraint.c:67 utils/adt/ri_triggers.c:2669
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr "la fonction « %s » doit être exécutée pour l'instruction AFTER ROW"
@@ -5404,7 +5426,7 @@ msgstr "ne peut pas copier à partir de la séquence « %s »"
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "ne peut pas copier à partir de la relation « %s », qui n'est pas une table"
 
-#: commands/copy.c:1787 commands/copy.c:2844
+#: commands/copy.c:1787 commands/copy.c:2848
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "n'a pas pu exécuter la commande « %s » : %m"
@@ -5419,207 +5441,207 @@ msgstr "un chemin relatif n'est pas autorisé à utiliser COPY vers un fichier"
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » en écriture : %m"
 
-#: commands/copy.c:1831 commands/copy.c:2867
+#: commands/copy.c:1831 commands/copy.c:2871
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "« %s » est un répertoire"
 
-#: commands/copy.c:2154
+#: commands/copy.c:2158
 #, c-format
-msgid "COPY %s, line %d, column %s"
-msgstr "COPY %s, ligne %d, colonne %s"
+msgid "COPY %s, line %s, column %s"
+msgstr "COPY %s, ligne %s, colonne %s"
 
-#: commands/copy.c:2158 commands/copy.c:2205
+#: commands/copy.c:2162 commands/copy.c:2209
 #, c-format
-msgid "COPY %s, line %d"
-msgstr "COPY %s, ligne %d"
+msgid "COPY %s, line %s"
+msgstr "COPY %s, ligne %s"
 
-#: commands/copy.c:2169
+#: commands/copy.c:2173
 #, c-format
-msgid "COPY %s, line %d, column %s: \"%s\""
-msgstr "COPY %s, ligne %d, colonne %s : « %s »"
+msgid "COPY %s, line %s, column %s: \"%s\""
+msgstr "COPY %s, ligne %s, colonne %s : « %s »"
 
-#: commands/copy.c:2177
+#: commands/copy.c:2181
 #, c-format
-msgid "COPY %s, line %d, column %s: null input"
-msgstr "COPY %s, ligne %d, colonne %s : NULL en entrée"
+msgid "COPY %s, line %s, column %s: null input"
+msgstr "COPY %s, ligne %s, colonne %s : NULL en entrée"
 
-#: commands/copy.c:2199
+#: commands/copy.c:2203
 #, c-format
-msgid "COPY %s, line %d: \"%s\""
-msgstr "COPY %s, ligne %d : « %s »"
+msgid "COPY %s, line %s: \"%s\""
+msgstr "COPY %s, ligne %s : « %s »"
 
-#: commands/copy.c:2283
+#: commands/copy.c:2287
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "ne peut pas copier vers la vue « %s »"
 
-#: commands/copy.c:2288
+#: commands/copy.c:2292
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "ne peut pas copier vers la vue matérialisée « %s »"
 
-#: commands/copy.c:2293
+#: commands/copy.c:2297
 #, c-format
 msgid "cannot copy to foreign table \"%s\""
 msgstr "ne peut pas copier vers la table distante « %s »"
 
-#: commands/copy.c:2298
+#: commands/copy.c:2302
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "ne peut pas copier vers la séquence « %s »"
 
-#: commands/copy.c:2303
+#: commands/copy.c:2307
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "ne peut pas copier vers une relation « %s » qui n'est pas une table"
 
-#: commands/copy.c:2378
+#: commands/copy.c:2382
 #, c-format
 msgid "cannot perform FREEZE because of prior transaction activity"
 msgstr "n'a pas pu exécuter un FREEZE à cause d'une activité transactionnelle précédente"
 
-#: commands/copy.c:2384
+#: commands/copy.c:2388
 #, c-format
 msgid "cannot perform FREEZE because the table was not created or truncated in the current subtransaction"
 msgstr "n'a pas pu exécuter un FREEZE parce que la table n'était pas créée ou tronquée dans la transaction en cours"
 
-#: commands/copy.c:2887
+#: commands/copy.c:2891
 #, c-format
 msgid "COPY file signature not recognized"
 msgstr "la signature du fichier COPY n'est pas reconnue"
 
-#: commands/copy.c:2892
+#: commands/copy.c:2896
 #, c-format
 msgid "invalid COPY file header (missing flags)"
 msgstr "en-tête du fichier COPY invalide (options manquantes)"
 
-#: commands/copy.c:2898
+#: commands/copy.c:2902
 #, c-format
 msgid "unrecognized critical flags in COPY file header"
 msgstr "options critiques non reconnues dans l'en-tête du fichier COPY"
 
-#: commands/copy.c:2904
+#: commands/copy.c:2908
 #, c-format
 msgid "invalid COPY file header (missing length)"
 msgstr "en-tête du fichier COPY invalide (longueur manquante)"
 
-#: commands/copy.c:2911
+#: commands/copy.c:2915
 #, c-format
 msgid "invalid COPY file header (wrong length)"
 msgstr "en-tête du fichier COPY invalide (mauvaise longueur)"
 
-#: commands/copy.c:3044 commands/copy.c:3751 commands/copy.c:3981
+#: commands/copy.c:3048 commands/copy.c:3755 commands/copy.c:3985
 #, c-format
 msgid "extra data after last expected column"
 msgstr "données supplémentaires après la dernière colonne attendue"
 
-#: commands/copy.c:3054
+#: commands/copy.c:3058
 #, c-format
 msgid "missing data for OID column"
 msgstr "données manquantes pour la colonne OID"
 
-#: commands/copy.c:3060
+#: commands/copy.c:3064
 #, c-format
 msgid "null OID in COPY data"
 msgstr "OID NULL dans les données du COPY"
 
-#: commands/copy.c:3070 commands/copy.c:3193
+#: commands/copy.c:3074 commands/copy.c:3197
 #, c-format
 msgid "invalid OID in COPY data"
 msgstr "OID invalide dans les données du COPY"
 
-#: commands/copy.c:3085
+#: commands/copy.c:3089
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "données manquantes pour la colonne « %s »"
 
-#: commands/copy.c:3168
+#: commands/copy.c:3172
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "a reçu des données de COPY après le marqueur de fin"
 
-#: commands/copy.c:3175
+#: commands/copy.c:3179
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "le nombre de champs de la ligne est %d, %d attendus"
 
-#: commands/copy.c:3515 commands/copy.c:3532
+#: commands/copy.c:3519 commands/copy.c:3536
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "retour chariot trouvé dans les données"
 
-#: commands/copy.c:3516 commands/copy.c:3533
+#: commands/copy.c:3520 commands/copy.c:3537
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "retour chariot sans guillemet trouvé dans les données"
 
-#: commands/copy.c:3518 commands/copy.c:3535
+#: commands/copy.c:3522 commands/copy.c:3539
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Utilisez « \\r » pour représenter un retour chariot."
 
-#: commands/copy.c:3519 commands/copy.c:3536
+#: commands/copy.c:3523 commands/copy.c:3540
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "Utiliser le champ CSV entre guillemets pour représenter un retour chariot."
 
-#: commands/copy.c:3548
+#: commands/copy.c:3552
 #, c-format
 msgid "literal newline found in data"
 msgstr "retour à la ligne trouvé dans les données"
 
-#: commands/copy.c:3549
+#: commands/copy.c:3553
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "retour à la ligne trouvé dans les données"
 
-#: commands/copy.c:3551
+#: commands/copy.c:3555
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Utilisez « \\n » pour représenter un retour à la ligne."
 
-#: commands/copy.c:3552
+#: commands/copy.c:3556
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "Utiliser un champ CSV entre guillemets pour représenter un retour à la ligne."
 
-#: commands/copy.c:3598 commands/copy.c:3634
+#: commands/copy.c:3602 commands/copy.c:3638
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "le marqueur fin-de-copie ne correspond pas à un précédent style de fin de ligne"
 
-#: commands/copy.c:3607 commands/copy.c:3623
+#: commands/copy.c:3611 commands/copy.c:3627
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "marqueur fin-de-copie corrompu"
 
-#: commands/copy.c:4065
+#: commands/copy.c:4069
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "champ CSV entre guillemets non terminé"
 
-#: commands/copy.c:4142 commands/copy.c:4161
+#: commands/copy.c:4146 commands/copy.c:4165
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "fin de fichier (EOF) inattendu dans les données du COPY"
 
-#: commands/copy.c:4151
+#: commands/copy.c:4155
 #, c-format
 msgid "invalid field size"
 msgstr "taille du champ invalide"
 
-#: commands/copy.c:4174
+#: commands/copy.c:4178
 #, c-format
 msgid "incorrect binary data format"
 msgstr "format de données binaires incorrect"
 
-#: commands/copy.c:4485 commands/indexcmds.c:1057 commands/tablecmds.c:1464 commands/tablecmds.c:2291 parser/parse_relation.c:3188 parser/parse_relation.c:3208 utils/adt/tsvector_op.c:2559
+#: commands/copy.c:4489 commands/indexcmds.c:1069 commands/tablecmds.c:1464 commands/tablecmds.c:2291 parser/parse_relation.c:3188 parser/parse_relation.c:3208 utils/adt/tsvector_op.c:2559
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "la colonne « %s » n'existe pas"
 
-#: commands/copy.c:4492 commands/tablecmds.c:1490 commands/trigger.c:651 parser/parse_target.c:967 parser/parse_target.c:978
+#: commands/copy.c:4496 commands/tablecmds.c:1490 commands/trigger.c:651 parser/parse_target.c:967 parser/parse_target.c:978
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "la colonne « %s » est spécifiée plus d'une fois"
@@ -5905,7 +5927,7 @@ msgstr "l'argument de %s doit être un nom de type"
 msgid "invalid argument for %s: \"%s\""
 msgstr "argument invalide pour %s : « %s »"
 
-#: commands/dropcmds.c:112 commands/functioncmds.c:1203 utils/adt/ruleutils.c:2083
+#: commands/dropcmds.c:112 commands/functioncmds.c:1203 utils/adt/ruleutils.c:2097
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "« %s » est une fonction d'agrégat"
@@ -5915,7 +5937,7 @@ msgstr "« %s » est une fonction d'agrégat"
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Utiliser DROP AGGREGATE pour supprimer les fonctions d'agrégat."
 
-#: commands/dropcmds.c:165 commands/sequence.c:424 commands/tablecmds.c:2378 commands/tablecmds.c:2529 commands/tablecmds.c:2571 commands/tablecmds.c:11538 tcop/utility.c:1119
+#: commands/dropcmds.c:165 commands/sequence.c:424 commands/tablecmds.c:2378 commands/tablecmds.c:2529 commands/tablecmds.c:2571 commands/tablecmds.c:11535 tcop/utility.c:1122
 #, c-format
 msgid "relation \"%s\" does not exist, skipping"
 msgstr "la relation « %s » n'existe pas, poursuite du traitement"
@@ -6097,17 +6119,17 @@ msgstr "droit refusé pour modifier le propriétaire du trigger sur événement
 msgid "The owner of an event trigger must be a superuser."
 msgstr "Le propriétaire du trigger sur événement doit être un super-utilisateur."
 
-#: commands/event_trigger.c:1438
+#: commands/event_trigger.c:1460
 #, c-format
 msgid "%s can only be called in a sql_drop event trigger function"
 msgstr "%s peut seulement être appelé dans une fonction de trigger sur événement sql_drop"
 
-#: commands/event_trigger.c:1558 commands/event_trigger.c:1579
+#: commands/event_trigger.c:1580 commands/event_trigger.c:1601
 #, c-format
 msgid "%s can only be called in a table_rewrite event trigger function"
 msgstr "%s peut seulement être appelé dans une fonction de trigger sur événement table_rewrite"
 
-#: commands/event_trigger.c:1989
+#: commands/event_trigger.c:2012
 #, c-format
 msgid "%s can only be called in an event trigger function"
 msgstr "%s peut seulement être appelé dans une fonction de trigger sur événement"
@@ -6440,34 +6462,34 @@ msgstr ""
 msgid "user mapping \"%s\" already exists for server %s"
 msgstr "la correspondance utilisateur « %s » existe déjà dans le serveur « %s »"
 
-#: commands/foreigncmds.c:1259 commands/foreigncmds.c:1375
+#: commands/foreigncmds.c:1263 commands/foreigncmds.c:1379
 #, c-format
 msgid "user mapping \"%s\" does not exist for the server"
 msgstr "la correspondance utilisateur « %s » n'existe pas pour le serveur"
 
-#: commands/foreigncmds.c:1362
+#: commands/foreigncmds.c:1366
 #, c-format
 msgid "server does not exist, skipping"
 msgstr "le serveur n'existe pas, poursuite du traitement"
 
-#: commands/foreigncmds.c:1380
+#: commands/foreigncmds.c:1384
 #, c-format
 msgid "user mapping \"%s\" does not exist for the server, skipping"
 msgstr ""
 "la correspondance utilisateur « %s » n'existe pas pour le serveur, poursuite\n"
 "du traitement"
 
-#: commands/foreigncmds.c:1532 foreign/foreign.c:361
+#: commands/foreigncmds.c:1536 foreign/foreign.c:361
 #, c-format
 msgid "foreign-data wrapper \"%s\" has no handler"
 msgstr "le wrapper de données distantes « %s » n'a pas de gestionnaire"
 
-#: commands/foreigncmds.c:1538
+#: commands/foreigncmds.c:1542
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not support IMPORT FOREIGN SCHEMA"
 msgstr "le wrapper de données distantes « %s » ne supporte pas IMPORT FOREIGN SCHEMA"
 
-#: commands/foreigncmds.c:1631
+#: commands/foreigncmds.c:1635
 #, c-format
 msgid "importing foreign table \"%s\""
 msgstr "import de la table distante « %s »"
@@ -6808,197 +6830,197 @@ msgstr "aucun code en ligne spécifié"
 msgid "language \"%s\" does not support inline code execution"
 msgstr "le langage « %s » ne supporte pas l'exécution de code en ligne"
 
-#: commands/indexcmds.c:349
+#: commands/indexcmds.c:350
 #, c-format
 msgid "must specify at least one column"
 msgstr "doit spécifier au moins une colonne"
 
-#: commands/indexcmds.c:353
+#: commands/indexcmds.c:354
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "ne peut pas utiliser plus de %d colonnes dans un index"
 
-#: commands/indexcmds.c:384
+#: commands/indexcmds.c:385
 #, c-format
 msgid "cannot create index on foreign table \"%s\""
 msgstr "ne peut pas créer un index sur la table distante « %s »"
 
-#: commands/indexcmds.c:399
+#: commands/indexcmds.c:400
 #, c-format
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "ne peut pas créer les index sur les tables temporaires des autres sessions"
 
-#: commands/indexcmds.c:455 commands/tablecmds.c:546 commands/tablecmds.c:9708
+#: commands/indexcmds.c:456 commands/tablecmds.c:546 commands/tablecmds.c:9714
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr "seules les relations partagées peuvent être placées dans le tablespace pg_global"
 
-#: commands/indexcmds.c:488
+#: commands/indexcmds.c:489
 #, c-format
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "substitution de la méthode d'accès obsolète « rtree » par « gist » "
 
-#: commands/indexcmds.c:506
+#: commands/indexcmds.c:507
 #, c-format
 msgid "hash indexes are not WAL-logged and their use is discouraged"
 msgstr "les index hash ne sont pas journalisés, leur utilisation est donc déconseillée"
 
-#: commands/indexcmds.c:511
+#: commands/indexcmds.c:512
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "la méthode d'accès « %s » ne supporte pas les index uniques"
 
-#: commands/indexcmds.c:516
+#: commands/indexcmds.c:517
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "la méthode d'accès « %s » ne supporte pas les index multi-colonnes"
 
-#: commands/indexcmds.c:521
+#: commands/indexcmds.c:522
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "la méthode d'accès « %s » ne supporte pas les contraintes d'exclusion"
 
-#: commands/indexcmds.c:591 commands/indexcmds.c:611
+#: commands/indexcmds.c:592 commands/indexcmds.c:612
 #, c-format
 msgid "index creation on system columns is not supported"
 msgstr "la création d'un index sur les tables du catalogue système n'est pas supportée"
 
-#: commands/indexcmds.c:636
+#: commands/indexcmds.c:637
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%s %s créera un index implicite « %s » pour la table « %s »"
 
-#: commands/indexcmds.c:986
+#: commands/indexcmds.c:998
 #, c-format
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "les fonctions dans un prédicat d'index doivent être marquées comme IMMUTABLE"
 
-#: commands/indexcmds.c:1052 parser/parse_utilcmd.c:1882
+#: commands/indexcmds.c:1064 parser/parse_utilcmd.c:1882
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "la colonne « %s » nommée dans la clé n'existe pas"
 
-#: commands/indexcmds.c:1112
+#: commands/indexcmds.c:1124
 #, c-format
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr ""
 "les fonctions dans l'expression de l'index doivent être marquées comme\n"
 "IMMUTABLE"
 
-#: commands/indexcmds.c:1135
+#: commands/indexcmds.c:1147
 #, c-format
 msgid "could not determine which collation to use for index expression"
 msgstr "n'a pas pu déterminer le collationnement à utiliser pour l'expression d'index"
 
-#: commands/indexcmds.c:1143 commands/typecmds.c:827 parser/parse_expr.c:2608 parser/parse_type.c:550 parser/parse_utilcmd.c:2808 utils/adt/misc.c:666
+#: commands/indexcmds.c:1155 commands/typecmds.c:827 parser/parse_expr.c:2608 parser/parse_type.c:550 parser/parse_utilcmd.c:2808 utils/adt/misc.c:666
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "les collationnements ne sont pas supportés par le type %s"
 
-#: commands/indexcmds.c:1181
+#: commands/indexcmds.c:1193
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "l'opérateur %s n'est pas commutatif"
 
-#: commands/indexcmds.c:1183
+#: commands/indexcmds.c:1195
 #, c-format
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr "Seuls les opérateurs commutatifs peuvent être utilisés dans les contraintes d'exclusion."
 
-#: commands/indexcmds.c:1209
+#: commands/indexcmds.c:1221
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "l'opérateur %s n'est pas un membre de la famille d'opérateur « %s »"
 
-#: commands/indexcmds.c:1212
+#: commands/indexcmds.c:1224
 #, c-format
 msgid "The exclusion operator must be related to the index operator class for the constraint."
 msgstr ""
 "L'opérateur d'exclusion doit être en relation avec la classe d'opérateur de\n"
 "l'index pour la contrainte."
 
-#: commands/indexcmds.c:1247
+#: commands/indexcmds.c:1259
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "la méthode d'accès « %s » ne supporte pas les options ASC/DESC"
 
-#: commands/indexcmds.c:1252
+#: commands/indexcmds.c:1264
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "la méthode d'accès « %s » ne supporte pas les options NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1308 commands/typecmds.c:1935
+#: commands/indexcmds.c:1320 commands/typecmds.c:1935
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr ""
 "le type de données %s n'a pas de classe d'opérateurs par défaut pour la\n"
 "méthode d'accès « %s »"
 
-#: commands/indexcmds.c:1310
+#: commands/indexcmds.c:1322
 #, c-format
 msgid "You must specify an operator class for the index or define a default operator class for the data type."
 msgstr ""
 "Vous devez spécifier une classe d'opérateur pour l'index ou définir une\n"
 "classe d'opérateur par défaut pour le type de données."
 
-#: commands/indexcmds.c:1339 commands/indexcmds.c:1347 commands/opclasscmds.c:205
+#: commands/indexcmds.c:1351 commands/indexcmds.c:1359 commands/opclasscmds.c:205
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "la classe d'opérateur « %s » n'existe pas pour la méthode d'accès « %s »"
 
-#: commands/indexcmds.c:1360 commands/typecmds.c:1923
+#: commands/indexcmds.c:1372 commands/typecmds.c:1923
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "la classe d'opérateur « %s » n'accepte pas le type de données %s"
 
-#: commands/indexcmds.c:1450
+#: commands/indexcmds.c:1462
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr ""
 "il existe de nombreuses classes d'opérateur par défaut pour le type de\n"
 "données %s"
 
-#: commands/indexcmds.c:1841
+#: commands/indexcmds.c:1853
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "la table « %s » n'a pas d'index"
 
-#: commands/indexcmds.c:1896
+#: commands/indexcmds.c:1908
 #, c-format
 msgid "can only reindex the currently open database"
 msgstr "peut seulement réindexer la base de données en cours"
 
-#: commands/indexcmds.c:1996
+#: commands/indexcmds.c:2008
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "la table « %s.%s » a été réindexée"
 
-#: commands/matview.c:181
+#: commands/matview.c:179
 #, c-format
 msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
 msgstr "CONCURRENTLY ne peut pas être utilisé quand la vue matérialisée n'est pas peuplée"
 
-#: commands/matview.c:187
+#: commands/matview.c:185
 #, c-format
 msgid "CONCURRENTLY and WITH NO DATA options cannot be used together"
 msgstr "Les options CONCURRENTLY et WITH NO DATA ne peuvent pas être utilisées ensemble"
 
-#: commands/matview.c:257
+#: commands/matview.c:244
 #, c-format
 msgid "cannot refresh materialized view \"%s\" concurrently"
 msgstr "ne peut pas rafraichir en parallèle la vue matérialisée « %s »"
 
-#: commands/matview.c:260
+#: commands/matview.c:247
 #, c-format
 msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view."
 msgstr "Crée un index unique sans clause WHERE sur une ou plusieurs colonnes de la vue matérialisée."
 
-#: commands/matview.c:657
+#: commands/matview.c:624
 #, c-format
 msgid "new data for materialized view \"%s\" contains duplicate rows without any null columns"
 msgstr "les nouvelles données pour la vue matérialisée « %s » contiennent des lignes dupliquées sans colonnes NULL"
 
-#: commands/matview.c:659
+#: commands/matview.c:626
 #, c-format
 msgid "Row: %s"
 msgstr "Ligne : %s"
@@ -7217,7 +7239,7 @@ msgstr ""
 msgid "operator attribute \"%s\" cannot be changed"
 msgstr "l'attribut « %s » de l'opérateur ne peut pas être changé"
 
-#: commands/policy.c:87 commands/policy.c:388 commands/policy.c:477 commands/tablecmds.c:971 commands/tablecmds.c:1313 commands/tablecmds.c:2185 commands/tablecmds.c:4329 commands/tablecmds.c:6293 commands/tablecmds.c:12094 commands/tablecmds.c:12129 commands/trigger.c:241 commands/trigger.c:1125 commands/trigger.c:1233 rewrite/rewriteDefine.c:273 rewrite/rewriteDefine.c:917
+#: commands/policy.c:87 commands/policy.c:388 commands/policy.c:477 commands/tablecmds.c:971 commands/tablecmds.c:1313 commands/tablecmds.c:2185 commands/tablecmds.c:4329 commands/tablecmds.c:6293 commands/tablecmds.c:12091 commands/tablecmds.c:12126 commands/trigger.c:241 commands/trigger.c:1125 commands/trigger.c:1233 rewrite/rewriteDefine.c:273 rewrite/rewriteDefine.c:917
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "droit refusé : « %s » est un catalogue système"
@@ -7267,7 +7289,7 @@ msgstr "seule une expression USING est autorisée pour SELECT, DELETE"
 msgid "invalid cursor name: must not be empty"
 msgstr "nom de curseur invalide : il ne doit pas être vide"
 
-#: commands/portalcmds.c:168 commands/portalcmds.c:222 executor/execCurrent.c:67 utils/adt/xml.c:2399 utils/adt/xml.c:2569
+#: commands/portalcmds.c:168 commands/portalcmds.c:222 executor/execCurrent.c:69 utils/adt/xml.c:2399 utils/adt/xml.c:2569
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "le curseur « %s » n'existe pas"
@@ -7277,7 +7299,7 @@ msgstr "le curseur « %s » n'existe pas"
 msgid "invalid statement name: must not be empty"
 msgstr "nom de l'instruction invalide : ne doit pas être vide"
 
-#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1335
+#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1358
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "n'a pas pu déterminer le type de données du paramètre $%d"
@@ -7554,7 +7576,7 @@ msgstr "« %s » n'est pas un type"
 msgid "Use DROP TYPE to remove a type."
 msgstr "Utilisez DROP TYPE pour supprimer un type."
 
-#: commands/tablecmds.c:252 commands/tablecmds.c:8597 commands/tablecmds.c:11349
+#: commands/tablecmds.c:252 commands/tablecmds.c:8597 commands/tablecmds.c:11346
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "la table distante « %s » n'existe pas"
@@ -7605,17 +7627,17 @@ msgstr "ne peut pas tronquer les tables temporaires des autres sessions"
 msgid "inherited relation \"%s\" is not a table or foreign table"
 msgstr "la relation héritée « %s » n'est ni une table ni une table distante"
 
-#: commands/tablecmds.c:1536 commands/tablecmds.c:10164
+#: commands/tablecmds.c:1536 commands/tablecmds.c:10161
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "ine peut pas hériter à partir d'une relation temporaire « %s »"
 
-#: commands/tablecmds.c:1544 commands/tablecmds.c:10172
+#: commands/tablecmds.c:1544 commands/tablecmds.c:10169
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "ne peut pas hériter de la table temporaire d'une autre session"
 
-#: commands/tablecmds.c:1560 commands/tablecmds.c:10206
+#: commands/tablecmds.c:1560 commands/tablecmds.c:10203
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "la relation « %s » serait héritée plus d'une fois"
@@ -7875,12 +7897,12 @@ msgstr "le type %s n'est pas un type composite"
 msgid "cannot add column to typed table"
 msgstr "ne peut pas ajouter une colonne à une table typée"
 
-#: commands/tablecmds.c:4772 commands/tablecmds.c:10365
+#: commands/tablecmds.c:4772 commands/tablecmds.c:10362
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "la table fille « %s » a un type différent pour la colonne « %s »"
 
-#: commands/tablecmds.c:4778 commands/tablecmds.c:10372
+#: commands/tablecmds.c:4778 commands/tablecmds.c:10369
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr "la table fille « %s » a un collationnement différent pour la colonne « %s »"
@@ -8161,247 +8183,247 @@ msgstr "ne peut pas modifier le type d'une colonne utilisée dans la définition
 msgid "cannot alter type of a column used in a policy definition"
 msgstr "ne peut pas modifier le type d'une colonne utilisée dans la définition d'une politique"
 
-#: commands/tablecmds.c:9065
+#: commands/tablecmds.c:9075
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "ne peut pas modifier le propriétaire de l'index « %s »"
 
-#: commands/tablecmds.c:9067
+#: commands/tablecmds.c:9077
 #, c-format
 msgid "Change the ownership of the index's table, instead."
 msgstr "Modifier à la place le propriétaire de la table concernée par l'index."
 
-#: commands/tablecmds.c:9083
+#: commands/tablecmds.c:9093
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "ne peut pas modifier le propriétaire de la séquence « %s »"
 
-#: commands/tablecmds.c:9085 commands/tablecmds.c:11557
+#: commands/tablecmds.c:9095 commands/tablecmds.c:11554
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La séquence « %s » est liée à la table « %s »."
 
-#: commands/tablecmds.c:9097 commands/tablecmds.c:12204
+#: commands/tablecmds.c:9107 commands/tablecmds.c:12201
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Utilisez ALTER TYPE à la place."
 
-#: commands/tablecmds.c:9106
+#: commands/tablecmds.c:9116
 #, c-format
 msgid "\"%s\" is not a table, view, sequence, or foreign table"
 msgstr "« %s » n'est pas une table, une vue, une séquence ou une table distante"
 
-#: commands/tablecmds.c:9449
+#: commands/tablecmds.c:9455
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "ne peut pas avoir de nombreuses sous-commandes SET TABLESPACE"
 
-#: commands/tablecmds.c:9522
+#: commands/tablecmds.c:9528
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
 msgstr "« %s » n'est pas une table, une vue, une vue matérialisée, un index ou une table TOAST"
 
-#: commands/tablecmds.c:9555 commands/view.c:498
+#: commands/tablecmds.c:9561 commands/view.c:502
 #, c-format
 msgid "WITH CHECK OPTION is supported only on automatically updatable views"
 msgstr "WITH CHECK OPTION est uniquement accepté pour les vues dont la mise à jour est automatique"
 
-#: commands/tablecmds.c:9701
+#: commands/tablecmds.c:9707
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "ne peut pas déplacer la colonne système « %s »"
 
-#: commands/tablecmds.c:9717
+#: commands/tablecmds.c:9723
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "ne peut pas déplacer les tables temporaires d'autres sessions"
 
-#: commands/tablecmds.c:9854
+#: commands/tablecmds.c:9860
 #, c-format
 msgid "only tables, indexes, and materialized views exist in tablespaces"
 msgstr "seuls les tables, index et vues matérialisées existent dans les tablespaces"
 
-#: commands/tablecmds.c:9866
+#: commands/tablecmds.c:9872
 #, c-format
 msgid "cannot move relations in to or out of pg_global tablespace"
 msgstr "ne peut pas déplacer les relations dans ou à partir du tablespace pg_global"
 
-#: commands/tablecmds.c:9957
+#: commands/tablecmds.c:9963
 #, c-format
 msgid "aborting because lock on relation \"%s.%s\" is not available"
 msgstr "annulation car le verrou sur la relation « %s.%s » n'est pas disponible"
 
-#: commands/tablecmds.c:9973
+#: commands/tablecmds.c:9979
 #, c-format
 msgid "no matching relations in tablespace \"%s\" found"
 msgstr "aucune relation correspondante trouvée dans le tablespace « %s »"
 
-#: commands/tablecmds.c:10047 storage/buffer/bufmgr.c:915
+#: commands/tablecmds.c:10046 storage/buffer/bufmgr.c:915
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "page invalide dans le bloc %u de la relation %s"
 
-#: commands/tablecmds.c:10129
+#: commands/tablecmds.c:10126
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "ne peut pas modifier l'héritage d'une table typée"
 
-#: commands/tablecmds.c:10179
+#: commands/tablecmds.c:10176
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "ne peut pas hériter à partir d'une relation temporaire d'une autre session"
 
-#: commands/tablecmds.c:10233
+#: commands/tablecmds.c:10230
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "héritage circulaire interdit"
 
-#: commands/tablecmds.c:10234
+#: commands/tablecmds.c:10231
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "« %s » est déjà un enfant de « %s »."
 
-#: commands/tablecmds.c:10242
+#: commands/tablecmds.c:10239
 #, c-format
 msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
 msgstr "la table « %s » qui n'a pas d'OID ne peut pas hériter de la table « %s » qui en a"
 
-#: commands/tablecmds.c:10383
+#: commands/tablecmds.c:10380
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "la colonne « %s » de la table enfant doit être marquée comme NOT NULL"
 
-#: commands/tablecmds.c:10399 commands/tablecmds.c:10432
+#: commands/tablecmds.c:10396 commands/tablecmds.c:10429
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "la colonne « %s » manque à la table enfant"
 
-#: commands/tablecmds.c:10515
+#: commands/tablecmds.c:10512
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr "la table fille « %s » a un type différent pour la contrainte de vérification « %s »"
 
-#: commands/tablecmds.c:10523
+#: commands/tablecmds.c:10520
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
 msgstr "la contrainte « %s » entre en conflit avec une contrainte non héritée sur la table fille « %s »"
 
-#: commands/tablecmds.c:10534
+#: commands/tablecmds.c:10531
 #, c-format
 msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\""
 msgstr "la contrainte « %s » entre en conflit avec une contrainte NOT VALID sur la table fille « %s »"
 
-#: commands/tablecmds.c:10558
+#: commands/tablecmds.c:10555
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "la contrainte « %s » manque à la table enfant"
 
-#: commands/tablecmds.c:10642
+#: commands/tablecmds.c:10639
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "la relation « %s » n'est pas un parent de la relation « %s »"
 
-#: commands/tablecmds.c:10876
+#: commands/tablecmds.c:10873
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "les tables avec type ne peuvent pas hériter d'autres tables"
 
-#: commands/tablecmds.c:10907
+#: commands/tablecmds.c:10904
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "la colonne « %s » manque à la table"
 
-#: commands/tablecmds.c:10917
+#: commands/tablecmds.c:10914
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "la table a une colonne « %s » alors que le type impose « %s »."
 
-#: commands/tablecmds.c:10926
+#: commands/tablecmds.c:10923
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "la table « %s » a un type différent pour la colonne « %s »"
 
-#: commands/tablecmds.c:10939
+#: commands/tablecmds.c:10936
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "la table a une colonne supplémentaire « %s »"
 
-#: commands/tablecmds.c:10991
+#: commands/tablecmds.c:10988
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "« %s » n'est pas une table typée"
 
-#: commands/tablecmds.c:11175
+#: commands/tablecmds.c:11172
 #, c-format
 msgid "cannot use non-unique index \"%s\" as replica identity"
 msgstr "ne peut pas utiliser l'index non unique « %s » comme identité de réplicat"
 
-#: commands/tablecmds.c:11181
+#: commands/tablecmds.c:11178
 #, c-format
 msgid "cannot use non-immediate index \"%s\" as replica identity"
 msgstr "ne peut pas utiliser l'index « %s » immédiat comme identité de réplicat"
 
-#: commands/tablecmds.c:11187
+#: commands/tablecmds.c:11184
 #, c-format
 msgid "cannot use expression index \"%s\" as replica identity"
 msgstr "ne peut pas utiliser un index par expression « %s » comme identité de réplicat"
 
-#: commands/tablecmds.c:11193
+#: commands/tablecmds.c:11190
 #, c-format
 msgid "cannot use partial index \"%s\" as replica identity"
 msgstr "ne peut pas utiliser l'index partiel « %s » comme identité de réplicat"
 
-#: commands/tablecmds.c:11199
+#: commands/tablecmds.c:11196
 #, c-format
 msgid "cannot use invalid index \"%s\" as replica identity"
 msgstr "ne peut pas utiliser l'index invalide « %s » comme identité de réplicat"
 
-#: commands/tablecmds.c:11220
+#: commands/tablecmds.c:11217
 #, c-format
 msgid "index \"%s\" cannot be used as replica identity because column %d is a system column"
 msgstr "l'index « %s » ne peut pas être utilisé comme identité de réplicat car la colonne %d est une colonne système"
 
-#: commands/tablecmds.c:11227
+#: commands/tablecmds.c:11224
 #, c-format
 msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
 msgstr "l'index « %s » ne peut pas être utilisé comme identité de réplicat car la colonne « %s » peut être NULL"
 
-#: commands/tablecmds.c:11430
+#: commands/tablecmds.c:11427
 #, c-format
 msgid "cannot change logged status of table \"%s\" because it is temporary"
 msgstr "ne peut pas modifier le statut de journalisation de la table « %s » parce qu'elle est temporaire"
 
-#: commands/tablecmds.c:11489
+#: commands/tablecmds.c:11486
 #, c-format
 msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\""
 msgstr "n'a pas pu passer la table « %s » en journalisé car elle référence la table non journalisée « %s »"
 
-#: commands/tablecmds.c:11499
+#: commands/tablecmds.c:11496
 #, c-format
 msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\""
 msgstr "n'a pas pu passer la table « %s » en non journalisé car elle référence la table journalisée « %s »"
 
-#: commands/tablecmds.c:11556
+#: commands/tablecmds.c:11553
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "ne peut pas déplacer une séquence OWNED BY dans un autre schéma"
 
-#: commands/tablecmds.c:11661
+#: commands/tablecmds.c:11658
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "la relation « %s » existe déjà dans le schéma « %s »"
 
-#: commands/tablecmds.c:12188
+#: commands/tablecmds.c:12185
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "« %s » n'est pas un type composite"
 
-#: commands/tablecmds.c:12218
+#: commands/tablecmds.c:12215
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
 msgstr "« %s » n'est pas une table, une vue, une vue matérialisée, une séquence ou une table distante"
 
-#: commands/tablespace.c:162 commands/tablespace.c:179 commands/tablespace.c:190 commands/tablespace.c:198 commands/tablespace.c:625 replication/slot.c:997 storage/file/copydir.c:47
+#: commands/tablespace.c:162 commands/tablespace.c:179 commands/tablespace.c:190 commands/tablespace.c:198 commands/tablespace.c:625 replication/slot.c:1002 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "n'a pas pu créer le répertoire « %s » : %m"
@@ -8677,7 +8699,7 @@ msgstr "la ligne à mettre à jour était déjà modifiée par une opération d
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Considérez l'utilisation d'un trigger AFTER au lieu d'un trigger BEFORE pour propager les changements sur les autres lignes."
 
-#: commands/trigger.c:2741 executor/execMain.c:2376 executor/nodeLockRows.c:216 executor/nodeModifyTable.c:213 executor/nodeModifyTable.c:692 executor/nodeModifyTable.c:985 executor/nodeModifyTable.c:1151
+#: commands/trigger.c:2741 executor/execMain.c:2381 executor/nodeLockRows.c:216 executor/nodeModifyTable.c:213 executor/nodeModifyTable.c:692 executor/nodeModifyTable.c:985 executor/nodeModifyTable.c:1151
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "n'a pas pu sérialiser un accès à cause d'une mise à jour en parallèle"
@@ -9111,7 +9133,7 @@ msgstr "doit être super-utilisateur pour modifier l'attribut bypassrls"
 msgid "permission denied to create role"
 msgstr "droit refusé pour créer un rôle"
 
-#: commands/user.c:322 commands/user.c:1176 commands/user.c:1183 gram.y:13628 gram.y:13663 utils/adt/acl.c:5284 utils/adt/acl.c:5290
+#: commands/user.c:322 commands/user.c:1176 commands/user.c:1183 gram.y:13645 gram.y:13680 utils/adt/acl.c:5359 utils/adt/acl.c:5365
 #, c-format
 msgid "role name \"%s\" is reserved"
 msgstr "le nom du rôle « %s » est réservé"
@@ -9161,7 +9183,7 @@ msgstr "droit refusé pour supprimer le rôle"
 msgid "cannot use special role specifier in DROP ROLE"
 msgstr "ne peut pas être le spécificateur de rôle spécial dans DROP ROLE"
 
-#: commands/user.c:990 commands/user.c:1147 commands/variable.c:825 commands/variable.c:897 utils/adt/acl.c:5126 utils/adt/acl.c:5178 utils/adt/acl.c:5211 utils/adt/acl.c:5229 utils/init/miscinit.c:502
+#: commands/user.c:990 commands/user.c:1147 commands/variable.c:825 commands/variable.c:897 utils/adt/acl.c:5201 utils/adt/acl.c:5253 utils/adt/acl.c:5286 utils/adt/acl.c:5304 utils/init/miscinit.c:510
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "le rôle « %s » n'existe pas"
@@ -9292,45 +9314,45 @@ msgstr ""
 "Fermez les transactions ouvertes avec multixacts rapidement pour éviter des problèmes de\n"
 "réinitialisation."
 
-#: commands/vacuum.c:1146
+#: commands/vacuum.c:1128
 #, c-format
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr ""
 "certaines bases de données n'ont pas eu droit à l'opération de maintenance\n"
 "VACUUM depuis plus de 2 milliards de transactions"
 
-#: commands/vacuum.c:1147
+#: commands/vacuum.c:1129
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr ""
 "Vous pouvez avoir déjà souffert de pertes de données suite à une\n"
 "réinitialisation de l'identifiant des transactions."
 
-#: commands/vacuum.c:1268
+#: commands/vacuum.c:1250
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "ignore le vacuum de « %s » --- verrou non disponible"
 
-#: commands/vacuum.c:1294
+#: commands/vacuum.c:1276
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "ignore « %s » --- seul le super-utilisateur peut exécuter un VACUUM"
 
-#: commands/vacuum.c:1298
+#: commands/vacuum.c:1280
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr ""
 "ignore « %s » --- seul le super-utilisateur ou le propriétaire de la base de données\n"
 "peuvent exécuter un VACUUM"
 
-#: commands/vacuum.c:1302
+#: commands/vacuum.c:1284
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
 msgstr ""
 "ignore « %s » --- seul le propriétaire de la table ou de la base de données\n"
 "peut exécuter un VACUUM"
 
-#: commands/vacuum.c:1320
+#: commands/vacuum.c:1302
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr ""
@@ -9454,7 +9476,7 @@ msgstr "« %s » : %u pages tronqués en %u"
 msgid "\"%s\": suspending truncate due to conflicting lock request"
 msgstr "« %s » : mis en suspens du tronquage à cause d'un conflit dans la demande de verrou"
 
-#: commands/variable.c:164 utils/misc/guc.c:9892
+#: commands/variable.c:164 utils/misc/guc.c:9918
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Mot clé non reconnu : « %s »"
@@ -9574,94 +9596,94 @@ msgstr "valeur invalide pour l'option « check_option »"
 msgid "Valid values are \"local\" and \"cascaded\"."
 msgstr "Les valeurs valides sont entre « local » et « cascaded »."
 
-#: commands/view.c:101
+#: commands/view.c:103
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
 msgstr ""
 "n'a pas pu déterminer le collationnement à utiliser pour la colonne « %s »\n"
 "de la vue"
 
-#: commands/view.c:115
+#: commands/view.c:117
 #, c-format
 msgid "view must have at least one column"
 msgstr "la vue doit avoir au moins une colonne"
 
-#: commands/view.c:280 commands/view.c:292
+#: commands/view.c:284 commands/view.c:296
 #, c-format
 msgid "cannot drop columns from view"
 msgstr "ne peut pas supprimer les colonnes d'une vue"
 
-#: commands/view.c:297
+#: commands/view.c:301
 #, c-format
 msgid "cannot change name of view column \"%s\" to \"%s\""
 msgstr "ne peut pas modifier le nom de la colonne « %s » de la vue en « %s »"
 
-#: commands/view.c:305
+#: commands/view.c:309
 #, c-format
 msgid "cannot change data type of view column \"%s\" from %s to %s"
 msgstr "ne peut pas modifier le type de données de la colonne « %s » de la vue de %s à %s"
 
-#: commands/view.c:444
+#: commands/view.c:448
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "les vues ne peuvent pas contenir SELECT INTO"
 
-#: commands/view.c:457
+#: commands/view.c:461
 #, c-format
 msgid "views must not contain data-modifying statements in WITH"
 msgstr "les vues ne peuvent pas contenir d'instructions de modifications de données avec WITH"
 
-#: commands/view.c:528
+#: commands/view.c:532
 #, c-format
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW spécifie plus de noms de colonnes que de colonnes"
 
-#: commands/view.c:536
+#: commands/view.c:540
 #, c-format
 msgid "views cannot be unlogged because they do not have storage"
 msgstr "les vues ne peuvent pas être non tracées car elles n'ont pas de stockage"
 
-#: commands/view.c:550
+#: commands/view.c:554
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "la vue « %s » sera une vue temporaire"
 
-#: executor/execCurrent.c:76
+#: executor/execCurrent.c:78
 #, c-format
 msgid "cursor \"%s\" is not a SELECT query"
 msgstr "le curseur « %s » n'est pas une requête SELECT"
 
-#: executor/execCurrent.c:82
+#: executor/execCurrent.c:84
 #, c-format
 msgid "cursor \"%s\" is held from a previous transaction"
 msgstr "le curseur « %s » est détenu par une transaction précédente"
 
-#: executor/execCurrent.c:114
+#: executor/execCurrent.c:116
 #, c-format
 msgid "cursor \"%s\" has multiple FOR UPDATE/SHARE references to table \"%s\""
 msgstr "le curseur « %s » a plusieurs références FOR UPDATE/SHARE pour la table « %s »"
 
-#: executor/execCurrent.c:123
+#: executor/execCurrent.c:125
 #, c-format
 msgid "cursor \"%s\" does not have a FOR UPDATE/SHARE reference to table \"%s\""
 msgstr "le curseur « %s » n'a pas de référence FOR UPDATE/SHARE pour la table « %s »"
 
-#: executor/execCurrent.c:133 executor/execCurrent.c:179
+#: executor/execCurrent.c:135 executor/execCurrent.c:180
 #, c-format
 msgid "cursor \"%s\" is not positioned on a row"
 msgstr "le curseur « %s » n'est pas positionné sur une ligne"
 
-#: executor/execCurrent.c:166
+#: executor/execCurrent.c:167 executor/execCurrent.c:226 executor/execCurrent.c:238
 #, c-format
 msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
 msgstr "le curseur « %s » n'est pas un parcours modifiable de la table « %s »"
 
-#: executor/execCurrent.c:231 executor/execQual.c:1178
+#: executor/execCurrent.c:277 executor/execQual.c:1178
 #, c-format
 msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
 msgstr "le type de paramètre %d (%s) ne correspond pas à ce qui est préparé dans le plan (%s)"
 
-#: executor/execCurrent.c:243 executor/execQual.c:1190
+#: executor/execCurrent.c:289 executor/execQual.c:1190
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "aucune valeur trouvée pour le paramètre %d"
@@ -9701,157 +9723,157 @@ msgstr "La clé %s est en conflit avec la clé existante %s."
 msgid "Key conflicts with existing key."
 msgstr "La clé est en conflit avec une clé existante."
 
-#: executor/execMain.c:1027
+#: executor/execMain.c:1028
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "ne peut pas modifier la séquence « %s »"
 
-#: executor/execMain.c:1033
+#: executor/execMain.c:1034
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "ne peut pas modifier la relation TOAST « %s »"
 
-#: executor/execMain.c:1051 rewrite/rewriteHandler.c:2688
+#: executor/execMain.c:1052 rewrite/rewriteHandler.c:2709
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "ne peut pas insérer dans la vue « %s »"
 
-#: executor/execMain.c:1053 rewrite/rewriteHandler.c:2691
+#: executor/execMain.c:1054 rewrite/rewriteHandler.c:2712
 #, c-format
 msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
 msgstr "Pour activer l'insertion dans la vue, fournissez un trigger INSTEAD OF INSERT ou une règle ON INSERT DO INSTEAD sans condition."
 
-#: executor/execMain.c:1059 rewrite/rewriteHandler.c:2696
+#: executor/execMain.c:1060 rewrite/rewriteHandler.c:2717
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "ne peut pas mettre à jour la vue « %s »"
 
-#: executor/execMain.c:1061 rewrite/rewriteHandler.c:2699
+#: executor/execMain.c:1062 rewrite/rewriteHandler.c:2720
 #, c-format
 msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "Pour activer la mise à jour dans la vue, fournissez un trigger INSTEAD OF UPDATE ou une règle ON UPDATE DO INSTEAD sans condition."
 
-#: executor/execMain.c:1067 rewrite/rewriteHandler.c:2704
+#: executor/execMain.c:1068 rewrite/rewriteHandler.c:2725
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "ne peut pas supprimer à partir de la vue « %s »"
 
-#: executor/execMain.c:1069 rewrite/rewriteHandler.c:2707
+#: executor/execMain.c:1070 rewrite/rewriteHandler.c:2728
 #, c-format
 msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
 msgstr "Pour activer la suppression dans la vue, fournissez un trigger INSTEAD OF DELETE ou une règle ON DELETE DO INSTEAD sans condition."
 
-#: executor/execMain.c:1080
+#: executor/execMain.c:1081
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "ne peut pas modifier la vue matérialisée « %s »"
 
-#: executor/execMain.c:1092
+#: executor/execMain.c:1093
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "ne peut pas insérer dans la table distante « %s »"
 
-#: executor/execMain.c:1098
+#: executor/execMain.c:1099
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "la table distante « %s » n'autorise pas les insertions"
 
-#: executor/execMain.c:1105
+#: executor/execMain.c:1106
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "ne peut pas modifier la table distante « %s »"
 
-#: executor/execMain.c:1111
+#: executor/execMain.c:1112
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "la table distante « %s » n'autorise pas les modifications"
 
-#: executor/execMain.c:1118
+#: executor/execMain.c:1119
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "ne peut pas supprimer à partir de la table distante « %s »"
 
-#: executor/execMain.c:1124
+#: executor/execMain.c:1125
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "la table distante « %s » n'autorise pas les suppressions"
 
-#: executor/execMain.c:1135
+#: executor/execMain.c:1136
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "ne peut pas modifier la relation « %s »"
 
-#: executor/execMain.c:1161
+#: executor/execMain.c:1162
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la séquence « %s »"
 
-#: executor/execMain.c:1168
+#: executor/execMain.c:1169
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la relation TOAST « %s »"
 
-#: executor/execMain.c:1175
+#: executor/execMain.c:1176
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la vue « %s »"
 
-#: executor/execMain.c:1183
+#: executor/execMain.c:1184
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "ne peut pas verrouiller les lignes dans la vue matérialisée « %s »"
 
-#: executor/execMain.c:1192 executor/execMain.c:2610 executor/nodeLockRows.c:132
+#: executor/execMain.c:1193 executor/execMain.c:2615 executor/nodeLockRows.c:132
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "ne peut pas verrouiller la table distante « %s »"
 
-#: executor/execMain.c:1198
+#: executor/execMain.c:1199
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "n'a pas pu verrouiller les lignes dans la relation « %s »"
 
-#: executor/execMain.c:1728
+#: executor/execMain.c:1733
 #, c-format
 msgid "null value in column \"%s\" violates not-null constraint"
 msgstr "une valeur NULL viole la contrainte NOT NULL de la colonne « %s »"
 
-#: executor/execMain.c:1730 executor/execMain.c:1756 executor/execMain.c:1845
+#: executor/execMain.c:1735 executor/execMain.c:1761 executor/execMain.c:1850
 #, c-format
 msgid "Failing row contains %s."
 msgstr "La ligne en échec contient %s"
 
-#: executor/execMain.c:1754
+#: executor/execMain.c:1759
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "la nouvelle ligne de la relation « %s » viole la contrainte de vérification « %s »"
 
-#: executor/execMain.c:1843
+#: executor/execMain.c:1848
 #, c-format
 msgid "new row violates check option for view \"%s\""
 msgstr "la nouvelle ligne viole la contrainte de vérification pour la vue « %s »"
 
-#: executor/execMain.c:1853
+#: executor/execMain.c:1858
 #, c-format
 msgid "new row violates row-level security policy \"%s\" for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne « %s » pour la table « %s »"
 
-#: executor/execMain.c:1858
+#: executor/execMain.c:1863
 #, c-format
 msgid "new row violates row-level security policy for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne pour la table « %s »"
 
-#: executor/execMain.c:1865
+#: executor/execMain.c:1870
 #, c-format
 msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne « %s » (expression USING) pour la table « %s »"
 
-#: executor/execMain.c:1870
+#: executor/execMain.c:1875
 #, c-format
 msgid "new row violates row-level security policy (USING expression) for table \"%s\""
 msgstr "la nouvelle ligne viole la politique de sécurité au niveau ligne (expression USING) pour la table « %s »"
 
-#: executor/execQual.c:302 executor/execQual.c:339 executor/execQual.c:3236 utils/adt/array_userfuncs.c:484 utils/adt/arrayfuncs.c:260 utils/adt/arrayfuncs.c:558 utils/adt/arrayfuncs.c:1288 utils/adt/arrayfuncs.c:3361 utils/adt/arrayfuncs.c:5241 utils/adt/arrayfuncs.c:5758
+#: executor/execQual.c:302 executor/execQual.c:339 executor/execQual.c:3236 utils/adt/array_userfuncs.c:484 utils/adt/arrayfuncs.c:260 utils/adt/arrayfuncs.c:558 utils/adt/arrayfuncs.c:1300 utils/adt/arrayfuncs.c:3373 utils/adt/arrayfuncs.c:5253 utils/adt/arrayfuncs.c:5770
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "le nombre de dimensions du tableau (%d) dépasse le maximum autorisé (%d)"
@@ -10010,7 +10032,7 @@ msgstr "le type cible n'est pas un tableau"
 msgid "ROW() column has type %s instead of type %s"
 msgstr "une colonne ROW() a le type %s au lieu du type %s"
 
-#: executor/execQual.c:5091 utils/adt/arrayfuncs.c:3803 utils/adt/arrayfuncs.c:6325 utils/adt/rowtypes.c:927
+#: executor/execQual.c:5091 utils/adt/arrayfuncs.c:3815 utils/adt/arrayfuncs.c:6337 utils/adt/rowtypes.c:927
 #, c-format
 msgid "could not identify a comparison function for type %s"
 msgstr "n'a pas pu identifier une fonction de comparaison pour le type %s"
@@ -10042,7 +10064,7 @@ msgid "%s is not allowed in a SQL function"
 msgstr "%s n'est pas autorisé dans une fonction SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:524 executor/spi.c:1370 executor/spi.c:2160
+#: executor/functions.c:524 executor/spi.c:1394 executor/spi.c:2184
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s n'est pas autorisé dans une fonction non volatile"
@@ -10106,11 +10128,6 @@ msgstr "L'instruction finale renvoie trop peu de colonnes."
 msgid "return type %s is not supported for SQL functions"
 msgstr "le type de retour %s n'est pas supporté pour les fonctions SQL"
 
-#: executor/nodeAgg.c:3052
-#, c-format
-msgid "combine function for aggregate %u must be declared as STRICT"
-msgstr "la fonction d'unification pour l'aggrégat %u doit être déclarée comme STRICT"
-
 #: executor/nodeAgg.c:3097 executor/nodeWindowAgg.c:2318
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
@@ -10148,12 +10165,12 @@ msgstr "n'a pas pu lire le fichier temporaire contenant la jointure hâchée : %
 msgid "lossy distance functions are not supported in index-only scans"
 msgstr "les fonctions de distance à perte ne sont pas supportés dans les parcours d'index seul"
 
-#: executor/nodeLimit.c:253
+#: executor/nodeLimit.c:261
 #, c-format
 msgid "OFFSET must not be negative"
 msgstr "OFFSET ne doit pas être négatif"
 
-#: executor/nodeLimit.c:280
+#: executor/nodeLimit.c:288
 #, c-format
 msgid "LIMIT must not be negative"
 msgstr "LIMIT ne doit pas être négative"
@@ -10205,7 +10222,7 @@ msgstr "le paramètre de TABLESAMPLE ne peut pas être NULL"
 msgid "TABLESAMPLE REPEATABLE parameter cannot be null"
 msgstr "le paramètre TABLESAMPLE REPEATABLE ne peut pas être NULL"
 
-#: executor/nodeSubplan.c:345 executor/nodeSubplan.c:384 executor/nodeSubplan.c:1036
+#: executor/nodeSubplan.c:356 executor/nodeSubplan.c:395 executor/nodeSubplan.c:1066
 #, c-format
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "plus d'une ligne renvoyée par une sous-requête utilisée comme une expression"
@@ -10235,43 +10252,43 @@ msgstr "l'offset de fin de frame ne doit pas être NULL"
 msgid "frame ending offset must not be negative"
 msgstr "l'offset de fin de frame ne doit pas être négatif"
 
-#: executor/spi.c:211
+#: executor/spi.c:231
 #, c-format
 msgid "transaction left non-empty SPI stack"
 msgstr "transaction gauche non vide dans la pile SPI"
 
-#: executor/spi.c:212 executor/spi.c:276
+#: executor/spi.c:232 executor/spi.c:300
 #, c-format
 msgid "Check for missing \"SPI_finish\" calls."
 msgstr "Vérifiez les appels manquants à « SPI_finish »."
 
-#: executor/spi.c:275
+#: executor/spi.c:299
 #, c-format
 msgid "subtransaction left non-empty SPI stack"
 msgstr "sous-transaction gauche non vide dans la pile SPI"
 
-#: executor/spi.c:1231
+#: executor/spi.c:1255
 #, c-format
 msgid "cannot open multi-query plan as cursor"
 msgstr "ne peut pas ouvrir le plan à plusieurs requêtes comme curseur"
 
 #. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:1236
+#: executor/spi.c:1260
 #, c-format
 msgid "cannot open %s query as cursor"
 msgstr "ne peut pas ouvrir la requête %s comme curseur"
 
-#: executor/spi.c:1344
+#: executor/spi.c:1368
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE n'est pas supporté"
 
-#: executor/spi.c:1345 parser/analyze.c:2360
+#: executor/spi.c:1369 parser/analyze.c:2386
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Les curseurs déplaçables doivent être en lecture seule (READ ONLY)."
 
-#: executor/spi.c:2468
+#: executor/spi.c:2492
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "instruction SQL « %s »"
@@ -10326,7 +10343,7 @@ msgstr "STDIN/STDOUT non autorisé dans PROGRAM"
 msgid "GLOBAL is deprecated in temporary table creation"
 msgstr "GLOBAL est obsolète dans la création de la table temporaire"
 
-#: gram.y:3351 utils/adt/ri_triggers.c:314 utils/adt/ri_triggers.c:371 utils/adt/ri_triggers.c:790 utils/adt/ri_triggers.c:1013 utils/adt/ri_triggers.c:1169 utils/adt/ri_triggers.c:1350 utils/adt/ri_triggers.c:1515 utils/adt/ri_triggers.c:1691 utils/adt/ri_triggers.c:1871 utils/adt/ri_triggers.c:2062 utils/adt/ri_triggers.c:2120 utils/adt/ri_triggers.c:2225 utils/adt/ri_triggers.c:2402
+#: gram.y:3351 utils/adt/ri_triggers.c:313 utils/adt/ri_triggers.c:370 utils/adt/ri_triggers.c:789 utils/adt/ri_triggers.c:1012 utils/adt/ri_triggers.c:1168 utils/adt/ri_triggers.c:1349 utils/adt/ri_triggers.c:1514 utils/adt/ri_triggers.c:1690 utils/adt/ri_triggers.c:1870 utils/adt/ri_triggers.c:2061 utils/adt/ri_triggers.c:2119 utils/adt/ri_triggers.c:2224 utils/adt/ri_triggers.c:2401
 #, c-format
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL non implémenté"
@@ -10405,174 +10422,174 @@ msgstr "la syntaxe LIMIT #,# n'est pas supportée"
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Utilisez les clauses séparées LIMIT et OFFSET."
 
-#: gram.y:10676 gram.y:10701
+#: gram.y:10693 gram.y:10718
 #, c-format
 msgid "VALUES in FROM must have an alias"
 msgstr "VALUES dans FROM doit avoir un alias"
 
-#: gram.y:10677 gram.y:10702
+#: gram.y:10694 gram.y:10719
 #, c-format
 msgid "For example, FROM (VALUES ...) [AS] foo."
 msgstr "Par exemple, FROM (VALUES ...) [AS] quelquechose."
 
-#: gram.y:10682 gram.y:10707
+#: gram.y:10699 gram.y:10724
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "la sous-requête du FROM doit avoir un alias"
 
-#: gram.y:10683 gram.y:10708
+#: gram.y:10700 gram.y:10725
 #, c-format
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Par exemple, FROM (SELECT...) [AS] quelquechose."
 
-#: gram.y:11282
+#: gram.y:11299
 #, c-format
 msgid "precision for type float must be at least 1 bit"
 msgstr "la précision du type float doit être d'au moins un bit"
 
-#: gram.y:11291
+#: gram.y:11308
 #, c-format
 msgid "precision for type float must be less than 54 bits"
 msgstr "la précision du type float doit être inférieur à 54 bits"
 
-#: gram.y:11795
+#: gram.y:11812
 #, c-format
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "mauvais nombre de paramètres sur le côté gauche de l'expression OVERLAPS"
 
-#: gram.y:11800
+#: gram.y:11817
 #, c-format
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "mauvais nombre de paramètres sur le côté droit de l'expression OVERLAPS"
 
-#: gram.y:11975
+#: gram.y:11992
 #, c-format
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "prédicat UNIQUE non implémenté"
 
-#: gram.y:12309
+#: gram.y:12326
 #, c-format
 msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
 msgstr "ne peut pas utiliser des clauses ORDER BY multiples dans WITHIN GROUP"
 
-#: gram.y:12314
+#: gram.y:12331
 #, c-format
 msgid "cannot use DISTINCT with WITHIN GROUP"
 msgstr "ne peut pas utiliser DISTINCT avec WITHIN GROUP"
 
-#: gram.y:12319
+#: gram.y:12336
 #, c-format
 msgid "cannot use VARIADIC with WITHIN GROUP"
 msgstr "ne peut pas utiliser VARIADIC avec WITHIN GROUP"
 
-#: gram.y:12825
+#: gram.y:12842
 #, c-format
 msgid "RANGE PRECEDING is only supported with UNBOUNDED"
 msgstr "RANGE PRECEDING est seulement supporté avec UNBOUNDED"
 
-#: gram.y:12831
+#: gram.y:12848
 #, c-format
 msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
 msgstr "RANGE FOLLOWING est seulement supporté avec UNBOUNDED"
 
-#: gram.y:12858 gram.y:12881
+#: gram.y:12875 gram.y:12898
 #, c-format
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "la fin du frame ne peut pas être UNBOUNDED FOLLOWING"
 
-#: gram.y:12863
+#: gram.y:12880
 #, c-format
 msgid "frame starting from following row cannot end with current row"
 msgstr "la frame commençant après la ligne suivante ne peut pas se terminer avec la ligne actuelle"
 
-#: gram.y:12886
+#: gram.y:12903
 #, c-format
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "la fin du frame ne peut pas être UNBOUNDED PRECEDING"
 
-#: gram.y:12892
+#: gram.y:12909
 #, c-format
 msgid "frame starting from current row cannot have preceding rows"
 msgstr "la frame commençant à la ligne courante ne peut pas avoir des lignes précédentes"
 
-#: gram.y:12899
+#: gram.y:12916
 #, c-format
 msgid "frame starting from following row cannot have preceding rows"
 msgstr "la frame commençant à la ligne suivante ne peut pas avoir des lignes précédentes"
 
-#: gram.y:13564
+#: gram.y:13581
 #, c-format
 msgid "type modifier cannot have parameter name"
 msgstr "le modificateur de type ne peut pas avoir de nom de paramètre"
 
-#: gram.y:13570
+#: gram.y:13587
 #, c-format
 msgid "type modifier cannot have ORDER BY"
 msgstr "le modificateur de type ne peut pas avoir de clause ORDER BY"
 
-#: gram.y:13634 gram.y:13640
+#: gram.y:13651 gram.y:13657
 #, c-format
 msgid "%s cannot be used as a role name here"
 msgstr "%s ne peut pas être utilisé comme nom de rôle ici"
 
-#: gram.y:14262 gram.y:14451
+#: gram.y:14279 gram.y:14468
 msgid "improper use of \"*\""
 msgstr "mauvaise utilisation de « * »"
 
-#: gram.y:14414 gram.y:14431 tsearch/spell.c:954 tsearch/spell.c:971 tsearch/spell.c:988 tsearch/spell.c:1005 tsearch/spell.c:1070
+#: gram.y:14431 gram.y:14448 tsearch/spell.c:954 tsearch/spell.c:971 tsearch/spell.c:988 tsearch/spell.c:1005 tsearch/spell.c:1070
 #, c-format
 msgid "syntax error"
 msgstr "erreur de syntaxe"
 
-#: gram.y:14515
+#: gram.y:14532
 #, c-format
 msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
 msgstr "un agrégat par ensemble ordonné avec un argument VARIADIC direct doit avoir un argument VARIADIC agrégé du même type de données"
 
-#: gram.y:14552
+#: gram.y:14569
 #, c-format
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "clauses ORDER BY multiples non autorisées"
 
-#: gram.y:14563
+#: gram.y:14580
 #, c-format
 msgid "multiple OFFSET clauses not allowed"
 msgstr "clauses OFFSET multiples non autorisées"
 
-#: gram.y:14572
+#: gram.y:14589
 #, c-format
 msgid "multiple LIMIT clauses not allowed"
 msgstr "clauses LIMIT multiples non autorisées"
 
-#: gram.y:14581
+#: gram.y:14598
 #, c-format
 msgid "multiple WITH clauses not allowed"
 msgstr "clauses WITH multiples non autorisées"
 
-#: gram.y:14773
+#: gram.y:14790
 #, c-format
 msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
 msgstr "les arguments OUT et INOUT ne sont pas autorisés dans des fonctions TABLE"
 
-#: gram.y:14874
+#: gram.y:14891
 #, c-format
 msgid "multiple COLLATE clauses not allowed"
 msgstr "clauses COLLATE multiples non autorisées"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14912 gram.y:14925
+#: gram.y:14929 gram.y:14942
 #, c-format
 msgid "%s constraints cannot be marked DEFERRABLE"
 msgstr "les contraintes %s ne peuvent pas être marquées comme DEFERRABLE"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14938
+#: gram.y:14955
 #, c-format
 msgid "%s constraints cannot be marked NOT VALID"
 msgstr "les contraintes %s ne peuvent pas être marquées comme NOT VALID"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:14951
+#: gram.y:14968
 #, c-format
 msgid "%s constraints cannot be marked NO INHERIT"
 msgstr "les contraintes %s ne peuvent pas être marquées NO INHERIT"
@@ -10842,344 +10859,344 @@ msgstr "taille du paquet du mot de passe invalide"
 msgid "empty password returned by client"
 msgstr "mot de passe vide renvoyé par le client"
 
-#: libpq/auth.c:842
+#: libpq/auth.c:846
 #, c-format
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI n'est pas supporté dans le protocole de version 2"
 
-#: libpq/auth.c:902
+#: libpq/auth.c:906
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "en attente d'une réponse GSS, a reçu un message de type %d"
 
-#: libpq/auth.c:963
+#: libpq/auth.c:967
 msgid "accepting GSS security context failed"
 msgstr "échec de l'acceptation du contexte de sécurité GSS"
 
-#: libpq/auth.c:989
+#: libpq/auth.c:993
 msgid "retrieving GSS user name failed"
 msgstr "échec lors de la récupération du nom de l'utilisateur avec GSS"
 
-#: libpq/auth.c:1108
+#: libpq/auth.c:1117
 #, c-format
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSPI n'est pas supporté dans le protocole de version 2"
 
-#: libpq/auth.c:1123
+#: libpq/auth.c:1132
 msgid "could not acquire SSPI credentials"
 msgstr "n'a pas pu obtenir les pièces d'identité SSPI"
 
-#: libpq/auth.c:1141
+#: libpq/auth.c:1150
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "en attente d'une réponse SSPI, a reçu un message de type %d"
 
-#: libpq/auth.c:1213
+#: libpq/auth.c:1222
 msgid "could not accept SSPI security context"
 msgstr "n'a pas pu accepter le contexte de sécurité SSPI"
 
-#: libpq/auth.c:1275
+#: libpq/auth.c:1284
 msgid "could not get token from SSPI security context"
 msgstr "n'a pas pu obtenir le jeton du contexte de sécurité SSPI"
 
-#: libpq/auth.c:1394 libpq/auth.c:1413
+#: libpq/auth.c:1403 libpq/auth.c:1422
 #, c-format
 msgid "could not translate name"
 msgstr "n'a pas pu traduit le nom"
 
-#: libpq/auth.c:1426
+#: libpq/auth.c:1435
 #, c-format
 msgid "realm name too long"
 msgstr "nom du royaume trop long"
 
-#: libpq/auth.c:1441
+#: libpq/auth.c:1450
 #, c-format
 msgid "translated account name too long"
 msgstr "traduction du nom de compte trop longue"
 
-#: libpq/auth.c:1627
+#: libpq/auth.c:1636
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "n'a pas pu créer le socket pour la connexion Ident : %m"
 
-#: libpq/auth.c:1642
+#: libpq/auth.c:1651
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "n'a pas pu se lier à l'adresse locale « %s » : %m"
 
-#: libpq/auth.c:1654
+#: libpq/auth.c:1663
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "n'a pas pu se connecter au serveur Ident à l'adresse « %s », port %s : %m"
 
-#: libpq/auth.c:1676
+#: libpq/auth.c:1685
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "n'a pas pu envoyer la requête au serveur Ident à l'adresse « %s », port %s : %m"
 
-#: libpq/auth.c:1693
+#: libpq/auth.c:1702
 #, c-format
 msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "n'a pas pu recevoir la réponse du serveur Ident à l'adresse « %s », port %s :\n"
 "%m"
 
-#: libpq/auth.c:1703
+#: libpq/auth.c:1712
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "réponse mal formatée du serveur Ident : « %s »"
 
-#: libpq/auth.c:1743
+#: libpq/auth.c:1752
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "la méthode d'authentification «peer n'est pas supportée sur cette plateforme"
 
-#: libpq/auth.c:1747
+#: libpq/auth.c:1756
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "n'a pas pu obtenir l'authentification de l'autre : %m"
 
-#: libpq/auth.c:1756
+#: libpq/auth.c:1767
 #, c-format
 msgid "could not look up local user ID %ld: %s"
 msgstr "n'a pas pu rechercher l'identifiant %ld de l'utilisateur local : %s"
 
-#: libpq/auth.c:1844
+#: libpq/auth.c:1855
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "erreur provenant de la couche PAM : %s"
 
-#: libpq/auth.c:1925
+#: libpq/auth.c:1936
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "n'a pas pu créer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:1936
+#: libpq/auth.c:1947
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) a échoué : %s"
 
-#: libpq/auth.c:1947
+#: libpq/auth.c:1958
 #, c-format
 msgid "pam_set_item(PAM_RHOST) failed: %s"
 msgstr "pam_set_item(PAM_RHOST) a échoué : %s"
 
-#: libpq/auth.c:1958
+#: libpq/auth.c:1969
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) a échoué : %s"
 
-#: libpq/auth.c:1969
+#: libpq/auth.c:1980
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate a échoué : %s"
 
-#: libpq/auth.c:1980
+#: libpq/auth.c:1991
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt a échoué : %s"
 
-#: libpq/auth.c:1991
+#: libpq/auth.c:2002
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "n'a pas pu fermer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:2056
+#: libpq/auth.c:2067
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "n'a pas pu initialiser LDAP : %m"
 
-#: libpq/auth.c:2059
+#: libpq/auth.c:2070
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "n'a pas pu initialiser LDAP : code d'erreur %d"
 
-#: libpq/auth.c:2069
+#: libpq/auth.c:2080
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "n'a pas pu initialiser la version du protocole LDAP : %s"
 
-#: libpq/auth.c:2098
+#: libpq/auth.c:2109
 #, c-format
 msgid "could not load wldap32.dll"
 msgstr "n'a pas pu charger wldap32.dll"
 
-#: libpq/auth.c:2106
+#: libpq/auth.c:2117
 #, c-format
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "n'a pas pu charger la fonction _ldap_start_tls_sA de wldap32.dll"
 
-#: libpq/auth.c:2107
+#: libpq/auth.c:2118
 #, c-format
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP via SSL n'est pas supporté sur cette plateforme."
 
-#: libpq/auth.c:2122
+#: libpq/auth.c:2133
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "n'a pas pu démarrer la session TLS LDAP : %s"
 
-#: libpq/auth.c:2144
+#: libpq/auth.c:2155
 #, c-format
 msgid "LDAP server not specified"
 msgstr "serveur LDAP non précisé"
 
-#: libpq/auth.c:2192
+#: libpq/auth.c:2203
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "caractère invalide dans le nom de l'utilisateur pour l'authentification LDAP"
 
-#: libpq/auth.c:2207
+#: libpq/auth.c:2218
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
 msgstr "n'a pas pu réaliser le lien LDAP initiale pour ldapbinddn « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2232
+#: libpq/auth.c:2243
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr "n'a pas pu rechercher dans LDAP pour filtrer « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2243
+#: libpq/auth.c:2254
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "l'utilisateur LDAP « %s » n'existe pas"
 
-#: libpq/auth.c:2244
+#: libpq/auth.c:2255
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "la recherche LDAP pour le filtre « %s » sur le serveur « %s » n'a renvoyé aucun enregistrement."
 
-#: libpq/auth.c:2248
+#: libpq/auth.c:2259
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "l'utilisateur LDAP « %s » n'est pas unique"
 
-#: libpq/auth.c:2249
+#: libpq/auth.c:2260
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
 msgstr[0] "la recherche LDAP pour le filtre « %s » sur le serveur « %s » a renvoyé %d enregistrement."
 msgstr[1] "la recherche LDAP pour le filtre « %s » sur le serveur « %s » a renvoyé %d enregistrements."
 
-#: libpq/auth.c:2267
+#: libpq/auth.c:2278
 #, c-format
 msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr ""
 "n'a pas pu obtenir le dn pour la première entrée correspondante « %s » sur\n"
 "le serveur « %s » : %s"
 
-#: libpq/auth.c:2287
+#: libpq/auth.c:2298
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\": %s"
 msgstr ""
 "n'a pas pu exécuter le unbind après la recherche de l'utilisateur « %s »\n"
 "sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2317
+#: libpq/auth.c:2328
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr "échec de connexion LDAP pour l'utilisateur « %s » sur le serveur « %s » : %s"
 
-#: libpq/auth.c:2345
+#: libpq/auth.c:2356
 #, c-format
 msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
 msgstr ""
 "l'authentification par le certificat a échoué pour l'utilisateur « %s » :\n"
 "le certificat du client ne contient aucun nom d'utilisateur"
 
-#: libpq/auth.c:2475
+#: libpq/auth.c:2486
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "serveur RADIUS non précisé"
 
-#: libpq/auth.c:2482
+#: libpq/auth.c:2493
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "secret RADIUS non précisé"
 
-#: libpq/auth.c:2498 libpq/hba.c:1624
+#: libpq/auth.c:2509 libpq/hba.c:1624
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "n'a pas pu traduire le nom du serveur RADIUS « %s » en une adresse : %s"
 
-#: libpq/auth.c:2519
+#: libpq/auth.c:2530
 #, c-format
 msgid "RADIUS authentication does not support passwords longer than %d characters"
 msgstr ""
 "l'authentification RADIUS ne supporte pas les mots de passe de plus de %d\n"
 "caractères"
 
-#: libpq/auth.c:2531
+#: libpq/auth.c:2542
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "n'a pas pu générer le vecteur de chiffrement aléatoire"
 
-#: libpq/auth.c:2569
+#: libpq/auth.c:2580
 #, c-format
 msgid "could not perform MD5 encryption of password"
 msgstr "n'a pas pu réaliser le chiffrement MD5 du mot de passe"
 
-#: libpq/auth.c:2594
+#: libpq/auth.c:2605
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "n'a pas pu créer le socket RADIUS : %m"
 
-#: libpq/auth.c:2615
+#: libpq/auth.c:2626
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "n'a pas pu se lier à la socket RADIUS : %m"
 
-#: libpq/auth.c:2625
+#: libpq/auth.c:2636
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "n'a pas pu transmettre le paquet RADIUS : %m"
 
-#: libpq/auth.c:2658 libpq/auth.c:2683
+#: libpq/auth.c:2669 libpq/auth.c:2694
 #, c-format
 msgid "timeout waiting for RADIUS response"
 msgstr "dépassement du délai pour la réponse du RADIUS"
 
-#: libpq/auth.c:2676
+#: libpq/auth.c:2687
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "n'a pas pu vérifier le statut sur la socket RADIUS : %m"
 
-#: libpq/auth.c:2705
+#: libpq/auth.c:2716
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "n'a pas pu lire la réponse RADIUS : %m"
 
-#: libpq/auth.c:2717 libpq/auth.c:2721
+#: libpq/auth.c:2728 libpq/auth.c:2732
 #, c-format
 msgid "RADIUS response was sent from incorrect port: %d"
 msgstr "la réponse RADIUS a été envoyée à partir d'un mauvais port : %d"
 
-#: libpq/auth.c:2730
+#: libpq/auth.c:2741
 #, c-format
 msgid "RADIUS response too short: %d"
 msgstr "réponse RADIUS trop courte : %d"
 
-#: libpq/auth.c:2737
+#: libpq/auth.c:2748
 #, c-format
 msgid "RADIUS response has corrupt length: %d (actual length %d)"
 msgstr "la réponse RADIUS a une longueur corrompue : %d (longueur actuelle %d)"
 
-#: libpq/auth.c:2745
+#: libpq/auth.c:2756
 #, c-format
 msgid "RADIUS response is to a different request: %d (should be %d)"
 msgstr "la réponse RADIUS correspond à une demande différente : %d (devrait être %d)"
 
-#: libpq/auth.c:2770
+#: libpq/auth.c:2781
 #, c-format
 msgid "could not perform MD5 encryption of received packet"
 msgstr "n'a pas pu réaliser le chiffrement MD5 du paquet reçu"
 
-#: libpq/auth.c:2779
+#: libpq/auth.c:2790
 #, c-format
 msgid "RADIUS response has incorrect MD5 signature"
 msgstr "la réponse RADIUS a une signature MD5 erronée"
 
-#: libpq/auth.c:2796
+#: libpq/auth.c:2807
 #, c-format
 msgid "RADIUS response has invalid code (%d) for user \"%s\""
 msgstr "la réponse RADIUS a un code invalide (%d) pour l'utilisateur « %s »"
@@ -11392,7 +11409,7 @@ msgstr "aucune erreur SSL reportée"
 msgid "SSL error code %lu"
 msgstr "erreur SSL %lu"
 
-#: libpq/be-secure.c:171 libpq/be-secure.c:256
+#: libpq/be-secure.c:174 libpq/be-secure.c:261
 #, c-format
 msgid "terminating connection due to unexpected postmaster exit"
 msgstr "arrêt des connexions suite à un arrêt inatendu du postmaster"
@@ -11853,7 +11870,7 @@ msgstr "il n'y a pas de connexion client"
 msgid "could not receive data from client: %m"
 msgstr "n'a pas pu recevoir les données du client : %m"
 
-#: libpq/pqcomm.c:1196 tcop/postgres.c:3913
+#: libpq/pqcomm.c:1196 tcop/postgres.c:3942
 #, c-format
 msgid "terminating connection because protocol synchronization was lost"
 msgstr "arrêt de la connexion à cause d'une perte de synchronisation du protocole"
@@ -11883,7 +11900,7 @@ msgstr "n'a pas pu envoyer les données au client : %m"
 msgid "no data left in message"
 msgstr "pas de données dans le message"
 
-#: libpq/pqformat.c:557 libpq/pqformat.c:575 libpq/pqformat.c:596 utils/adt/arrayfuncs.c:1457 utils/adt/rowtypes.c:563
+#: libpq/pqformat.c:557 libpq/pqformat.c:575 libpq/pqformat.c:596 utils/adt/arrayfuncs.c:1469 utils/adt/rowtypes.c:563
 #, c-format
 msgid "insufficient data left in message"
 msgstr "données insuffisantes laissées dans le message"
@@ -12218,22 +12235,22 @@ msgstr "ExtensibleNodeMethods \"%s\" n'a pas été enregistré"
 msgid "could not find array type for data type %s"
 msgstr "n'a pas pu trouver de type tableau pour le type de données %s"
 
-#: optimizer/path/allpaths.c:2653
+#: optimizer/path/allpaths.c:2666
 #, c-format
 msgid "WHERE CURRENT OF is not supported on a view with no underlying relation"
 msgstr "WHERE CURRENT OF n'est pas supporté pour une vue sans table sous-jacente"
 
-#: optimizer/path/allpaths.c:2658
+#: optimizer/path/allpaths.c:2671
 #, c-format
 msgid "WHERE CURRENT OF is not supported on a view with more than one underlying relation"
 msgstr "WHERE CURRENT OF n'est pas supporté pour une vue avec plus d'une table sous-jacente"
 
-#: optimizer/path/allpaths.c:2663
+#: optimizer/path/allpaths.c:2676
 #, c-format
 msgid "WHERE CURRENT OF is not supported on a view with grouping or aggregation"
 msgstr "WHERE CURRENT OF n'est pas supporté pour une vue avec regroupement ou agrégat"
 
-#: optimizer/path/joinrels.c:802
+#: optimizer/path/joinrels.c:803
 #, c-format
 msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions"
 msgstr ""
@@ -12247,46 +12264,46 @@ msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s ne peut être appliqué sur le côté possiblement NULL d'une jointure externe"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1480 parser/analyze.c:1549 parser/analyze.c:1747 parser/analyze.c:2528
+#: optimizer/plan/planner.c:1479 parser/analyze.c:1575 parser/analyze.c:1773 parser/analyze.c:2554
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s n'est pas autorisé avec UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:3803
+#: optimizer/plan/planner.c:3802
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "n'a pas pu implanter GROUP BY"
 
-#: optimizer/plan/planner.c:3804 optimizer/plan/planner.c:4197 optimizer/prep/prepunion.c:949
+#: optimizer/plan/planner.c:3803 optimizer/plan/planner.c:4196 optimizer/prep/prepunion.c:949
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr ""
 "Certains des types de données supportent seulement le hachage,\n"
 "alors que les autres supportent seulement le tri."
 
-#: optimizer/plan/planner.c:4196
+#: optimizer/plan/planner.c:4195
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "n'a pas pu implanter DISTINCT"
 
-#: optimizer/plan/planner.c:4826
+#: optimizer/plan/planner.c:4825
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "n'a pas pu implanter PARTITION BY de window"
 
-#: optimizer/plan/planner.c:4827
+#: optimizer/plan/planner.c:4826
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr ""
 "Les colonnes de partitionnement de window doivent être d'un type de données\n"
 "triables."
 
-#: optimizer/plan/planner.c:4831
+#: optimizer/plan/planner.c:4830
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "n'a pas pu implanter ORDER BY dans le window"
 
-#: optimizer/plan/planner.c:4832
+#: optimizer/plan/planner.c:4831
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Les colonnes de tri de la window doivent être d'un type de données triable."
@@ -12318,7 +12335,7 @@ msgstr "%s sur aucune colonne n'est pas supportée"
 msgid "could not implement %s"
 msgstr "n'a pas pu implanter %s"
 
-#: optimizer/util/clauses.c:4634
+#: optimizer/util/clauses.c:4648
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "fonction SQL « %s » durant « inlining »"
@@ -12348,7 +12365,7 @@ msgstr "ON CONFLICT DO UPDATE non supporté avec les contraintes d'exclusion"
 msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification"
 msgstr "il n'existe aucune contrainte unique ou contrainte d'exclusion correspondant à la spécification ON CONFLICT"
 
-#: parser/analyze.c:663 parser/analyze.c:1321
+#: parser/analyze.c:663 parser/analyze.c:1347
 #, c-format
 msgid "VALUES lists must all be the same length"
 msgstr "les listes VALUES doivent toutes être de la même longueur"
@@ -12371,181 +12388,181 @@ msgstr ""
 "de colonnes que celui attendu par INSERT. Auriez-vous utilisé des parenthèses\n"
 "supplémentaires ?"
 
-#: parser/analyze.c:1142 parser/analyze.c:1522
+#: parser/analyze.c:1168 parser/analyze.c:1548
 #, c-format
 msgid "SELECT ... INTO is not allowed here"
 msgstr "SELECT ... INTO n'est pas autorisé ici"
 
-#: parser/analyze.c:1335
+#: parser/analyze.c:1361
 #, c-format
 msgid "DEFAULT can only appear in a VALUES list within INSERT"
 msgstr "DEFAULT peut seulement apparaître dans la liste VALUES comprise dans un INSERT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1454 parser/analyze.c:2698
+#: parser/analyze.c:1480 parser/analyze.c:2724
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s ne peut pas être appliqué à VALUES"
 
-#: parser/analyze.c:1675
+#: parser/analyze.c:1701
 #, c-format
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "clause UNION/INTERSECT/EXCEPT ORDER BY invalide"
 
-#: parser/analyze.c:1676
+#: parser/analyze.c:1702
 #, c-format
 msgid "Only result column names can be used, not expressions or functions."
 msgstr ""
 "Seuls les noms de colonnes résultats peuvent être utilisés, pas les\n"
 "expressions et les fonctions."
 
-#: parser/analyze.c:1677
+#: parser/analyze.c:1703
 #, c-format
 msgid "Add the expression/function to every SELECT, or move the UNION into a FROM clause."
 msgstr "Ajouter l'expression/fonction à chaque SELECT, ou déplacer l'UNION dans une clause FROM."
 
-#: parser/analyze.c:1737
+#: parser/analyze.c:1763
 #, c-format
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "INTO est autorisé uniquement sur le premier SELECT d'un UNION/INTERSECT/EXCEPT"
 
-#: parser/analyze.c:1801
+#: parser/analyze.c:1827
 #, c-format
 msgid "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of same query level"
 msgstr ""
 "L'instruction membre UNION/INTERSECT/EXCEPT ne peut pas faire référence à\n"
 "d'autres relations que celles de la requête de même niveau"
 
-#: parser/analyze.c:1890
+#: parser/analyze.c:1916
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "chaque requête %s doit avoir le même nombre de colonnes"
 
-#: parser/analyze.c:2283
+#: parser/analyze.c:2309
 #, c-format
 msgid "RETURNING must have at least one column"
 msgstr "RETURNING doit avoir au moins une colonne"
 
-#: parser/analyze.c:2320
+#: parser/analyze.c:2346
 #, c-format
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "ne peut pas spécifier à la fois SCROLL et NO SCROLL"
 
-#: parser/analyze.c:2338
+#: parser/analyze.c:2364
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR ne doit pas contenir des instructions de modification de données dans WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2346
+#: parser/analyze.c:2372
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s n'est pas supporté"
 
-#: parser/analyze.c:2349
+#: parser/analyze.c:2375
 #, c-format
 msgid "Holdable cursors must be READ ONLY."
 msgstr "Les curseurs détenables doivent être en lecture seule (READ ONLY)."
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2357
+#: parser/analyze.c:2383
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... %s is not supported"
 msgstr "DECLARE SCROLL CURSOR ... %s n'est pas supporté"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2368
+#: parser/analyze.c:2394
 #, c-format
 msgid "DECLARE INSENSITIVE CURSOR ... %s is not supported"
 msgstr "DECLARE INSENSITIVE CURSOR ... %s n'est pas supporté"
 
-#: parser/analyze.c:2371
+#: parser/analyze.c:2397
 #, c-format
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "Les curseurs insensibles doivent être en lecture seule (READ ONLY)."
 
-#: parser/analyze.c:2437
+#: parser/analyze.c:2463
 #, c-format
 msgid "materialized views must not use data-modifying statements in WITH"
 msgstr "les vues matérialisées ne peuvent pas contenir d'instructions de modifications de données avec WITH"
 
-#: parser/analyze.c:2447
+#: parser/analyze.c:2473
 #, c-format
 msgid "materialized views must not use temporary tables or views"
 msgstr "les vues matérialisées ne doivent pas utiliser de tables temporaires ou de vues"
 
-#: parser/analyze.c:2457
+#: parser/analyze.c:2483
 #, c-format
 msgid "materialized views may not be defined using bound parameters"
 msgstr "les vues matérialisées ne peuvent pas être définies en utilisant des paramètres liés"
 
-#: parser/analyze.c:2469
+#: parser/analyze.c:2495
 #, c-format
 msgid "materialized views cannot be UNLOGGED"
 msgstr "les vues matérialisées ne peuvent pas être UNLOGGED"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2535
+#: parser/analyze.c:2561
 #, c-format
 msgid "%s is not allowed with DISTINCT clause"
 msgstr "%s n'est pas autorisé avec la clause DISTINCT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2542
+#: parser/analyze.c:2568
 #, c-format
 msgid "%s is not allowed with GROUP BY clause"
 msgstr "%s n'est pas autorisé avec la clause GROUP BY"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2549
+#: parser/analyze.c:2575
 #, c-format
 msgid "%s is not allowed with HAVING clause"
 msgstr "%s n'est pas autorisé avec la clause HAVING"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2556
+#: parser/analyze.c:2582
 #, c-format
 msgid "%s is not allowed with aggregate functions"
 msgstr "%s n'est pas autorisé avec les fonctions d'agrégat"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2563
+#: parser/analyze.c:2589
 #, c-format
 msgid "%s is not allowed with window functions"
 msgstr "%s n'est pas autorisé avec les fonctions de fenêtrage"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2570
+#: parser/analyze.c:2596
 #, c-format
 msgid "%s is not allowed with set-returning functions in the target list"
 msgstr "%s n'est pas autorisé avec les fonctions renvoyant plusieurs lignes dans la liste cible"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2649
+#: parser/analyze.c:2675
 #, c-format
 msgid "%s must specify unqualified relation names"
 msgstr "%s doit indiquer les noms de relation non qualifiés"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2680
+#: parser/analyze.c:2706
 #, c-format
 msgid "%s cannot be applied to a join"
 msgstr "%s ne peut pas être appliqué à une jointure"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2689
+#: parser/analyze.c:2715
 #, c-format
 msgid "%s cannot be applied to a function"
 msgstr "%s ne peut pas être appliqué à une fonction"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2707
+#: parser/analyze.c:2733
 #, c-format
 msgid "%s cannot be applied to a WITH query"
 msgstr "%s ne peut pas être appliqué à une requête WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2724
+#: parser/analyze.c:2750
 #, c-format
 msgid "relation \"%s\" in %s clause not found in FROM clause"
 msgstr "relation « %s » dans une clause %s introuvable dans la clause FROM"
@@ -13604,7 +13621,7 @@ msgstr "l'opérateur n'existe pas : %s"
 msgid "Use an explicit ordering operator or modify the query."
 msgstr "Utilisez un opérateur explicite de tri ou modifiez la requête."
 
-#: parser/parse_oper.c:226 utils/adt/array_userfuncs.c:794 utils/adt/array_userfuncs.c:933 utils/adt/arrayfuncs.c:3639 utils/adt/arrayfuncs.c:4077 utils/adt/arrayfuncs.c:6039 utils/adt/rowtypes.c:1167
+#: parser/parse_oper.c:226 utils/adt/array_userfuncs.c:794 utils/adt/array_userfuncs.c:933 utils/adt/arrayfuncs.c:3651 utils/adt/arrayfuncs.c:4089 utils/adt/arrayfuncs.c:6051 utils/adt/rowtypes.c:1167
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "n'a pas pu identifier un opérateur d'égalité pour le type %s"
@@ -14012,7 +14029,7 @@ msgstr ""
 "les règles avec des conditions WHERE ne peuvent contenir que des actions\n"
 "SELECT, INSERT, UPDATE ou DELETE "
 
-#: parser/parse_utilcmd.c:2312 parser/parse_utilcmd.c:2411 rewrite/rewriteHandler.c:483 rewrite/rewriteManip.c:1015
+#: parser/parse_utilcmd.c:2312 parser/parse_utilcmd.c:2411 rewrite/rewriteHandler.c:484 rewrite/rewriteManip.c:1015
 #, c-format
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr ""
@@ -14293,56 +14310,56 @@ msgstr "n'a pas pu exécuter le processus autovacuum maître : %m"
 msgid "autovacuum launcher started"
 msgstr "lancement du processus autovacuum"
 
-#: postmaster/autovacuum.c:779
+#: postmaster/autovacuum.c:785
 #, c-format
 msgid "autovacuum launcher shutting down"
 msgstr "arrêt du processus autovacuum"
 
-#: postmaster/autovacuum.c:1441
+#: postmaster/autovacuum.c:1447
 #, c-format
 msgid "could not fork autovacuum worker process: %m"
 msgstr "n'a pas pu exécuter le processus autovacuum worker : %m"
 
-#: postmaster/autovacuum.c:1639
+#: postmaster/autovacuum.c:1653
 #, c-format
 msgid "autovacuum: processing database \"%s\""
 msgstr "autovacuum : traitement de la base de données « %s »"
 
-#: postmaster/autovacuum.c:2052
+#: postmaster/autovacuum.c:2066
 #, c-format
 msgid "autovacuum: dropping orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr ""
 "autovacuum : suppression de la table temporaire orpheline « %s.%s » dans la\n"
 "base de données « %s »"
 
-#: postmaster/autovacuum.c:2064
+#: postmaster/autovacuum.c:2078
 #, c-format
 msgid "autovacuum: found orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr ""
 "autovacuum : a trouvé la table temporaire orpheline « %s.%s » dans la base de\n"
 "données « %s »"
 
-#: postmaster/autovacuum.c:2347
+#: postmaster/autovacuum.c:2382
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\""
 msgstr "VACUUM automatique de la table « %s.%s.%s »"
 
-#: postmaster/autovacuum.c:2350
+#: postmaster/autovacuum.c:2385
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\""
 msgstr "ANALYZE automatique de la table « %s.%s.%s »"
 
-#: postmaster/autovacuum.c:2899
+#: postmaster/autovacuum.c:2934
 #, c-format
 msgid "autovacuum not started because of misconfiguration"
 msgstr "autovacuum non exécuté à cause d'une mauvaise configuration"
 
-#: postmaster/autovacuum.c:2900
+#: postmaster/autovacuum.c:2935
 #, c-format
 msgid "Enable the \"track_counts\" option."
 msgstr "Activez l'option « track_counts »."
 
-#: postmaster/bgworker.c:367 postmaster/bgworker.c:762
+#: postmaster/bgworker.c:367 postmaster/bgworker.c:755
 #, c-format
 msgid "registering background worker \"%s\""
 msgstr "enregistrement du processus en tâche de fond « %s »"
@@ -14367,34 +14384,34 @@ msgstr "processus en tâche de fond « %s » : ne peut pas réclamer un accès 
 msgid "background worker \"%s\": invalid restart interval"
 msgstr "processus en tâche de fond « %s »: intervalle de redémarrage invalide"
 
-#: postmaster/bgworker.c:573
+#: postmaster/bgworker.c:566
 #, c-format
 msgid "terminating background worker \"%s\" due to administrator command"
 msgstr "arrêt du processus en tâche de fond « %s » suite à la demande de l'administrateur"
 
-#: postmaster/bgworker.c:769
+#: postmaster/bgworker.c:762
 #, c-format
 msgid "background worker \"%s\": must be registered in shared_preload_libraries"
 msgstr "processus en tâche de fond « %s » : doit être enregistré dans shared_preload_libraries"
 
-#: postmaster/bgworker.c:781
+#: postmaster/bgworker.c:774
 #, c-format
 msgid "background worker \"%s\": only dynamic background workers can request notification"
 msgstr "processus en tâche de fond « %s » : seuls les processus utilisateurs en tâche de fond dynamiques peuvent réclamer des notifications"
 
-#: postmaster/bgworker.c:796
+#: postmaster/bgworker.c:789
 #, c-format
 msgid "too many background workers"
 msgstr "trop de processus en tâche de fond"
 
-#: postmaster/bgworker.c:797
+#: postmaster/bgworker.c:790
 #, c-format
 msgid "Up to %d background worker can be registered with the current settings."
 msgid_plural "Up to %d background workers can be registered with the current settings."
 msgstr[0] "Un maximum de %d processus en tâche de fond peut être enregistré avec la configuration actuelle"
 msgstr[1] "Un maximum de %d processus en tâche de fond peut être enregistré avec la configuration actuelle"
 
-#: postmaster/bgworker.c:801
+#: postmaster/bgworker.c:794
 #, c-format
 msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
 msgstr "Considérez l'augmentation du paramètre « max_worker_processes »."
@@ -14420,19 +14437,19 @@ msgstr "Considérez l'augmentation du paramètre « max_wal_size »."
 msgid "transaction log switch forced (archive_timeout=%d)"
 msgstr "changement forcé du journal de transaction (archive_timeout=%d)"
 
-#: postmaster/checkpointer.c:1072
+#: postmaster/checkpointer.c:1066
 #, c-format
 msgid "checkpoint request failed"
 msgstr "échec de la demande de point de vérification"
 
-#: postmaster/checkpointer.c:1073
+#: postmaster/checkpointer.c:1067
 #, c-format
 msgid "Consult recent messages in the server log for details."
 msgstr ""
 "Consultez les messages récents du serveur dans les journaux applicatifs pour\n"
 "plus de détails."
 
-#: postmaster/checkpointer.c:1268
+#: postmaster/checkpointer.c:1262
 #, c-format
 msgid "compacted fsync request queue from %d entries to %d entries"
 msgstr "a compacté la queue de requêtes fsync de %d entrées à %d"
@@ -14593,51 +14610,51 @@ msgstr "cible reset non reconnu : « %s »"
 msgid "Target must be \"archiver\" or \"bgwriter\"."
 msgstr "La cible doit être « archiver » ou « bgwriter »."
 
-#: postmaster/pgstat.c:3619
+#: postmaster/pgstat.c:3626
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "n'a pas pu lire le message des statistiques : %m"
 
-#: postmaster/pgstat.c:3950 postmaster/pgstat.c:4107
+#: postmaster/pgstat.c:3957 postmaster/pgstat.c:4114
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier temporaire des statistiques « %s » : %m"
 
-#: postmaster/pgstat.c:4017 postmaster/pgstat.c:4152
+#: postmaster/pgstat.c:4024 postmaster/pgstat.c:4159
 #, c-format
 msgid "could not write temporary statistics file \"%s\": %m"
 msgstr "n'a pas pu écrire le fichier temporaire des statistiques « %s » : %m"
 
-#: postmaster/pgstat.c:4026 postmaster/pgstat.c:4161
+#: postmaster/pgstat.c:4033 postmaster/pgstat.c:4168
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "n'a pas pu fermer le fichier temporaire des statistiques « %s » : %m"
 
-#: postmaster/pgstat.c:4034 postmaster/pgstat.c:4169
+#: postmaster/pgstat.c:4041 postmaster/pgstat.c:4176
 #, c-format
 msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
 msgstr ""
 "n'a pas pu renommer le fichier temporaire des statistiques « %s » en\n"
 "« %s » : %m"
 
-#: postmaster/pgstat.c:4258 postmaster/pgstat.c:4464 postmaster/pgstat.c:4617
+#: postmaster/pgstat.c:4265 postmaster/pgstat.c:4471 postmaster/pgstat.c:4624
 #, c-format
 msgid "could not open statistics file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier de statistiques « %s » : %m"
 
-#: postmaster/pgstat.c:4270 postmaster/pgstat.c:4280 postmaster/pgstat.c:4301 postmaster/pgstat.c:4323 postmaster/pgstat.c:4338 postmaster/pgstat.c:4401 postmaster/pgstat.c:4476 postmaster/pgstat.c:4496 postmaster/pgstat.c:4514 postmaster/pgstat.c:4530 postmaster/pgstat.c:4548 postmaster/pgstat.c:4564 postmaster/pgstat.c:4629 postmaster/pgstat.c:4641 postmaster/pgstat.c:4653 postmaster/pgstat.c:4678 postmaster/pgstat.c:4700
+#: postmaster/pgstat.c:4277 postmaster/pgstat.c:4287 postmaster/pgstat.c:4308 postmaster/pgstat.c:4330 postmaster/pgstat.c:4345 postmaster/pgstat.c:4408 postmaster/pgstat.c:4483 postmaster/pgstat.c:4503 postmaster/pgstat.c:4521 postmaster/pgstat.c:4537 postmaster/pgstat.c:4555 postmaster/pgstat.c:4571 postmaster/pgstat.c:4636 postmaster/pgstat.c:4648 postmaster/pgstat.c:4660 postmaster/pgstat.c:4685 postmaster/pgstat.c:4707
 #, c-format
 msgid "corrupted statistics file \"%s\""
 msgstr "fichier de statistiques « %s » corrompu"
 
-#: postmaster/pgstat.c:4829
+#: postmaster/pgstat.c:4836
 #, c-format
 msgid "using stale statistics instead of current ones because stats collector is not responding"
 msgstr ""
 "utilise de vieilles statistiques à la place des actuelles car le collecteur de\n"
 "statistiques ne répond pas"
 
-#: postmaster/pgstat.c:5156
+#: postmaster/pgstat.c:5163
 #, c-format
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr ""
@@ -14686,7 +14703,7 @@ msgstr ""
 msgid "%s: invalid datetoken tables, please fix\n"
 msgstr "%s : tables datetoken invalide, merci de corriger\n"
 
-#: postmaster/postmaster.c:993 postmaster/postmaster.c:1091 utils/init/miscinit.c:1429
+#: postmaster/postmaster.c:993 postmaster/postmaster.c:1091 utils/init/miscinit.c:1437
 #, c-format
 msgid "invalid list syntax in parameter \"%s\""
 msgstr "syntaxe de liste invalide pour le paramètre « %s »"
@@ -14848,7 +14865,7 @@ msgstr ""
 "Protocole non supportée de l'interface %u.%u : le serveur supporte de %u.0 à\n"
 "%u.%u"
 
-#: postmaster/postmaster.c:2090 utils/misc/guc.c:5660 utils/misc/guc.c:5753 utils/misc/guc.c:7051 utils/misc/guc.c:9798 utils/misc/guc.c:9832
+#: postmaster/postmaster.c:2090 utils/misc/guc.c:5660 utils/misc/guc.c:5753 utils/misc/guc.c:7075 utils/misc/guc.c:9824 utils/misc/guc.c:9858
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "valeur invalide pour le paramètre « %s » : « %s »"
@@ -15200,57 +15217,57 @@ msgstr "n'a pas pu lire le code de sortie du processus\n"
 msgid "could not post child completion status\n"
 msgstr "n'a pas pu poster le statut de fin de l'enfant\n"
 
-#: postmaster/syslogger.c:441 postmaster/syslogger.c:1041
+#: postmaster/syslogger.c:458 postmaster/syslogger.c:1133
 #, c-format
 msgid "could not read from logger pipe: %m"
 msgstr "n'a pas pu lire à partir du tube des journaux applicatifs : %m"
 
-#: postmaster/syslogger.c:490
+#: postmaster/syslogger.c:507
 #, c-format
 msgid "logger shutting down"
 msgstr "arrêt en cours des journaux applicatifs"
 
-#: postmaster/syslogger.c:534 postmaster/syslogger.c:548
+#: postmaster/syslogger.c:551 postmaster/syslogger.c:565
 #, c-format
 msgid "could not create pipe for syslog: %m"
 msgstr "n'a pas pu créer un tube pour syslog : %m"
 
-#: postmaster/syslogger.c:584
+#: postmaster/syslogger.c:616
 #, c-format
 msgid "could not fork system logger: %m"
 msgstr "n'a pas pu lancer le processus des journaux applicatifs : %m"
 
-#: postmaster/syslogger.c:620
+#: postmaster/syslogger.c:652
 #, c-format
 msgid "redirecting log output to logging collector process"
 msgstr "redirection des traces vers le processus de récupération des traces"
 
-#: postmaster/syslogger.c:621
+#: postmaster/syslogger.c:653
 #, c-format
 msgid "Future log output will appear in directory \"%s\"."
 msgstr "Les prochaines traces apparaîtront dans le répertoire « %s »."
 
-#: postmaster/syslogger.c:629
+#: postmaster/syslogger.c:661
 #, c-format
 msgid "could not redirect stdout: %m"
 msgstr "n'a pas pu rediriger la sortie (stdout) : %m"
 
-#: postmaster/syslogger.c:634 postmaster/syslogger.c:651
+#: postmaster/syslogger.c:666 postmaster/syslogger.c:683
 #, c-format
 msgid "could not redirect stderr: %m"
 msgstr "n'a pas pu rediriger la sortie des erreurs (stderr) : %m"
 
-#: postmaster/syslogger.c:996
+#: postmaster/syslogger.c:1088
 #, c-format
 msgid "could not write to log file: %s\n"
 msgstr "n'a pas pu écrire dans le journal applicatif : %s\n"
 
-#: postmaster/syslogger.c:1136
+#: postmaster/syslogger.c:1205
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier applicatif « %s » : %m"
 
-#: postmaster/syslogger.c:1198 postmaster/syslogger.c:1242
+#: postmaster/syslogger.c:1267 postmaster/syslogger.c:1317
 #, c-format
 msgid "disabling automatic rotation (use SIGHUP to re-enable)"
 msgstr "désactivation de la rotation automatique (utilisez SIGHUP pour la réactiver)"
@@ -15269,7 +15286,7 @@ msgstr "timeline %u invalide"
 msgid "invalid streaming start location"
 msgstr "emplacement de démarrage du flux de réplication invalide"
 
-#: repl_scanner.l:171 scan.l:670
+#: repl_scanner.l:171 scan.l:679
 msgid "unterminated quoted string"
 msgstr "chaîne entre guillemets non terminée"
 
@@ -15293,44 +15310,44 @@ msgstr "n'a pas pu trouver un seul fichier WAL"
 msgid "could not find WAL file \"%s\""
 msgstr "n'a pas pu trouver le fichier WAL « %s »"
 
-#: replication/basebackup.c:417 replication/basebackup.c:443
+#: replication/basebackup.c:420 replication/basebackup.c:446
 #, c-format
 msgid "unexpected WAL file size \"%s\""
 msgstr "taille du fichier WAL « %s » inattendue"
 
-#: replication/basebackup.c:429 replication/basebackup.c:1161
+#: replication/basebackup.c:432 replication/basebackup.c:1164
 #, c-format
 msgid "base backup could not send data, aborting backup"
 msgstr "la sauvegarde de base n'a pas pu envoyer les données, annulation de la sauvegarde"
 
-#: replication/basebackup.c:531 replication/basebackup.c:540 replication/basebackup.c:549 replication/basebackup.c:558 replication/basebackup.c:567 replication/basebackup.c:578 replication/basebackup.c:595
+#: replication/basebackup.c:534 replication/basebackup.c:543 replication/basebackup.c:552 replication/basebackup.c:561 replication/basebackup.c:570 replication/basebackup.c:581 replication/basebackup.c:598
 #, c-format
 msgid "duplicate option \"%s\""
 msgstr "option « %s » dupliquée"
 
-#: replication/basebackup.c:584 utils/misc/guc.c:5670
+#: replication/basebackup.c:587 utils/misc/guc.c:5670
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d est en dehors des limites valides pour le paramètre « %s » (%d .. %d)"
 
-#: replication/basebackup.c:858 replication/basebackup.c:960
+#: replication/basebackup.c:861 replication/basebackup.c:963
 #, c-format
 msgid "could not stat file or directory \"%s\": %m"
 msgstr ""
 "n'a pas pu récupérer les informations sur le fichier ou répertoire\n"
 "« %s » : %m"
 
-#: replication/basebackup.c:1113
+#: replication/basebackup.c:1116
 #, c-format
 msgid "skipping special file \"%s\""
 msgstr "ignore le fichier spécial « %s »"
 
-#: replication/basebackup.c:1224
+#: replication/basebackup.c:1227
 #, c-format
 msgid "file name too long for tar format: \"%s\""
 msgstr "nom du fichier trop long pour le format tar : « %s »"
 
-#: replication/basebackup.c:1229
+#: replication/basebackup.c:1232
 #, c-format
 msgid "symbolic link target too long for tar format: file name \"%s\", target \"%s\""
 msgstr "cible du lien symbolique trop long pour le format tar  : nom de fichier « %s », cible « %s »"
@@ -15433,52 +15450,52 @@ msgstr "n'a pas pu recevoir des données du flux de WAL : %s"
 msgid "could not send data to WAL stream: %s"
 msgstr "n'a pas pu transmettre les données au flux WAL : %s"
 
-#: replication/logical/logical.c:83
+#: replication/logical/logical.c:88
 #, c-format
 msgid "logical decoding requires wal_level >= logical"
 msgstr "le décodage logique requiert wal_level >= logical"
 
-#: replication/logical/logical.c:88
+#: replication/logical/logical.c:93
 #, c-format
 msgid "logical decoding requires a database connection"
 msgstr "le décodage logique requiert une connexion à une base"
 
-#: replication/logical/logical.c:106
+#: replication/logical/logical.c:111
 #, c-format
 msgid "logical decoding cannot be used while in recovery"
 msgstr "le décodage logique ne peut pas être utilisé lors de la restauration"
 
-#: replication/logical/logical.c:239 replication/logical/logical.c:360
+#: replication/logical/logical.c:244 replication/logical/logical.c:365
 #, c-format
 msgid "cannot use physical replication slot for logical decoding"
 msgstr "ne peut pas utiliser un slot de réplication physique pour le décodage logique"
 
-#: replication/logical/logical.c:244 replication/logical/logical.c:365
+#: replication/logical/logical.c:249 replication/logical/logical.c:370
 #, c-format
 msgid "replication slot \"%s\" was not created in this database"
 msgstr "le slot de réplication « %s » n'a pas été créé dans cette base de données"
 
-#: replication/logical/logical.c:251
+#: replication/logical/logical.c:256
 #, c-format
 msgid "cannot create logical replication slot in transaction that has performed writes"
 msgstr "ne peut pas créer un slot de réplication logique dans une transaction qui a fait des écritures"
 
-#: replication/logical/logical.c:402
+#: replication/logical/logical.c:407
 #, c-format
 msgid "starting logical decoding for slot \"%s\""
 msgstr "début du décodage logique pour le slot « %s »"
 
-#: replication/logical/logical.c:404
+#: replication/logical/logical.c:409
 #, c-format
 msgid "streaming transactions committing after %X/%X, reading WAL from %X/%X"
 msgstr "envoi des transactions validées après %X/%X, lecture des journaux à partir de %X/%X"
 
-#: replication/logical/logical.c:539
+#: replication/logical/logical.c:544
 #, c-format
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X"
 msgstr "slot « %s », plugin de sortie « %s », dans la fonction d'appel %s, associé au LSN %X/%X"
 
-#: replication/logical/logical.c:546
+#: replication/logical/logical.c:551
 #, c-format
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
 msgstr "slot « %s », plugin de sortie « %s », dans la fonction d'appel %s"
@@ -15555,74 +15572,79 @@ msgstr "ne peut pas supprimer l'origine de réplication d'OID %d, utilisée par
 msgid "replication origin with OID %u does not exist"
 msgstr "l'origine de réplication d'OID %u n'existe pas"
 
-#: replication/logical/origin.c:678
+#: replication/logical/origin.c:696
 #, c-format
 msgid "replication checkpoint has wrong magic %u instead of %u"
 msgstr "le checkpoint de réplication a le mauvais nombre magique (%u au lieu de %u)"
 
-#: replication/logical/origin.c:710
+#: replication/logical/origin.c:728
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "n'a pas pu lire le fichier « %s » : a lu %d sur %zu"
 
-#: replication/logical/origin.c:719
+#: replication/logical/origin.c:737
 #, c-format
 msgid "could not find free replication state, increase max_replication_slots"
 msgstr "n'a pas pu trouver d'état de réplication libre, augmentez max_replication_slots"
 
-#: replication/logical/origin.c:737
+#: replication/logical/origin.c:755
 #, c-format
 msgid "replication slot checkpoint has wrong checksum %u, expected %u"
 msgstr "le point de contrôle du slot de réplication à la mauvaise somme de contrôle %u, %u attendu"
 
-#: replication/logical/origin.c:861
+#: replication/logical/origin.c:879
 #, c-format
 msgid "replication origin with OID %d is already active for PID %d"
 msgstr "l'origine de réplication d'OID %d est déjà active pour le PID %d"
 
-#: replication/logical/origin.c:872 replication/logical/origin.c:1052
+#: replication/logical/origin.c:890 replication/logical/origin.c:1070
 #, c-format
 msgid "could not find free replication state slot for replication origin with OID %u"
 msgstr "n'a pas pu trouver de slot d'état de réplication libre pour l'origine de réplication d'OID %u"
 
-#: replication/logical/origin.c:874 replication/logical/origin.c:1054 replication/slot.c:1316
+#: replication/logical/origin.c:892 replication/logical/origin.c:1072 replication/slot.c:1352
 #, c-format
 msgid "Increase max_replication_slots and try again."
 msgstr "Augmentez max_replication_slots et recommencez."
 
-#: replication/logical/origin.c:1011
+#: replication/logical/origin.c:1029
 #, c-format
 msgid "cannot setup replication origin when one is already setup"
 msgstr "ne peut pas configurer l'origine de réplication si une origine existe déjà"
 
-#: replication/logical/origin.c:1040
+#: replication/logical/origin.c:1058
 #, c-format
 msgid "replication identifier %d is already active for PID %d"
 msgstr "l'identificateur de réplication %d est déjà actif pour le PID %d"
 
-#: replication/logical/origin.c:1086 replication/logical/origin.c:1281 replication/logical/origin.c:1301
+#: replication/logical/origin.c:1104 replication/logical/origin.c:1299 replication/logical/origin.c:1319
 #, c-format
 msgid "no replication origin is configured"
 msgstr "aucune origine de réplication n'est configurée"
 
-#: replication/logical/reorderbuffer.c:2346
+#: replication/logical/reorderbuffer.c:2508
 #, c-format
 msgid "could not write to data file for XID %u: %m"
 msgstr "n'a pas pu écrire dans le fichier pour le XID %u : %m"
 
-#: replication/logical/reorderbuffer.c:2442 replication/logical/reorderbuffer.c:2462
+#: replication/logical/reorderbuffer.c:2599 replication/logical/reorderbuffer.c:2619
 #, c-format
 msgid "could not read from reorderbuffer spill file: %m"
 msgstr "n'a pas pu lire le fichier « reorderbuffer spill » : %m"
 
-#: replication/logical/reorderbuffer.c:2446 replication/logical/reorderbuffer.c:2466
+#: replication/logical/reorderbuffer.c:2603 replication/logical/reorderbuffer.c:2623
 #, c-format
 msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes"
 msgstr ""
 "n'a pas pu lire à partir du fichier « reorderbuffer spill » : a lu seulement %d octets\n"
 "sur %u"
 
-#: replication/logical/reorderbuffer.c:3122
+#: replication/logical/reorderbuffer.c:2835
+#, c-format
+msgid "could not remove file \"%s\" during removal of pg_replslot/%s/*.xid: %m"
+msgstr "n'a pas pu supprimer le fichier « %s » lors de la suppression de pg_replslot/%s/*.xid : %m"
+
+#: replication/logical/reorderbuffer.c:3299
 #, c-format
 msgid "could not read from file \"%s\": read %d instead of %d bytes"
 msgstr "n'a pas pu lire à partir du fichier « %s » : lu %d octets au lieu de %d octets"
@@ -15634,64 +15656,64 @@ msgid_plural "exported logical decoding snapshot: \"%s\" with %u transaction IDs
 msgstr[0] "snapshot exporté pour le décodage logique : « %s » avec %u identifiant de transaction"
 msgstr[1] "snapshot exporté pour le décodage logique : « %s » avec %u identifiants de transaction"
 
-#: replication/logical/snapbuild.c:1243 replication/logical/snapbuild.c:1333 replication/logical/snapbuild.c:1808
+#: replication/logical/snapbuild.c:1250 replication/logical/snapbuild.c:1340 replication/logical/snapbuild.c:1836
 #, c-format
 msgid "logical decoding found consistent point at %X/%X"
 msgstr "le décodage logique a trouvé le point de cohérence à %X/%X"
 
-#: replication/logical/snapbuild.c:1245
+#: replication/logical/snapbuild.c:1252
 #, c-format
 msgid "There are no running transactions."
 msgstr "Il n'existe pas de transactions en cours."
 
-#: replication/logical/snapbuild.c:1286
+#: replication/logical/snapbuild.c:1293
 #, c-format
 msgid "logical decoding found initial starting point at %X/%X"
 msgstr "le décodage logique a trouvé le point de démarrage à %X/%X"
 
-#: replication/logical/snapbuild.c:1288 replication/logical/snapbuild.c:1311
+#: replication/logical/snapbuild.c:1295 replication/logical/snapbuild.c:1318
 #, c-format
 msgid "Waiting for transactions (approximately %d) older than %u to end."
 msgstr "En attente de la fin des transactions (approximativement %d) plus anciennes que %u."
 
-#: replication/logical/snapbuild.c:1309
+#: replication/logical/snapbuild.c:1316
 #, c-format
 msgid "logical decoding found initial consistent point at %X/%X"
 msgstr "le décodage logique a trouvé le point initial de cohérence à %X/%X"
 
-#: replication/logical/snapbuild.c:1335
+#: replication/logical/snapbuild.c:1342
 #, c-format
 msgid "There are no old transactions anymore."
 msgstr "Il n'existe plus d'anciennes transactions."
 
-#: replication/logical/snapbuild.c:1687 replication/logical/snapbuild.c:1713 replication/logical/snapbuild.c:1728 replication/logical/snapbuild.c:1742
+#: replication/logical/snapbuild.c:1706 replication/logical/snapbuild.c:1735 replication/logical/snapbuild.c:1753 replication/logical/snapbuild.c:1770
 #, c-format
 msgid "could not read file \"%s\", read %d of %d: %m"
 msgstr "n'a pas pu lire le fichier « %s », lu %d sur %d : %m"
 
-#: replication/logical/snapbuild.c:1693
+#: replication/logical/snapbuild.c:1712
 #, c-format
 msgid "snapbuild state file \"%s\" has wrong magic number: %u instead of %u"
 msgstr "le fichier d'état snapbuild « %s » a le nombre magique: %u au lieu de %u"
 
-#: replication/logical/snapbuild.c:1698
+#: replication/logical/snapbuild.c:1717
 #, c-format
 msgid "snapbuild state file \"%s\" has unsupported version: %u instead of %u"
 msgstr "le fichier d'état snapbuild « %s » a une version non supportée : %u au lieu de %u"
 
-#: replication/logical/snapbuild.c:1755
+#: replication/logical/snapbuild.c:1783
 #, c-format
 msgid "checksum mismatch for snapbuild state file \"%s\": is %u, should be %u"
 msgstr ""
 "différence de somme de contrôle pour lefichier d'état snapbuild %s :\n"
 "est %u, devrait être %u"
 
-#: replication/logical/snapbuild.c:1810
+#: replication/logical/snapbuild.c:1838
 #, c-format
 msgid "Logical decoding will begin using saved snapshot."
 msgstr "Le décodage logique commencera en utilisant un snapshot sauvegardé."
 
-#: replication/logical/snapbuild.c:1881
+#: replication/logical/snapbuild.c:1909
 #, c-format
 msgid "could not parse file name \"%s\""
 msgstr "n'a pas pu analyser le mode du fichier « %s »"
@@ -15741,48 +15763,63 @@ msgstr "le slot de réplication « %s » n'existe pas"
 msgid "replication slot \"%s\" is active for PID %d"
 msgstr "le slot de réplication « %s » est actif pour le PID %d"
 
-#: replication/slot.c:527 replication/slot.c:940 replication/slot.c:1277
+#: replication/slot.c:527 replication/slot.c:945 replication/slot.c:1288
 #, c-format
 msgid "could not remove directory \"%s\""
 msgstr "n'a pas pu supprimer le répertoire « %s »"
 
-#: replication/slot.c:789
+#: replication/slot.c:794
 #, c-format
 msgid "replication slots can only be used if max_replication_slots > 0"
 msgstr "les slots de réplications peuvent seulement être utilisés si max_replication_slots > 0"
 
-#: replication/slot.c:794
+#: replication/slot.c:799
 #, c-format
 msgid "replication slots can only be used if wal_level >= replica"
 msgstr "les slots de réplication peuvent seulement être utilisés si wal_level >= replica"
 
-#: replication/slot.c:1209 replication/slot.c:1247
+#: replication/slot.c:1222 replication/slot.c:1260
 #, c-format
 msgid "could not read file \"%s\", read %d of %u: %m"
 msgstr "n'a pas pu lire le fichier « %s », a lu %d sur %u : %m"
 
-#: replication/slot.c:1218
+#: replication/slot.c:1231
 #, c-format
 msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u"
 msgstr "le fichier « %s » du slot de réplication a le nombre magique %u au lieu de %u"
 
-#: replication/slot.c:1225
+#: replication/slot.c:1238
 #, c-format
 msgid "replication slot file \"%s\" has unsupported version %u"
 msgstr "le fichier « %s » du slot de réplication a une version %u non supportée"
 
-#: replication/slot.c:1232
+#: replication/slot.c:1245
 #, c-format
 msgid "replication slot file \"%s\" has corrupted length %u"
 msgstr "le slot de réplication « %s » a une taille %u corrompue"
 
-#: replication/slot.c:1262
+#: replication/slot.c:1275
 #, c-format
 msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u"
 msgstr "différence de somme de contrôle pour le fichier de slot de réplication « %s » : est %u, devrait être %u"
 
+#: replication/slot.c:1309
+#, c-format
+msgid "logical replication slot \"%s\" exists, but wal_level < logical"
+msgstr "le slot de réplication logique « %s » existe mais, wal_level < logical"
+
+#: replication/slot.c:1311 replication/slot.c:1317
+#, c-format
+msgid "Change wal_level to be replica or higher."
+msgstr "Modifiez wal_level pour valoir replica ou supérieur."
+
 #: replication/slot.c:1315
 #, c-format
+msgid "physical replication slot \"%s\" exists, but wal_level < replica"
+msgstr "le slot de réplication physique « %s » existe mais, wal_level < replica"
+
+#: replication/slot.c:1351
+#, c-format
 msgid "too many replication slots active before shutdown"
 msgstr "trop de slots de réplication actifs avant l'arrêt"
 
@@ -15872,7 +15909,7 @@ msgstr "arrêt du processus walreceiver suite à l'expiration du délai de répl
 msgid "primary server contains no more WAL on requested timeline %u"
 msgstr "le serveur principal ne contient plus de WAL sur la timeline %u demandée"
 
-#: replication/walreceiver.c:603 replication/walreceiver.c:962
+#: replication/walreceiver.c:603 replication/walreceiver.c:956
 #, c-format
 msgid "could not close log segment %s: %m"
 msgstr "n'a pas pu fermer le journal de transactions %s : %m"
@@ -15882,47 +15919,47 @@ msgstr "n'a pas pu fermer le journal de transactions %s : %m"
 msgid "fetching timeline history file for timeline %u from primary server"
 msgstr "récupération du fichier historique pour la timeline %u à partir du serveur principal"
 
-#: replication/walreceiver.c:1016
+#: replication/walreceiver.c:1010
 #, c-format
 msgid "could not write to log segment %s at offset %u, length %lu: %m"
 msgstr "n'a pas pu écrire le journal de transactions %s au décalage %u, longueur %lu : %m"
 
-#: replication/walsender.c:490
+#: replication/walsender.c:493
 #, c-format
 msgid "could not seek to beginning of file \"%s\": %m"
 msgstr "n'a pas pu se déplacer au début du fichier « %s » : %m"
 
-#: replication/walsender.c:541
+#: replication/walsender.c:544
 #, c-format
 msgid "cannot use a logical replication slot for physical replication"
 msgstr "ne peut pas utiliser un slot de réplication logique pour une réplication physique"
 
-#: replication/walsender.c:604
+#: replication/walsender.c:607
 #, c-format
 msgid "requested starting point %X/%X on timeline %u is not in this server's history"
 msgstr "le point de reprise %X/%X de la timeline %u n'est pas dans l'historique du serveur"
 
-#: replication/walsender.c:608
+#: replication/walsender.c:611
 #, c-format
 msgid "This server's history forked from timeline %u at %X/%X."
 msgstr "L'historique du serveur a changé à partir de la timeline %u à %X/%X."
 
-#: replication/walsender.c:653
+#: replication/walsender.c:656
 #, c-format
 msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X"
 msgstr "le point de reprise requis %X/%X est devant la position de vidage des WAL de ce serveur %X/%X"
 
-#: replication/walsender.c:977
+#: replication/walsender.c:980
 #, c-format
 msgid "terminating walsender process after promotion"
 msgstr "arrêt du processus walreceiver suite promotion"
 
-#: replication/walsender.c:1343
+#: replication/walsender.c:1341
 #, c-format
 msgid "cannot execute new commands while WAL sender is in stopping mode"
 msgstr "ne peut pas exécuter de nouvelles commandes lorsque le walsender est en mode d'arrêt"
 
-#: replication/walsender.c:1351
+#: replication/walsender.c:1349
 #, c-format
 msgid "received replication command: %s"
 msgstr "commande de réplication reçu : %s"
@@ -15947,17 +15984,17 @@ msgstr "type de message « %c » invalide pour le serveur en standby"
 msgid "unexpected message type \"%c\""
 msgstr "type de message « %c » inattendu"
 
-#: replication/walsender.c:1843
+#: replication/walsender.c:1851
 #, c-format
 msgid "terminating walsender process due to replication timeout"
 msgstr "arrêt du processus walreceiver suite à l'expiration du délai de réplication"
 
-#: replication/walsender.c:1929
+#: replication/walsender.c:1935
 #, c-format
-msgid "standby \"%s\" has now caught up with primary"
-msgstr "le serveur standby « %s » a maintenant rattrapé le serveur primaire"
+msgid "\"%s\" has now caught up with upstream server"
+msgstr "« %s » a maintenant rattrapé le serveur d'envoi"
 
-#: replication/walsender.c:2032
+#: replication/walsender.c:2040
 #, c-format
 msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
 msgstr ""
@@ -16165,177 +16202,177 @@ msgstr "la règle « %s » de la relation « %s » n'existe pas"
 msgid "renaming an ON SELECT rule is not allowed"
 msgstr "le renommage d'une règle ON SELECT n'est pas autorisé"
 
-#: rewrite/rewriteHandler.c:526
+#: rewrite/rewriteHandler.c:527
 #, c-format
 msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten"
 msgstr ""
 "Le nom de la requête WITH «%s » apparaît à la fois dans l'action d'une règle\n"
 "et la requête en cours de ré-écriture."
 
-#: rewrite/rewriteHandler.c:586
+#: rewrite/rewriteHandler.c:587
 #, c-format
 msgid "cannot have RETURNING lists in multiple rules"
 msgstr "ne peut pas avoir des listes RETURNING dans plusieurs règles"
 
-#: rewrite/rewriteHandler.c:954 rewrite/rewriteHandler.c:972
+#: rewrite/rewriteHandler.c:955 rewrite/rewriteHandler.c:973
 #, c-format
 msgid "multiple assignments to same column \"%s\""
 msgstr "affectations multiples pour la même colonne « %s »"
 
-#: rewrite/rewriteHandler.c:1761 rewrite/rewriteHandler.c:3350
+#: rewrite/rewriteHandler.c:1773 rewrite/rewriteHandler.c:3458
 #, c-format
 msgid "infinite recursion detected in rules for relation \"%s\""
 msgstr "récursion infinie détectée dans les règles de la relation « %s »"
 
-#: rewrite/rewriteHandler.c:1846
+#: rewrite/rewriteHandler.c:1858
 #, c-format
 msgid "infinite recursion detected in policy for relation \"%s\""
 msgstr "récursion infinie détectée dans la politique pour la relation « %s »"
 
-#: rewrite/rewriteHandler.c:2163
+#: rewrite/rewriteHandler.c:2178
 msgid "Junk view columns are not updatable."
 msgstr "Les colonnes « junk » des vues ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2168
+#: rewrite/rewriteHandler.c:2183
 msgid "View columns that are not columns of their base relation are not updatable."
 msgstr "Les colonnes des vues qui ne font pas référence à des colonnes de la relation de base ne sont pas automatiquement modifiables."
 
-#: rewrite/rewriteHandler.c:2171
+#: rewrite/rewriteHandler.c:2186
 msgid "View columns that refer to system columns are not updatable."
 msgstr "Les colonnes des vues qui font référence à des colonnes systèmes ne sont pas automatiquement modifiables."
 
-#: rewrite/rewriteHandler.c:2174
+#: rewrite/rewriteHandler.c:2189
 msgid "View columns that return whole-row references are not updatable."
 msgstr "Les colonnes de vue qui font références à des lignes complètes ne sont pas automatiquement modifiables."
 
-#: rewrite/rewriteHandler.c:2232
+#: rewrite/rewriteHandler.c:2250
 msgid "Views containing DISTINCT are not automatically updatable."
 msgstr "Les vues contenant DISTINCT ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2235
+#: rewrite/rewriteHandler.c:2253
 msgid "Views containing GROUP BY are not automatically updatable."
 msgstr "Les vues contenant GROUP BY ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2238
+#: rewrite/rewriteHandler.c:2256
 msgid "Views containing HAVING are not automatically updatable."
 msgstr "Les vues contenant HAVING ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2241
+#: rewrite/rewriteHandler.c:2259
 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable."
 msgstr "Les vues contenant UNION, INTERSECT ou EXCEPT ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2244
+#: rewrite/rewriteHandler.c:2262
 msgid "Views containing WITH are not automatically updatable."
 msgstr "Les vues contenant WITH ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2247
+#: rewrite/rewriteHandler.c:2265
 msgid "Views containing LIMIT or OFFSET are not automatically updatable."
 msgstr "Les vues contenant LIMIT ou OFFSET ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2259
+#: rewrite/rewriteHandler.c:2277
 msgid "Views that return aggregate functions are not automatically updatable."
 msgstr "Les vues qui renvoient des fonctions d'agrégat ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2262
+#: rewrite/rewriteHandler.c:2280
 msgid "Views that return window functions are not automatically updatable."
 msgstr "Les vues qui renvoient des fonctions de fenêtrage ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2265
+#: rewrite/rewriteHandler.c:2283
 msgid "Views that return set-returning functions are not automatically updatable."
 msgstr "Les vues qui renvoient des fonctions à plusieurs lignes ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2272 rewrite/rewriteHandler.c:2276 rewrite/rewriteHandler.c:2283
+#: rewrite/rewriteHandler.c:2290 rewrite/rewriteHandler.c:2294 rewrite/rewriteHandler.c:2301
 msgid "Views that do not select from a single table or view are not automatically updatable."
 msgstr "Les vues qui lisent plusieurs tables ou vues ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2286
+#: rewrite/rewriteHandler.c:2304
 msgid "Views containing TABLESAMPLE are not automatically updatable."
 msgstr "Les vues contenant TABLESAMPLE ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2310
+#: rewrite/rewriteHandler.c:2328
 msgid "Views that have no updatable columns are not automatically updatable."
 msgstr "Les vues qui possèdent des colonnes non modifiables ne sont pas automatiquement disponibles en écriture."
 
-#: rewrite/rewriteHandler.c:2764
+#: rewrite/rewriteHandler.c:2785
 #, c-format
 msgid "cannot insert into column \"%s\" of view \"%s\""
 msgstr "ne peut pas insérer dans la colonne « %s » de la vue « %s »"
 
-#: rewrite/rewriteHandler.c:2772
+#: rewrite/rewriteHandler.c:2793
 #, c-format
 msgid "cannot update column \"%s\" of view \"%s\""
 msgstr "ne peut pas mettre à jour la colonne « %s » de la vue « %s »"
 
-#: rewrite/rewriteHandler.c:3150
+#: rewrite/rewriteHandler.c:3258
 #, c-format
 msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH"
 msgstr ""
 "les règles DO INSTEAD NOTHING ne sont pas supportées par les instructions\n"
 "de modification de données dans WITH"
 
-#: rewrite/rewriteHandler.c:3164
+#: rewrite/rewriteHandler.c:3272
 #, c-format
 msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr ""
 "les règles DO INSTEAD conditionnelles ne sont pas supportées par les\n"
 "instructions de modification de données dans WITH"
 
-#: rewrite/rewriteHandler.c:3168
+#: rewrite/rewriteHandler.c:3276
 #, c-format
 msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
 msgstr ""
 "les règles DO ALSO ne sont pas supportées par les instructions de modification\n"
 "de données dans WITH"
 
-#: rewrite/rewriteHandler.c:3173
+#: rewrite/rewriteHandler.c:3281
 #, c-format
 msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr ""
 "les règles DO INSTEAD multi-instructions ne sont pas supportées pour les\n"
 "instructions de modification de données dans WITH"
 
-#: rewrite/rewriteHandler.c:3387
+#: rewrite/rewriteHandler.c:3495
 #, c-format
 msgid "cannot perform INSERT RETURNING on relation \"%s\""
 msgstr "ne peut pas exécuter INSERT RETURNING sur la relation « %s »"
 
-#: rewrite/rewriteHandler.c:3389
+#: rewrite/rewriteHandler.c:3497
 #, c-format
 msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Vous avez besoin d'une règle ON INSERT DO INSTEAD sans condition avec une\n"
 "clause RETURNING."
 
-#: rewrite/rewriteHandler.c:3394
+#: rewrite/rewriteHandler.c:3502
 #, c-format
 msgid "cannot perform UPDATE RETURNING on relation \"%s\""
 msgstr "ne peut pas exécuter UPDATE RETURNING sur la relation « %s »"
 
-#: rewrite/rewriteHandler.c:3396
+#: rewrite/rewriteHandler.c:3504
 #, c-format
 msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Vous avez besoin d'une règle ON UPDATE DO INSTEAD sans condition avec une\n"
 "clause RETURNING."
 
-#: rewrite/rewriteHandler.c:3401
+#: rewrite/rewriteHandler.c:3509
 #, c-format
 msgid "cannot perform DELETE RETURNING on relation \"%s\""
 msgstr "ne peut pas exécuter DELETE RETURNING sur la relation « %s »"
 
-#: rewrite/rewriteHandler.c:3403
+#: rewrite/rewriteHandler.c:3511
 #, c-format
 msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Vous avez besoin d'une règle ON DELETE DO INSTEAD sans condition avec une\n"
 "clause RETURNING."
 
-#: rewrite/rewriteHandler.c:3421
+#: rewrite/rewriteHandler.c:3529
 #, c-format
 msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules"
 msgstr "INSERT avec une clause ON CONFLICT ne peut pas être utilisée avec une table qui a des règles pour INSERT ou UPDATE"
 
-#: rewrite/rewriteHandler.c:3478
+#: rewrite/rewriteHandler.c:3586
 #, c-format
 msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries"
 msgstr "WITH ne peut pas être utilisé dans une requête réécrite par des règles en plusieurs requêtes"
@@ -16370,127 +16407,127 @@ msgstr "il existe de nombreuses règles nommées « %s »"
 msgid "Specify a relation name as well as a rule name."
 msgstr "Spécifier un nom de relation ainsi qu'un nom de règle."
 
-#: scan.l:432
+#: scan.l:441
 msgid "unterminated /* comment"
 msgstr "commentaire /* non terminé"
 
-#: scan.l:461
+#: scan.l:470
 msgid "unterminated bit string literal"
 msgstr "chaîne littérale bit non terminée"
 
-#: scan.l:482
+#: scan.l:491
 msgid "unterminated hexadecimal string literal"
 msgstr "chaîne littérale hexadécimale non terminée"
 
-#: scan.l:532
+#: scan.l:541
 #, c-format
 msgid "unsafe use of string constant with Unicode escapes"
 msgstr "utilisation non sûre de la constante de chaîne avec des échappements Unicode"
 
-#: scan.l:533
+#: scan.l:542
 #, c-format
 msgid "String constants with Unicode escapes cannot be used when standard_conforming_strings is off."
 msgstr ""
 "Les constantes de chaîne avec des échappements Unicode ne peuvent pas être\n"
 "utilisées quand standard_conforming_strings est désactivé."
 
-#: scan.l:579 scan.l:778
+#: scan.l:588 scan.l:787
 msgid "invalid Unicode escape character"
 msgstr "chaîne d'échappement Unicode invalide"
 
-#: scan.l:605 scan.l:613 scan.l:621 scan.l:622 scan.l:623 scan.l:1338 scan.l:1365 scan.l:1369 scan.l:1407 scan.l:1411 scan.l:1433 scan.l:1443
+#: scan.l:614 scan.l:622 scan.l:630 scan.l:631 scan.l:632 scan.l:1379 scan.l:1406 scan.l:1410 scan.l:1448 scan.l:1452 scan.l:1474 scan.l:1484
 msgid "invalid Unicode surrogate pair"
 msgstr "paire surrogate Unicode invalide"
 
-#: scan.l:627
+#: scan.l:636
 #, c-format
 msgid "invalid Unicode escape"
 msgstr "échappement Unicode invalide"
 
-#: scan.l:628
+#: scan.l:637
 #, c-format
 msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
 msgstr "Les échappements Unicode doivent être de la forme \\uXXXX ou \\UXXXXXXXX."
 
-#: scan.l:639
+#: scan.l:648
 #, c-format
 msgid "unsafe use of \\' in a string literal"
 msgstr "utilisation non sûre de \\' dans une chaîne littérale"
 
-#: scan.l:640
+#: scan.l:649
 #, c-format
 msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings."
 msgstr ""
 "Utilisez '' pour écrire des guillemets dans une chaîne. \\' n'est pas sécurisé\n"
 "pour les encodages clients."
 
-#: scan.l:715
+#: scan.l:724
 msgid "unterminated dollar-quoted string"
 msgstr "chaîne entre guillemets dollars non terminée"
 
-#: scan.l:732 scan.l:758 scan.l:773
+#: scan.l:741 scan.l:767 scan.l:782
 msgid "zero-length delimited identifier"
 msgstr "identifiant délimité de longueur nulle"
 
-#: scan.l:793 syncrep_scanner.l:84
+#: scan.l:802 syncrep_scanner.l:84
 msgid "unterminated quoted identifier"
 msgstr "identifiant entre guillemets non terminé"
 
-#: scan.l:924
+#: scan.l:965
 msgid "operator too long"
 msgstr "opérateur trop long"
 
 #. translator: %s is typically the translation of "syntax error"
-#: scan.l:1078
+#: scan.l:1119
 #, c-format
 msgid "%s at end of input"
 msgstr "%s à la fin de l'entrée"
 
 #. translator: first %s is typically the translation of "syntax error"
-#: scan.l:1086
+#: scan.l:1127
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s sur ou près de « %s »"
 
-#: scan.l:1252 scan.l:1284
+#: scan.l:1293 scan.l:1325
 msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8"
 msgstr ""
 "Les valeurs d'échappement unicode ne peuvent pas être utilisées pour les\n"
 "valeurs de point de code au-dessus de 007F quand l'encodage serveur n'est\n"
 "pas UTF8"
 
-#: scan.l:1280 scan.l:1425
+#: scan.l:1321 scan.l:1466
 msgid "invalid Unicode escape value"
 msgstr "valeur d'échappement Unicode invalide"
 
-#: scan.l:1489
+#: scan.l:1530
 #, c-format
 msgid "nonstandard use of \\' in a string literal"
 msgstr "utilisation non standard de \\' dans une chaîne littérale"
 
-#: scan.l:1490
+#: scan.l:1531
 #, c-format
 msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')."
 msgstr ""
 "Utilisez '' pour écrire des guillemets dans une chaîne ou utilisez la syntaxe de\n"
 "chaîne d'échappement (E'...')."
 
-#: scan.l:1499
+#: scan.l:1540
 #, c-format
 msgid "nonstandard use of \\\\ in a string literal"
 msgstr "utilisation non standard de \\\\ dans une chaîne littérale"
 
-#: scan.l:1500
+#: scan.l:1541
 #, c-format
 msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'."
 msgstr "Utilisez la syntaxe de chaîne d'échappement pour les antislashs, c'est-à-dire E'\\\\'."
 
-#: scan.l:1514
+#: scan.l:1555
 #, c-format
 msgid "nonstandard use of escape in a string literal"
 msgstr "utilisation non standard d'un échappement dans une chaîne littérale"
 
-#: scan.l:1515
+#: scan.l:1556
 #, c-format
 msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
 msgstr ""
@@ -16671,47 +16708,47 @@ msgstr "le segment contrôle de mémoire partagée dynamique n'est pas valide"
 msgid "too many dynamic shared memory segments"
 msgstr "trop de segments de mémoire partagée dynamique"
 
-#: storage/ipc/dsm_impl.c:262 storage/ipc/dsm_impl.c:363 storage/ipc/dsm_impl.c:580 storage/ipc/dsm_impl.c:695 storage/ipc/dsm_impl.c:866 storage/ipc/dsm_impl.c:1008
+#: storage/ipc/dsm_impl.c:263 storage/ipc/dsm_impl.c:372 storage/ipc/dsm_impl.c:593 storage/ipc/dsm_impl.c:708 storage/ipc/dsm_impl.c:879 storage/ipc/dsm_impl.c:1021
 #, c-format
 msgid "could not unmap shared memory segment \"%s\": %m"
 msgstr "n'a pas pu annuler le mappage du segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:272 storage/ipc/dsm_impl.c:590 storage/ipc/dsm_impl.c:705 storage/ipc/dsm_impl.c:876
+#: storage/ipc/dsm_impl.c:273 storage/ipc/dsm_impl.c:603 storage/ipc/dsm_impl.c:718 storage/ipc/dsm_impl.c:889
 #, c-format
 msgid "could not remove shared memory segment \"%s\": %m"
 msgstr "n'a pas pu supprimer le segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:293 storage/ipc/dsm_impl.c:776 storage/ipc/dsm_impl.c:890
+#: storage/ipc/dsm_impl.c:294 storage/ipc/dsm_impl.c:789 storage/ipc/dsm_impl.c:903
 #, c-format
 msgid "could not open shared memory segment \"%s\": %m"
 msgstr "n'a pas pu ouvrir le segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:317 storage/ipc/dsm_impl.c:606 storage/ipc/dsm_impl.c:821 storage/ipc/dsm_impl.c:914
+#: storage/ipc/dsm_impl.c:318 storage/ipc/dsm_impl.c:619 storage/ipc/dsm_impl.c:834 storage/ipc/dsm_impl.c:927
 #, c-format
 msgid "could not stat shared memory segment \"%s\": %m"
 msgstr "n'a pas pu obtenir des informations sur le segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:337 storage/ipc/dsm_impl.c:933 storage/ipc/dsm_impl.c:981
+#: storage/ipc/dsm_impl.c:346 storage/ipc/dsm_impl.c:946 storage/ipc/dsm_impl.c:994
 #, c-format
 msgid "could not resize shared memory segment \"%s\" to %zu bytes: %m"
 msgstr "n'a pas pu retailler le segment de mémoire partagée « %s » en %zu octets : %m"
 
-#: storage/ipc/dsm_impl.c:387 storage/ipc/dsm_impl.c:627 storage/ipc/dsm_impl.c:797 storage/ipc/dsm_impl.c:1032
+#: storage/ipc/dsm_impl.c:396 storage/ipc/dsm_impl.c:640 storage/ipc/dsm_impl.c:810 storage/ipc/dsm_impl.c:1045
 #, c-format
 msgid "could not map shared memory segment \"%s\": %m"
 msgstr "n'a pas pu mapper le segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:562
+#: storage/ipc/dsm_impl.c:575
 #, c-format
 msgid "could not get shared memory segment: %m"
 msgstr "n'a pas pu obtenir le segment de mémoire partagée : %m"
 
-#: storage/ipc/dsm_impl.c:761
+#: storage/ipc/dsm_impl.c:774
 #, c-format
 msgid "could not create shared memory segment \"%s\": %m"
 msgstr "n'a pas pu créer le segment de mémoire partagée « %s » : %m"
 
-#: storage/ipc/dsm_impl.c:1073
+#: storage/ipc/dsm_impl.c:1086
 #, c-format
 msgid "could not duplicate handle for \"%s\": %m"
 msgstr "n'a pas pu dupliquer le lien pour « %s » : %m"
@@ -16731,7 +16768,7 @@ msgstr "échec de epoll_wait() : %m"
 msgid "poll() failed: %m"
 msgstr "échec de poll() : %m"
 
-#: storage/ipc/shm_toc.c:108 storage/ipc/shm_toc.c:189 storage/ipc/shmem.c:212 storage/lmgr/lock.c:883 storage/lmgr/lock.c:917 storage/lmgr/lock.c:2682 storage/lmgr/lock.c:4007 storage/lmgr/lock.c:4072 storage/lmgr/lock.c:4364 storage/lmgr/predicate.c:2344 storage/lmgr/predicate.c:2359 storage/lmgr/predicate.c:3751 storage/lmgr/predicate.c:4894 storage/lmgr/proc.c:203 utils/hash/dynahash.c:1042
+#: storage/ipc/shm_toc.c:108 storage/ipc/shm_toc.c:189 storage/ipc/shmem.c:212 storage/lmgr/lock.c:905 storage/lmgr/lock.c:943 storage/lmgr/lock.c:2733 storage/lmgr/lock.c:4058 storage/lmgr/lock.c:4123 storage/lmgr/lock.c:4415 storage/lmgr/predicate.c:2344 storage/lmgr/predicate.c:2359 storage/lmgr/predicate.c:3751 storage/lmgr/predicate.c:4894 storage/lmgr/proc.c:203 utils/hash/dynahash.c:1042
 #, c-format
 msgid "out of shared memory"
 msgstr "mémoire partagée épuisée"
@@ -16756,12 +16793,12 @@ msgstr "La taille de l'entrée ShmemIndex est mauvaise pour la structure de donn
 msgid "requested shared memory size overflows size_t"
 msgstr "la taille de la mémoire partagée demandée dépasse size_t"
 
-#: storage/ipc/standby.c:530 tcop/postgres.c:2972
+#: storage/ipc/standby.c:557 tcop/postgres.c:3001
 #, c-format
 msgid "canceling statement due to conflict with recovery"
 msgstr "annulation de la requête à cause d'un conflit avec la restauration"
 
-#: storage/ipc/standby.c:531 tcop/postgres.c:2255
+#: storage/ipc/standby.c:558 tcop/postgres.c:2278
 #, c-format
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr "La transaction de l'utilisateur causait un verrou mortel lors de la restauration."
@@ -16806,121 +16843,121 @@ msgstr "Bloquage mortel détecté"
 msgid "See server log for query details."
 msgstr "Voir les journaux applicatifs du serveur pour les détails sur la requête."
 
-#: storage/lmgr/lmgr.c:745
+#: storage/lmgr/lmgr.c:767
 #, c-format
 msgid "while updating tuple (%u,%u) in relation \"%s\""
 msgstr "lors de la mise à jour de la ligne (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:748
+#: storage/lmgr/lmgr.c:770
 #, c-format
 msgid "while deleting tuple (%u,%u) in relation \"%s\""
 msgstr "lors de la suppression de la ligne (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:751
+#: storage/lmgr/lmgr.c:773
 #, c-format
 msgid "while locking tuple (%u,%u) in relation \"%s\""
 msgstr "lors du verrouillage de la ligne (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:754
+#: storage/lmgr/lmgr.c:776
 #, c-format
 msgid "while locking updated version (%u,%u) of tuple in relation \"%s\""
 msgstr "lors du verrou de la version mise à jour (%u, %u) de la ligne de la relation « %s »"
 
-#: storage/lmgr/lmgr.c:757
+#: storage/lmgr/lmgr.c:779
 #, c-format
 msgid "while inserting index tuple (%u,%u) in relation \"%s\""
 msgstr "lors de l'insertion de l'enregistrement (%u, %u) de l'index dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:760
+#: storage/lmgr/lmgr.c:782
 #, c-format
 msgid "while checking uniqueness of tuple (%u,%u) in relation \"%s\""
 msgstr "lors de la vérification de l'unicité de l'enregistrement (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:763
+#: storage/lmgr/lmgr.c:785
 #, c-format
 msgid "while rechecking updated tuple (%u,%u) in relation \"%s\""
 msgstr "lors de la re-vérification de l'enregistrement mis à jour (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:766
+#: storage/lmgr/lmgr.c:788
 #, c-format
 msgid "while checking exclusion constraint on tuple (%u,%u) in relation \"%s\""
 msgstr "lors de la vérification de la contrainte d'exclusion sur l'enregistrement (%u,%u) dans la relation « %s »"
 
-#: storage/lmgr/lmgr.c:986
+#: storage/lmgr/lmgr.c:1008
 #, c-format
 msgid "relation %u of database %u"
 msgstr "relation %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:992
+#: storage/lmgr/lmgr.c:1014
 #, c-format
 msgid "extension of relation %u of database %u"
 msgstr "extension de la relation %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:998
+#: storage/lmgr/lmgr.c:1020
 #, c-format
 msgid "page %u of relation %u of database %u"
 msgstr "page %u de la relation %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:1005
+#: storage/lmgr/lmgr.c:1027
 #, c-format
 msgid "tuple (%u,%u) of relation %u of database %u"
 msgstr "ligne (%u,%u) de la relation %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:1013
+#: storage/lmgr/lmgr.c:1035
 #, c-format
 msgid "transaction %u"
 msgstr "transaction %u"
 
-#: storage/lmgr/lmgr.c:1018
+#: storage/lmgr/lmgr.c:1040
 #, c-format
 msgid "virtual transaction %d/%u"
 msgstr "transaction virtuelle %d/%u"
 
-#: storage/lmgr/lmgr.c:1024
+#: storage/lmgr/lmgr.c:1046
 #, c-format
 msgid "speculative token %u of transaction %u"
 msgstr "jeton spéculatif %u de la transaction %u"
 
-#: storage/lmgr/lmgr.c:1030
+#: storage/lmgr/lmgr.c:1052
 #, c-format
 msgid "object %u of class %u of database %u"
 msgstr "objet %u de la classe %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:1038
+#: storage/lmgr/lmgr.c:1060
 #, c-format
 msgid "user lock [%u,%u,%u]"
 msgstr "verrou utilisateur [%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:1045
+#: storage/lmgr/lmgr.c:1067
 #, c-format
 msgid "advisory lock [%u,%u,%u,%u]"
 msgstr "verrou informatif [%u,%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:1053
+#: storage/lmgr/lmgr.c:1075
 #, c-format
 msgid "unrecognized locktag type %d"
 msgstr "type locktag non reconnu %d"
 
-#: storage/lmgr/lock.c:732
+#: storage/lmgr/lock.c:740
 #, c-format
 msgid "cannot acquire lock mode %s on database objects while recovery is in progress"
 msgstr ""
 "ne peut pas acquérir le mode de verrou %s sur les objets de base de données\n"
 "alors que la restauration est en cours"
 
-#: storage/lmgr/lock.c:734
+#: storage/lmgr/lock.c:742
 #, c-format
 msgid "Only RowExclusiveLock or less can be acquired on database objects during recovery."
 msgstr ""
 "Seuls RowExclusiveLock et les verrous inférieurs peuvent être acquis sur les\n"
 "objets d'une base pendant une restauration."
 
-#: storage/lmgr/lock.c:884 storage/lmgr/lock.c:918 storage/lmgr/lock.c:2683 storage/lmgr/lock.c:4008 storage/lmgr/lock.c:4073 storage/lmgr/lock.c:4365
+#: storage/lmgr/lock.c:906 storage/lmgr/lock.c:944 storage/lmgr/lock.c:2734 storage/lmgr/lock.c:4059 storage/lmgr/lock.c:4124 storage/lmgr/lock.c:4416
 #, c-format
 msgid "You might need to increase max_locks_per_transaction."
 msgstr "Vous pourriez avoir besoin d'augmenter max_locks_per_transaction."
 
-#: storage/lmgr/lock.c:3124 storage/lmgr/lock.c:3240
+#: storage/lmgr/lock.c:3175 storage/lmgr/lock.c:3291
 #, c-format
 msgid "cannot PREPARE while holding both session-level and transaction-level locks on the same object"
 msgstr "ne peut pas utiliser PREPARE lorsque des verrous de niveau session et deniveau transaction sont détenus sur le même objet"
@@ -17084,90 +17121,90 @@ msgstr "pointeur d'élément corrompu : décalage = %u, taille = %u"
 msgid "corrupted item pointer: offset = %u, length = %u"
 msgstr "pointeur d'élément corrompu : décalage = %u, longueur = %u"
 
-#: storage/smgr/md.c:449 storage/smgr/md.c:971
+#: storage/smgr/md.c:450 storage/smgr/md.c:972
 #, c-format
 msgid "could not truncate file \"%s\": %m"
 msgstr "n'a pas pu tronquer le fichier « %s » : %m"
 
-#: storage/smgr/md.c:516
+#: storage/smgr/md.c:517
 #, c-format
 msgid "cannot extend file \"%s\" beyond %u blocks"
 msgstr "ne peut pas étendre le fichier « %s » de plus de %u blocs"
 
-#: storage/smgr/md.c:538 storage/smgr/md.c:751 storage/smgr/md.c:827
+#: storage/smgr/md.c:539 storage/smgr/md.c:752 storage/smgr/md.c:828
 #, c-format
 msgid "could not seek to block %u in file \"%s\": %m"
 msgstr "n'a pas pu trouver le bloc %u dans le fichier « %s » : %m"
 
-#: storage/smgr/md.c:546
+#: storage/smgr/md.c:547
 #, c-format
 msgid "could not extend file \"%s\": %m"
 msgstr "n'a pas pu étendre le fichier « %s » : %m"
 
-#: storage/smgr/md.c:548 storage/smgr/md.c:555 storage/smgr/md.c:854
+#: storage/smgr/md.c:549 storage/smgr/md.c:556 storage/smgr/md.c:855
 #, c-format
 msgid "Check free disk space."
 msgstr "Vérifiez l'espace disque disponible."
 
-#: storage/smgr/md.c:552
+#: storage/smgr/md.c:553
 #, c-format
 msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
 msgstr ""
 "n'a pas pu étendre le fichier « %s » : a écrit seulement %d octets sur %d\n"
 "au bloc %u"
 
-#: storage/smgr/md.c:769
+#: storage/smgr/md.c:770
 #, c-format
 msgid "could not read block %u in file \"%s\": %m"
 msgstr "n'a pas pu lire le bloc %u dans le fichier « %s » : %m"
 
-#: storage/smgr/md.c:785
+#: storage/smgr/md.c:786
 #, c-format
 msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
 msgstr ""
 "n'a pas pu lire le bloc %u du fichier « %s » : a lu seulement %d octets\n"
 "sur %d"
 
-#: storage/smgr/md.c:845
+#: storage/smgr/md.c:846
 #, c-format
 msgid "could not write block %u in file \"%s\": %m"
 msgstr "n'a pas pu écrire le bloc %u dans le fichier « %s » : %m"
 
-#: storage/smgr/md.c:850
+#: storage/smgr/md.c:851
 #, c-format
 msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
 msgstr ""
 "n'a pas pu écrire le bloc %u du fichier « %s » : a seulement écrit %d\n"
 "octets sur %d"
 
-#: storage/smgr/md.c:947
+#: storage/smgr/md.c:948
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
 msgstr "n'a pas pu tronquer le fichier « %s » en %u blocs : il y a seulement %u blocs"
 
-#: storage/smgr/md.c:997
+#: storage/smgr/md.c:998
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: %m"
 msgstr "n'a pas pu tronquer le fichier « %s » en %u blocs : %m"
 
-#: storage/smgr/md.c:1279
+#: storage/smgr/md.c:1280
 #, c-format
 msgid "could not fsync file \"%s\" but retrying: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le fichier « %s », nouvelle\n"
 "tentative : %m"
 
-#: storage/smgr/md.c:1442
+#: storage/smgr/md.c:1443
 #, c-format
 msgid "could not forward fsync request because request queue is full"
 msgstr "n'a pas pu envoyer la requête fsync car la queue des requêtes est pleine"
 
-#: storage/smgr/md.c:1863
+#: storage/smgr/md.c:1901
 #, c-format
 msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks"
 msgstr "n'a pas pu ouvrir le fichier « %s » (bloc cible %u) : le segment précédent ne fait que %u blocs"
 
-#: storage/smgr/md.c:1877
+#: storage/smgr/md.c:1915
 #, c-format
 msgid "could not open file \"%s\" (target block %u): %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » (bloc cible %u) : %m"
@@ -17177,7 +17214,7 @@ msgstr "n'a pas pu ouvrir le fichier « %s » (bloc cible %u) : %m"
 msgid "invalid argument size %d in function call message"
 msgstr "taille de l'argument %d invalide dans le message d'appel de la fonction"
 
-#: tcop/fastpath.c:281 tcop/postgres.c:984 tcop/postgres.c:1293 tcop/postgres.c:1551 tcop/postgres.c:1956 tcop/postgres.c:2323 tcop/postgres.c:2398
+#: tcop/fastpath.c:281 tcop/postgres.c:1007 tcop/postgres.c:1316 tcop/postgres.c:1574 tcop/postgres.c:1979 tcop/postgres.c:2346 tcop/postgres.c:2421
 #, c-format
 msgid "current transaction is aborted, commands ignored until end of transaction block"
 msgstr ""
@@ -17189,7 +17226,7 @@ msgstr ""
 msgid "fastpath function call: \"%s\" (OID %u)"
 msgstr "appel de fonction fastpath : « %s » (OID %u)"
 
-#: tcop/fastpath.c:391 tcop/postgres.c:1155 tcop/postgres.c:1418 tcop/postgres.c:1797 tcop/postgres.c:2014
+#: tcop/fastpath.c:391 tcop/postgres.c:1178 tcop/postgres.c:1441 tcop/postgres.c:1820 tcop/postgres.c:2037
 #, c-format
 msgid "duration: %s ms"
 msgstr "durée : %s ms"
@@ -17223,139 +17260,139 @@ msgstr "format des données binaires incorrect dans l'argument de la fonction %d
 msgid "unexpected EOF on client connection"
 msgstr "fin de fichier (EOF) inattendue de la connexion du client"
 
-#: tcop/postgres.c:430 tcop/postgres.c:442 tcop/postgres.c:453 tcop/postgres.c:465 tcop/postgres.c:4298
+#: tcop/postgres.c:430 tcop/postgres.c:442 tcop/postgres.c:453 tcop/postgres.c:465 tcop/postgres.c:4327
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "type %d du message de l'interface invalide"
 
-#: tcop/postgres.c:925
+#: tcop/postgres.c:948
 #, c-format
 msgid "statement: %s"
 msgstr "instruction : %s"
 
-#: tcop/postgres.c:1160
+#: tcop/postgres.c:1183
 #, c-format
 msgid "duration: %s ms  statement: %s"
 msgstr "durée : %s ms, instruction : %s"
 
-#: tcop/postgres.c:1210
+#: tcop/postgres.c:1233
 #, c-format
 msgid "parse %s: %s"
 msgstr "analyse %s : %s"
 
-#: tcop/postgres.c:1266
+#: tcop/postgres.c:1289
 #, c-format
 msgid "cannot insert multiple commands into a prepared statement"
 msgstr "ne peut pas insérer les commandes multiples dans une instruction préparée"
 
-#: tcop/postgres.c:1423
+#: tcop/postgres.c:1446
 #, c-format
 msgid "duration: %s ms  parse %s: %s"
 msgstr "durée : %s ms, analyse %s : %s"
 
-#: tcop/postgres.c:1468
+#: tcop/postgres.c:1491
 #, c-format
 msgid "bind %s to %s"
 msgstr "lie %s à %s"
 
-#: tcop/postgres.c:1487 tcop/postgres.c:2304
+#: tcop/postgres.c:1510 tcop/postgres.c:2327
 #, c-format
 msgid "unnamed prepared statement does not exist"
 msgstr "l'instruction préparée non nommée n'existe pas"
 
-#: tcop/postgres.c:1529
+#: tcop/postgres.c:1552
 #, c-format
 msgid "bind message has %d parameter formats but %d parameters"
 msgstr "le message bind a %d formats de paramètres mais %d paramètres"
 
-#: tcop/postgres.c:1535
+#: tcop/postgres.c:1558
 #, c-format
 msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
 msgstr ""
 "le message bind fournit %d paramètres, mais l'instruction préparée « %s » en\n"
 "requiert %d"
 
-#: tcop/postgres.c:1704
+#: tcop/postgres.c:1727
 #, c-format
 msgid "incorrect binary data format in bind parameter %d"
 msgstr "format des données binaires incorrect dans le paramètre bind %d"
 
-#: tcop/postgres.c:1802
+#: tcop/postgres.c:1825
 #, c-format
 msgid "duration: %s ms  bind %s%s%s: %s"
 msgstr "durée : %s ms, lien %s%s%s : %s"
 
-#: tcop/postgres.c:1850 tcop/postgres.c:2384
+#: tcop/postgres.c:1873 tcop/postgres.c:2407
 #, c-format
 msgid "portal \"%s\" does not exist"
 msgstr "le portail « %s » n'existe pas"
 
-#: tcop/postgres.c:1935
+#: tcop/postgres.c:1958
 #, c-format
 msgid "%s %s%s%s: %s"
 msgstr "%s %s%s%s: %s"
 
-#: tcop/postgres.c:1937 tcop/postgres.c:2022
+#: tcop/postgres.c:1960 tcop/postgres.c:2045
 msgid "execute fetch from"
 msgstr "exécute fetch à partir de"
 
-#: tcop/postgres.c:1938 tcop/postgres.c:2023
+#: tcop/postgres.c:1961 tcop/postgres.c:2046
 msgid "execute"
 msgstr "exécute"
 
-#: tcop/postgres.c:2019
+#: tcop/postgres.c:2042
 #, c-format
 msgid "duration: %s ms  %s %s%s%s: %s"
 msgstr "durée : %s ms  %s %s%s%s: %s"
 
-#: tcop/postgres.c:2145
+#: tcop/postgres.c:2168
 #, c-format
 msgid "prepare: %s"
 msgstr "préparation : %s"
 
-#: tcop/postgres.c:2208
+#: tcop/postgres.c:2231
 #, c-format
 msgid "parameters: %s"
 msgstr "paramètres : %s"
 
-#: tcop/postgres.c:2227
+#: tcop/postgres.c:2250
 #, c-format
 msgid "abort reason: recovery conflict"
 msgstr "raison de l'annulation : conflit de restauration"
 
-#: tcop/postgres.c:2243
+#: tcop/postgres.c:2266
 #, c-format
 msgid "User was holding shared buffer pin for too long."
 msgstr "L'utilisateur conservait des blocs disques en mémoire partagée depuis trop longtemps."
 
-#: tcop/postgres.c:2246
+#: tcop/postgres.c:2269
 #, c-format
 msgid "User was holding a relation lock for too long."
 msgstr "L'utilisateur conservait un verrou sur une relation depuis trop longtemps."
 
-#: tcop/postgres.c:2249
+#: tcop/postgres.c:2272
 #, c-format
 msgid "User was or might have been using tablespace that must be dropped."
 msgstr "L'utilisateur utilisait ou pouvait utiliser un tablespace qui doit être supprimé."
 
-#: tcop/postgres.c:2252
+#: tcop/postgres.c:2275
 #, c-format
 msgid "User query might have needed to see row versions that must be removed."
 msgstr ""
 "La requête de l'utilisateur pourrait avoir eu besoin de voir des versions de\n"
 "lignes qui doivent être supprimées."
 
-#: tcop/postgres.c:2258
+#: tcop/postgres.c:2281
 #, c-format
 msgid "User was connected to a database that must be dropped."
 msgstr "L'utilisateur était connecté à une base de donnée qui doit être supprimé."
 
-#: tcop/postgres.c:2587
+#: tcop/postgres.c:2620
 #, c-format
 msgid "terminating connection because of crash of another server process"
 msgstr "arrêt de la connexion à cause de l'arrêt brutal d'un autre processus serveur"
 
-#: tcop/postgres.c:2588
+#: tcop/postgres.c:2621
 #, c-format
 msgid "The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory."
 msgstr ""
@@ -17363,19 +17400,19 @@ msgstr ""
 "courante et de quitter car un autre processus serveur a quitté anormalement\n"
 "et qu'il existe probablement de la mémoire partagée corrompue."
 
-#: tcop/postgres.c:2592 tcop/postgres.c:2902
+#: tcop/postgres.c:2625 tcop/postgres.c:2931
 #, c-format
 msgid "In a moment you should be able to reconnect to the database and repeat your command."
 msgstr ""
 "Dans un moment, vous devriez être capable de vous reconnecter à la base de\n"
 "données et de relancer votre commande."
 
-#: tcop/postgres.c:2678
+#: tcop/postgres.c:2707
 #, c-format
 msgid "floating-point exception"
 msgstr "exception dû à une virgule flottante"
 
-#: tcop/postgres.c:2679
+#: tcop/postgres.c:2708
 #, c-format
 msgid "An invalid floating-point operation was signaled. This probably means an out-of-range result or an invalid operation, such as division by zero."
 msgstr ""
@@ -17383,62 +17420,62 @@ msgstr ""
 "Ceci signifie probablement un résultat en dehors de l'échelle ou une\n"
 "opération invalide telle qu'une division par zéro."
 
-#: tcop/postgres.c:2847
+#: tcop/postgres.c:2876
 #, c-format
 msgid "canceling authentication due to timeout"
 msgstr "annulation de l'authentification à cause du délai écoulé"
 
-#: tcop/postgres.c:2851
+#: tcop/postgres.c:2880
 #, c-format
 msgid "terminating autovacuum process due to administrator command"
 msgstr "arrêt du processus autovacuum suite à la demande de l'administrateur"
 
-#: tcop/postgres.c:2857 tcop/postgres.c:2867 tcop/postgres.c:2900
+#: tcop/postgres.c:2886 tcop/postgres.c:2896 tcop/postgres.c:2929
 #, c-format
 msgid "terminating connection due to conflict with recovery"
 msgstr "arrêt de la connexion à cause d'un conflit avec la restauration"
 
-#: tcop/postgres.c:2873
+#: tcop/postgres.c:2902
 #, c-format
 msgid "terminating connection due to administrator command"
 msgstr "arrêt des connexions suite à la demande de l'administrateur"
 
-#: tcop/postgres.c:2883
+#: tcop/postgres.c:2912
 #, c-format
 msgid "connection to client lost"
 msgstr "connexion au client perdue"
 
-#: tcop/postgres.c:2949
+#: tcop/postgres.c:2978
 #, c-format
 msgid "canceling statement due to lock timeout"
 msgstr "annulation de la requête à cause du délai écoulé pour l'obtention des verrous"
 
-#: tcop/postgres.c:2956
+#: tcop/postgres.c:2985
 #, c-format
 msgid "canceling statement due to statement timeout"
 msgstr "annulation de la requête à cause du délai écoulé pour l'exécution de l'instruction"
 
-#: tcop/postgres.c:2963
+#: tcop/postgres.c:2992
 #, c-format
 msgid "canceling autovacuum task"
 msgstr "annulation de la tâche d'autovacuum"
 
-#: tcop/postgres.c:2986
+#: tcop/postgres.c:3015
 #, c-format
 msgid "canceling statement due to user request"
 msgstr "annulation de la requête à la demande de l'utilisateur"
 
-#: tcop/postgres.c:2996
+#: tcop/postgres.c:3025
 #, c-format
 msgid "terminating connection due to idle-in-transaction timeout"
 msgstr "arrêt des connexions suite à l'expiration du délai d'inactivité en transaction"
 
-#: tcop/postgres.c:3110
+#: tcop/postgres.c:3139
 #, c-format
 msgid "stack depth limit exceeded"
 msgstr "dépassement de limite (en profondeur) de la pile"
 
-#: tcop/postgres.c:3111
+#: tcop/postgres.c:3140
 #, c-format
 msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), after ensuring the platform's stack depth limit is adequate."
 msgstr ""
@@ -17446,59 +17483,59 @@ msgstr ""
 "être assuré que la limite de profondeur de la pile de la plateforme est\n"
 "adéquate."
 
-#: tcop/postgres.c:3174
+#: tcop/postgres.c:3203
 #, c-format
 msgid "\"max_stack_depth\" must not exceed %ldkB."
 msgstr "« max_stack_depth » ne doit pas dépasser %ld Ko."
 
-#: tcop/postgres.c:3176
+#: tcop/postgres.c:3205
 #, c-format
 msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent."
 msgstr ""
 "Augmenter la limite de profondeur de la pile sur votre plateforme via\n"
 "« ulimit -s » ou l'équivalent local."
 
-#: tcop/postgres.c:3536
+#: tcop/postgres.c:3565
 #, c-format
 msgid "invalid command-line argument for server process: %s"
 msgstr "argument invalide en ligne de commande pour le processus serveur : %s"
 
-#: tcop/postgres.c:3537 tcop/postgres.c:3543
+#: tcop/postgres.c:3566 tcop/postgres.c:3572
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Essayez « %s --help » pour plus d'informations."
 
-#: tcop/postgres.c:3541
+#: tcop/postgres.c:3570
 #, c-format
 msgid "%s: invalid command-line argument: %s"
 msgstr "%s : argument invalide en ligne de commande : %s"
 
-#: tcop/postgres.c:3603
+#: tcop/postgres.c:3632
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s : aucune base de données et aucun utilisateur spécifiés"
 
-#: tcop/postgres.c:4206
+#: tcop/postgres.c:4235
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "sous-type %d du message CLOSE invalide"
 
-#: tcop/postgres.c:4241
+#: tcop/postgres.c:4270
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "sous-type %d du message DESCRIBE invalide"
 
-#: tcop/postgres.c:4319
+#: tcop/postgres.c:4348
 #, c-format
 msgid "fastpath function calls not supported in a replication connection"
 msgstr "appels à la fonction fastpath non supportés dans une connexion de réplication"
 
-#: tcop/postgres.c:4323
+#: tcop/postgres.c:4352
 #, c-format
 msgid "extended query protocol not supported in a replication connection"
 msgstr "protocole étendu de requêtes non supporté dans une connexion de réplication"
 
-#: tcop/postgres.c:4493
+#: tcop/postgres.c:4522
 #, c-format
 msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
 msgstr ""
@@ -17546,7 +17583,7 @@ msgstr ""
 "ne peut pas exécuter %s à l'intérieur d'une fonction restreinte\n"
 "pour sécurité"
 
-#: tcop/utility.c:744
+#: tcop/utility.c:747
 #, c-format
 msgid "must be superuser to do CHECKPOINT"
 msgstr "doit être super-utilisateur pour exécuter un point de vérification (CHECKPOINT)"
@@ -17700,7 +17737,7 @@ msgstr "drapeau d'affixe invalide « %s » avec la valeur de drapeau « long »"
 msgid "could not open dictionary file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier dictionnaire « %s » : %m"
 
-#: tsearch/spell.c:740 utils/adt/regexp.c:204
+#: tsearch/spell.c:740 utils/adt/regexp.c:208
 #, c-format
 msgid "invalid regular expression: %s"
 msgstr "expression rationnelle invalide : %s"
@@ -17895,17 +17932,17 @@ msgstr "aclremove n'est plus supporté"
 msgid "unrecognized privilege type: \"%s\""
 msgstr "type de droit non reconnu : « %s »"
 
-#: utils/adt/acl.c:3432 utils/adt/regproc.c:124 utils/adt/regproc.c:145 utils/adt/regproc.c:320
+#: utils/adt/acl.c:3489 utils/adt/regproc.c:124 utils/adt/regproc.c:145 utils/adt/regproc.c:320
 #, c-format
 msgid "function \"%s\" does not exist"
 msgstr "la fonction « %s » n'existe pas"
 
-#: utils/adt/acl.c:4886
+#: utils/adt/acl.c:4961
 #, c-format
 msgid "must be member of role \"%s\""
 msgstr "doit être un membre du rôle « %s »"
 
-#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:931 utils/adt/arrayfuncs.c:1519 utils/adt/arrayfuncs.c:3251 utils/adt/arrayfuncs.c:3389 utils/adt/arrayfuncs.c:5848 utils/adt/arrayfuncs.c:6159 utils/adt/arrayutils.c:93 utils/adt/arrayutils.c:102 utils/adt/arrayutils.c:109
+#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:931 utils/adt/arrayfuncs.c:1531 utils/adt/arrayfuncs.c:3263 utils/adt/arrayfuncs.c:3401 utils/adt/arrayfuncs.c:5860 utils/adt/arrayfuncs.c:6171 utils/adt/arrayutils.c:93 utils/adt/arrayutils.c:102 utils/adt/arrayutils.c:109
 #, c-format
 msgid "array size exceeds the maximum allowed (%d)"
 msgstr "la taille du tableau dépasse le maximum permis (%d)"
@@ -17920,7 +17957,7 @@ msgstr "n'a pas pu déterminer le type de données date en entrée"
 msgid "input data type is not an array"
 msgstr "le type de données en entrée n'est pas un tableau"
 
-#: utils/adt/array_userfuncs.c:132 utils/adt/array_userfuncs.c:186 utils/adt/arrayfuncs.c:1322 utils/adt/float.c:1228 utils/adt/float.c:1287 utils/adt/float.c:3556 utils/adt/float.c:3572 utils/adt/int.c:623 utils/adt/int.c:652 utils/adt/int.c:673 utils/adt/int.c:704 utils/adt/int.c:737 utils/adt/int.c:759 utils/adt/int.c:907 utils/adt/int.c:928 utils/adt/int.c:955 utils/adt/int.c:995 utils/adt/int.c:1016 utils/adt/int.c:1043
+#: utils/adt/array_userfuncs.c:132 utils/adt/array_userfuncs.c:186 utils/adt/arrayfuncs.c:1334 utils/adt/float.c:1228 utils/adt/float.c:1287 utils/adt/float.c:3556 utils/adt/float.c:3572 utils/adt/int.c:623 utils/adt/int.c:652 utils/adt/int.c:673 utils/adt/int.c:704 utils/adt/int.c:737 utils/adt/int.c:759 utils/adt/int.c:907 utils/adt/int.c:928 utils/adt/int.c:955 utils/adt/int.c:995 utils/adt/int.c:1016 utils/adt/int.c:1043
 #: utils/adt/int.c:1076 utils/adt/int.c:1159 utils/adt/int8.c:1298 utils/adt/numeric.c:2903 utils/adt/numeric.c:2912 utils/adt/varbit.c:1173 utils/adt/varbit.c:1575 utils/adt/varlena.c:1055 utils/adt/varlena.c:2807
 #, c-format
 msgid "integer out of range"
@@ -17964,7 +18001,7 @@ msgstr ""
 "Les tableaux de dimensions différentes ne sont pas compatibles pour\n"
 "une concaténation."
 
-#: utils/adt/array_userfuncs.c:480 utils/adt/arrayfuncs.c:1284 utils/adt/arrayfuncs.c:3357 utils/adt/arrayfuncs.c:5754
+#: utils/adt/array_userfuncs.c:480 utils/adt/arrayfuncs.c:1296 utils/adt/arrayfuncs.c:3369 utils/adt/arrayfuncs.c:5766
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "nombre de dimensions invalides : %d"
@@ -18000,7 +18037,7 @@ msgstr "Valeur  manquante de la dimension du tableau."
 msgid "Missing \"%s\" after array dimensions."
 msgstr "« %s » manquant après les dimensions du tableau."
 
-#: utils/adt/arrayfuncs.c:303 utils/adt/arrayfuncs.c:2870 utils/adt/arrayfuncs.c:2902 utils/adt/arrayfuncs.c:2917
+#: utils/adt/arrayfuncs.c:303 utils/adt/arrayfuncs.c:2882 utils/adt/arrayfuncs.c:2914 utils/adt/arrayfuncs.c:2929
 #, c-format
 msgid "upper bound cannot be less than lower bound"
 msgstr "la limite supérieure ne peut pas être plus petite que la limite inférieure"
@@ -18054,139 +18091,139 @@ msgstr ""
 msgid "Junk after closing right brace."
 msgstr "Problème après la parenthèse droite fermante."
 
-#: utils/adt/arrayfuncs.c:1295
+#: utils/adt/arrayfuncs.c:1307
 #, c-format
 msgid "invalid array flags"
 msgstr "drapeaux de tableau invalides"
 
-#: utils/adt/arrayfuncs.c:1303
+#: utils/adt/arrayfuncs.c:1315
 #, c-format
 msgid "wrong element type"
 msgstr "mauvais type d'élément"
 
-#: utils/adt/arrayfuncs.c:1353 utils/adt/rangetypes.c:334 utils/cache/lsyscache.c:2651
+#: utils/adt/arrayfuncs.c:1365 utils/adt/rangetypes.c:334 utils/cache/lsyscache.c:2651
 #, c-format
 msgid "no binary input function available for type %s"
 msgstr "aucune fonction d'entrée binaire disponible pour le type %s"
 
-#: utils/adt/arrayfuncs.c:1493
+#: utils/adt/arrayfuncs.c:1505
 #, c-format
 msgid "improper binary format in array element %d"
 msgstr "format binaire mal conçu dans l'élément du tableau %d"
 
-#: utils/adt/arrayfuncs.c:1574 utils/adt/rangetypes.c:339 utils/cache/lsyscache.c:2684
+#: utils/adt/arrayfuncs.c:1586 utils/adt/rangetypes.c:339 utils/cache/lsyscache.c:2684
 #, c-format
 msgid "no binary output function available for type %s"
 msgstr "aucune fonction de sortie binaire disponible pour le type %s"
 
-#: utils/adt/arrayfuncs.c:2052
+#: utils/adt/arrayfuncs.c:2064
 #, c-format
 msgid "slices of fixed-length arrays not implemented"
 msgstr "les morceaux des tableaux à longueur fixe ne sont pas implémentés"
 
-#: utils/adt/arrayfuncs.c:2230 utils/adt/arrayfuncs.c:2252 utils/adt/arrayfuncs.c:2301 utils/adt/arrayfuncs.c:2537 utils/adt/arrayfuncs.c:2848 utils/adt/arrayfuncs.c:5740 utils/adt/arrayfuncs.c:5766 utils/adt/arrayfuncs.c:5777 utils/adt/json.c:2254 utils/adt/json.c:2329 utils/adt/jsonb.c:1326 utils/adt/jsonb.c:1412 utils/adt/jsonfuncs.c:3543 utils/adt/jsonfuncs.c:3588 utils/adt/jsonfuncs.c:3635
+#: utils/adt/arrayfuncs.c:2242 utils/adt/arrayfuncs.c:2264 utils/adt/arrayfuncs.c:2313 utils/adt/arrayfuncs.c:2549 utils/adt/arrayfuncs.c:2860 utils/adt/arrayfuncs.c:5752 utils/adt/arrayfuncs.c:5778 utils/adt/arrayfuncs.c:5789 utils/adt/json.c:2254 utils/adt/json.c:2329 utils/adt/jsonb.c:1326 utils/adt/jsonb.c:1412 utils/adt/jsonfuncs.c:3543 utils/adt/jsonfuncs.c:3588 utils/adt/jsonfuncs.c:3635
 #, c-format
 msgid "wrong number of array subscripts"
 msgstr "mauvais nombre d'indices du tableau"
 
-#: utils/adt/arrayfuncs.c:2235 utils/adt/arrayfuncs.c:2343 utils/adt/arrayfuncs.c:2601 utils/adt/arrayfuncs.c:2907
+#: utils/adt/arrayfuncs.c:2247 utils/adt/arrayfuncs.c:2355 utils/adt/arrayfuncs.c:2613 utils/adt/arrayfuncs.c:2919
 #, c-format
 msgid "array subscript out of range"
 msgstr "indice du tableau en dehors de l'échelle"
 
-#: utils/adt/arrayfuncs.c:2240
+#: utils/adt/arrayfuncs.c:2252
 #, c-format
 msgid "cannot assign null value to an element of a fixed-length array"
 msgstr "ne peut pas affecter une valeur NULL à un élément d'un tableau à longueur fixe"
 
-#: utils/adt/arrayfuncs.c:2795
+#: utils/adt/arrayfuncs.c:2807
 #, c-format
 msgid "updates on slices of fixed-length arrays not implemented"
 msgstr ""
 "les mises à jour de morceaux des tableaux à longueur fixe ne sont pas\n"
 "implémentées"
 
-#: utils/adt/arrayfuncs.c:2826
+#: utils/adt/arrayfuncs.c:2838
 #, c-format
 msgid "array slice subscript must provide both boundaries"
 msgstr "la tranche d'indice de tableau doit être fournir les deux limites"
 
-#: utils/adt/arrayfuncs.c:2827
+#: utils/adt/arrayfuncs.c:2839
 #, c-format
 msgid "When assigning to a slice of an empty array value, slice boundaries must be fully specified."
 msgstr "Les limites de tranches doivent être entièrement spécifiées lors de l'assignation d'une valeur d'un tableau vide à une tranche"
 
-#: utils/adt/arrayfuncs.c:2838 utils/adt/arrayfuncs.c:2933
+#: utils/adt/arrayfuncs.c:2850 utils/adt/arrayfuncs.c:2945
 #, c-format
 msgid "source array too small"
 msgstr "tableau source trop petit"
 
-#: utils/adt/arrayfuncs.c:3513
+#: utils/adt/arrayfuncs.c:3525
 #, c-format
 msgid "null array element not allowed in this context"
 msgstr "élément NULL de tableau interdit dans ce contexte"
 
-#: utils/adt/arrayfuncs.c:3615 utils/adt/arrayfuncs.c:3786 utils/adt/arrayfuncs.c:4060
+#: utils/adt/arrayfuncs.c:3627 utils/adt/arrayfuncs.c:3798 utils/adt/arrayfuncs.c:4072
 #, c-format
 msgid "cannot compare arrays of different element types"
 msgstr "ne peut pas comparer des tableaux ayant des types d'éléments différents"
 
-#: utils/adt/arrayfuncs.c:3962 utils/adt/rangetypes.c:1253
+#: utils/adt/arrayfuncs.c:3974 utils/adt/rangetypes.c:1253
 #, c-format
 msgid "could not identify a hash function for type %s"
 msgstr "n'a pas pu identifier une fonction de hachage pour le type %s"
 
-#: utils/adt/arrayfuncs.c:5154
+#: utils/adt/arrayfuncs.c:5166
 #, c-format
 msgid "data type %s is not an array type"
 msgstr "le type de données %s n'est pas un type tableau"
 
-#: utils/adt/arrayfuncs.c:5209
+#: utils/adt/arrayfuncs.c:5221
 #, c-format
 msgid "cannot accumulate null arrays"
 msgstr "ne peut pas accumuler des tableaux NULL"
 
-#: utils/adt/arrayfuncs.c:5237
+#: utils/adt/arrayfuncs.c:5249
 #, c-format
 msgid "cannot accumulate empty arrays"
 msgstr "ne peut pas concaténer des tableaux vides"
 
-#: utils/adt/arrayfuncs.c:5266 utils/adt/arrayfuncs.c:5272
+#: utils/adt/arrayfuncs.c:5278 utils/adt/arrayfuncs.c:5284
 #, c-format
 msgid "cannot accumulate arrays of different dimensionality"
 msgstr "ne peut pas accumuler des tableaux de dimensions différentes"
 
-#: utils/adt/arrayfuncs.c:5638 utils/adt/arrayfuncs.c:5678
+#: utils/adt/arrayfuncs.c:5650 utils/adt/arrayfuncs.c:5690
 #, c-format
 msgid "dimension array or low bound array cannot be null"
 msgstr "la dimension ou la limite basse du tableau ne peut pas être NULL"
 
-#: utils/adt/arrayfuncs.c:5741 utils/adt/arrayfuncs.c:5767
+#: utils/adt/arrayfuncs.c:5753 utils/adt/arrayfuncs.c:5779
 #, c-format
 msgid "Dimension array must be one dimensional."
 msgstr "le tableau doit avoir une seule dimension"
 
-#: utils/adt/arrayfuncs.c:5746 utils/adt/arrayfuncs.c:5772
+#: utils/adt/arrayfuncs.c:5758 utils/adt/arrayfuncs.c:5784
 #, c-format
 msgid "dimension values cannot be null"
 msgstr "les valeurs de dimension ne peuvent pas être NULL"
 
-#: utils/adt/arrayfuncs.c:5778
+#: utils/adt/arrayfuncs.c:5790
 #, c-format
 msgid "Low bound array has different size than dimensions array."
 msgstr "La limite basse du tableau a une taille différentes des dimensions du tableau."
 
-#: utils/adt/arrayfuncs.c:6024
+#: utils/adt/arrayfuncs.c:6036
 #, c-format
 msgid "removing elements from multidimensional arrays is not supported"
 msgstr "la suppression d'éléments de tableaux multidimensionnels n'est pas supportée"
 
-#: utils/adt/arrayfuncs.c:6301
+#: utils/adt/arrayfuncs.c:6313
 #, c-format
 msgid "thresholds must be one-dimensional array"
 msgstr "les limites doivent être un tableau à une dimension"
 
-#: utils/adt/arrayfuncs.c:6306
+#: utils/adt/arrayfuncs.c:6318
 #, c-format
 msgid "thresholds array must not contain NULLs"
 msgstr "le tableau de limites ne doit pas contenir de valeurs NULL"
@@ -18222,7 +18259,7 @@ msgid "invalid input syntax for type money: \"%s\""
 msgstr "syntaxe en entrée invalide pour le type money : « %s »"
 
 #: utils/adt/cash.c:607 utils/adt/cash.c:657 utils/adt/cash.c:708 utils/adt/cash.c:757 utils/adt/cash.c:809 utils/adt/cash.c:859 utils/adt/float.c:855 utils/adt/float.c:919 utils/adt/float.c:3315 utils/adt/float.c:3378 utils/adt/geo_ops.c:4093 utils/adt/int.c:719 utils/adt/int.c:861 utils/adt/int.c:969 utils/adt/int.c:1058 utils/adt/int.c:1097 utils/adt/int.c:1125 utils/adt/int8.c:597 utils/adt/int8.c:657 utils/adt/int8.c:897
-#: utils/adt/int8.c:1005 utils/adt/int8.c:1094 utils/adt/int8.c:1202 utils/adt/numeric.c:6828 utils/adt/numeric.c:7117 utils/adt/numeric.c:8130 utils/adt/timestamp.c:3542
+#: utils/adt/int8.c:1005 utils/adt/int8.c:1094 utils/adt/int8.c:1202 utils/adt/numeric.c:6828 utils/adt/numeric.c:7117 utils/adt/numeric.c:8130 utils/adt/timestamp.c:3545
 #, c-format
 msgid "division by zero"
 msgstr "division par zéro"
@@ -18247,7 +18284,7 @@ msgstr "la précision de TIME(%d)%s ne doit pas être négative"
 msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr "la précision de TIME(%d)%s a été réduit au maximum autorisée, %d"
 
-#: utils/adt/date.c:141 utils/adt/datetime.c:1278 utils/adt/datetime.c:2191
+#: utils/adt/date.c:141 utils/adt/datetime.c:1278 utils/adt/datetime.c:2194
 #, c-format
 msgid "date/time value \"current\" is no longer supported"
 msgstr "la valeur « current » pour la date et heure n'est plus supportée"
@@ -18282,10 +18319,10 @@ msgstr "ne peut pas soustraire les valeurs dates infinies"
 msgid "date out of range for timestamp"
 msgstr "date en dehors des limites pour un timestamp"
 
-#: utils/adt/date.c:1022 utils/adt/date.c:1068 utils/adt/date.c:1678 utils/adt/date.c:1714 utils/adt/date.c:1748 utils/adt/date.c:2592 utils/adt/datetime.c:1759 utils/adt/formatting.c:3404 utils/adt/formatting.c:3436 utils/adt/formatting.c:3504 utils/adt/json.c:1535 utils/adt/json.c:1557 utils/adt/jsonb.c:824 utils/adt/jsonb.c:848 utils/adt/nabstime.c:455 utils/adt/nabstime.c:498 utils/adt/nabstime.c:528 utils/adt/nabstime.c:571
-#: utils/adt/timestamp.c:225 utils/adt/timestamp.c:269 utils/adt/timestamp.c:727 utils/adt/timestamp.c:736 utils/adt/timestamp.c:818 utils/adt/timestamp.c:858 utils/adt/timestamp.c:3117 utils/adt/timestamp.c:3138 utils/adt/timestamp.c:3151 utils/adt/timestamp.c:3160 utils/adt/timestamp.c:3168 utils/adt/timestamp.c:3223 utils/adt/timestamp.c:3246 utils/adt/timestamp.c:3259 utils/adt/timestamp.c:3270 utils/adt/timestamp.c:3278
-#: utils/adt/timestamp.c:3852 utils/adt/timestamp.c:3981 utils/adt/timestamp.c:4022 utils/adt/timestamp.c:4110 utils/adt/timestamp.c:4156 utils/adt/timestamp.c:4267 utils/adt/timestamp.c:4674 utils/adt/timestamp.c:4790 utils/adt/timestamp.c:4800 utils/adt/timestamp.c:4896 utils/adt/timestamp.c:5015 utils/adt/timestamp.c:5025 utils/adt/timestamp.c:5277 utils/adt/timestamp.c:5291 utils/adt/timestamp.c:5296 utils/adt/timestamp.c:5310
-#: utils/adt/timestamp.c:5359 utils/adt/timestamp.c:5391 utils/adt/timestamp.c:5398 utils/adt/timestamp.c:5424 utils/adt/timestamp.c:5428 utils/adt/timestamp.c:5497 utils/adt/timestamp.c:5501 utils/adt/timestamp.c:5515 utils/adt/timestamp.c:5553 utils/adt/xml.c:2053 utils/adt/xml.c:2060 utils/adt/xml.c:2080 utils/adt/xml.c:2087
+#: utils/adt/date.c:1022 utils/adt/date.c:1068 utils/adt/date.c:1678 utils/adt/date.c:1714 utils/adt/date.c:1748 utils/adt/date.c:2592 utils/adt/datetime.c:1762 utils/adt/formatting.c:3404 utils/adt/formatting.c:3436 utils/adt/formatting.c:3504 utils/adt/json.c:1535 utils/adt/json.c:1557 utils/adt/jsonb.c:824 utils/adt/jsonb.c:848 utils/adt/nabstime.c:458 utils/adt/nabstime.c:501 utils/adt/nabstime.c:531 utils/adt/nabstime.c:574
+#: utils/adt/timestamp.c:225 utils/adt/timestamp.c:269 utils/adt/timestamp.c:727 utils/adt/timestamp.c:736 utils/adt/timestamp.c:818 utils/adt/timestamp.c:858 utils/adt/timestamp.c:3120 utils/adt/timestamp.c:3141 utils/adt/timestamp.c:3154 utils/adt/timestamp.c:3163 utils/adt/timestamp.c:3171 utils/adt/timestamp.c:3226 utils/adt/timestamp.c:3249 utils/adt/timestamp.c:3262 utils/adt/timestamp.c:3273 utils/adt/timestamp.c:3281
+#: utils/adt/timestamp.c:3855 utils/adt/timestamp.c:3984 utils/adt/timestamp.c:4025 utils/adt/timestamp.c:4113 utils/adt/timestamp.c:4159 utils/adt/timestamp.c:4270 utils/adt/timestamp.c:4677 utils/adt/timestamp.c:4793 utils/adt/timestamp.c:4803 utils/adt/timestamp.c:4899 utils/adt/timestamp.c:5018 utils/adt/timestamp.c:5028 utils/adt/timestamp.c:5280 utils/adt/timestamp.c:5294 utils/adt/timestamp.c:5299 utils/adt/timestamp.c:5313
+#: utils/adt/timestamp.c:5362 utils/adt/timestamp.c:5394 utils/adt/timestamp.c:5401 utils/adt/timestamp.c:5427 utils/adt/timestamp.c:5431 utils/adt/timestamp.c:5500 utils/adt/timestamp.c:5504 utils/adt/timestamp.c:5518 utils/adt/timestamp.c:5556 utils/adt/xml.c:2053 utils/adt/xml.c:2060 utils/adt/xml.c:2080 utils/adt/xml.c:2087
 #, c-format
 msgid "timestamp out of range"
 msgstr "timestamp en dehors des limites"
@@ -18325,44 +18362,44 @@ msgstr "déplacement du fuseau horaire en dehors des limites"
 msgid "\"time with time zone\" units \"%s\" not recognized"
 msgstr "L'unité « %s » n'est pas reconnu pour le type « time with time zone »"
 
-#: utils/adt/date.c:2830 utils/adt/datetime.c:995 utils/adt/datetime.c:1917 utils/adt/datetime.c:4743 utils/adt/timestamp.c:533 utils/adt/timestamp.c:560 utils/adt/timestamp.c:5302 utils/adt/timestamp.c:5507
+#: utils/adt/date.c:2830 utils/adt/datetime.c:995 utils/adt/datetime.c:1920 utils/adt/datetime.c:4746 utils/adt/timestamp.c:533 utils/adt/timestamp.c:560 utils/adt/timestamp.c:5305 utils/adt/timestamp.c:5510
 #, c-format
 msgid "time zone \"%s\" not recognized"
 msgstr "le fuseau horaire « %s » n'est pas reconnu"
 
-#: utils/adt/date.c:2870 utils/adt/timestamp.c:5344 utils/adt/timestamp.c:5538
+#: utils/adt/date.c:2870 utils/adt/timestamp.c:5347 utils/adt/timestamp.c:5541
 #, c-format
 msgid "interval time zone \"%s\" must not include months or days"
 msgstr "l'intervalle de fuseau horaire « %s » ne doit pas spécifier de mois ou de jours"
 
-#: utils/adt/datetime.c:3878 utils/adt/datetime.c:3885
+#: utils/adt/datetime.c:3881 utils/adt/datetime.c:3888
 #, c-format
 msgid "date/time field value out of range: \"%s\""
 msgstr "valeur du champ date/time en dehors des limites : « %s »"
 
-#: utils/adt/datetime.c:3887
+#: utils/adt/datetime.c:3890
 #, c-format
 msgid "Perhaps you need a different \"datestyle\" setting."
 msgstr "Peut-être avez-vous besoin d'un paramètrage « datestyle » différent."
 
-#: utils/adt/datetime.c:3892
+#: utils/adt/datetime.c:3895
 #, c-format
 msgid "interval field value out of range: \"%s\""
 msgstr "valeur du champ interval en dehors des limites : « %s »"
 
-#: utils/adt/datetime.c:3898
+#: utils/adt/datetime.c:3901
 #, c-format
 msgid "time zone displacement out of range: \"%s\""
 msgstr "déplacement du fuseau horaire en dehors des limites : « %s »"
 
 #. translator: first %s is inet or cidr
-#: utils/adt/datetime.c:3905 utils/adt/float.c:461 utils/adt/float.c:544 utils/adt/float.c:570 utils/adt/geo_ops.c:156 utils/adt/geo_ops.c:166 utils/adt/geo_ops.c:178 utils/adt/geo_ops.c:210 utils/adt/geo_ops.c:255 utils/adt/geo_ops.c:265 utils/adt/geo_ops.c:935 utils/adt/geo_ops.c:1321 utils/adt/geo_ops.c:1356 utils/adt/geo_ops.c:1364 utils/adt/geo_ops.c:3430 utils/adt/geo_ops.c:4563 utils/adt/geo_ops.c:4579 utils/adt/geo_ops.c:4586
+#: utils/adt/datetime.c:3908 utils/adt/float.c:461 utils/adt/float.c:544 utils/adt/float.c:570 utils/adt/geo_ops.c:156 utils/adt/geo_ops.c:166 utils/adt/geo_ops.c:178 utils/adt/geo_ops.c:210 utils/adt/geo_ops.c:255 utils/adt/geo_ops.c:265 utils/adt/geo_ops.c:935 utils/adt/geo_ops.c:1321 utils/adt/geo_ops.c:1356 utils/adt/geo_ops.c:1364 utils/adt/geo_ops.c:3430 utils/adt/geo_ops.c:4563 utils/adt/geo_ops.c:4579 utils/adt/geo_ops.c:4586
 #: utils/adt/network.c:58
 #, c-format
 msgid "invalid input syntax for type %s: \"%s\""
 msgstr "syntaxe en entrée invalide pour le type %s : « %s »"
 
-#: utils/adt/datetime.c:4745
+#: utils/adt/datetime.c:4748
 #, c-format
 msgid "This time zone name appears in the configuration file for time zone abbreviation \"%s\"."
 msgstr "Ce nom du fuseau horaire apparaît dans le fichier de configuration des abréviations de fuseaux horaires « %s »."
@@ -18881,7 +18918,7 @@ msgstr "données int2vector invalide"
 msgid "oidvector has too many elements"
 msgstr "oidvector a trop d'éléments"
 
-#: utils/adt/int.c:1362 utils/adt/int8.c:1460 utils/adt/numeric.c:1351 utils/adt/timestamp.c:5604 utils/adt/timestamp.c:5685
+#: utils/adt/int.c:1362 utils/adt/int8.c:1460 utils/adt/numeric.c:1351 utils/adt/timestamp.c:5607 utils/adt/timestamp.c:5688
 #, c-format
 msgid "step size cannot equal zero"
 msgstr "la taille du pas ne peut pas valoir zéro"
@@ -19232,7 +19269,7 @@ msgstr "l'élément du chemin à la position %d n'est pas un entier : « %s »"
 msgid "levenshtein argument exceeds maximum length of %d characters"
 msgstr "l'argument levenshtein dépasse la longueur maximale de %d caractères"
 
-#: utils/adt/like.c:212 utils/adt/selfuncs.c:5433
+#: utils/adt/like.c:212 utils/adt/selfuncs.c:5462
 #, c-format
 msgid "could not determine which collation to use for ILIKE"
 msgstr "n'a pas pu déterminer le collationnement à utiliser pour ILIKE"
@@ -19242,12 +19279,12 @@ msgstr "n'a pas pu déterminer le collationnement à utiliser pour ILIKE"
 msgid "LIKE pattern must not end with escape character"
 msgstr "le motif LIKE ne se termine pas de caractères d'échappement"
 
-#: utils/adt/like_match.c:292 utils/adt/regexp.c:698
+#: utils/adt/like_match.c:292 utils/adt/regexp.c:702
 #, c-format
 msgid "invalid escape string"
 msgstr "chaîne d'échappement invalide"
 
-#: utils/adt/like_match.c:293 utils/adt/regexp.c:699
+#: utils/adt/like_match.c:293 utils/adt/regexp.c:703
 #, c-format
 msgid "Escape string must be empty or one character."
 msgstr "La chaîne d'échappement doit être vide ou ne contenir qu'un caractère."
@@ -19353,27 +19390,27 @@ msgstr "Pas d'identifiant valide avant « . »."
 msgid "No valid identifier after \".\"."
 msgstr "Pas d'identifiant valide après « . »."
 
-#: utils/adt/nabstime.c:136
+#: utils/adt/nabstime.c:139
 #, c-format
 msgid "invalid time zone name: \"%s\""
 msgstr "nom du fuseau horaire invalide : « %s »"
 
-#: utils/adt/nabstime.c:481 utils/adt/nabstime.c:554
+#: utils/adt/nabstime.c:484 utils/adt/nabstime.c:557
 #, c-format
 msgid "cannot convert abstime \"invalid\" to timestamp"
 msgstr "ne peut pas convertir un abstime « invalid » en timestamp"
 
-#: utils/adt/nabstime.c:781
+#: utils/adt/nabstime.c:784
 #, c-format
 msgid "invalid status in external \"tinterval\" value"
 msgstr "statut invalide dans la valeur externe « tinterval »"
 
-#: utils/adt/nabstime.c:855
+#: utils/adt/nabstime.c:858
 #, c-format
 msgid "cannot convert reltime \"invalid\" to interval"
 msgstr "ne peut pas convertir reltime « invalid » en interval"
 
-#: utils/adt/nabstime.c:1550
+#: utils/adt/nabstime.c:1553
 #, c-format
 msgid "invalid input syntax for type tinterval: \"%s\""
 msgstr "syntaxe en entrée invalide pour le type tinterval : « %s »"
@@ -19431,26 +19468,26 @@ msgstr "n'a pas pu formater la valeur cidr : %m"
 msgid "cannot merge addresses from different families"
 msgstr "ne peut pas assembler les adresses de familles différentes"
 
-#: utils/adt/network.c:1343
+#: utils/adt/network.c:1340
 #, c-format
 msgid "cannot AND inet values of different sizes"
 msgstr ""
 "ne peut pas utiliser l'opérateur AND sur des champs de type inet de tailles\n"
 "différentes"
 
-#: utils/adt/network.c:1375
+#: utils/adt/network.c:1372
 #, c-format
 msgid "cannot OR inet values of different sizes"
 msgstr ""
 "ne peut pas utiliser l'opérateur OR sur des champs de type inet de tailles\n"
 "différentes"
 
-#: utils/adt/network.c:1436 utils/adt/network.c:1512
+#: utils/adt/network.c:1433 utils/adt/network.c:1509
 #, c-format
 msgid "result is out of range"
 msgstr "le résultat est en dehors des limites"
 
-#: utils/adt/network.c:1477
+#: utils/adt/network.c:1474
 #, c-format
 msgid "cannot subtract inet values of different sizes"
 msgstr "ne peut pas soustraire des valeurs inet de tailles différentes"
@@ -19597,7 +19634,7 @@ msgstr "caractère demandé invalide pour l'encodage : %d"
 msgid "null character not permitted"
 msgstr "caractère nul interdit"
 
-#: utils/adt/orderedsetaggs.c:425 utils/adt/orderedsetaggs.c:530 utils/adt/orderedsetaggs.c:669
+#: utils/adt/orderedsetaggs.c:425 utils/adt/orderedsetaggs.c:529 utils/adt/orderedsetaggs.c:667
 #, c-format
 msgid "percentile value %g is not between 0 and 1"
 msgstr "la valeur centile %g n'est pas entre 0 et 1"
@@ -19863,21 +19900,26 @@ msgstr "Trop de virgules."
 msgid "Junk after right parenthesis or bracket."
 msgstr "Problème après la parenthèse droite ou le crochet droit."
 
-#: utils/adt/regexp.c:285 utils/adt/regexp.c:1288 utils/adt/varlena.c:3829
+#: utils/adt/regexp.c:289 utils/adt/regexp.c:1369 utils/adt/varlena.c:3941
 #, c-format
 msgid "regular expression failed: %s"
 msgstr "l'expression rationnelle a échoué : %s"
 
-#: utils/adt/regexp.c:422
+#: utils/adt/regexp.c:426
 #, c-format
 msgid "invalid regexp option: \"%c\""
 msgstr "option invalide de l'expression rationnelle : « %c »"
 
-#: utils/adt/regexp.c:948
+#: utils/adt/regexp.c:959
 #, c-format
 msgid "regexp_split does not support the global option"
 msgstr "regexp_split ne supporte pas l'option globale"
 
+#: utils/adt/regexp.c:1016
+#, c-format
+msgid "too many regular expression matches"
+msgstr "trop de correspondances dans l'expression rationnelle"
+
 #: utils/adt/regproc.c:129 utils/adt/regproc.c:149
 #, c-format
 msgid "more than one function named \"%s\""
@@ -19888,7 +19930,7 @@ msgstr "il existe plus d'une fonction nommée « %s »"
 msgid "more than one operator named %s"
 msgstr "il existe plus d'un opérateur nommé%s"
 
-#: utils/adt/regproc.c:780 utils/adt/regproc.c:821 utils/adt/regproc.c:2007 utils/adt/ruleutils.c:8453 utils/adt/ruleutils.c:8622
+#: utils/adt/regproc.c:780 utils/adt/regproc.c:821 utils/adt/regproc.c:2007 utils/adt/ruleutils.c:8499 utils/adt/ruleutils.c:8668
 #, c-format
 msgid "too many arguments"
 msgstr "trop d'arguments"
@@ -19923,80 +19965,80 @@ msgstr "attendait un nom de type"
 msgid "improper type name"
 msgstr "nom du type invalide"
 
-#: utils/adt/ri_triggers.c:343 utils/adt/ri_triggers.c:2490 utils/adt/ri_triggers.c:3315
+#: utils/adt/ri_triggers.c:342 utils/adt/ri_triggers.c:2489 utils/adt/ri_triggers.c:3260
 #, c-format
 msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
 msgstr ""
 "une instruction insert ou update sur la table « %s » viole la contrainte de clé\n"
 "étrangère « %s »"
 
-#: utils/adt/ri_triggers.c:346 utils/adt/ri_triggers.c:2493
+#: utils/adt/ri_triggers.c:345 utils/adt/ri_triggers.c:2492
 #, c-format
 msgid "MATCH FULL does not allow mixing of null and nonnull key values."
 msgstr "MATCH FULL n'autorise pas le mixage de valeurs clés NULL et non NULL."
 
-#: utils/adt/ri_triggers.c:2732
+#: utils/adt/ri_triggers.c:2677
 #, c-format
 msgid "function \"%s\" must be fired for INSERT"
 msgstr "la fonction « %s » doit être exécutée pour l'instruction INSERT"
 
-#: utils/adt/ri_triggers.c:2738
+#: utils/adt/ri_triggers.c:2683
 #, c-format
 msgid "function \"%s\" must be fired for UPDATE"
 msgstr "la fonction « %s » doit être exécutée pour l'instruction UPDATE"
 
-#: utils/adt/ri_triggers.c:2744
+#: utils/adt/ri_triggers.c:2689
 #, c-format
 msgid "function \"%s\" must be fired for DELETE"
 msgstr "la fonction « %s » doit être exécutée pour l'instruction DELETE"
 
-#: utils/adt/ri_triggers.c:2767
+#: utils/adt/ri_triggers.c:2712
 #, c-format
 msgid "no pg_constraint entry for trigger \"%s\" on table \"%s\""
 msgstr "aucune entrée pg_constraint pour le trigger « %s » sur la table « %s »"
 
-#: utils/adt/ri_triggers.c:2769
+#: utils/adt/ri_triggers.c:2714
 #, c-format
 msgid "Remove this referential integrity trigger and its mates, then do ALTER TABLE ADD CONSTRAINT."
 msgstr ""
 "Supprimez ce trigger sur une intégrité référentielle et ses enfants,\n"
 "puis faites un ALTER TABLE ADD CONSTRAINT."
 
-#: utils/adt/ri_triggers.c:3225
+#: utils/adt/ri_triggers.c:3170
 #, c-format
 msgid "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave unexpected result"
 msgstr ""
 "la requête d'intégrité référentielle sur « %s » à partir de la contrainte « %s »\n"
 "sur « %s » donne des résultats inattendus"
 
-#: utils/adt/ri_triggers.c:3229
+#: utils/adt/ri_triggers.c:3174
 #, c-format
 msgid "This is most likely due to a rule having rewritten the query."
 msgstr "Ceci est certainement dû à une règle qui a ré-écrit la requête."
 
-#: utils/adt/ri_triggers.c:3319
+#: utils/adt/ri_triggers.c:3264
 #, c-format
 msgid "Key (%s)=(%s) is not present in table \"%s\"."
 msgstr "La clé (%s)=(%s) n'est pas présente dans la table « %s »."
 
-#: utils/adt/ri_triggers.c:3322
+#: utils/adt/ri_triggers.c:3267
 #, c-format
 msgid "Key is not present in table \"%s\"."
 msgstr "La clé n'est pas présente dans la table « %s »."
 
-#: utils/adt/ri_triggers.c:3328
+#: utils/adt/ri_triggers.c:3273
 #, c-format
 msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\""
 msgstr ""
 "UPDATE ou DELETE sur la table « %s » viole la contrainte de clé étrangère\n"
 "« %s » de la table « %s »"
 
-#: utils/adt/ri_triggers.c:3333
+#: utils/adt/ri_triggers.c:3278
 #, c-format
 msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
 msgstr "La clé (%s)=(%s) est toujours référencée à partir de la table « %s »."
 
-#: utils/adt/ri_triggers.c:3336
+#: utils/adt/ri_triggers.c:3281
 #, c-format
 msgid "Key is still referenced from table \"%s\"."
 msgstr "La clé est toujours référencée à partir de la table « %s »."
@@ -20060,17 +20102,17 @@ msgstr ""
 "ne peut pas comparer les types d'enregistrement avec des numéros différents\n"
 "des colonnes"
 
-#: utils/adt/ruleutils.c:4297
+#: utils/adt/ruleutils.c:4340
 #, c-format
 msgid "rule \"%s\" has unsupported event type %d"
 msgstr "la règle « %s » a un type d'événement %d non supporté"
 
-#: utils/adt/selfuncs.c:5418
+#: utils/adt/selfuncs.c:5447
 #, c-format
 msgid "case insensitive matching not supported on type bytea"
 msgstr "la recherche insensible à la casse n'est pas supportée avec le type bytea"
 
-#: utils/adt/selfuncs.c:5521
+#: utils/adt/selfuncs.c:5550
 #, c-format
 msgid "regular-expression matching not supported on type bytea"
 msgstr "la recherche par expression rationnelle n'est pas supportée sur le type bytea"
@@ -20135,8 +20177,8 @@ msgstr "timestamp en dehors de limites : %d-%02d-%02d %d:%02d:%02g"
 msgid "timestamp out of range: \"%g\""
 msgstr "timestamp en dehors de limites : « %g »"
 
-#: utils/adt/timestamp.c:985 utils/adt/timestamp.c:1609 utils/adt/timestamp.c:2122 utils/adt/timestamp.c:3316 utils/adt/timestamp.c:3321 utils/adt/timestamp.c:3326 utils/adt/timestamp.c:3376 utils/adt/timestamp.c:3383 utils/adt/timestamp.c:3390 utils/adt/timestamp.c:3410 utils/adt/timestamp.c:3417 utils/adt/timestamp.c:3424 utils/adt/timestamp.c:3454 utils/adt/timestamp.c:3462 utils/adt/timestamp.c:3507 utils/adt/timestamp.c:3847
-#: utils/adt/timestamp.c:3976 utils/adt/timestamp.c:4367
+#: utils/adt/timestamp.c:985 utils/adt/timestamp.c:1609 utils/adt/timestamp.c:2122 utils/adt/timestamp.c:3319 utils/adt/timestamp.c:3324 utils/adt/timestamp.c:3329 utils/adt/timestamp.c:3379 utils/adt/timestamp.c:3386 utils/adt/timestamp.c:3393 utils/adt/timestamp.c:3413 utils/adt/timestamp.c:3420 utils/adt/timestamp.c:3427 utils/adt/timestamp.c:3457 utils/adt/timestamp.c:3465 utils/adt/timestamp.c:3510 utils/adt/timestamp.c:3850
+#: utils/adt/timestamp.c:3979 utils/adt/timestamp.c:4370
 #, c-format
 msgid "interval out of range"
 msgstr "intervalle en dehors des limites"
@@ -20161,46 +20203,46 @@ msgstr "La précision de l'intervalle INTERVAL(%d) doit être réduit au maximum
 msgid "interval(%d) precision must be between %d and %d"
 msgstr "La précision de interval(%d) doit être comprise entre %d et %d"
 
-#: utils/adt/timestamp.c:2893
+#: utils/adt/timestamp.c:2896
 #, c-format
 msgid "cannot subtract infinite timestamps"
 msgstr "ne peut pas soustraire les valeurs timestamps infinies"
 
-#: utils/adt/timestamp.c:4102 utils/adt/timestamp.c:4627 utils/adt/timestamp.c:4811 utils/adt/timestamp.c:4836
+#: utils/adt/timestamp.c:4105 utils/adt/timestamp.c:4630 utils/adt/timestamp.c:4814 utils/adt/timestamp.c:4839
 #, c-format
 msgid "timestamp units \"%s\" not supported"
 msgstr "les unités timestamp « %s » ne sont pas supportées"
 
-#: utils/adt/timestamp.c:4116 utils/adt/timestamp.c:4581 utils/adt/timestamp.c:4846
+#: utils/adt/timestamp.c:4119 utils/adt/timestamp.c:4584 utils/adt/timestamp.c:4849
 #, c-format
 msgid "timestamp units \"%s\" not recognized"
 msgstr "les unité « %s » ne sont pas reconnues pour le type timestamp"
 
-#: utils/adt/timestamp.c:4256 utils/adt/timestamp.c:4622 utils/adt/timestamp.c:5033 utils/adt/timestamp.c:5059
+#: utils/adt/timestamp.c:4259 utils/adt/timestamp.c:4625 utils/adt/timestamp.c:5036 utils/adt/timestamp.c:5062
 #, c-format
 msgid "timestamp with time zone units \"%s\" not supported"
 msgstr ""
 "les unités « %s » ne sont pas supportées pour le type  « timestamp with time\n"
 "zone »"
 
-#: utils/adt/timestamp.c:4273 utils/adt/timestamp.c:4576 utils/adt/timestamp.c:5068
+#: utils/adt/timestamp.c:4276 utils/adt/timestamp.c:4579 utils/adt/timestamp.c:5071
 #, c-format
 msgid "timestamp with time zone units \"%s\" not recognized"
 msgstr ""
 "Les unités « %s » ne sont pas reconnues pour le type  « timestamp with time\n"
 "zone »"
 
-#: utils/adt/timestamp.c:4354
+#: utils/adt/timestamp.c:4357
 #, c-format
 msgid "interval units \"%s\" not supported because months usually have fractional weeks"
 msgstr "unités d'intervalle « %s » non supporté car les mois ont généralement des semaines fractionnaires"
 
-#: utils/adt/timestamp.c:4360 utils/adt/timestamp.c:5174
+#: utils/adt/timestamp.c:4363 utils/adt/timestamp.c:5177
 #, c-format
 msgid "interval units \"%s\" not supported"
 msgstr "Les unités « %s » ne sont pas supportées pour le type interval"
 
-#: utils/adt/timestamp.c:4376 utils/adt/timestamp.c:5201
+#: utils/adt/timestamp.c:4379 utils/adt/timestamp.c:5204
 #, c-format
 msgid "interval units \"%s\" not recognized"
 msgstr "Les unités « %s » ne sont pas reconnues pour le type interval"
@@ -20504,47 +20546,47 @@ msgstr "n'a pas pu comparer les chaînes unicode : %m"
 msgid "index %d out of valid range, 0..%d"
 msgstr "index %d en dehors des limites valides, 0..%d"
 
-#: utils/adt/varlena.c:3925
+#: utils/adt/varlena.c:4037
 #, c-format
 msgid "field position must be greater than zero"
 msgstr "la position du champ doit être plus grand que zéro"
 
-#: utils/adt/varlena.c:4804
+#: utils/adt/varlena.c:4916
 #, c-format
 msgid "unterminated format() type specifier"
 msgstr "spécificateur de type pour format() non terminé"
 
-#: utils/adt/varlena.c:4805 utils/adt/varlena.c:4939 utils/adt/varlena.c:5060
+#: utils/adt/varlena.c:4917 utils/adt/varlena.c:5051 utils/adt/varlena.c:5172
 #, c-format
 msgid "For a single \"%%\" use \"%%%%\"."
 msgstr "Pour un unique \"%%\" utilisez \"%%%%\"."
 
-#: utils/adt/varlena.c:4937 utils/adt/varlena.c:5058
+#: utils/adt/varlena.c:5049 utils/adt/varlena.c:5170
 #, c-format
 msgid "unrecognized format() type specifier \"%c\""
 msgstr "spécificateur de type « %c » pour format() non reconnu"
 
-#: utils/adt/varlena.c:4950 utils/adt/varlena.c:5007
+#: utils/adt/varlena.c:5062 utils/adt/varlena.c:5119
 #, c-format
 msgid "too few arguments for format()"
 msgstr "trop peu d'arguments pour format()"
 
-#: utils/adt/varlena.c:5102 utils/adt/varlena.c:5285
+#: utils/adt/varlena.c:5214 utils/adt/varlena.c:5397
 #, c-format
 msgid "number is out of range"
 msgstr "le nombre est en dehors des limites"
 
-#: utils/adt/varlena.c:5166 utils/adt/varlena.c:5194
+#: utils/adt/varlena.c:5278 utils/adt/varlena.c:5306
 #, c-format
 msgid "format specifies argument 0, but arguments are numbered from 1"
 msgstr "le format indique l'argument 0 mais les arguments sont numérotés à partir de 1"
 
-#: utils/adt/varlena.c:5187
+#: utils/adt/varlena.c:5299
 #, c-format
 msgid "width argument position must be ended by \"$\""
 msgstr "la position de l'argument width doit se terminer par « $ »"
 
-#: utils/adt/varlena.c:5232
+#: utils/adt/varlena.c:5344
 #, c-format
 msgid "null values cannot be formatted as an SQL identifier"
 msgstr "les valeurs NULL ne peuvent pas être formatés comme un identifiant SQL"
@@ -20725,17 +20767,17 @@ msgstr "aucune fonction en sortie disponible pour le type %s"
 msgid "cached plan must not change result type"
 msgstr "le plan en cache ne doit pas modifier le type en résultat"
 
-#: utils/cache/relcache.c:5226
+#: utils/cache/relcache.c:5298
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier d'initialisation relation-cache « %s » : %m"
 
-#: utils/cache/relcache.c:5228
+#: utils/cache/relcache.c:5300
 #, c-format
 msgid "Continuing anyway, but there's something wrong."
 msgstr "Continue malgré tout, mais quelque chose s'est mal passé."
 
-#: utils/cache/relcache.c:5502
+#: utils/cache/relcache.c:5666
 #, c-format
 msgid "could not remove cache file \"%s\": %m"
 msgstr "n'a pas pu supprimer le fichier cache « %s » : %m"
@@ -21043,105 +21085,105 @@ msgstr ""
 msgid "could not change directory to \"%s\": %m"
 msgstr "n'a pas pu modifier le répertoire par « %s » : %m"
 
-#: utils/init/miscinit.c:449 utils/misc/guc.c:6016
+#: utils/init/miscinit.c:457 utils/misc/guc.c:6016
 #, c-format
 msgid "cannot set parameter \"%s\" within security-restricted operation"
 msgstr ""
 "ne peut pas configurer le paramètre « %s » à l'intérieur d'une fonction\n"
 "restreinte pour sécurité"
 
-#: utils/init/miscinit.c:510
+#: utils/init/miscinit.c:518
 #, c-format
 msgid "role with OID %u does not exist"
 msgstr "le rôle d'OID %u n'existe pas"
 
-#: utils/init/miscinit.c:540
+#: utils/init/miscinit.c:548
 #, c-format
 msgid "role \"%s\" is not permitted to log in"
 msgstr "le rôle « %s » n'est pas autorisé à se connecter"
 
-#: utils/init/miscinit.c:558
+#: utils/init/miscinit.c:566
 #, c-format
 msgid "too many connections for role \"%s\""
 msgstr "trop de connexions pour le rôle « %s »"
 
-#: utils/init/miscinit.c:618
+#: utils/init/miscinit.c:626
 #, c-format
 msgid "permission denied to set session authorization"
 msgstr "droit refusé pour initialiser une autorisation de session"
 
-#: utils/init/miscinit.c:701
+#: utils/init/miscinit.c:709
 #, c-format
 msgid "invalid role OID: %u"
 msgstr "OID du rôle invalide : %u"
 
-#: utils/init/miscinit.c:755
+#: utils/init/miscinit.c:763
 #, c-format
 msgid "database system is shut down"
 msgstr "le système de base de données est arrêté"
 
-#: utils/init/miscinit.c:842
+#: utils/init/miscinit.c:850
 #, c-format
 msgid "could not create lock file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier verrou « %s » : %m"
 
-#: utils/init/miscinit.c:856
+#: utils/init/miscinit.c:864
 #, c-format
 msgid "could not open lock file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier verrou « %s » : %m"
 
-#: utils/init/miscinit.c:862
+#: utils/init/miscinit.c:870
 #, c-format
 msgid "could not read lock file \"%s\": %m"
 msgstr "n'a pas pu lire le fichier verrou « %s » : %m"
 
-#: utils/init/miscinit.c:870
+#: utils/init/miscinit.c:878
 #, c-format
 msgid "lock file \"%s\" is empty"
 msgstr "le fichier verrou « %s » est vide"
 
-#: utils/init/miscinit.c:871
+#: utils/init/miscinit.c:879
 #, c-format
 msgid "Either another server is starting, or the lock file is the remnant of a previous server startup crash."
 msgstr "Soit un autre serveur est en cours de démarrage, soit le fichier verrou est un reste d'un précédent crash au démarrage du serveur"
 
-#: utils/init/miscinit.c:918
+#: utils/init/miscinit.c:926
 #, c-format
 msgid "lock file \"%s\" already exists"
 msgstr "le fichier verrou « %s » existe déjà"
 
-#: utils/init/miscinit.c:922
+#: utils/init/miscinit.c:930
 #, c-format
 msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
 msgstr ""
 "Un autre postgres (de PID %d) est-il déjà lancé avec comme répertoire de\n"
 "données « %s » ?"
 
-#: utils/init/miscinit.c:924
+#: utils/init/miscinit.c:932
 #, c-format
 msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
 msgstr ""
 "Un autre postmaster (de PID %d) est-il déjà lancé avec comme répertoire de\n"
 "données « %s » ?"
 
-#: utils/init/miscinit.c:927
+#: utils/init/miscinit.c:935
 #, c-format
 msgid "Is another postgres (PID %d) using socket file \"%s\"?"
 msgstr "Un autre postgres (de PID %d) est-il déjà lancé en utilisant la socket « %s » ?"
 
-#: utils/init/miscinit.c:929
+#: utils/init/miscinit.c:937
 #, c-format
 msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
 msgstr "Un autre postmaster (de PID %d) est-il déjà lancé en utilisant la socket « %s » ?"
 
-#: utils/init/miscinit.c:965
+#: utils/init/miscinit.c:973
 #, c-format
 msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
 msgstr ""
 "le bloc de mémoire partagé pré-existant (clé %lu, ID %lu) est en cours\n"
 "d'utilisation"
 
-#: utils/init/miscinit.c:968
+#: utils/init/miscinit.c:976
 #, c-format
 msgid "If you're sure there are no old server processes still running, remove the shared memory block or just delete the file \"%s\"."
 msgstr ""
@@ -21149,66 +21191,66 @@ msgstr ""
 "d'exécution, supprimez le bloc de mémoire partagée\n"
 "ou supprimez simplement le fichier « %s »."
 
-#: utils/init/miscinit.c:984
+#: utils/init/miscinit.c:992
 #, c-format
 msgid "could not remove old lock file \"%s\": %m"
 msgstr "n'a pas pu supprimer le vieux fichier verrou « %s » : %m"
 
-#: utils/init/miscinit.c:986
+#: utils/init/miscinit.c:994
 #, c-format
 msgid "The file seems accidentally left over, but it could not be removed. Please remove the file by hand and try again."
 msgstr ""
 "Le fichier semble avoir été oublié accidentellement mais il ne peut pas être\n"
 "supprimé. Merci de supprimer ce fichier manuellement et de ré-essayer."
 
-#: utils/init/miscinit.c:1022 utils/init/miscinit.c:1033 utils/init/miscinit.c:1043
+#: utils/init/miscinit.c:1030 utils/init/miscinit.c:1041 utils/init/miscinit.c:1051
 #, c-format
 msgid "could not write lock file \"%s\": %m"
 msgstr "n'a pas pu écrire le fichier verrou « %s » : %m"
 
-#: utils/init/miscinit.c:1172 utils/init/miscinit.c:1301 utils/misc/guc.c:8818
+#: utils/init/miscinit.c:1180 utils/init/miscinit.c:1309 utils/misc/guc.c:8842
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "n'a pas pu lire à partir du fichier « %s » : %m"
 
-#: utils/init/miscinit.c:1291
+#: utils/init/miscinit.c:1299
 #, c-format
 msgid "could not open file \"%s\": %m; continuing anyway"
 msgstr "n'a pas pu ouvrir le fichier « %s » : %m ; poursuite du traitement"
 
-#: utils/init/miscinit.c:1314
+#: utils/init/miscinit.c:1322
 #, c-format
 msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld"
 msgstr "le fichier de verrou « %s » contient le mauvais PID : %ld au lieu de %ld"
 
-#: utils/init/miscinit.c:1356 utils/init/miscinit.c:1369
+#: utils/init/miscinit.c:1364 utils/init/miscinit.c:1377
 #, c-format
 msgid "\"%s\" is not a valid data directory"
 msgstr "« %s » n'est pas un répertoire de données valide"
 
-#: utils/init/miscinit.c:1358
+#: utils/init/miscinit.c:1366
 #, c-format
 msgid "File \"%s\" is missing."
 msgstr "le fichier « %s » est manquant."
 
-#: utils/init/miscinit.c:1371
+#: utils/init/miscinit.c:1379
 #, c-format
 msgid "File \"%s\" does not contain valid data."
 msgstr "le fichier « %s » ne contient aucune données valides."
 
-#: utils/init/miscinit.c:1373
+#: utils/init/miscinit.c:1381
 #, c-format
 msgid "You might need to initdb."
 msgstr "Vous pouvez avoir besoin d'exécuter initdb."
 
-#: utils/init/miscinit.c:1381
+#: utils/init/miscinit.c:1389
 #, c-format
 msgid "The data directory was initialized by PostgreSQL version %ld.%ld, which is not compatible with this version %s."
 msgstr ""
 "Le répertoire des données a été initialisé avec PostgreSQL version %ld.%ld,\n"
 "qui est non compatible avec cette version %s."
 
-#: utils/init/miscinit.c:1452
+#: utils/init/miscinit.c:1460
 #, c-format
 msgid "loaded library \"%s\""
 msgstr "bibliothèque « %s » chargée"
@@ -23186,17 +23228,17 @@ msgstr "le paramètre « %s » requiert une valeur numérique"
 msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
 msgstr "%g est en dehors des limites valides pour le paramètre « %s » (%g .. %g)"
 
-#: utils/misc/guc.c:5851 utils/misc/guc.c:7194
+#: utils/misc/guc.c:5851 utils/misc/guc.c:7218
 #, c-format
 msgid "cannot set parameters during a parallel operation"
 msgstr "ne peut pas configurer les paramètres lors d'une opération parallèle"
 
-#: utils/misc/guc.c:5858 utils/misc/guc.c:6609 utils/misc/guc.c:6661 utils/misc/guc.c:7022 utils/misc/guc.c:7782 utils/misc/guc.c:7950 utils/misc/guc.c:9618
+#: utils/misc/guc.c:5858 utils/misc/guc.c:6609 utils/misc/guc.c:6661 utils/misc/guc.c:6710 utils/misc/guc.c:7046 utils/misc/guc.c:7806 utils/misc/guc.c:7974 utils/misc/guc.c:9644
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "paramètre de configuration « %s » non reconnu"
 
-#: utils/misc/guc.c:5873 utils/misc/guc.c:7034
+#: utils/misc/guc.c:5873 utils/misc/guc.c:7058
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "le paramètre « %s » ne peut pas être changé"
@@ -23206,7 +23248,7 @@ msgstr "le paramètre « %s » ne peut pas être changé"
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "le paramètre « %s » ne peut pas être modifié maintenant"
 
-#: utils/misc/guc.c:5924 utils/misc/guc.c:5970 utils/misc/guc.c:9634
+#: utils/misc/guc.c:5924 utils/misc/guc.c:5970 utils/misc/guc.c:9660
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "droit refusé pour initialiser le paramètre « %s »"
@@ -23223,87 +23265,87 @@ msgstr ""
 "ne peut pas configurer le paramètre « %s » à l'intérieur d'une fonction\n"
 "SECURITY DEFINER"
 
-#: utils/misc/guc.c:6617 utils/misc/guc.c:6665 utils/misc/guc.c:7956
+#: utils/misc/guc.c:6617 utils/misc/guc.c:6665 utils/misc/guc.c:7980
 #, c-format
 msgid "must be superuser to examine \"%s\""
 msgstr "doit être super-utilisateur pour examiner « %s »"
 
-#: utils/misc/guc.c:6731
+#: utils/misc/guc.c:6755
 #, c-format
 msgid "SET %s takes only one argument"
 msgstr "SET %s prend un seul argument"
 
-#: utils/misc/guc.c:6982
+#: utils/misc/guc.c:7006
 #, c-format
 msgid "must be superuser to execute ALTER SYSTEM command"
 msgstr "doit être super-utilisateur pour exécuter la commande ALTER SYSTEM"
 
-#: utils/misc/guc.c:7067
+#: utils/misc/guc.c:7091
 #, c-format
 msgid "parameter value for ALTER SYSTEM must not contain a newline"
 msgstr "la valeur du paramètre pour ALTER SYSTEM ne doit pas contenir de caractère de retour à la ligne"
 
-#: utils/misc/guc.c:7112
+#: utils/misc/guc.c:7136
 #, c-format
 msgid "could not parse contents of file \"%s\""
 msgstr "n'a pas pu analyser le contenu du fichier « %s »"
 
-#: utils/misc/guc.c:7270
+#: utils/misc/guc.c:7294
 #, c-format
 msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
 msgstr "SET LOCAL TRANSACTION SNAPSHOT n'est pas implémenté"
 
-#: utils/misc/guc.c:7355
+#: utils/misc/guc.c:7379
 #, c-format
 msgid "SET requires parameter name"
 msgstr "SET requiert le nom du paramètre"
 
-#: utils/misc/guc.c:7479
+#: utils/misc/guc.c:7503
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "tentative de redéfinition du paramètre « %s »"
 
-#: utils/misc/guc.c:9251
+#: utils/misc/guc.c:9277
 #, c-format
 msgid "parameter \"%s\" could not be set"
 msgstr "le paramètre « %s » n'a pas pu être configuré"
 
-#: utils/misc/guc.c:9338
+#: utils/misc/guc.c:9364
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "n'a pas pu analyser la configuration du paramètre « %s »"
 
-#: utils/misc/guc.c:9696 utils/misc/guc.c:9730
+#: utils/misc/guc.c:9722 utils/misc/guc.c:9756
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "valeur invalide pour le paramètre « %s » : %d"
 
-#: utils/misc/guc.c:9764
+#: utils/misc/guc.c:9790
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "valeur invalide pour le paramètre « %s » : %g"
 
-#: utils/misc/guc.c:9954
+#: utils/misc/guc.c:9980
 #, c-format
 msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session."
 msgstr "« temp_buffers » ne peut pas être modifié après que des tables temporaires aient été utilisées dans la session."
 
-#: utils/misc/guc.c:9966
+#: utils/misc/guc.c:99