Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Translation updates
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 17 Aug 2011 11:02:24 +0000 (14:02 +0300)
committerPeter Eisentraut <peter_e@gmx.net>
Wed, 17 Aug 2011 11:07:46 +0000 (14:07 +0300)
34 files changed:
src/backend/po/de.po
src/backend/po/fr.po
src/backend/po/ja.po
src/bin/initdb/po/fr.po
src/bin/initdb/po/ja.po
src/bin/pg_basebackup/nls.mk
src/bin/pg_basebackup/po/de.po
src/bin/pg_basebackup/po/es.po
src/bin/pg_basebackup/po/fr.po [new file with mode: 0644]
src/bin/pg_basebackup/po/ja.po [new file with mode: 0644]
src/bin/pg_ctl/po/de.po
src/bin/pg_ctl/po/es.po
src/bin/pg_ctl/po/fr.po
src/bin/pg_ctl/po/ja.po
src/bin/pg_dump/po/fr.po
src/bin/pg_dump/po/ja.po
src/bin/psql/po/de.po
src/bin/psql/po/fr.po
src/bin/psql/po/ja.po
src/bin/scripts/po/de.po
src/interfaces/libpq/po/de.po
src/interfaces/libpq/po/es.po
src/interfaces/libpq/po/fr.po
src/interfaces/libpq/po/ja.po
src/interfaces/libpq/po/pt_BR.po
src/pl/plperl/po/fr.po
src/pl/plperl/po/ja.po
src/pl/plperl/po/pt_BR.po
src/pl/plpgsql/src/nls.mk
src/pl/plpgsql/src/po/fr.po
src/pl/plpgsql/src/po/ja.po
src/pl/plpgsql/src/po/pl.po [new file with mode: 0644]
src/pl/plpython/po/fr.po
src/pl/plpython/po/ja.po

index 86150ae8eb4a58585cf8d829164f0e87b48c87d5..c8cadce00e2bf3489885e09c138183aa43b8b63a 100644 (file)
@@ -1,7 +1,7 @@
 # German message translation file for PostgreSQL server
 # Peter Eisentraut <peter_e@gmx.net>, 2001 - 2011.
 #
-# pgtranslation Id: postgres.po,v 1.94 2011/05/23 18:21:57 petere Exp $
+# pgtranslation Id: postgres.po,v 1.106 2011/08/17 07:40:20 petere Exp $
 #
 # Use these quotes: »%s«
 #
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 9.1\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2011-05-23 02:43+0000\n"
-"PO-Revision-Date: 2011-05-23 20:42+0300\n"
+"POT-Creation-Date: 2011-08-16 20:57+0000\n"
+"PO-Revision-Date: 2011-08-17 10:29+0300\n"
 "Last-Translator: Peter Eisentraut <peter_e@gmx.net>\n"
 "Language-Team: German <peter_e@gmx.net>\n"
 "Language: de\n"
@@ -19,316 +19,210 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: main/main.c:237
+#: nodes/nodeFuncs.c:114 nodes/nodeFuncs.c:140 parser/parse_coerce.c:1645
+#: parser/parse_coerce.c:1662 parser/parse_coerce.c:1724
+#: parser/parse_expr.c:1633 parser/parse_func.c:367 parser/parse_oper.c:948
 #, c-format
-msgid "%s: setsysinfo failed: %s\n"
-msgstr "%s: setsysinfo fehlgeschlagen: %s\n"
+msgid "could not find array type for data type %s"
+msgstr "konnte Arraytyp für Datentyp %s nicht finden"
 
-#: main/main.c:259
-#, c-format
-msgid "%s: WSAStartup failed: %d\n"
-msgstr "%s: WSAStartup fehlgeschlagen: %d\n"
+#: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:615
+msgid "multiple DictFile parameters"
+msgstr "mehrere DictFile-Parameter"
 
-#: main/main.c:278
-#, c-format
-msgid ""
-"%s is the PostgreSQL server.\n"
-"\n"
-msgstr ""
-"%s ist der PostgreSQL-Server.\n"
-"\n"
+#: tsearch/dict_ispell.c:64
+msgid "multiple AffFile parameters"
+msgstr "mehrere AffFile-Parameter"
 
-#: main/main.c:279
-#, c-format
-msgid ""
-"Usage:\n"
-"  %s [OPTION]...\n"
-"\n"
-msgstr ""
-"Aufruf:\n"
-"  %s [OPTION]...\n"
-"\n"
+#: tsearch/dict_ispell.c:75 tsearch/dict_simple.c:50
+#: snowball/dict_snowball.c:206
+msgid "multiple StopWords parameters"
+msgstr "mehrere »StopWords«-Parameter"
 
-#: main/main.c:280
+#: tsearch/dict_ispell.c:83
 #, c-format
-msgid "Options:\n"
-msgstr "Optionen:\n"
+msgid "unrecognized Ispell parameter: \"%s\""
+msgstr "unbekannter Ispell-Parameter: »%s«"
 
-#: main/main.c:282
-#, c-format
-msgid "  -A 1|0          enable/disable run-time assert checking\n"
-msgstr "  -A 1|0          Assert-Prüfungen ein-/ausschalten\n"
+#: tsearch/dict_ispell.c:97
+msgid "missing AffFile parameter"
+msgstr "Parameter »AffFile« fehlt"
 
-#: main/main.c:284
-#, c-format
-msgid "  -B NBUFFERS     number of shared buffers\n"
-msgstr "  -B ZAHL         Anzahl der geteilten Puffer\n"
+#: tsearch/dict_ispell.c:103 tsearch/dict_thesaurus.c:639
+msgid "missing DictFile parameter"
+msgstr "Parameter »DictFile« fehlt"
 
-#: main/main.c:285
-#, c-format
-msgid "  -c NAME=VALUE   set run-time parameter\n"
-msgstr "  -c NAME=WERT    setze Konfigurationsparameter\n"
+#: tsearch/dict_simple.c:59
+msgid "multiple Accept parameters"
+msgstr "mehrere »Accept«-Parameter"
 
-#: main/main.c:286
+#: tsearch/dict_simple.c:67
 #, c-format
-msgid "  -d 1-5          debugging level\n"
-msgstr "  -d 1-5          Debug-Level\n"
+msgid "unrecognized simple dictionary parameter: \"%s\""
+msgstr "unbekannter Parameter für das einfache Wörterbuch: »%s«"
 
-#: main/main.c:287
+#: tsearch/dict_synonym.c:119
 #, c-format
-msgid "  -D DATADIR      database directory\n"
-msgstr "  -D VERZEICHNIS  Datenbankverzeichnis\n"
+msgid "unrecognized synonym parameter: \"%s\""
+msgstr "unbekannter Synonymparameter: »%s«"
 
-#: main/main.c:288
-#, c-format
-msgid "  -e              use European date input format (DMY)\n"
-msgstr "  -e              verwende europäisches Datumseingabeformat (DMY)\n"
+#: tsearch/dict_synonym.c:126
+msgid "missing Synonyms parameter"
+msgstr "Parameter »Synonyms« fehlt"
 
-#: main/main.c:289
+#: tsearch/dict_synonym.c:133
 #, c-format
-msgid "  -F              turn fsync off\n"
-msgstr "  -F              »fsync« ausschalten\n"
+msgid "could not open synonym file \"%s\": %m"
+msgstr "konnte Synonymdatei »%s« nicht öffnen: %m"
 
-#: main/main.c:290
+#: tsearch/dict_thesaurus.c:180
 #, c-format
-msgid "  -h HOSTNAME     host name or IP address to listen on\n"
-msgstr "  -h HOSTNAME     horche auf Hostname oder IP-Adresse\n"
+msgid "could not open thesaurus file \"%s\": %m"
+msgstr "konnte Thesaurusdatei »%s« nicht öffnen: %m"
 
-#: main/main.c:291
-#, c-format
-msgid "  -i              enable TCP/IP connections\n"
-msgstr "  -i              ermögliche TCP/IP-Verbindungen\n"
+#: tsearch/dict_thesaurus.c:213
+msgid "unexpected delimiter"
+msgstr "unerwartetes Trennzeichen"
 
-#: main/main.c:292
-#, c-format
-msgid "  -k DIRECTORY    Unix-domain socket location\n"
-msgstr "  -k VERZEICHNIS  Ort der Unix-Domain-Socket\n"
+#: tsearch/dict_thesaurus.c:263 tsearch/dict_thesaurus.c:279
+msgid "unexpected end of line or lexeme"
+msgstr "unerwartetes Ende der Zeile oder des Lexems"
 
-#: main/main.c:294
-#, c-format
-msgid "  -l              enable SSL connections\n"
-msgstr "  -l              ermögliche SSL-Verbindungen\n"
+#: tsearch/dict_thesaurus.c:288
+msgid "unexpected end of line"
+msgstr "unerwartetes Ende der Zeile"
 
-#: main/main.c:296
+#: tsearch/dict_thesaurus.c:412
 #, c-format
-msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
-msgstr "  -N ZAHL         Anzahl der erlaubten Verbindugen\n"
+msgid ""
+"thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgstr ""
+"Thesaurus-Beispielwort »%s« wird nicht vom Unterwörterbuch erkannt (Regel %d)"
 
-#: main/main.c:297
+#: tsearch/dict_thesaurus.c:418
 #, c-format
-msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process (obsolete)\n"
+msgid "thesaurus sample word \"%s\" is a stop word (rule %d)"
+msgstr "Thesaurus-Beispielwort »%s« ist ein Stoppwort (Regel %d)"
+
+#: tsearch/dict_thesaurus.c:421
+msgid "Use \"?\" to represent a stop word within a sample phrase."
 msgstr ""
-"  -o OPTIONEN     »OPTIONEN« an jeden Serverprozess weiterreichen (obsolet)\n"
+"Verwenden Sie »?«, um ein Stoppwort in einem Beispielsatz darzustellen."
 
-#: main/main.c:298
+#: tsearch/dict_thesaurus.c:567
 #, c-format
-msgid "  -p PORT         port number to listen on\n"
-msgstr "  -p PORT         auf dieser Portnummer horchen\n"
+msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
+msgstr "Thesaurus-Ersatzwort »%s« ist ein Stoppwort (Regel %d)"
 
-#: main/main.c:299
+#: tsearch/dict_thesaurus.c:574
 #, c-format
-msgid "  -s              show statistics after each query\n"
-msgstr "  -s              zeige Statistiken nach jeder Anfrage\n"
+msgid ""
+"thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgstr ""
+"Thesaurus-Ersatzwort »%s« wird nicht vom Unterwörterbuch erkannt (Regel %d)"
 
-#: main/main.c:300
+#: tsearch/dict_thesaurus.c:586
 #, c-format
-msgid "  -S WORK-MEM     set amount of memory for sorts (in kB)\n"
-msgstr "  -S ZAHL         setze Speicher für Sortiervorgänge (in kB)\n"
+msgid "thesaurus substitute phrase is empty (rule %d)"
+msgstr "Thesaurus-Ersatzausdruck ist leer (Regel %d)"
 
-#: main/main.c:301
-#, c-format
-msgid "  --NAME=VALUE    set run-time parameter\n"
-msgstr "  --NAME=WERT     setze Konfigurationsparameter\n"
+#: tsearch/dict_thesaurus.c:624
+msgid "multiple Dictionary parameters"
+msgstr "mehrere »Dictionary«-Parameter"
 
-#: main/main.c:302
+#: tsearch/dict_thesaurus.c:631
 #, c-format
-msgid "  --describe-config  describe configuration parameters, then exit\n"
-msgstr "  --describe-config  zeige Konfigurationsparameter und beende\n"
+msgid "unrecognized Thesaurus parameter: \"%s\""
+msgstr "unbekannter Thesaurus-Parameter: »%s«"
 
-#: main/main.c:303
-#, c-format
-msgid "  --help          show this help, then exit\n"
-msgstr "  --help          diese Hilfe anzeigen, dann beenden\n"
+#: tsearch/dict_thesaurus.c:643
+msgid "missing Dictionary parameter"
+msgstr "Parameter »Dictionary« fehlt"
 
-#: main/main.c:304
+#: tsearch/spell.c:276
 #, c-format
-msgid "  --version       output version information, then exit\n"
-msgstr "  --version       Versionsinformationen anzeigen, dann beenden\n"
+msgid "could not open dictionary file \"%s\": %m"
+msgstr "konnte Wörterbuchdatei »%s« nicht öffnen: %m"
 
-#: main/main.c:306
+#: tsearch/spell.c:439 utils/adt/regexp.c:195
 #, c-format
-msgid ""
-"\n"
-"Developer options:\n"
-msgstr ""
-"\n"
-"Entwickleroptionen:\n"
+msgid "invalid regular expression: %s"
+msgstr "ungültiger regulärer Ausdruck: %s"
 
-#: main/main.c:307
-#, c-format
-msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
-msgstr "  -f s|i|n|m|h    verbiete Verwendung einiger Plantypen\n"
+#: tsearch/spell.c:518 tsearch/spell.c:535 tsearch/spell.c:552
+#: tsearch/spell.c:569 tsearch/spell.c:591 gram.y:12477 gram.y:12494
+msgid "syntax error"
+msgstr "Syntaxfehler"
 
-#: main/main.c:308
-#, c-format
-msgid ""
-"  -n              do not reinitialize shared memory after abnormal exit\n"
-msgstr ""
-"  -n              Shared Memory nach abnormalem Ende nicht neu "
-"initialisieren\n"
+#: tsearch/spell.c:596 tsearch/spell.c:842 tsearch/spell.c:862
+msgid "multibyte flag character is not allowed"
+msgstr "Mehrbytemarkierungszeichen ist nicht erlaubt"
 
-#: main/main.c:309
+#: tsearch/spell.c:629 tsearch/spell.c:687 tsearch/spell.c:780
 #, c-format
-msgid "  -O              allow system table structure changes\n"
-msgstr "  -O              erlaube Änderungen an Systemtabellenstruktur\n"
+msgid "could not open affix file \"%s\": %m"
+msgstr "konnte Affixdatei »%s« nicht öffnen: %m"
 
-#: main/main.c:310
-#, c-format
-msgid "  -P              disable system indexes\n"
-msgstr "  -P              schalte Systemindexe aus\n"
+#: tsearch/spell.c:675
+msgid "Ispell dictionary supports only default flag value"
+msgstr "Ispell-Wörterbuch unterstützt nur den Default-Flag-Wert"
 
-#: main/main.c:311
-#, c-format
-msgid "  -t pa|pl|ex     show timings after each query\n"
-msgstr "  -t pa|pl|ex     zeige Zeitmessung nach jeder Anfrage\n"
+#: tsearch/spell.c:873
+msgid "wrong affix file format for flag"
+msgstr "falsches Affixdateiformat für Flag"
 
-#: main/main.c:312
+#: tsearch/to_tsany.c:165 utils/adt/tsvector.c:272 utils/adt/tsvector_op.c:514
 #, c-format
-msgid "  -T              send SIGSTOP to all backend processes if one dies\n"
-msgstr ""
-"  -T              SIGSTOP an alle Backend-Prozesse senden wenn einer stirbt\n"
+msgid "string is too long for tsvector (%d bytes, max %d bytes)"
+msgstr "Zeichenkette ist zu lang für tsvector (%d Bytes, maximal %d Bytes)"
 
-#: main/main.c:313
+#: tsearch/ts_locale.c:177
 #, c-format
-msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
-msgstr "  -W ZAHL         warte ZAHL Sekunden, um Debugger starten zu können\n"
+msgid "line %d of configuration file \"%s\": \"%s\""
+msgstr "Zeile %d in Konfigurationsdatei »%s«: »%s«"
 
-#: main/main.c:315
+#: tsearch/ts_locale.c:182 libpq/hba.c:781 libpq/hba.c:797 libpq/hba.c:833
+#: libpq/hba.c:855 libpq/hba.c:864 libpq/hba.c:887 libpq/hba.c:899
+#: libpq/hba.c:912 libpq/hba.c:927 libpq/hba.c:982 libpq/hba.c:1002
+#: libpq/hba.c:1016 libpq/hba.c:1033 libpq/hba.c:1046 libpq/hba.c:1062
+#: libpq/hba.c:1077 libpq/hba.c:1119 libpq/hba.c:1151 libpq/hba.c:1162
+#: libpq/hba.c:1182 libpq/hba.c:1193 libpq/hba.c:1204 libpq/hba.c:1221
+#: libpq/hba.c:1242 libpq/hba.c:1272 libpq/hba.c:1284 libpq/hba.c:1297
+#: libpq/hba.c:1331 libpq/hba.c:1405 libpq/hba.c:1423 libpq/hba.c:1444
+#: libpq/hba.c:1475 libpq/hba.c:1485
 #, c-format
-msgid ""
-"\n"
-"Options for single-user mode:\n"
-msgstr ""
-"\n"
-"Optionen für Einzelbenutzermodus:\n"
+msgid "line %d of configuration file \"%s\""
+msgstr "Zeile %d in Konfigurationsdatei »%s«"
 
-#: main/main.c:316
+#: tsearch/ts_locale.c:302
 #, c-format
-msgid "  --single        selects single-user mode (must be first argument)\n"
-msgstr ""
-"  --single        wählt den Einzelbenutzermodus (muss erstes Argument sein)\n"
+msgid "conversion from wchar_t to server encoding failed: %m"
+msgstr "Umwandlung von wchar_t in Serverkodierung fehlgeschlagen: %m"
 
-#: main/main.c:317
-#, c-format
-msgid "  DBNAME          database name (defaults to user name)\n"
-msgstr "  DBNAME          Datenbankname (Standard: Benutzername)\n"
-
-#: main/main.c:318
-#, c-format
-msgid "  -d 0-5          override debugging level\n"
-msgstr "  -d 1-5          Debug-Level setzen\n"
-
-#: main/main.c:319
-#, c-format
-msgid "  -E              echo statement before execution\n"
-msgstr "  -E              gebe Befehl vor der Ausführung aus\n"
-
-#: main/main.c:320
-#, c-format
-msgid "  -j              do not use newline as interactive query delimiter\n"
-msgstr ""
-"  -j              verwende Zeilenende nicht als Anfrageende im interaktiven\n"
-"                  Modus\n"
-
-#: main/main.c:321 main/main.c:326
-#, c-format
-msgid "  -r FILENAME     send stdout and stderr to given file\n"
-msgstr "  -r DATEINAME    sende stdout und stderr in genannte Datei\n"
-
-#: main/main.c:323
-#, c-format
-msgid ""
-"\n"
-"Options for bootstrapping mode:\n"
-msgstr ""
-"\n"
-"Optionen für Bootstrap-Modus:\n"
-
-#: main/main.c:324
-#, c-format
-msgid "  --boot          selects bootstrapping mode (must be first argument)\n"
-msgstr ""
-"  --boot          wählt den Bootstrap-Modus (muss erstes Argument sein)\n"
-
-#: main/main.c:325
-#, c-format
-msgid ""
-"  DBNAME          database name (mandatory argument in bootstrapping mode)\n"
-msgstr "  DBNAME          Datenbankname (Pflichtangabe im Bootstrap-Modus)\n"
-
-#: main/main.c:327
-#, c-format
-msgid "  -x NUM          internal use\n"
-msgstr "  -x NUM          interne Verwendung\n"
+#: tsearch/ts_parse.c:391 tsearch/ts_parse.c:398 tsearch/ts_parse.c:561
+#: tsearch/ts_parse.c:568
+msgid "word is too long to be indexed"
+msgstr "Wort ist zu lang, um indiziert zu werden"
 
-#: main/main.c:329
+#: tsearch/ts_parse.c:392 tsearch/ts_parse.c:399 tsearch/ts_parse.c:562
+#: tsearch/ts_parse.c:569
 #, c-format
-msgid ""
-"\n"
-"Please read the documentation for the complete list of run-time\n"
-"configuration settings and how to set them on the command line or in\n"
-"the configuration file.\n"
-"\n"
-"Report bugs to <pgsql-bugs@postgresql.org>.\n"
-msgstr ""
-"\n"
-"In der Dokumentation finden Sie eine komplette Liste der Konfigurations-\n"
-"parameter und Informationen wie man sie auf der Kommandozeile oder in der\n"
-"Konfiguratonsdatei setzen kann.\n"
-"\n"
-"Berichten Sie Fehler an <pgsql-bugs@postgresql.org>.\n"
-
-#: main/main.c:343
-msgid ""
-"\"root\" execution of the PostgreSQL server is not permitted.\n"
-"The server must be started under an unprivileged user ID to prevent\n"
-"possible system security compromise.  See the documentation for\n"
-"more information on how to properly start the server.\n"
-msgstr ""
-"Der PostgreSQL-Server darf nicht als »root« ausgeführt werden.  Der\n"
-"Server muss unter einer unprivilegierten Benutzer-ID gestartet werden,\n"
-"um mögliche Sicherheitskompromittierung zu verhindern.  In der\n"
-"Dokumentation finden Sie weitere Informationen darüber, wie der\n"
-"Server richtig gestartet wird.\n"
+msgid "Words longer than %d characters are ignored."
+msgstr "Wörter, die länger als %d Zeichen sind, werden ignoriert."
 
-#: main/main.c:360
+#: tsearch/ts_utils.c:53
 #, c-format
-msgid "%s: real and effective user IDs must match\n"
-msgstr "%s: reelle und effektive Benutzer-IDs müssen übereinstimmen\n"
-
-#: main/main.c:367
-msgid ""
-"Execution of PostgreSQL by a user with administrative permissions is not\n"
-"permitted.\n"
-"The server must be started under an unprivileged user ID to prevent\n"
-"possible system security compromises.  See the documentation for\n"
-"more information on how to properly start the server.\n"
-msgstr ""
-"Der PostgreSQL-Server darf nicht als Benutzer mit Administrator-Rechten\n"
-"ausgeführt werden.  Der Server muss unter einer unprivilegierten\n"
-"Benutzer-ID gestartet werden, um mögliche Sicherheitskompromittierung zu\n"
-"verhindern.  In der Dokumentation finden Sie weitere Informationen darüber,\n"
-"wie der Server richtig gestartet wird.\n"
+msgid "invalid text search configuration file name \"%s\""
+msgstr "ungültiger Textsuchekonfigurationsdateiname »%s«"
 
-#: main/main.c:388
+#: tsearch/ts_utils.c:91
 #, c-format
-msgid "%s: invalid effective UID: %d\n"
-msgstr "%s: ungültige effektive UID: %d\n"
+msgid "could not open stop-word file \"%s\": %m"
+msgstr "konnte Stoppwortdatei »%s« nicht öffnen: %m"
 
-#: main/main.c:401
-#, c-format
-msgid "%s: could not determine user name (GetUserName failed)\n"
-msgstr "%s: konnte Benutzername nicht ermitteln (GetUserName fehlgeschlagen)\n"
+#: tsearch/wparser.c:314
+msgid "text search parser does not support headline creation"
+msgstr "Textsucheparser unterstützt das Erzeugen von Headlines nicht"
 
 #: tsearch/wparser_def.c:2551
 #, c-format
@@ -351,203 +245,211 @@ msgstr "»ShortWord« sollte >= 0 sein"
 msgid "MaxFragments should be >= 0"
 msgstr "»MaxFragments« sollte >= 0 sein"
 
-#: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:615
-msgid "multiple DictFile parameters"
-msgstr "mehrere DictFile-Parameter"
-
-#: tsearch/dict_ispell.c:64
-msgid "multiple AffFile parameters"
-msgstr "mehrere AffFile-Parameter"
+#: access/hash/hashinsert.c:73
+#, c-format
+msgid "index row size %lu exceeds hash maximum %lu"
+msgstr "Größe der Indexzeile %lu überschreitet Maximum für Hash-Index %lu"
 
-#: tsearch/dict_ispell.c:75 tsearch/dict_simple.c:50
-#: snowball/dict_snowball.c:206
-msgid "multiple StopWords parameters"
-msgstr "mehrere »StopWords«-Parameter"
+#: access/hash/hashinsert.c:76
+msgid "Values larger than a buffer page cannot be indexed."
+msgstr ""
+"Werte, die größer sind als eine Pufferseite, können nicht indiziert werden."
 
-#: tsearch/dict_ispell.c:83
+#: access/hash/hashovfl.c:547
 #, c-format
-msgid "unrecognized Ispell parameter: \"%s\""
-msgstr "unbekannter Ispell-Parameter: »%s«"
+msgid "out of overflow pages in hash index \"%s\""
+msgstr "keine Überlaufseiten in Hash-Index »%s« mehr"
 
-#: tsearch/dict_ispell.c:97
-msgid "missing AffFile parameter"
-msgstr "Parameter »AffFile« fehlt"
+#: access/hash/hashsearch.c:152
+msgid "hash indexes do not support whole-index scans"
+msgstr "Hash-Indexe unterstützen keine Scans des ganzen Index"
 
-#: tsearch/dict_ispell.c:103 tsearch/dict_thesaurus.c:639
-msgid "missing DictFile parameter"
-msgstr "Parameter »DictFile« fehlt"
+#: access/hash/hashutil.c:170 access/gist/gistutil.c:589
+#: access/nbtree/nbtpage.c:433
+#, c-format
+msgid "index \"%s\" contains unexpected zero page at block %u"
+msgstr "Index »%s« enthält unerwartete Nullseite bei Block %u"
 
-#: tsearch/dict_simple.c:59
-msgid "multiple Accept parameters"
-msgstr "mehrere »Accept«-Parameter"
+#: access/hash/hashutil.c:173 access/hash/hashutil.c:184
+#: access/hash/hashutil.c:196 access/hash/hashutil.c:217
+#: access/gist/gist.c:718 access/gist/gistutil.c:592
+#: access/gist/gistutil.c:603 access/gist/gistvacuum.c:274
+#: access/nbtree/nbtpage.c:436 access/nbtree/nbtpage.c:447
+msgid "Please REINDEX it."
+msgstr "Bitte führen Sie REINDEX für den Index aus."
 
-#: tsearch/dict_simple.c:67
+#: access/hash/hashutil.c:181 access/hash/hashutil.c:193
+#: access/gist/gistutil.c:600 access/nbtree/nbtpage.c:444
 #, c-format
-msgid "unrecognized simple dictionary parameter: \"%s\""
-msgstr "unbekannter Parameter für das einfache Wörterbuch: »%s«"
+msgid "index \"%s\" contains corrupted page at block %u"
+msgstr "Index »%s« enthält korrupte Seite bei Block %u"
 
-#: tsearch/dict_synonym.c:119
+#: access/hash/hashutil.c:209
 #, c-format
-msgid "unrecognized synonym parameter: \"%s\""
-msgstr "unbekannter Synonymparameter: »%s«"
-
-#: tsearch/dict_synonym.c:126
-msgid "missing Synonyms parameter"
-msgstr "Parameter »Synonyms« fehlt"
+msgid "index \"%s\" is not a hash index"
+msgstr "Index »%s« ist kein Hash-Index"
 
-#: tsearch/dict_synonym.c:133
+#: access/hash/hashutil.c:215
 #, c-format
-msgid "could not open synonym file \"%s\": %m"
-msgstr "konnte Synonymdatei »%s« nicht öffnen: %m"
+msgid "index \"%s\" has wrong hash version"
+msgstr "Index »%s« hat falsche Hash-Version"
 
-#: tsearch/dict_thesaurus.c:180
+#: access/common/heaptuple.c:646 access/common/heaptuple.c:1398
 #, c-format
-msgid "could not open thesaurus file \"%s\": %m"
-msgstr "konnte Thesaurusdatei »%s« nicht öffnen: %m"
-
-#: tsearch/dict_thesaurus.c:213
-msgid "unexpected delimiter"
-msgstr "unerwartetes Trennzeichen"
-
-#: tsearch/dict_thesaurus.c:263 tsearch/dict_thesaurus.c:279
-msgid "unexpected end of line or lexeme"
-msgstr "unerwartetes Ende der Zeile oder des Lexems"
+msgid "number of columns (%d) exceeds limit (%d)"
+msgstr "Anzahl der Spalten (%d) überschreitet Maximum (%d)"
 
-#: tsearch/dict_thesaurus.c:288
-msgid "unexpected end of line"
-msgstr "unerwartetes Ende der Zeile"
+#: access/common/indextuple.c:57
+#, c-format
+msgid "number of index columns (%d) exceeds limit (%d)"
+msgstr "Anzahl der Indexspalten (%d) überschreitet Maximum (%d)"
 
-#: tsearch/dict_thesaurus.c:412
+#: access/common/indextuple.c:168
 #, c-format
-msgid ""
-"thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
-msgstr ""
-"Thesaurus-Beispielwort »%s« wird nicht vom Unterwörterbuch erkannt (Regel %d)"
+msgid "index row requires %lu bytes, maximum size is %lu"
+msgstr "Indexzeile benötigt %lu Bytes, Maximalgröße ist %lu"
 
-#: tsearch/dict_thesaurus.c:418
+#: access/common/printtup.c:278 tcop/fastpath.c:180 tcop/fastpath.c:554
+#: tcop/postgres.c:1664
 #, c-format
-msgid "thesaurus sample word \"%s\" is a stop word (rule %d)"
-msgstr "Thesaurus-Beispielwort »%s« ist ein Stoppwort (Regel %d)"
+msgid "unsupported format code: %d"
+msgstr "nicht unterstützter Formatcode: %d"
 
-#: tsearch/dict_thesaurus.c:421
-msgid "Use \"?\" to represent a stop word within a sample phrase."
+#: access/common/reloptions.c:323
+msgid "user-defined relation parameter types limit exceeded"
 msgstr ""
-"Verwenden Sie »?«, um ein Stoppwort in einem Beispielsatz darzustellen."
+"Wertebereich des Typs für benutzerdefinierte Relationsparameter überschritten"
 
-#: tsearch/dict_thesaurus.c:567
-#, c-format
-msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
-msgstr "Thesaurus-Ersatzwort »%s« ist ein Stoppwort (Regel %d)"
+#: access/common/reloptions.c:622
+msgid "RESET must not include values for parameters"
+msgstr "RESET darf keinen Parameterwert enthalten"
 
-#: tsearch/dict_thesaurus.c:574
+#: access/common/reloptions.c:655
 #, c-format
-msgid ""
-"thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
-msgstr ""
-"Thesaurus-Ersatzwort »%s« wird nicht vom Unterwörterbuch erkannt (Regel %d)"
+msgid "unrecognized parameter namespace \"%s\""
+msgstr "unbekannter Parameter-Namensraum »%s«"
 
-#: tsearch/dict_thesaurus.c:586
+#: access/common/reloptions.c:898
 #, c-format
-msgid "thesaurus substitute phrase is empty (rule %d)"
-msgstr "Thesaurus-Ersatzausdruck ist leer (Regel %d)"
-
-#: tsearch/dict_thesaurus.c:624
-msgid "multiple Dictionary parameters"
-msgstr "mehrere »Dictionary«-Parameter"
+msgid "unrecognized parameter \"%s\""
+msgstr "unbekannter Parameter »%s«"
 
-#: tsearch/dict_thesaurus.c:631
+#: access/common/reloptions.c:923
 #, c-format
-msgid "unrecognized Thesaurus parameter: \"%s\""
-msgstr "unbekannter Thesaurus-Parameter: »%s«"
+msgid "parameter \"%s\" specified more than once"
+msgstr "Parameter »%s« mehrmals angegeben"
 
-#: tsearch/dict_thesaurus.c:643
-msgid "missing Dictionary parameter"
-msgstr "Parameter »Dictionary« fehlt"
+#: access/common/reloptions.c:938
+#, c-format
+msgid "invalid value for boolean option \"%s\": %s"
+msgstr "ungültiger Wert für Boole'sche Option »%s«: »%s«"
 
-#: tsearch/spell.c:276
+#: access/common/reloptions.c:949
 #, c-format
-msgid "could not open dictionary file \"%s\": %m"
-msgstr "konnte Wörterbuchdatei »%s« nicht öffnen: %m"
+msgid "invalid value for integer option \"%s\": %s"
+msgstr "ungültiger Wert für ganzzahlige Option »%s«: »%s«"
 
-#: tsearch/spell.c:439 utils/adt/regexp.c:195
+#: access/common/reloptions.c:954 access/common/reloptions.c:972
 #, c-format
-msgid "invalid regular expression: %s"
-msgstr "ungültiger regulärer Ausdruck: %s"
+msgid "value %s out of bounds for option \"%s\""
+msgstr "Wert %s ist außerhalb des gültigen Bereichs für Option »%s«"
 
-#: tsearch/spell.c:518 tsearch/spell.c:535 tsearch/spell.c:552
-#: tsearch/spell.c:569 tsearch/spell.c:591 gram.y:12481 gram.y:12498
-msgid "syntax error"
-msgstr "Syntaxfehler"
+#: access/common/reloptions.c:956
+#, c-format
+msgid "Valid values are between \"%d\" and \"%d\"."
+msgstr "Gültige Werte sind zwischen »%d« und »%d«."
 
-#: tsearch/spell.c:596 tsearch/spell.c:842 tsearch/spell.c:862
-msgid "multibyte flag character is not allowed"
-msgstr "Mehrbytemarkierungszeichen ist nicht erlaubt"
+#: access/common/reloptions.c:967
+#, c-format
+msgid "invalid value for floating point option \"%s\": %s"
+msgstr "ungültiger Wert für Gleitkommaoption »%s«: »%s«"
 
-#: tsearch/spell.c:629 tsearch/spell.c:687 tsearch/spell.c:780
+#: access/common/reloptions.c:974
 #, c-format
-msgid "could not open affix file \"%s\": %m"
-msgstr "konnte Affixdatei »%s« nicht öffnen: %m"
+msgid "Valid values are between \"%f\" and \"%f\"."
+msgstr "Gültige Werte sind zwischen »%f« und »%f«."
 
-#: tsearch/spell.c:675
-msgid "Ispell dictionary supports only default flag value"
-msgstr "Ispell-Wörterbuch unterstützt nur den Default-Flag-Wert"
+#: access/common/tupconvert.c:107
+#, c-format
+msgid "Returned type %s does not match expected type %s in column %d."
+msgstr ""
+"Zurückgegebener Typ %1$s stimmt in Spalte %3$d nicht mit erwartetem Typ %2$s "
+"überein."
 
-#: tsearch/spell.c:873
-msgid "wrong affix file format for flag"
-msgstr "falsches Affixdateiformat für Flag"
+#: access/common/tupconvert.c:135
+#, c-format
+msgid ""
+"Number of returned columns (%d) does not match expected column count (%d)."
+msgstr ""
+"Anzahl der zurückgegebenen Spalten (%d) entspricht nicht der erwarteten "
+"Spaltenanzahl (%d)."
 
-#: tsearch/to_tsany.c:165 utils/adt/tsvector.c:272 utils/adt/tsvector_op.c:514
+#: access/common/tupconvert.c:240
 #, c-format
-msgid "string is too long for tsvector (%d bytes, max %d bytes)"
-msgstr "Zeichenkette ist zu lang für tsvector (%d Bytes, maximal %d Bytes)"
+msgid ""
+"Attribute \"%s\" of type %s does not match corresponding attribute of type "
+"%s."
+msgstr ""
+"Attribut »%s« von Typ %s stimmt nicht mit dem entsprechenden Attribut von "
+"Typ %s überein."
 
-#: tsearch/ts_locale.c:177
+#: access/common/tupconvert.c:252
 #, c-format
-msgid "line %d of configuration file \"%s\": \"%s\""
-msgstr "Zeile %d in Konfigurationsdatei »%s«: »%s«"
+msgid "Attribute \"%s\" of type %s does not exist in type %s."
+msgstr "Attribut »%s« von Typ %s existiert nicht in Typ %s."
 
-#: tsearch/ts_locale.c:182 libpq/hba.c:781 libpq/hba.c:797 libpq/hba.c:846
-#: libpq/hba.c:855 libpq/hba.c:878 libpq/hba.c:890 libpq/hba.c:903
-#: libpq/hba.c:918 libpq/hba.c:973 libpq/hba.c:993 libpq/hba.c:1007
-#: libpq/hba.c:1024 libpq/hba.c:1037 libpq/hba.c:1053 libpq/hba.c:1068
-#: libpq/hba.c:1110 libpq/hba.c:1142 libpq/hba.c:1153 libpq/hba.c:1173
-#: libpq/hba.c:1184 libpq/hba.c:1195 libpq/hba.c:1212 libpq/hba.c:1233
-#: libpq/hba.c:1263 libpq/hba.c:1275 libpq/hba.c:1288 libpq/hba.c:1322
-#: libpq/hba.c:1396 libpq/hba.c:1414 libpq/hba.c:1435 libpq/hba.c:1466
-#: libpq/hba.c:1476
+#: access/common/tupdesc.c:575 parser/parse_relation.c:1169
 #, c-format
-msgid "line %d of configuration file \"%s\""
-msgstr "Zeile %d in Konfigurationsdatei »%s«"
+msgid "column \"%s\" cannot be declared SETOF"
+msgstr "Spalte »%s« kann nicht als SETOF deklariert werden"
 
-#: tsearch/ts_locale.c:302
+#: access/gin/ginentrypage.c:101 access/nbtree/nbtinsert.c:531
+#: access/nbtree/nbtsort.c:483
 #, c-format
-msgid "conversion from wchar_t to server encoding failed: %m"
-msgstr "Umwandlung von wchar_t in Serverkodierung fehlgeschlagen: %m"
+msgid "index row size %lu exceeds maximum %lu for index \"%s\""
+msgstr "Größe %lu der Indexzeile überschreitet Maximum %lu für Index »%s«"
 
-#: tsearch/ts_parse.c:391 tsearch/ts_parse.c:398 tsearch/ts_parse.c:561
-#: tsearch/ts_parse.c:568
-msgid "word is too long to be indexed"
-msgstr "Wort ist zu lang, um indiziert zu werden"
+#: access/gin/ginscan.c:401
+msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
+msgstr ""
+"alte GIN-Indexe unterstützen keine Scans des ganzen Index oder Suchen nach "
+"NULL-Werten"
 
-#: tsearch/ts_parse.c:392 tsearch/ts_parse.c:399 tsearch/ts_parse.c:562
-#: tsearch/ts_parse.c:569
+#: access/gin/ginscan.c:402
 #, c-format
-msgid "Words longer than %d characters are ignored."
-msgstr "Wörter, die länger als %d Zeichen sind, werden ignoriert."
+msgid "To fix this, do REINDEX INDEX \"%s\"."
+msgstr "Um das zu reparieren, führen Sie REINDEX INDEX \"%s\" aus."
 
-#: tsearch/ts_utils.c:53
+#: access/gist/gist.c:230
+msgid "unlogged GiST indexes are not supported"
+msgstr "ungeloggte GiST-Indexe werden nicht unterstützt"
+
+#: access/gist/gist.c:715 access/gist/gistvacuum.c:271
 #, c-format
-msgid "invalid text search configuration file name \"%s\""
-msgstr "ungültiger Textsuchekonfigurationsdateiname »%s«"
+msgid "index \"%s\" contains an inner tuple marked as invalid"
+msgstr "Index »%s« enthält ein inneres Tupel, das als ungültig markiert ist"
 
-#: tsearch/ts_utils.c:91
+#: access/gist/gist.c:717 access/gist/gistvacuum.c:273
+msgid ""
+"This is caused by an incomplete page split at crash recovery before "
+"upgrading to PostgreSQL 9.1."
+msgstr ""
+"Das kommt von einem unvollständigen Page-Split bei der Crash-Recovery vor "
+"dem Upgrade auf PostgreSQL 9.1."
+
+#: access/gist/gistsplit.c:375
 #, c-format
-msgid "could not open stop-word file \"%s\": %m"
-msgstr "konnte Stoppwortdatei »%s« nicht öffnen: %m"
+msgid "picksplit method for column %d of index \"%s\" failed"
+msgstr "Picksplit-Methode für Spalte %d von Index »%s« fehlgeschlagen"
 
-#: tsearch/wparser.c:314
-msgid "text search parser does not support headline creation"
-msgstr "Textsucheparser unterstützt die Erzeugung von Headlines nicht"
+#: access/gist/gistsplit.c:377
+msgid ""
+"The index is not optimal. To optimize it, contact a developer, or try to use "
+"the column as the second one in the CREATE INDEX command."
+msgstr ""
+"Der Index ist nicht optimal. Um ihn zu optimieren, kontaktieren Sie einen "
+"Entwickler oder versuchen Sie, die Spalte als die zweite im CREATE-INDEX-"
+"Befehl zu verwenden."
 
 #: access/transam/slru.c:609
 #, c-format
@@ -822,7 +724,7 @@ msgstr "maximale Anzahl committeter Subtransaktionen (%d) erreicht"
 #: access/transam/xact.c:2044
 msgid "cannot PREPARE a transaction that has operated on temporary tables"
 msgstr ""
-"PREPARE kann nicht in einer Transaktion ausgeführt werden, die temporäre "
+"PREPARE kann nicht für eine Transaktion ausgeführt werden, die temporäre "
 "Tabellen bearbeitet hat"
 
 #. translator: %s represents an SQL statement name
@@ -879,14 +781,14 @@ msgstr "konnte Archivstatusdatei »%s« nicht erstellen: %m"
 msgid "could not write archive status file \"%s\": %m"
 msgstr "konnte Archivstatusdatei »%s« nicht schreiben: %m"
 
-#: access/transam/xlog.c:1791 access/transam/xlog.c:10337
-#: replication/walreceiver.c:506 replication/walsender.c:1003
+#: access/transam/xlog.c:1791 access/transam/xlog.c:10364
+#: replication/walreceiver.c:510 replication/walsender.c:1003
 #, c-format
 msgid "could not seek in log file %u, segment %u to offset %u: %m"
 msgstr ""
 "konnte Positionszeiger von Logdatei %u, Segment %u nicht auf %u setzen: %m"
 
-#: access/transam/xlog.c:1808 replication/walreceiver.c:523
+#: access/transam/xlog.c:1808 replication/walreceiver.c:527
 #, c-format
 msgid "could not write to log file %u, segment %u at offset %u, length %lu: %m"
 msgstr ""
@@ -906,48 +808,49 @@ msgid "could not open file \"%s\" (log file %u, segment %u): %m"
 msgstr "konnte Datei »%s« nicht öffnen (Logdatei %u, Segment %u): %m"
 
 #: access/transam/xlog.c:2376 access/transam/xlog.c:2509
-#: access/transam/xlog.c:4397 access/transam/xlog.c:9015
-#: access/transam/xlog.c:9255 storage/smgr/md.c:285 storage/file/copydir.c:172
+#: access/transam/xlog.c:4408 access/transam/xlog.c:9026
+#: access/transam/xlog.c:9266 storage/file/copydir.c:172 storage/smgr/md.c:285
 #: postmaster/postmaster.c:3690
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "kann Datei »%s« nicht erstellen: %m"
 
 #: access/transam/xlog.c:2408 access/transam/xlog.c:2541
-#: access/transam/xlog.c:4449 access/transam/xlog.c:4512
+#: access/transam/xlog.c:4460 access/transam/xlog.c:4523
 #: storage/file/copydir.c:197 postmaster/postmaster.c:3700
 #: postmaster/postmaster.c:3710 utils/init/miscinit.c:1089
-#: utils/init/miscinit.c:1098 utils/init/miscinit.c:1105 utils/misc/guc.c:7414
-#: utils/misc/guc.c:7439
+#: utils/init/miscinit.c:1098 utils/init/miscinit.c:1105 utils/misc/guc.c:7424
+#: utils/misc/guc.c:7449
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "konnte nicht in Datei »%s« schreiben: %m"
 
 #: access/transam/xlog.c:2416 access/transam/xlog.c:2548
-#: access/transam/xlog.c:4518 storage/smgr/md.c:918 storage/smgr/md.c:1124
-#: storage/smgr/md.c:1275 storage/file/copydir.c:269
+#: access/transam/xlog.c:4529 storage/file/copydir.c:269 storage/smgr/md.c:924
+#: storage/smgr/md.c:1130 storage/smgr/md.c:1281
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht fsyncen: %m"
 
 #: access/transam/xlog.c:2421 access/transam/xlog.c:2553
-#: access/transam/xlog.c:4523 commands/copy.c:1329 storage/file/copydir.c:211
+#: access/transam/xlog.c:4534 commands/copy.c:1329 storage/file/copydir.c:211
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht schließen: %m"
 
-#: access/transam/xlog.c:2494 access/transam/xlog.c:4166
-#: access/transam/xlog.c:4260 access/transam/xlog.c:4416 storage/smgr/md.c:539
-#: storage/smgr/md.c:796 storage/file/copydir.c:165 storage/file/copydir.c:255
-#: replication/basebackup.c:725 utils/error/elog.c:1469
+#: access/transam/xlog.c:2494 access/transam/xlog.c:4177
+#: access/transam/xlog.c:4271 access/transam/xlog.c:4427
+#: storage/file/copydir.c:165 storage/file/copydir.c:255 storage/smgr/md.c:542
+#: storage/smgr/md.c:802 replication/basebackup.c:725
 #: utils/init/miscinit.c:1039 utils/init/miscinit.c:1153
+#: utils/error/elog.c:1497
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht öffnen: %m"
 
-#: access/transam/xlog.c:2522 access/transam/xlog.c:4428
-#: access/transam/xlog.c:9187 access/transam/xlog.c:9200
-#: access/transam/xlog.c:9730 access/transam/xlog.c:9755
+#: access/transam/xlog.c:2522 access/transam/xlog.c:4439
+#: access/transam/xlog.c:9198 access/transam/xlog.c:9211
+#: access/transam/xlog.c:9741 access/transam/xlog.c:9766
 #: storage/file/copydir.c:186 utils/adt/genfile.c:138
 #, c-format
 msgid "could not read file \"%s\": %m"
@@ -976,13 +879,13 @@ msgstr ""
 "konnte Datei »%s« nicht in »%s« umbenennen (Initialisierung von Logdatei %u, "
 "Segment %u): %m"
 
-#: access/transam/xlog.c:2839 replication/walreceiver.c:480
+#: access/transam/xlog.c:2839 replication/walreceiver.c:484
 #, c-format
 msgid "could not close log file %u, segment %u: %m"
 msgstr "konnte Logdatei %u, Segment %u nicht schließen: %m"
 
 #: access/transam/xlog.c:2911 access/transam/xlog.c:3076
-#: access/transam/xlog.c:9000 access/transam/xlog.c:9175
+#: access/transam/xlog.c:9011 access/transam/xlog.c:9186
 #: storage/file/copydir.c:86 storage/file/copydir.c:125 utils/adt/dbsize.c:65
 #: utils/adt/dbsize.c:211 utils/adt/dbsize.c:276 utils/adt/genfile.c:107
 #: utils/adt/genfile.c:279
@@ -990,8 +893,8 @@ msgstr "konnte Logdatei %u, Segment %u nicht schließen: %m"
 msgid "could not stat file \"%s\": %m"
 msgstr "konnte »stat« für Datei »%s« nicht ausführen: %m"
 
-#: access/transam/xlog.c:2919 access/transam/xlog.c:9205 storage/smgr/md.c:355
-#: storage/smgr/md.c:402 storage/smgr/md.c:1238
+#: access/transam/xlog.c:2919 access/transam/xlog.c:9216 storage/smgr/md.c:358
+#: storage/smgr/md.c:405 storage/smgr/md.c:1244
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht löschen: %m"
@@ -1076,72 +979,72 @@ msgstr "falsche Gesamtlänge im Datensatz bei %X/%X"
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr "falsche Resource-Manager-Daten-Prüfsumme im Datensatz bei %X/%X"
 
-#: access/transam/xlog.c:3750 access/transam/xlog.c:3786
+#: access/transam/xlog.c:3759 access/transam/xlog.c:3797
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "ungültiger Datensatz-Offset bei %X/%X"
 
-#: access/transam/xlog.c:3794
+#: access/transam/xlog.c:3805
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "Contrecord-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:3809
+#: access/transam/xlog.c:3820
 #, c-format
 msgid "invalid xlog switch record at %X/%X"
 msgstr "ungültiger Xlog-Switch-Datensatz bei %X/%X"
 
-#: access/transam/xlog.c:3817
+#: access/transam/xlog.c:3828
 #, c-format
 msgid "record with zero length at %X/%X"
 msgstr "Datensatz mit Länge null bei %X/%X"
 
-#: access/transam/xlog.c:3826
+#: access/transam/xlog.c:3837
 #, c-format
 msgid "invalid record length at %X/%X"
 msgstr "ungültige Datensatzlänge bei %X/%X"
 
-#: access/transam/xlog.c:3833
+#: access/transam/xlog.c:3844
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "ungültige Resource-Manager-ID %u bei %X/%X"
 
-#: access/transam/xlog.c:3846 access/transam/xlog.c:3862
+#: access/transam/xlog.c:3857 access/transam/xlog.c:3873
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
 msgstr "Datensatz mit inkorrektem Prev-Link %X/%X bei %X/%X"
 
-#: access/transam/xlog.c:3891
+#: access/transam/xlog.c:3902
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "Datensatzlänge %u bei %X/%X zu groß"
 
-#: access/transam/xlog.c:3931
+#: access/transam/xlog.c:3942
 #, c-format
 msgid "there is no contrecord flag in log file %u, segment %u, offset %u"
 msgstr "es gibt keine Contrecord-Flag in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:3941
+#: access/transam/xlog.c:3952
 #, c-format
 msgid "invalid contrecord length %u in log file %u, segment %u, offset %u"
 msgstr "ungültige Contrecord-Länge %u in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4031
+#: access/transam/xlog.c:4042
 #, c-format
 msgid "invalid magic number %04X in log file %u, segment %u, offset %u"
 msgstr "ungültige magische Zahl %04X in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4038 access/transam/xlog.c:4084
+#: access/transam/xlog.c:4049 access/transam/xlog.c:4095
 #, c-format
 msgid "invalid info bits %04X in log file %u, segment %u, offset %u"
 msgstr "ungültige Infobits %04X in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4060 access/transam/xlog.c:4068
-#: access/transam/xlog.c:4075
+#: access/transam/xlog.c:4071 access/transam/xlog.c:4079
+#: access/transam/xlog.c:4086
 msgid "WAL file is from different database system"
 msgstr "WAL-Datei stammt von einem anderen Datenbanksystem"
 
-#: access/transam/xlog.c:4061
+#: access/transam/xlog.c:4072
 #, c-format
 msgid ""
 "WAL file database system identifier is %s, pg_control database system "
@@ -1150,25 +1053,25 @@ msgstr ""
 "Datenbanksystemidentifikator in der WAL-Datei ist %s, "
 "Datenbanksystemidentifikator in pg_control ist %s."
 
-#: access/transam/xlog.c:4069
+#: access/transam/xlog.c:4080
 msgid "Incorrect XLOG_SEG_SIZE in page header."
 msgstr "Falscher XLOG_SEG_SIZE-Wert in Page-Header."
 
-#: access/transam/xlog.c:4076
+#: access/transam/xlog.c:4087
 msgid "Incorrect XLOG_BLCKSZ in page header."
 msgstr "Falscher XLOG_BLCKSZ-Wert in Page-Header."
 
-#: access/transam/xlog.c:4092
+#: access/transam/xlog.c:4103
 #, c-format
 msgid "unexpected pageaddr %X/%X in log file %u, segment %u, offset %u"
 msgstr "unerwartete Page-Adresse %X/%X in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4104
+#: access/transam/xlog.c:4115
 #, c-format
 msgid "unexpected timeline ID %u in log file %u, segment %u, offset %u"
 msgstr "unerwartete Timeline-ID %u in Logdatei %u, Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4122
+#: access/transam/xlog.c:4133
 #, c-format
 msgid ""
 "out-of-sequence timeline ID %u (after %u) in log file %u, segment %u, offset "
@@ -1177,99 +1080,99 @@ msgstr ""
 "Timeline-ID %u nicht in richtiger Reihenfolge (nach %u) in Logdatei %u, "
 "Segment %u, Offset %u"
 
-#: access/transam/xlog.c:4195
+#: access/transam/xlog.c:4206
 #, c-format
 msgid "syntax error in history file: %s"
 msgstr "Syntaxfehler in History-Datei: %s"
 
-#: access/transam/xlog.c:4196
+#: access/transam/xlog.c:4207
 msgid "Expected a numeric timeline ID."
 msgstr "Eine numerische Timeline-ID wurde erwartet."
 
-#: access/transam/xlog.c:4201
+#: access/transam/xlog.c:4212
 #, c-format
 msgid "invalid data in history file: %s"
 msgstr "ungültige Daten in History-Datei: %s"
 
-#: access/transam/xlog.c:4202
+#: access/transam/xlog.c:4213
 msgid "Timeline IDs must be in increasing sequence."
 msgstr "Timeline-IDs müssen in aufsteigender Folge sein."
 
-#: access/transam/xlog.c:4215
+#: access/transam/xlog.c:4226
 #, c-format
 msgid "invalid data in history file \"%s\""
 msgstr "ungültige Daten in History-Datei »%s«"
 
-#: access/transam/xlog.c:4216
+#: access/transam/xlog.c:4227
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "Timeline-IDs müssen kleiner als die Timeline-ID des Kindes sein."
 
-#: access/transam/xlog.c:4302
+#: access/transam/xlog.c:4313
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr "neue Timeline %u ist kein Kind der Datenbanksystem-Timeline %u"
 
-#: access/transam/xlog.c:4315
+#: access/transam/xlog.c:4326
 #, c-format
 msgid "new target timeline is %u"
 msgstr "neue Ziel-Timeline ist %u"
 
-#: access/transam/xlog.c:4540
+#: access/transam/xlog.c:4551
 #, c-format
 msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "konnte Datei »%s« nicht nach »%s« linken: %m"
 
-#: access/transam/xlog.c:4547 access/transam/xlog.c:5502
-#: access/transam/xlog.c:5555 access/transam/xlog.c:6326
+#: access/transam/xlog.c:4558 access/transam/xlog.c:5513
+#: access/transam/xlog.c:5566 access/transam/xlog.c:6337
 #: postmaster/pgarch.c:715
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "konnte Datei »%s« nicht in »%s« umbenennen: %m"
 
-#: access/transam/xlog.c:4629
+#: access/transam/xlog.c:4640
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "konnte Kontrolldatei »%s« nicht erzeugen: %m"
 
-#: access/transam/xlog.c:4640 access/transam/xlog.c:4865
+#: access/transam/xlog.c:4651 access/transam/xlog.c:4876
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "konnte nicht in Kontrolldatei schreiben: %m"
 
-#: access/transam/xlog.c:4646 access/transam/xlog.c:4871
+#: access/transam/xlog.c:4657 access/transam/xlog.c:4882
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "konnte Kontrolldatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:4651 access/transam/xlog.c:4876
+#: access/transam/xlog.c:4662 access/transam/xlog.c:4887
 #, c-format
 msgid "could not close control file: %m"
 msgstr "konnte Kontrolldatei nicht schließen: %m"
 
-#: access/transam/xlog.c:4669 access/transam/xlog.c:4854
+#: access/transam/xlog.c:4680 access/transam/xlog.c:4865
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "konnte Kontrolldatei »%s« nicht öffnen: %m"
 
-#: access/transam/xlog.c:4675
+#: access/transam/xlog.c:4686
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "konnte nicht aus Kontrolldatei lesen: %m"
 
-#: access/transam/xlog.c:4688 access/transam/xlog.c:4697
-#: access/transam/xlog.c:4721 access/transam/xlog.c:4728
-#: access/transam/xlog.c:4735 access/transam/xlog.c:4740
-#: access/transam/xlog.c:4747 access/transam/xlog.c:4754
-#: access/transam/xlog.c:4761 access/transam/xlog.c:4768
-#: access/transam/xlog.c:4775 access/transam/xlog.c:4782
-#: access/transam/xlog.c:4791 access/transam/xlog.c:4798
-#: access/transam/xlog.c:4807 access/transam/xlog.c:4814
-#: access/transam/xlog.c:4823 access/transam/xlog.c:4830
+#: access/transam/xlog.c:4699 access/transam/xlog.c:4708
+#: access/transam/xlog.c:4732 access/transam/xlog.c:4739
+#: access/transam/xlog.c:4746 access/transam/xlog.c:4751
+#: access/transam/xlog.c:4758 access/transam/xlog.c:4765
+#: access/transam/xlog.c:4772 access/transam/xlog.c:4779
+#: access/transam/xlog.c:4786 access/transam/xlog.c:4793
+#: access/transam/xlog.c:4802 access/transam/xlog.c:4809
+#: access/transam/xlog.c:4818 access/transam/xlog.c:4825
+#: access/transam/xlog.c:4834 access/transam/xlog.c:4841
 #: utils/init/miscinit.c:1171
 msgid "database files are incompatible with server"
 msgstr "Datenbankdateien sind inkompatibel mit Server"
 
-#: access/transam/xlog.c:4689
+#: access/transam/xlog.c:4700
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), "
@@ -1279,7 +1182,7 @@ msgstr ""
 "initialisiert, aber der Server wurde mit PG_CONTROL_VERSION %d (0x%08x) "
 "kompiliert."
 
-#: access/transam/xlog.c:4693
+#: access/transam/xlog.c:4704
 msgid ""
 "This could be a problem of mismatched byte ordering.  It looks like you need "
 "to initdb."
@@ -1287,7 +1190,7 @@ msgstr ""
 "Das Problem könnte eine falsche Byte-Reihenfolge sein. Es sieht so aus, dass "
 "Sie initdb ausführen müssen."
 
-#: access/transam/xlog.c:4698
+#: access/transam/xlog.c:4709
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
@@ -1296,16 +1199,16 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit PG_CONTROL_VERSION %d initialisiert, aber "
 "der Server wurde mit PG_CONTROL_VERSION %d kompiliert."
 
-#: access/transam/xlog.c:4701 access/transam/xlog.c:4725
-#: access/transam/xlog.c:4732 access/transam/xlog.c:4737
+#: access/transam/xlog.c:4712 access/transam/xlog.c:4736
+#: access/transam/xlog.c:4743 access/transam/xlog.c:4748
 msgid "It looks like you need to initdb."
 msgstr "Es sieht so aus, dass Sie initdb ausführen müssen."
 
-#: access/transam/xlog.c:4712
+#: access/transam/xlog.c:4723
 msgid "incorrect checksum in control file"
 msgstr "falsche Prüfsumme in Kontrolldatei"
 
-#: access/transam/xlog.c:4722
+#: access/transam/xlog.c:4733
 #, c-format
 msgid ""
 "The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
@@ -1314,7 +1217,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit CATALOG_VERSION_NO %d initialisiert, aber "
 "der Server wurde mit CATALOG_VERSION_NO %d kompiliert."
 
-#: access/transam/xlog.c:4729
+#: access/transam/xlog.c:4740
 #, c-format
 msgid ""
 "The database cluster was initialized with MAXALIGN %d, but the server was "
@@ -1323,7 +1226,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit MAXALIGN %d initialisiert, aber der Server "
 "wurde mit MAXALIGN %d kompiliert."
 
-#: access/transam/xlog.c:4736
+#: access/transam/xlog.c:4747
 msgid ""
 "The database cluster appears to use a different floating-point number format "
 "than the server executable."
@@ -1331,7 +1234,7 @@ msgstr ""
 "Der Datenbank-Cluster verwendet anscheinend ein anderes "
 "Fließkommazahlenformat als das Serverprogramm."
 
-#: access/transam/xlog.c:4741
+#: access/transam/xlog.c:4752
 #, c-format
 msgid ""
 "The database cluster was initialized with BLCKSZ %d, but the server was "
@@ -1340,18 +1243,18 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit BLCKSZ %d initialisiert, aber der Server "
 "wurde mit BLCKSZ %d kompiliert."
 
-#: access/transam/xlog.c:4744 access/transam/xlog.c:4751
-#: access/transam/xlog.c:4758 access/transam/xlog.c:4765
-#: access/transam/xlog.c:4772 access/transam/xlog.c:4779
-#: access/transam/xlog.c:4786 access/transam/xlog.c:4794
-#: access/transam/xlog.c:4801 access/transam/xlog.c:4810
-#: access/transam/xlog.c:4817 access/transam/xlog.c:4826
-#: access/transam/xlog.c:4833
+#: access/transam/xlog.c:4755 access/transam/xlog.c:4762
+#: access/transam/xlog.c:4769 access/transam/xlog.c:4776
+#: access/transam/xlog.c:4783 access/transam/xlog.c:4790
+#: access/transam/xlog.c:4797 access/transam/xlog.c:4805
+#: access/transam/xlog.c:4812 access/transam/xlog.c:4821
+#: access/transam/xlog.c:4828 access/transam/xlog.c:4837
+#: access/transam/xlog.c:4844
 msgid "It looks like you need to recompile or initdb."
 msgstr ""
 "Es sieht so aus, dass Sie neu kompilieren oder initdb ausführen müssen."
 
-#: access/transam/xlog.c:4748
+#: access/transam/xlog.c:4759
 #, c-format
 msgid ""
 "The database cluster was initialized with RELSEG_SIZE %d, but the server was "
@@ -1360,7 +1263,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit RELSEG_SIZE %d initialisiert, aber der "
 "Server wurde mit RELSEGSIZE %d kompiliert."
 
-#: access/transam/xlog.c:4755
+#: access/transam/xlog.c:4766
 #, c-format
 msgid ""
 "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was "
@@ -1369,7 +1272,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit XLOG_BLCKSZ %d initialisiert, aber der "
 "Server wurde mit XLOG_BLCKSZ %d kompiliert."
 
-#: access/transam/xlog.c:4762
+#: access/transam/xlog.c:4773
 #, c-format
 msgid ""
 "The database cluster was initialized with XLOG_SEG_SIZE %d, but the server "
@@ -1378,7 +1281,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit XLOG_SEG_SIZE %d initialisiert, aber der "
 "Server wurde mit XLOG_SEG_SIZE %d kompiliert."
 
-#: access/transam/xlog.c:4769
+#: access/transam/xlog.c:4780
 #, c-format
 msgid ""
 "The database cluster was initialized with NAMEDATALEN %d, but the server was "
@@ -1387,7 +1290,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit NAMEDATALEN %d initialisiert, aber der "
 "Server wurde mit NAMEDATALEN %d kompiliert."
 
-#: access/transam/xlog.c:4776
+#: access/transam/xlog.c:4787
 #, c-format
 msgid ""
 "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server "
@@ -1396,7 +1299,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit INDEX_MAX_KEYS %d initialisiert, aber der "
 "Server wurde mit INDEX_MAX_KEYS %d kompiliert."
 
-#: access/transam/xlog.c:4783
+#: access/transam/xlog.c:4794
 #, c-format
 msgid ""
 "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the "
@@ -1405,7 +1308,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit TOAST_MAX_CHUNK_SIZE %d initialisiert, aber "
 "der Server wurde mit TOAST_MAX_CHUNK_SIZE %d kompiliert."
 
-#: access/transam/xlog.c:4792
+#: access/transam/xlog.c:4803
 msgid ""
 "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the "
 "server was compiled with HAVE_INT64_TIMESTAMP."
@@ -1413,7 +1316,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde ohne HAVE_INT64_TIMESTAMP initialisiert, aber "
 "der Server wurde mit HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:4799
+#: access/transam/xlog.c:4810
 msgid ""
 "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the "
 "server was compiled without HAVE_INT64_TIMESTAMP."
@@ -1421,7 +1324,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit HAVE_INT64_TIMESTAMP initialisiert, aber der "
 "Server wurde ohne HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:4808
+#: access/transam/xlog.c:4819
 msgid ""
 "The database cluster was initialized without USE_FLOAT4_BYVAL but the server "
 "was compiled with USE_FLOAT4_BYVAL."
@@ -1429,7 +1332,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde ohne USE_FLOAT4_BYVAL initialisiert, aber der "
 "Server wurde mit USE_FLOAT4_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4815
+#: access/transam/xlog.c:4826
 msgid ""
 "The database cluster was initialized with USE_FLOAT4_BYVAL but the server "
 "was compiled without USE_FLOAT4_BYVAL."
@@ -1437,7 +1340,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit USE_FLOAT4_BYVAL initialisiert, aber der "
 "Server wurde ohne USE_FLOAT4_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4824
+#: access/transam/xlog.c:4835
 msgid ""
 "The database cluster was initialized without USE_FLOAT8_BYVAL but the server "
 "was compiled with USE_FLOAT8_BYVAL."
@@ -1445,7 +1348,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde ohne USE_FLOAT8_BYVAL initialisiert, aber der "
 "Server wurde mit USE_FLOAT8_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4831
+#: access/transam/xlog.c:4842
 msgid ""
 "The database cluster was initialized with USE_FLOAT8_BYVAL but the server "
 "was compiled without USE_FLOAT8_BYVAL."
@@ -1453,118 +1356,118 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit USE_FLOAT8_BYVAL initialisiert, aber der "
 "Server wurde ohne USE_FLOAT8_BYVAL kompiliert."
 
-#: access/transam/xlog.c:5156
+#: access/transam/xlog.c:5167
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht schreiben: %m"
 
-#: access/transam/xlog.c:5162
+#: access/transam/xlog.c:5173
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:5167
+#: access/transam/xlog.c:5178
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht schließen: %m"
 
-#: access/transam/xlog.c:5234
+#: access/transam/xlog.c:5245
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "konnte Recovery-Kommandodatei »%s« nicht öffnen: %m"
 
-#: access/transam/xlog.c:5250
+#: access/transam/xlog.c:5261
 #, c-format
 msgid "restore_command = '%s'"
 msgstr "restore_command = '%s'"
 
-#: access/transam/xlog.c:5257
+#: access/transam/xlog.c:5268
 #, c-format
 msgid "recovery_end_command = '%s'"
 msgstr "recovery_end_command = '%s'"
 
-#: access/transam/xlog.c:5264
+#: access/transam/xlog.c:5275
 #, c-format
 msgid "archive_cleanup_command = '%s'"
 msgstr "archive_cleanup_command = '%s'"
 
-#: access/transam/xlog.c:5272 access/transam/xlog.c:5361
-#: access/transam/xlog.c:5370 commands/extension.c:525
-#: commands/extension.c:533 utils/misc/guc.c:5305
+#: access/transam/xlog.c:5283 access/transam/xlog.c:5372
+#: access/transam/xlog.c:5381 commands/extension.c:525
+#: commands/extension.c:533 utils/misc/guc.c:5307
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "Parameter »%s« erfordert einen Boole'schen Wert"
 
-#: access/transam/xlog.c:5274
+#: access/transam/xlog.c:5285
 #, c-format
 msgid "pause_at_recovery_target = '%s'"
 msgstr "pause_at_recovery_target = '%s'"
 
-#: access/transam/xlog.c:5287
+#: access/transam/xlog.c:5298
 #, c-format
 msgid "recovery_target_timeline is not a valid number: \"%s\""
 msgstr "recovery_target_timeline ist keine gültige Zahl: »%s«"
 
-#: access/transam/xlog.c:5292
+#: access/transam/xlog.c:5303
 #, c-format
 msgid "recovery_target_timeline = %u"
 msgstr "recovery_target_timeline = %u"
 
-#: access/transam/xlog.c:5295
+#: access/transam/xlog.c:5306
 msgid "recovery_target_timeline = latest"
 msgstr "recovery_target_timeline = latest"
 
-#: access/transam/xlog.c:5303
+#: access/transam/xlog.c:5314
 #, c-format
 msgid "recovery_target_xid is not a valid number: \"%s\""
 msgstr "recovery_target_xid ist keine gültige Zahl: »%s«"
 
-#: access/transam/xlog.c:5306
+#: access/transam/xlog.c:5317
 #, c-format
 msgid "recovery_target_xid = %u"
 msgstr "recovery_target_xid = %u"
 
-#: access/transam/xlog.c:5330
+#: access/transam/xlog.c:5341
 #, c-format
 msgid "recovery_target_time = '%s'"
 msgstr "recovery_target_time = '%s'"
 
-#: access/transam/xlog.c:5347
+#: access/transam/xlog.c:5358
 #, c-format
 msgid "recovery_target_name is too long (maximum %d characters)"
 msgstr "recovery_target_name ist zu lang (maximal %d Zeichen)"
 
-#: access/transam/xlog.c:5350
+#: access/transam/xlog.c:5361
 #, c-format
 msgid "recovery_target_name = '%s'"
 msgstr "recovery_target_name = '%s'"
 
-#: access/transam/xlog.c:5363
+#: access/transam/xlog.c:5374
 #, c-format
 msgid "recovery_target_inclusive = %s"
 msgstr "recovery_target_inclusive = %s"
 
-#: access/transam/xlog.c:5372
+#: access/transam/xlog.c:5383
 #, c-format
 msgid "standby_mode = '%s'"
 msgstr "standby_mode = '%s'"
 
-#: access/transam/xlog.c:5378
+#: access/transam/xlog.c:5389
 #, c-format
 msgid "primary_conninfo = '%s'"
 msgstr "primary_conninfo = '%s'"
 
-#: access/transam/xlog.c:5385
+#: access/transam/xlog.c:5396
 #, c-format
 msgid "trigger_file = '%s'"
 msgstr "trigger_file = '%s'"
 
-#: access/transam/xlog.c:5390
+#: access/transam/xlog.c:5401
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "unbekannter Recovery-Parameter »%s«"
 
-#: access/transam/xlog.c:5401
+#: access/transam/xlog.c:5412
 #, c-format
 msgid ""
 "recovery command file \"%s\" specified neither primary_conninfo nor "
@@ -1573,7 +1476,7 @@ msgstr ""
 "Recovery-Kommandodatei »%s« hat weder primary_conninfo noch restore_command "
 "angegeben"
 
-#: access/transam/xlog.c:5403
+#: access/transam/xlog.c:5414
 msgid ""
 "The database server will regularly poll the pg_xlog subdirectory to check "
 "for files placed there."
@@ -1581,7 +1484,7 @@ msgstr ""
 "Der Datenbankserver prüft das Unterverzeichnis pg_xlog regelmäßig auf dort "
 "abgelegte Dateien."
 
-#: access/transam/xlog.c:5409
+#: access/transam/xlog.c:5420
 #, c-format
 msgid ""
 "recovery command file \"%s\" must specify restore_command when standby mode "
@@ -1590,66 +1493,66 @@ msgstr ""
 "Recovery-Kommandodatei »%s« muss restore_command angeben, wenn der Standby-"
 "Modus nicht eingeschaltet ist"
 
-#: access/transam/xlog.c:5429
+#: access/transam/xlog.c:5440
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "recovery_target_timeline %u existiert nicht"
 
-#: access/transam/xlog.c:5559
+#: access/transam/xlog.c:5570
 msgid "archive recovery complete"
 msgstr "Wiederherstellung aus Archiv abgeschlossen"
 
-#: access/transam/xlog.c:5677
+#: access/transam/xlog.c:5688
 #, c-format
 msgid "recovery stopping after commit of transaction %u, time %s"
 msgstr "Wiederherstellung beendet nach Commit der Transaktion %u, Zeit %s"
 
-#: access/transam/xlog.c:5682
+#: access/transam/xlog.c:5693
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "Wiederherstellung beendet vor Commit der Transaktion %u, Zeit %s"
 
-#: access/transam/xlog.c:5690
+#: access/transam/xlog.c:5701
 #, c-format
 msgid "recovery stopping after abort of transaction %u, time %s"
 msgstr "Wiederherstellung beendet nach Abbruch der Transaktion %u, Zeit %s"
 
-#: access/transam/xlog.c:5695
+#: access/transam/xlog.c:5706
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "Wiederherstellung beendet vor Abbruch der Transaktion %u, Zeit %s"
 
-#: access/transam/xlog.c:5704
+#: access/transam/xlog.c:5715
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "Wiederherstellung beendet bei Restore-Punkt »%s«, Zeit %s"
 
-#: access/transam/xlog.c:5732
+#: access/transam/xlog.c:5743
 msgid "recovery has paused"
 msgstr "Wiederherstellung wurde pausiert"
 
-#: access/transam/xlog.c:5733
+#: access/transam/xlog.c:5744
 msgid "Execute pg_xlog_replay_resume() to continue."
 msgstr "Führen Sie pg_xlog_replay_resume() aus um fortzusetzen."
 
-#: access/transam/xlog.c:5776 access/transam/xlog.c:5798
-#: access/transam/xlog.c:5820
+#: access/transam/xlog.c:5787 access/transam/xlog.c:5809
+#: access/transam/xlog.c:5831
 msgid "must be superuser to control recovery"
 msgstr "nur Superuser können die Wiederherstellung kontrollieren"
 
-#: access/transam/xlog.c:5781 access/transam/xlog.c:5803
-#: access/transam/xlog.c:5825
+#: access/transam/xlog.c:5792 access/transam/xlog.c:5814
+#: access/transam/xlog.c:5836
 msgid "recovery is not in progress"
 msgstr "Wiederherstellung läuft nicht"
 
-#: access/transam/xlog.c:5782 access/transam/xlog.c:5804
-#: access/transam/xlog.c:5826
+#: access/transam/xlog.c:5793 access/transam/xlog.c:5815
+#: access/transam/xlog.c:5837
 msgid "Recovery control functions can only be executed during recovery."
 msgstr ""
 "Wiederherstellungskontrollfunktionen können nur während der "
 "Wiederherstellung ausgeführt werden."
 
-#: access/transam/xlog.c:5918
+#: access/transam/xlog.c:5929
 #, c-format
 msgid ""
 "hot standby is not possible because %s = %d is a lower setting than on the "
@@ -1658,11 +1561,11 @@ msgstr ""
 "Hot Standby ist nicht möglich, weil %s = %d eine niedrigere Einstellung als "
 "auf dem Masterserver ist (Wert dort war %d)"
 
-#: access/transam/xlog.c:5940
+#: access/transam/xlog.c:5951
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr "WAL wurde mit wal_level=minimal erzeugt, eventuell fehlen Daten"
 
-#: access/transam/xlog.c:5941
+#: access/transam/xlog.c:5952
 msgid ""
 "This happens if you temporarily set wal_level=minimal without taking a new "
 "base backup."
@@ -1670,7 +1573,7 @@ msgstr ""
 "Das passiert, wenn vorübergehend wal_level=minimal gesetzt wurde, ohne ein "
 "neues Base-Backup zu erzeugen."
 
-#: access/transam/xlog.c:5952
+#: access/transam/xlog.c:5963
 msgid ""
 "hot standby is not possible because wal_level was not set to \"hot_standby\" "
 "on the master server"
@@ -1678,7 +1581,7 @@ msgstr ""
 "Hot Standby ist nicht möglich, weil wal_level auf dem Masterserver nicht auf "
 "»hot_standby« gesetzt wurde"
 
-#: access/transam/xlog.c:5953
+#: access/transam/xlog.c:5964
 msgid ""
 "Either set wal_level to \"hot_standby\" on the master, or turn off "
 "hot_standby here."
@@ -1686,34 +1589,34 @@ msgstr ""
 "Setzen Sie entweder wal_level auf »hot_standby« auf dem Master oder schalten "
 "Sie hot_standby hier aus."
 
-#: access/transam/xlog.c:6000
+#: access/transam/xlog.c:6011
 msgid "control file contains invalid data"
 msgstr "Kontrolldatei enthält ungültige Daten"
 
-#: access/transam/xlog.c:6004
+#: access/transam/xlog.c:6015
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "Datenbanksystem wurde am %s heruntergefahren"
 
-#: access/transam/xlog.c:6008
+#: access/transam/xlog.c:6019
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr ""
 "Datenbanksystem wurde während der Wiederherstellung am %s heruntergefahren"
 
-#: access/transam/xlog.c:6012
+#: access/transam/xlog.c:6023
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr ""
 "Datenbanksystem wurde beim Herunterfahren unterbrochen; letzte bekannte "
 "Aktion am %s"
 
-#: access/transam/xlog.c:6016
+#: access/transam/xlog.c:6027
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "Datenbanksystem wurde während der Wiederherstellung am %s unterbrochen"
 
-#: access/transam/xlog.c:6018
+#: access/transam/xlog.c:6029
 msgid ""
 "This probably means that some data is corrupted and you will have to use the "
 "last backup for recovery."
@@ -1721,14 +1624,14 @@ msgstr ""
 "Das bedeutet wahrscheinlich, dass einige Daten verfälscht sind und Sie die "
 "letzte Datensicherung zur Wiederherstellung verwenden müssen."
 
-#: access/transam/xlog.c:6022
+#: access/transam/xlog.c:6033
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr ""
 "Datenbanksystem wurde während der Wiederherstellung bei Logzeit %s "
 "unterbrochen"
 
-#: access/transam/xlog.c:6024
+#: access/transam/xlog.c:6035
 msgid ""
 "If this has occurred more than once some data might be corrupted and you "
 "might need to choose an earlier recovery target."
@@ -1737,50 +1640,50 @@ msgstr ""
 "möglicherweise verfälscht und Sie müssen ein früheres Wiederherstellungsziel "
 "wählen."
 
-#: access/transam/xlog.c:6028
+#: access/transam/xlog.c:6039
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "Datenbanksystem wurde unterbrochen; letzte bekannte Aktion am %s"
 
-#: access/transam/xlog.c:6077
+#: access/transam/xlog.c:6088
 #, c-format
 msgid "requested timeline %u is not a child of database system timeline %u"
 msgstr "angeforderte Timeline %u ist kein Kind der Datenbanksystem-Timeline %u"
 
-#: access/transam/xlog.c:6095
+#: access/transam/xlog.c:6106
 msgid "entering standby mode"
 msgstr "Standby-Modus eingeschaltet"
 
-#: access/transam/xlog.c:6098
+#: access/transam/xlog.c:6109
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "starte Point-in-Time-Recovery bis XID %u"
 
-#: access/transam/xlog.c:6102
+#: access/transam/xlog.c:6113
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "starte Point-in-Time-Recovery bis %s"
 
-#: access/transam/xlog.c:6106
+#: access/transam/xlog.c:6117
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "starte Point-in-Time-Recovery bis »%s«"
 
-#: access/transam/xlog.c:6110
+#: access/transam/xlog.c:6121
 msgid "starting archive recovery"
 msgstr "starte Wiederherstellung aus Archiv"
 
-#: access/transam/xlog.c:6132 access/transam/xlog.c:6172
+#: access/transam/xlog.c:6143 access/transam/xlog.c:6183
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "Checkpoint-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:6146
+#: access/transam/xlog.c:6157
 msgid "could not find redo location referenced by checkpoint record"
 msgstr ""
 "konnte die vom Checkpoint-Datensatz referenzierte Redo-Position nicht finden"
 
-#: access/transam/xlog.c:6147 access/transam/xlog.c:6154
+#: access/transam/xlog.c:6158 access/transam/xlog.c:6165
 #, c-format
 msgid ""
 "If you are not restoring from a backup, try removing the file \"%s/"
@@ -1789,90 +1692,90 @@ msgstr ""
 "Wenn Sie kein Backup wiederherstellen, versuchen Sie, die Datei »%s/"
 "backup_label« zu löschen."
 
-#: access/transam/xlog.c:6153
+#: access/transam/xlog.c:6164
 msgid "could not locate required checkpoint record"
 msgstr "konnte den nötigen Checkpoint-Datensatz nicht finden"
 
-#: access/transam/xlog.c:6182 access/transam/xlog.c:6197
+#: access/transam/xlog.c:6193 access/transam/xlog.c:6208
 msgid "could not locate a valid checkpoint record"
 msgstr "konnte keinen gültigen Checkpoint-Datensatz finden"
 
-#: access/transam/xlog.c:6191
+#: access/transam/xlog.c:6202
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "verwende vorherigen Checkpoint-Eintrag bei %X/%X"
 
-#: access/transam/xlog.c:6206
+#: access/transam/xlog.c:6217
 #, c-format
 msgid "redo record is at %X/%X; shutdown %s"
 msgstr "Redo-Eintrag ist bei %X/%X; Shutdown %s"
 
-#: access/transam/xlog.c:6210
+#: access/transam/xlog.c:6221
 #, c-format
 msgid "next transaction ID: %u/%u; next OID: %u"
 msgstr "nächste Transaktions-ID: %u/%u; nächste OID: %u"
 
-#: access/transam/xlog.c:6214
+#: access/transam/xlog.c:6225
 #, c-format
 msgid "next MultiXactId: %u; next MultiXactOffset: %u"
 msgstr "nächste MultiXactId: %u; nächster MultiXactOffset: %u"
 
-#: access/transam/xlog.c:6217
+#: access/transam/xlog.c:6228
 #, c-format
 msgid "oldest unfrozen transaction ID: %u, in database %u"
 msgstr "älteste nicht eingefrorene Transaktions-ID: %u, in Datenbank %u"
 
-#: access/transam/xlog.c:6221
+#: access/transam/xlog.c:6232
 msgid "invalid next transaction ID"
 msgstr "ungültige nächste Transaktions-ID"
 
-#: access/transam/xlog.c:6240
+#: access/transam/xlog.c:6251
 msgid "invalid redo in checkpoint record"
 msgstr "ungültiges Redo im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:6251
+#: access/transam/xlog.c:6262
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "ungültiger Redo-Datensatz im Shutdown-Checkpoint"
 
-#: access/transam/xlog.c:6281
+#: access/transam/xlog.c:6292
 msgid ""
 "database system was not properly shut down; automatic recovery in progress"
 msgstr ""
 "Datenbanksystem wurde nicht richtig heruntergefahren; automatische "
 "Wiederherstellung läuft"
 
-#: access/transam/xlog.c:6353
+#: access/transam/xlog.c:6364
 msgid "initializing for hot standby"
 msgstr "initialisiere für Hot Standby"
 
-#: access/transam/xlog.c:6481
+#: access/transam/xlog.c:6492
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "Redo beginnt bei %X/%X"
 
-#: access/transam/xlog.c:6596
+#: access/transam/xlog.c:6607
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "Redo fertig bei %X/%X"
 
-#: access/transam/xlog.c:6601 access/transam/xlog.c:8178
+#: access/transam/xlog.c:6612 access/transam/xlog.c:8189
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "letzte vollständige Transaktion war bei Logzeit %s"
 
-#: access/transam/xlog.c:6609
+#: access/transam/xlog.c:6620
 msgid "redo is not required"
 msgstr "Redo nicht nötig"
 
-#: access/transam/xlog.c:6657
+#: access/transam/xlog.c:6668
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "angeforderter Recovery-Endpunkt ist vor konsistentem Recovery-Punkt"
 
-#: access/transam/xlog.c:6673
+#: access/transam/xlog.c:6684
 msgid "WAL ends before end of online backup"
 msgstr "WAL endet vor dem Ende der Online-Sicherung"
 
-#: access/transam/xlog.c:6674
+#: access/transam/xlog.c:6685
 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."
@@ -1881,191 +1784,190 @@ msgstr ""
 "() beendet werden und der ganze WAL bis zu diesem Punkt muss bei der "
 "Wiederherstellung verfügbar sein."
 
-#: access/transam/xlog.c:6677
+#: access/transam/xlog.c:6688
 msgid "WAL ends before consistent recovery point"
 msgstr "WAL endet vor einem konsistenten Wiederherstellungspunkt"
 
-#: access/transam/xlog.c:6699
+#: access/transam/xlog.c:6710
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "gewählte neue Timeline-ID: %u"
 
-#: access/transam/xlog.c:6941
+#: access/transam/xlog.c:6952
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "konsistenter Wiederherstellungszustand erreicht bei %X/%X"
 
-#: access/transam/xlog.c:7107
+#: access/transam/xlog.c:7118
 msgid "invalid primary checkpoint link in control file"
 msgstr "ungültige primäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:7111
+#: access/transam/xlog.c:7122
 msgid "invalid secondary checkpoint link in control file"
 msgstr "ungültige sekundäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:7115
+#: access/transam/xlog.c:7126
 msgid "invalid checkpoint link in backup_label file"
 msgstr "ungültige Checkpoint-Verknüpfung in backup_label-Datei"
 
-#: access/transam/xlog.c:7129
+#: access/transam/xlog.c:7140
 msgid "invalid primary checkpoint record"
 msgstr "ungültiger primärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7133
+#: access/transam/xlog.c:7144
 msgid "invalid secondary checkpoint record"
 msgstr "ungültiger sekundärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7137
+#: access/transam/xlog.c:7148
 msgid "invalid checkpoint record"
 msgstr "ungültiger Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7148
+#: access/transam/xlog.c:7159
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7152
+#: access/transam/xlog.c:7163
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7156
+#: access/transam/xlog.c:7167
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "ungültige Resource-Manager-ID im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7168
+#: access/transam/xlog.c:7179
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "ungültige xl_info im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7172
+#: access/transam/xlog.c:7183
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "ungültige xl_info im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7176
+#: access/transam/xlog.c:7187
 msgid "invalid xl_info in checkpoint record"
 msgstr "ungültige xl_info im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7188
+#: access/transam/xlog.c:7199
 msgid "invalid length of primary checkpoint record"
 msgstr "ungültige Länge des primären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7192
+#: access/transam/xlog.c:7203
 msgid "invalid length of secondary checkpoint record"
 msgstr "ungültige Länge des sekundären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7196
+#: access/transam/xlog.c:7207
 msgid "invalid length of checkpoint record"
 msgstr "ungültige Länge des Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7358
+#: access/transam/xlog.c:7369
 msgid "shutting down"
 msgstr "fahre herunter"
 
-#: access/transam/xlog.c:7380
+#: access/transam/xlog.c:7391
 msgid "database system is shut down"
 msgstr "Datenbanksystem ist heruntergefahren"
 
-#: access/transam/xlog.c:7806
+#: access/transam/xlog.c:7817
 msgid ""
 "concurrent transaction log activity while database system is shutting down"
 msgstr ""
 "gleichzeitige Transaktionslog-Aktivität während das Datenbanksystem "
 "herunterfährt"
 
-#: access/transam/xlog.c:8039
+#: access/transam/xlog.c:8050
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "Restart-Punkt übersprungen, Wiederherstellung ist bereits beendet"
 
-#: access/transam/xlog.c:8064
+#: access/transam/xlog.c:8075
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "Restart-Punkt wird übersprungen, schon bei %X/%X erledigt"
 
-#: access/transam/xlog.c:8176
+#: access/transam/xlog.c:8187
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "Recovery-Restart-Punkt bei %X/%X"
 
-#: access/transam/xlog.c:8276
+#: access/transam/xlog.c:8287
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "Restore-Punkt »%s« erzeugt bei %X/%X"
 
-#: access/transam/xlog.c:8373
-msgid "online backup was cancelled, recovery cannot continue"
+#: access/transam/xlog.c:8384
+msgid "online backup was canceled, recovery cannot continue"
 msgstr ""
 "Online-Sicherung wurde storniert, Wiederherstellung kann nicht fortgesetzt "
 "werden"
 
-#: access/transam/xlog.c:8425
+#: access/transam/xlog.c:8436
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "unerwartete Timeline-ID %u (nach %u) im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:8461
+#: access/transam/xlog.c:8472
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr "unerwartete Timeline-ID %u (sollte %u sein) im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:8725 access/transam/xlog.c:8749
+#: access/transam/xlog.c:8736 access/transam/xlog.c:8760
 #, c-format
 msgid "could not fsync log file %u, segment %u: %m"
 msgstr "konnte Logdatei %u, Segment %u nicht fsyncen: %m"
 
-#: access/transam/xlog.c:8757
+#: access/transam/xlog.c:8768
 #, c-format
 msgid "could not fsync write-through log file %u, segment %u: %m"
 msgstr "konnte Write-Through-Logdatei %u, Segment %u nicht fsyncen: %m"
 
-#: access/transam/xlog.c:8766
+#: access/transam/xlog.c:8777
 #, c-format
 msgid "could not fdatasync log file %u, segment %u: %m"
 msgstr "konnte Logdatei %u, Segment %u nicht fdatasyncen: %m"
 
-#: access/transam/xlog.c:8847 access/transam/xlog.c:9123
-#, fuzzy
+#: access/transam/xlog.c:8858 access/transam/xlog.c:9134
 msgid "must be superuser or replication role to run a backup"
-msgstr "nur Superuser können ein Backup ausführen"
+msgstr "nur Superuser und Replikationsrollen können ein Backup ausführen"
 
-#: access/transam/xlog.c:8852 access/transam/xlog.c:9128
-#: access/transam/xlog.c:9391 access/transam/xlog.c:9423
-#: access/transam/xlog.c:9464 access/transam/xlog.c:9497
-#: access/transam/xlog.c:9604 access/transam/xlog.c:9679
+#: access/transam/xlog.c:8863 access/transam/xlog.c:9139
+#: access/transam/xlog.c:9402 access/transam/xlog.c:9434
+#: access/transam/xlog.c:9475 access/transam/xlog.c:9508
+#: access/transam/xlog.c:9615 access/transam/xlog.c:9690
 msgid "recovery is in progress"
 msgstr "Wiederherstellung läuft"
 
-#: access/transam/xlog.c:8853 access/transam/xlog.c:9129
-#: access/transam/xlog.c:9392 access/transam/xlog.c:9424
-#: access/transam/xlog.c:9465 access/transam/xlog.c:9498
+#: access/transam/xlog.c:8864 access/transam/xlog.c:9140
+#: access/transam/xlog.c:9403 access/transam/xlog.c:9435
+#: access/transam/xlog.c:9476 access/transam/xlog.c:9509
 msgid "WAL control functions cannot be executed during recovery."
 msgstr ""
 "während der Wiederherstellung können keine WAL-Kontrollfunktionen ausgeführt "
 "werden"
 
-#: access/transam/xlog.c:8858 access/transam/xlog.c:9134
+#: access/transam/xlog.c:8869 access/transam/xlog.c:9145
 msgid "WAL level not sufficient for making an online backup"
 msgstr "WAL-Level nicht ausreichend, um Online-Sicherung durchzuführen"
 
-#: access/transam/xlog.c:8859 access/transam/xlog.c:9135
-#: access/transam/xlog.c:9430
+#: access/transam/xlog.c:8870 access/transam/xlog.c:9146
+#: access/transam/xlog.c:9441
 msgid ""
 "wal_level must be set to \"archive\" or \"hot_standby\" at server start."
 msgstr ""
 "wal_level muss beim Serverstart auf »archive« oder »hot_standby« gesetzt "
 "werden."
 
-#: access/transam/xlog.c:8864
+#: access/transam/xlog.c:8875
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "Backup-Label zu lang (maximal %d Bytes)"
 
-#: access/transam/xlog.c:8905 access/transam/xlog.c:9006
+#: access/transam/xlog.c:8916 access/transam/xlog.c:9017
 msgid "a backup is already in progress"
 msgstr "ein Backup läuft bereits"
 
-#: access/transam/xlog.c:8906
+#: access/transam/xlog.c:8917
 msgid "Run pg_stop_backup() and try again."
 msgstr "Führen Sie pg_stop_backup() aus und versuchen Sie es nochmal."
 
-#: access/transam/xlog.c:9007
+#: access/transam/xlog.c:9018
 #, c-format
 msgid ""
 "If you're sure there is no backup in progress, remove file \"%s\" and try "
@@ -2074,29 +1976,29 @@ msgstr ""
 "Wenn Sie sicher sind, dass noch kein Backup läuft, entfernen Sie die Datei "
 "»%s« und versuchen Sie es noch einmal."
 
-#: access/transam/xlog.c:9021 access/transam/xlog.c:9267
+#: access/transam/xlog.c:9032 access/transam/xlog.c:9278
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht schreiben: %m"
 
-#: access/transam/xlog.c:9179
+#: access/transam/xlog.c:9190
 msgid "a backup is not in progress"
 msgstr "es läuft kein Backup"
 
-#: access/transam/xlog.c:9218 access/transam/xlog.c:9745
-#: access/transam/xlog.c:9751
+#: access/transam/xlog.c:9229 access/transam/xlog.c:9756
+#: access/transam/xlog.c:9762
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "ungültige Daten in Datei »%s«"
 
-#: access/transam/xlog.c:9316
+#: access/transam/xlog.c:9327
 msgid ""
 "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
 msgstr ""
 "Aufräumen nach pg_stop_backup beendet, warte bis die benötigten WAL-Segmente "
 "archiviert sind"
 
-#: access/transam/xlog.c:9326
+#: access/transam/xlog.c:9337
 #, c-format
 msgid ""
 "pg_stop_backup still waiting for all required WAL segments to be archived "
@@ -2105,22 +2007,22 @@ msgstr ""
 "pg_stop_backup wartet immer noch, bis alle benötigten WAL-Segmente "
 "archiviert sind (%d Sekunden abgelaufen)"
 
-#: access/transam/xlog.c:9328
+#: access/transam/xlog.c:9339
 msgid ""
 "Check that your archive_command is executing properly.  pg_stop_backup can "
-"be cancelled safely, but the database backup will not be usable without all "
+"be canceled safely, but the database backup will not be usable without all "
 "the WAL segments."
 msgstr ""
-"Prüfen Sie, ob das archive_command korrekt ausführt. pg_stop_backup kann "
-"sicher abgebrochen werden, aber die Datenbank ist nicht benutzbar ohne die "
-"fehlenden WAL-Segmente."
+"Prüfen Sie, ob das archive_command korrekt ausgeführt wird. pg_stop_backup "
+"kann gefahrlos abgebrochen werden, aber die Datenbanksicherung wird ohne die "
+"fehlenden WAL-Segmente nicht benutzbar sein."
 
-#: access/transam/xlog.c:9335
+#: access/transam/xlog.c:9346
 msgid "pg_stop_backup complete, all required WAL segments have been archived"
 msgstr ""
 "pg_stop_backup abgeschlossen, alle benötigten WAL-Segmente wurden archiviert"
 
-#: access/transam/xlog.c:9339
+#: access/transam/xlog.c:9350
 msgid ""
 "WAL archiving is not enabled; you must ensure that all required WAL segments "
 "are copied through other means to complete the backup"
@@ -2129,360 +2031,156 @@ msgstr ""
 "benötigten WAL-Segmente auf andere Art kopiert werden, um die Sicherung "
 "abzuschließen"
 
-#: access/transam/xlog.c:9386
+#: access/transam/xlog.c:9397
 msgid "must be superuser to switch transaction log files"
 msgstr "nur Superuser können Transaktionslogdateien umschalten"
 
-#: access/transam/xlog.c:9418
+#: access/transam/xlog.c:9429
 msgid "must be superuser to create a restore point"
 msgstr "nur Superuser können Restore-Punkte anlegen"
 
-#: access/transam/xlog.c:9429
+#: access/transam/xlog.c:9440
 msgid "WAL level not sufficient for creating a restore point"
 msgstr "WAL-Level nicht ausreichend, um Restore-Punkt anzulegen"
 
-#: access/transam/xlog.c:9437
+#: access/transam/xlog.c:9448
 #, c-format
 msgid "value too long for restore point (maximum %d characters)"
 msgstr "Wert zu lang für Restore-Punkt (maximal %d Zeichen)"
 
-#: access/transam/xlog.c:9605
+#: access/transam/xlog.c:9616
 msgid "pg_xlogfile_name_offset() cannot be executed during recovery."
 msgstr ""
 "pg_xlogfile_name_offset() kann nicht während der Wiederherstellung "
 "ausgeführt werden."
 
-#: access/transam/xlog.c:9615 access/transam/xlog.c:9687
+#: access/transam/xlog.c:9626 access/transam/xlog.c:9698
 #, c-format
 msgid "could not parse transaction log location \"%s\""
 msgstr "konnte Transaktionslogposition »%s« nicht interpretieren"
 
-#: access/transam/xlog.c:9680
+#: access/transam/xlog.c:9691
 msgid "pg_xlogfile_name() cannot be executed during recovery."
 msgstr ""
 "pg_xlogfile_name() kann nicht während der Wiederherstellung ausgeführt "
 "werden."
 
-#: access/transam/xlog.c:9777
+#: access/transam/xlog.c:9788
 #, c-format
 msgid "xlog redo %s"
 msgstr "xlog redo %s"
 
-#: access/transam/xlog.c:9817
-msgid "online backup mode cancelled"
+#: access/transam/xlog.c:9828
+msgid "online backup mode canceled"
 msgstr "Online-Sicherungsmodus storniert"
 
-#: access/transam/xlog.c:9818
+#: access/transam/xlog.c:9829
 #, c-format
 msgid "\"%s\" was renamed to \"%s\"."
 msgstr "»%s« wurde in »%s« umbenannt."
 
-#: access/transam/xlog.c:9825
-msgid "online backup mode was not cancelled"
+#: access/transam/xlog.c:9836
+msgid "online backup mode was not canceled"
 msgstr "Online-Sicherungsmodus wurde nicht storniert"
 
-#: access/transam/xlog.c:9826
+#: access/transam/xlog.c:9837
 #, c-format
 msgid "Could not rename \"%s\" to \"%s\": %m."
 msgstr "Konnte »%s« nicht in »%s« umbenennen: %m."
 
-#: access/transam/xlog.c:10323 access/transam/xlog.c:10345
+#: access/transam/xlog.c:10350 access/transam/xlog.c:10372
 #, c-format
 msgid "could not read from log file %u, segment %u, offset %u: %m"
 msgstr "konnte nicht aus Logdatei %u, Segment %u, Position %u lesen: %m"
 
-#: access/transam/xlog.c:10434
-#, fuzzy
+#: access/transam/xlog.c:10461
 msgid "received promote request"
-msgstr "intelligentes Herunterfahren verlangt"
+msgstr "Anforderung zum Befördern empfangen"
 
-#: access/transam/xlog.c:10447
+#: access/transam/xlog.c:10474
 #, c-format
 msgid "trigger file found: %s"
 msgstr "Triggerdatei gefunden: %s"
 
-#: access/common/tupdesc.c:575 parser/parse_relation.c:1169
+#: access/heap/heapam.c:1082 access/heap/heapam.c:1110
+#: access/heap/heapam.c:1140 catalog/aclchk.c:1678
 #, c-format
-msgid "column \"%s\" cannot be declared SETOF"
-msgstr "Spalte »%s« kann nicht als SETOF deklariert werden"
+msgid "\"%s\" is an index"
+msgstr "»%s« ist ein Index"
 
-#: access/common/heaptuple.c:646 access/common/heaptuple.c:1398
+#: access/heap/heapam.c:1087 access/heap/heapam.c:1115
+#: access/heap/heapam.c:1145 catalog/aclchk.c:1685 commands/tablecmds.c:2269
+#: commands/tablecmds.c:7436 commands/tablecmds.c:9018
 #, c-format
-msgid "number of columns (%d) exceeds limit (%d)"
-msgstr "Anzahl der Spalten (%d) überschreitet Maximum (%d)"
+msgid "\"%s\" is a composite type"
+msgstr "»%s« ist ein zusammengesetzter Typ"
 
-#: access/common/indextuple.c:57
+#: access/heap/heapam.c:3211 access/heap/heapam.c:3242
+#: access/heap/heapam.c:3277
 #, c-format
-msgid "number of index columns (%d) exceeds limit (%d)"
-msgstr "Anzahl der Indexspalten (%d) überschreitet Maximum (%d)"
+msgid "could not obtain lock on row in relation \"%s\""
+msgstr "konnte Sperre für Zeile in Relation »%s« nicht setzen"
 
-#: access/common/indextuple.c:168
+#: access/heap/hio.c:175 access/heap/rewriteheap.c:597
 #, c-format
-msgid "index row requires %lu bytes, maximum size is %lu"
-msgstr "Indexzeile benötigt %lu Bytes, Maximalgröße ist %lu"
+msgid "row is too big: size %lu, maximum size %lu"
+msgstr "Zeile ist zu groß: Größe ist %lu, Maximalgröße ist %lu"
 
-#: access/common/printtup.c:278 tcop/fastpath.c:180 tcop/fastpath.c:554
-#: tcop/postgres.c:1664
+#: access/index/indexam.c:161 catalog/objectaddress.c:391
+#: commands/indexcmds.c:1542 commands/tablecmds.c:220
+#: commands/tablecmds.c:2486
 #, c-format
-msgid "unsupported format code: %d"
-msgstr "nicht unterstützter Formatcode: %d"
-
-#: access/common/reloptions.c:323
-msgid "user-defined relation parameter types limit exceeded"
-msgstr ""
-"Wertebereich des Typs für benutzerdefinierte Relationsparameter überschritten"
+msgid "\"%s\" is not an index"
+msgstr "»%s« ist kein Index"
 
-#: access/common/reloptions.c:622
-msgid "RESET must not include values for parameters"
-msgstr "RESET darf keinen Parameterwert enthalten"
+#: access/nbtree/nbtinsert.c:393
+#, c-format
+msgid "duplicate key value violates unique constraint \"%s\""
+msgstr "doppelter Schlüsselwert verletzt Unique-Constraint »%s«"
 
-#: access/common/reloptions.c:655
+#: access/nbtree/nbtinsert.c:395
 #, c-format
-msgid "unrecognized parameter namespace \"%s\""
-msgstr "unbekannter Parameter-Namensraum »%s«"
+msgid "Key %s already exists."
+msgstr "Schlüssel »%s« existiert bereits."
 
-#: access/common/reloptions.c:898
+#: access/nbtree/nbtinsert.c:457
 #, c-format
-msgid "unrecognized parameter \"%s\""
-msgstr "unbekannter Parameter »%s«"
+msgid "failed to re-find tuple within index \"%s\""
+msgstr "konnte Tupel mit Index »%s« nicht erneut finden"
 
-#: access/common/reloptions.c:923
+#: access/nbtree/nbtinsert.c:459
+msgid "This may be because of a non-immutable index expression."
+msgstr "Das kann daran liegen, dass der Indexausdruck nicht »immutable« ist."
+
+#: access/nbtree/nbtinsert.c:535 access/nbtree/nbtsort.c:487
+msgid ""
+"Values larger than 1/3 of a buffer page cannot be indexed.\n"
+"Consider a function index of an MD5 hash of the value, or use full text "
+"indexing."
+msgstr ""
+"Werte, die größer sind als 1/3 einer Pufferseite, können nicht indiziert "
+"werden.\n"
+"Erstellen Sie eventuell einen Funktionsindex auf einen MD5-Hash oder "
+"verwenden Sie Volltextindizierung."
+
+#: access/nbtree/nbtpage.c:161 access/nbtree/nbtpage.c:365
+#: parser/parse_utilcmd.c:1527
 #, c-format
-msgid "parameter \"%s\" specified more than once"
-msgstr "Parameter »%s« mehrmals angegeben"
+msgid "index \"%s\" is not a btree"
+msgstr "Index »%s« ist kein B-Tree"
 
-#: access/common/reloptions.c:938
+#: access/nbtree/nbtpage.c:167 access/nbtree/nbtpage.c:371
 #, c-format
-msgid "invalid value for boolean option \"%s\": %s"
-msgstr "ungültiger Wert für Boole'sche Option »%s«: »%s«"
+msgid "version mismatch in index \"%s\": file version %d, code version %d"
+msgstr ""
+"keine Versionsübereinstimmung in Index »%s«: Dateiversion %d, Code-Version %d"
 
-#: access/common/reloptions.c:949
+#: bootstrap/bootstrap.c:277 tcop/postgres.c:3388 postmaster/postmaster.c:681
 #, c-format
-msgid "invalid value for integer option \"%s\": %s"
-msgstr "ungültiger Wert für ganzzahlige Option »%s«: »%s«"
+msgid "--%s requires a value"
+msgstr "--%s benötigt einen Wert"
 
-#: access/common/reloptions.c:954 access/common/reloptions.c:972
-#, c-format
-msgid "value %s out of bounds for option \"%s\""
-msgstr "Wert %s ist außerhalb des gültigen Bereichs für Option »%s«"
-
-#: access/common/reloptions.c:956
-#, c-format
-msgid "Valid values are between \"%d\" and \"%d\"."
-msgstr "Gültige Werte sind zwischen »%d« und »%d«."
-
-#: access/common/reloptions.c:967
-#, c-format
-msgid "invalid value for floating point option \"%s\": %s"
-msgstr "ungültiger Wert für Gleitkommaoption »%s«: »%s«"
-
-#: access/common/reloptions.c:974
-#, c-format
-msgid "Valid values are between \"%f\" and \"%f\"."
-msgstr "Gültige Werte sind zwischen »%f« und »%f«."
-
-#: access/common/tupconvert.c:107
-#, c-format
-msgid "Returned type %s does not match expected type %s in column %d."
-msgstr ""
-"Zurückgegebener Typ %1$s stimmt in Spalte %3$d nicht mit erwartetem Typ %2$s "
-"überein."
-
-#: access/common/tupconvert.c:135
-#, c-format
-msgid ""
-"Number of returned columns (%d) does not match expected column count (%d)."
-msgstr ""
-"Anzahl der zurückgegebenen Spalten (%d) entspricht nicht der erwarteten "
-"Spaltenanzahl (%d)."
-
-#: access/common/tupconvert.c:240
-#, c-format
-msgid ""
-"Attribute \"%s\" of type %s does not match corresponding attribute of type "
-"%s."
-msgstr ""
-"Attribut »%s« von Typ %s stimmt nicht mit dem entsprechenden Attribut von "
-"Typ %s überein."
-
-#: access/common/tupconvert.c:252
-#, c-format
-msgid "Attribute \"%s\" of type %s does not exist in type %s."
-msgstr "Attribut »%s« von Typ %s existiert nicht in Typ %s."
-
-#: access/gin/ginentrypage.c:101 access/nbtree/nbtinsert.c:531
-#: access/nbtree/nbtsort.c:483
-#, c-format
-msgid "index row size %lu exceeds maximum %lu for index \"%s\""
-msgstr "Größe %lu der Indexzeile überschreitet Maximum %lu für Index »%s«"
-
-#: access/gin/ginscan.c:401
-msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
-msgstr ""
-"alte GIN-Indexe unterstützen keine Scans des ganzen Index oder Suchen nach "
-"NULL-Werten"
-
-#: access/gin/ginscan.c:402
-#, c-format
-msgid "To fix this, do REINDEX INDEX \"%s\"."
-msgstr "Um das zu reparieren, führen Sie REINDEX INDEX \"%s\" aus."
-
-#: access/gist/gist.c:230
-msgid "unlogged GiST indexes are not supported"
-msgstr "ungeloggte GiST-Indexe werden nicht unterstützt"
-
-#: access/gist/gist.c:715 access/gist/gistvacuum.c:271
-#, c-format
-msgid "index \"%s\" contains an inner tuple marked as invalid"
-msgstr "Index »%s« enthält ein inneres Tupel, das als ungültig markiert ist"
-
-#: access/gist/gist.c:717 access/gist/gistvacuum.c:273
-msgid ""
-"This is caused by an incomplete page split at crash recovery before "
-"upgrading to 9.1."
-msgstr ""
-
-#: access/gist/gist.c:718 access/gist/gistutil.c:585
-#: access/gist/gistutil.c:596 access/gist/gistvacuum.c:274
-#: access/hash/hashutil.c:173 access/hash/hashutil.c:184
-#: access/hash/hashutil.c:196 access/hash/hashutil.c:217
-#: access/nbtree/nbtpage.c:436 access/nbtree/nbtpage.c:447
-msgid "Please REINDEX it."
-msgstr "Bitte führen Sie REINDEX für den Index aus."
-
-#: access/gist/gistsplit.c:375
-#, c-format
-msgid "picksplit method for column %d of index \"%s\" failed"
-msgstr "Picksplit-Methode für Spalte %d von Index »%s« fehlgeschlagen"
-
-#: access/gist/gistsplit.c:377
-msgid ""
-"The index is not optimal. To optimize it, contact a developer, or try to use "
-"the column as the second one in the CREATE INDEX command."
-msgstr ""
-"Der Index ist nicht optimal. Um ihn zu optimieren, kontaktieren Sie einen "
-"Entwickler oder versuchen Sie, die Spalte als die zweite im CREATE-INDEX-"
-"Befehl zu verwenden."
-
-#: access/gist/gistutil.c:582 access/hash/hashutil.c:170
-#: access/nbtree/nbtpage.c:433
-#, c-format
-msgid "index \"%s\" contains unexpected zero page at block %u"
-msgstr "Index »%s« enthält unerwartete Nullseite bei Block %u"
-
-#: access/gist/gistutil.c:593 access/hash/hashutil.c:181
-#: access/hash/hashutil.c:193 access/nbtree/nbtpage.c:444
-#, c-format
-msgid "index \"%s\" contains corrupted page at block %u"
-msgstr "Index »%s« enthält korrupte Seite bei Block %u"
-
-#: access/hash/hashutil.c:209
-#, c-format
-msgid "index \"%s\" is not a hash index"
-msgstr "Index »%s« ist kein Hash-Index"
-
-#: access/hash/hashutil.c:215
-#, c-format
-msgid "index \"%s\" has wrong hash version"
-msgstr "Index »%s« hat falsche Hash-Version"
-
-#: access/hash/hashinsert.c:73
-#, c-format
-msgid "index row size %lu exceeds hash maximum %lu"
-msgstr "Größe der Indexzeile %lu überschreitet Maximum für Hash-Index %lu"
-
-#: access/hash/hashinsert.c:76
-msgid "Values larger than a buffer page cannot be indexed."
-msgstr ""
-"Werte, die größer sind als eine Pufferseite, können nicht indiziert werden."
-
-#: access/hash/hashovfl.c:547
-#, c-format
-msgid "out of overflow pages in hash index \"%s\""
-msgstr "keine Überlaufseiten in Hash-Index »%s« mehr"
-
-#: access/hash/hashsearch.c:152
-msgid "hash indexes do not support whole-index scans"
-msgstr "Hash-Indexe unterstützen keine Scans des ganzen Index"
-
-#: access/heap/heapam.c:1086 access/heap/heapam.c:1114
-#: access/heap/heapam.c:1144 catalog/aclchk.c:1678
-#, c-format
-msgid "\"%s\" is an index"
-msgstr "»%s« ist ein Index"
-
-#: access/heap/heapam.c:1091 access/heap/heapam.c:1119
-#: access/heap/heapam.c:1149 catalog/aclchk.c:1685 commands/tablecmds.c:2259
-#: commands/tablecmds.c:7379 commands/tablecmds.c:8962
-#, c-format
-msgid "\"%s\" is a composite type"
-msgstr "»%s« ist ein zusammengesetzter Typ"
-
-#: access/heap/heapam.c:3212 access/heap/heapam.c:3243
-#: access/heap/heapam.c:3278
-#, c-format
-msgid "could not obtain lock on row in relation \"%s\""
-msgstr "konnte Sperre für Zeile in Relation »%s« nicht setzen"
-
-#: access/heap/hio.c:175 access/heap/rewriteheap.c:597
-#, c-format
-msgid "row is too big: size %lu, maximum size %lu"
-msgstr "Zeile ist zu groß: Größe ist %lu, Maximalgröße ist %lu"
-
-#: access/index/indexam.c:161 catalog/objectaddress.c:391
-#: commands/indexcmds.c:1541 commands/tablecmds.c:219
-#: commands/tablecmds.c:2476
-#, c-format
-msgid "\"%s\" is not an index"
-msgstr "»%s« ist kein Index"
-
-#: access/nbtree/nbtinsert.c:393
-#, c-format
-msgid "duplicate key value violates unique constraint \"%s\""
-msgstr "doppelter Schlüsselwert verletzt Unique-Constraint »%s«"
-
-#: access/nbtree/nbtinsert.c:395
-#, c-format
-msgid "Key %s already exists."
-msgstr "Schlüssel »%s« existiert bereits."
-
-#: access/nbtree/nbtinsert.c:457
-#, c-format
-msgid "failed to re-find tuple within index \"%s\""
-msgstr "konnte Tupel mit Index »%s« nicht erneut finden"
-
-#: access/nbtree/nbtinsert.c:459
-msgid "This may be because of a non-immutable index expression."
-msgstr "Das kann daran liegen, dass der Indexausdruck nicht »immutable« ist."
-
-#: access/nbtree/nbtinsert.c:535 access/nbtree/nbtsort.c:487
-msgid ""
-"Values larger than 1/3 of a buffer page cannot be indexed.\n"
-"Consider a function index of an MD5 hash of the value, or use full text "
-"indexing."
-msgstr ""
-"Werte, die größer sind als 1/3 einer Pufferseite, können nicht indiziert "
-"werden.\n"
-"Erstellen Sie eventuell einen Funktionsindex auf einen MD5-Hash oder "
-"verwenden Sie Volltextindizierung."
-
-#: access/nbtree/nbtpage.c:161 access/nbtree/nbtpage.c:365
-#, c-format
-msgid "index \"%s\" is not a btree"
-msgstr "Index »%s« ist kein B-Tree"
-
-#: access/nbtree/nbtpage.c:167 access/nbtree/nbtpage.c:371
-#, c-format
-msgid "version mismatch in index \"%s\": file version %d, code version %d"
-msgstr ""
-"keine Versionsübereinstimmung in Index »%s«: Dateiversion %d, Code-Version %d"
-
-#: bootstrap/bootstrap.c:277 tcop/postgres.c:3386 postmaster/postmaster.c:681
-#, c-format
-msgid "--%s requires a value"
-msgstr "--%s benötigt einen Wert"
-
-#: bootstrap/bootstrap.c:282 tcop/postgres.c:3391 postmaster/postmaster.c:686
+#: bootstrap/bootstrap.c:282 tcop/postgres.c:3393 postmaster/postmaster.c:686
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s benötigt einen Wert"
@@ -2498,16 +2196,6 @@ msgstr "Versuchen Sie »%s --help« für weitere Informationen.\n"
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: ungültige Kommandozeilenargumente\n"
 
-#: catalog/pg_collation.c:75
-#, c-format
-msgid "collation \"%s\" for encoding \"%s\" already exists"
-msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits"
-
-#: catalog/pg_collation.c:89
-#, c-format
-msgid "collation \"%s\" already exists"
-msgstr "Sortierfolge »%s« existiert bereits"
-
 #: catalog/aclchk.c:200
 msgid "grant options can only be granted to roles"
 msgstr "Grant-Optionen können nur Rollen gewährt werden"
@@ -2619,16 +2307,16 @@ msgstr "Spaltenprivilegien sind nur für Relation gültig"
 msgid "large object %u does not exist"
 msgstr "Large Object %u existiert nicht"
 
-#: catalog/aclchk.c:833 catalog/aclchk.c:841 commands/collationcmds.c:93
-#: commands/copy.c:863 commands/copy.c:881 commands/copy.c:889
-#: commands/copy.c:897 commands/copy.c:905 commands/copy.c:913
-#: commands/copy.c:921 commands/copy.c:929 commands/copy.c:945
-#: commands/copy.c:959 commands/dbcommands.c:146 commands/dbcommands.c:154
+#: catalog/aclchk.c:833 catalog/aclchk.c:841 commands/copy.c:863
+#: commands/copy.c:881 commands/copy.c:889 commands/copy.c:897
+#: commands/copy.c:905 commands/copy.c:913 commands/copy.c:921
+#: commands/copy.c:929 commands/copy.c:945 commands/copy.c:959
+#: commands/dbcommands.c:146 commands/dbcommands.c:154
 #: commands/dbcommands.c:162 commands/dbcommands.c:170
 #: commands/dbcommands.c:178 commands/dbcommands.c:186
 #: commands/dbcommands.c:194 commands/dbcommands.c:1315
-#: commands/dbcommands.c:1323 commands/foreigncmds.c:386
-#: commands/foreigncmds.c:395 commands/functioncmds.c:488
+#: commands/dbcommands.c:1323 commands/foreigncmds.c:396
+#: commands/foreigncmds.c:405 commands/functioncmds.c:488
 #: commands/functioncmds.c:578 commands/functioncmds.c:586
 #: commands/functioncmds.c:594 commands/functioncmds.c:1982
 #: commands/functioncmds.c:1990 commands/user.c:133 commands/user.c:150
@@ -2638,12 +2326,12 @@ msgstr "Large Object %u existiert nicht"
 #: commands/user.c:230 commands/user.c:501 commands/user.c:513
 #: commands/user.c:521 commands/user.c:529 commands/user.c:537
 #: commands/user.c:545 commands/user.c:553 commands/user.c:561
-#: commands/user.c:570 commands/user.c:578 commands/sequence.c:1119
-#: commands/sequence.c:1127 commands/sequence.c:1135 commands/sequence.c:1143
-#: commands/sequence.c:1151 commands/sequence.c:1159 commands/sequence.c:1167
-#: commands/sequence.c:1175 commands/typecmds.c:282 commands/extension.c:1248
+#: commands/user.c:570 commands/user.c:578 commands/sequence.c:1135
+#: commands/sequence.c:1143 commands/sequence.c:1151 commands/sequence.c:1159
+#: commands/sequence.c:1167 commands/sequence.c:1175 commands/sequence.c:1183
+#: commands/sequence.c:1191 commands/typecmds.c:282 commands/extension.c:1248
 #: commands/extension.c:1256 commands/extension.c:1264
-#: commands/extension.c:2473
+#: commands/extension.c:2473 commands/collationcmds.c:93
 msgid "conflicting or redundant options"
 msgstr "widersprüchliche oder überflüssige Optionen"
 
@@ -2651,22 +2339,22 @@ msgstr "widersprüchliche oder überflüssige Optionen"
 msgid "default privileges cannot be set for columns"
 msgstr "Vorgabeprivilegien können nicht für Spalten gesetzt werden"
 
-#: catalog/aclchk.c:1428 catalog/objectaddress.c:536 commands/analyze.c:355
-#: commands/copy.c:3774 commands/sequence.c:1403 commands/tablecmds.c:4543
-#: commands/tablecmds.c:4633 commands/tablecmds.c:4680
-#: commands/tablecmds.c:4776 commands/tablecmds.c:4820
-#: commands/tablecmds.c:4899 commands/tablecmds.c:4983
-#: commands/tablecmds.c:6591 commands/tablecmds.c:6799 commands/trigger.c:590
-#: parser/analyze.c:2038 parser/parse_relation.c:2043
+#: catalog/aclchk.c:1428 catalog/objectaddress.c:541 commands/analyze.c:343
+#: commands/copy.c:3774 commands/sequence.c:1419 commands/tablecmds.c:4591
+#: commands/tablecmds.c:4681 commands/tablecmds.c:4728
+#: commands/tablecmds.c:4824 commands/tablecmds.c:4868
+#: commands/tablecmds.c:4947 commands/tablecmds.c:5031
+#: commands/tablecmds.c:6647 commands/tablecmds.c:6856 commands/trigger.c:585
+#: parser/analyze.c:2039 parser/parse_relation.c:2043
 #: parser/parse_relation.c:2100 parser/parse_target.c:895
-#: parser/parse_type.c:117 utils/adt/acl.c:2772 utils/adt/ruleutils.c:1578
+#: parser/parse_type.c:117 utils/adt/acl.c:2772 utils/adt/ruleutils.c:1580
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "Spalte »%s« von Relation »%s« existiert nicht"
 
 #: catalog/aclchk.c:1693 catalog/objectaddress.c:398 commands/sequence.c:1035
-#: commands/tablecmds.c:207 commands/tablecmds.c:2237
-#: commands/tablecmds.c:2484 commands/tablecmds.c:8912 utils/adt/acl.c:2008
+#: commands/tablecmds.c:208 commands/tablecmds.c:2247
+#: commands/tablecmds.c:2494 commands/tablecmds.c:8968 utils/adt/acl.c:2008
 #: utils/adt/acl.c:2038 utils/adt/acl.c:2070 utils/adt/acl.c:2102
 #: utils/adt/acl.c:2130 utils/adt/acl.c:2160
 #, c-format
@@ -2717,7 +2405,7 @@ msgid "permission denied for relation %s"
 msgstr "keine Berechtigung für Relation %s"
 
 #: catalog/aclchk.c:3072 commands/sequence.c:550 commands/sequence.c:749
-#: commands/sequence.c:791 commands/sequence.c:827 commands/sequence.c:1454
+#: commands/sequence.c:791 commands/sequence.c:827 commands/sequence.c:1470
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "keine Berechtigung für Sequenz %s"
@@ -3062,18 +2750,10 @@ msgstr "kann %s nicht löschen, weil andere Objekte davon abhängen"
 
 #: catalog/dependency.c:928 catalog/dependency.c:929 catalog/dependency.c:935
 #: catalog/dependency.c:936 catalog/dependency.c:947 catalog/dependency.c:948
-#: catalog/objectaddress.c:315 commands/user.c:956 commands/user.c:957
-#: commands/tablecmds.c:687 commands/trigger.c:899 commands/trigger.c:915
-#: commands/trigger.c:927 tcop/postgres.c:4297 storage/lmgr/deadlock.c:942
-#: storage/lmgr/deadlock.c:943 nodes/print.c:85 port/win32/security.c:51
-#: utils/adt/xml.c:1364 utils/adt/xml.c:1365 utils/adt/xml.c:1371
-#: utils/adt/xml.c:1442 utils/fmgr/dfmgr.c:381 utils/misc/guc.c:5395
-#: utils/misc/guc.c:5709 utils/misc/guc.c:7978 utils/misc/guc.c:7982
-#: utils/misc/guc.c:7984 utils/misc/guc.c:8012 utils/misc/guc.c:8016
-#: utils/misc/guc.c:8018 utils/misc/guc.c:8046 utils/misc/guc.c:8050
-#: utils/misc/guc.c:8052 utils/misc/guc.c:8080 utils/misc/guc.c:8084
-#: utils/misc/guc.c:8086 utils/misc/guc.c:8114 utils/misc/guc.c:8119
-#: utils/misc/guc.c:8121
+#: catalog/objectaddress.c:315 commands/user.c:957 commands/tablecmds.c:689
+#: storage/lmgr/deadlock.c:943 port/win32/security.c:51 utils/misc/guc.c:5397
+#: utils/misc/guc.c:5711 utils/misc/guc.c:7994 utils/misc/guc.c:8028
+#: utils/misc/guc.c:8062 utils/misc/guc.c:8096 utils/misc/guc.c:8131
 #, c-format
 msgid "%s"
 msgstr "%s"
@@ -3317,79 +2997,79 @@ msgstr "Relation %s"
 msgid "operator family %s for access method %s"
 msgstr "Operatorfamilie %s für Zugriffsmethode %s"
 
-#: catalog/heap.c:263
+#: catalog/heap.c:264
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "keine Berechtigung, um »%s.%s« zu erzeugen"
 
-#: catalog/heap.c:265
+#: catalog/heap.c:266
 msgid "System catalog modifications are currently disallowed."
 msgstr "Änderungen an Systemkatalogen sind gegenwärtig nicht erlaubt."
 
-#: catalog/heap.c:388 commands/tablecmds.c:1258 commands/tablecmds.c:1675
-#: commands/tablecmds.c:4228
+#: catalog/heap.c:389 commands/tablecmds.c:1268 commands/tablecmds.c:1685
+#: commands/tablecmds.c:4276
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "Tabellen können höchstens %d Spalten haben"
 
-#: catalog/heap.c:405
+#: catalog/heap.c:406
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "Spaltenname »%s« steht im Konflikt mit dem Namen einer Systemspalte"
 
-#: catalog/heap.c:421
+#: catalog/heap.c:422
 #, c-format
 msgid "column name \"%s\" specified more than once"
 msgstr "Spaltenname »%s« mehrmals angegeben"
 
-#: catalog/heap.c:471
+#: catalog/heap.c:472
 #, c-format
 msgid "column \"%s\" has type \"unknown\""
 msgstr "Spalte »%s« hat Typ »unknown«"
 
-#: catalog/heap.c:472
+#: catalog/heap.c:473
 msgid "Proceeding with relation creation anyway."
 msgstr "Relation wird trotzdem erzeugt."
 
-#: catalog/heap.c:485
+#: catalog/heap.c:486
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "Spalte »%s« hat Pseudotyp %s"
 
-#: catalog/heap.c:508
+#: catalog/heap.c:516
 #, c-format
 msgid "composite type %s cannot be made a member of itself"
 msgstr "zusammengesetzter Typ %s kann nicht Teil von sich selbst werden"
 
-#: catalog/heap.c:550
+#: catalog/heap.c:558
 #, c-format
 msgid "no collation was derived for column \"%s\" with collatable type %s"
 msgstr ""
 "für Spalte »%s« mit sortierbarem Typ %s wurde keine Sortierfolge abgeleitet"
 
-#: catalog/heap.c:552 commands/indexcmds.c:930 commands/view.c:145
+#: catalog/heap.c:560 commands/indexcmds.c:931 commands/view.c:145
 #: regex/regc_pg_locale.c:259 utils/adt/formatting.c:1520
 #: utils/adt/formatting.c:1570 utils/adt/formatting.c:1641
 #: utils/adt/formatting.c:1691 utils/adt/formatting.c:1774
-#: utils/adt/formatting.c:1836 utils/adt/like.c:212 utils/adt/selfuncs.c:4853
-#: utils/adt/selfuncs.c:4970 utils/adt/varlena.c:1315
+#: utils/adt/formatting.c:1836 utils/adt/like.c:212 utils/adt/selfuncs.c:4855
+#: utils/adt/selfuncs.c:4972 utils/adt/varlena.c:1315
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr ""
 "Verwenden Sie die COLLATE-Klausel, um die Sortierfolge explizit zu setzen."
 
-#: catalog/heap.c:1003 catalog/index.c:767 commands/tablecmds.c:2308
+#: catalog/heap.c:1011 catalog/index.c:769 commands/tablecmds.c:2318
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "Relation »%s« existiert bereits"
 
-#: catalog/heap.c:1019 catalog/pg_type.c:396 catalog/pg_type.c:696
+#: catalog/heap.c:1027 catalog/pg_type.c:396 catalog/pg_type.c:695
 #: commands/typecmds.c:224 commands/typecmds.c:806 commands/typecmds.c:1145
-#: commands/typecmds.c:1621
+#: commands/typecmds.c:1622
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "Typ »%s« existiert bereits"
 
-#: catalog/heap.c:1020
+#: catalog/heap.c:1028
 msgid ""
 "A relation has an associated type of the same name, so you must use a name "
 "that doesn't conflict with any existing type."
@@ -3397,74 +3077,74 @@ msgstr ""
 "Eine Relation hat einen zugehörigen Typ mit dem selben Namen, daher müssen "
 "Sie einen Namen wählen, der nicht mit einem bestehenden Typ kollidiert."
 
-#: catalog/heap.c:2122
+#: catalog/heap.c:2141
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "Check-Constraint »%s« existiert bereits"
 
-#: catalog/heap.c:2266 catalog/pg_constraint.c:645 commands/tablecmds.c:5302
+#: catalog/heap.c:2287 catalog/pg_constraint.c:645 commands/tablecmds.c:5350
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "Constraint »%s« existiert bereits für Relation »%s«"
 
-#: catalog/heap.c:2270
+#: catalog/heap.c:2291
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "Constraint »%s« wird mit geerbter Definition zusammengeführt"
 
-#: catalog/heap.c:2368
+#: catalog/heap.c:2389
 msgid "cannot use column references in default expression"
 msgstr "Spaltenverweise können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:2376
+#: catalog/heap.c:2397
 msgid "default expression must not return a set"
 msgstr "Vorgabeausdruck kann keine Ergebnismenge zurückgeben"
 
-#: catalog/heap.c:2384
+#: catalog/heap.c:2405
 msgid "cannot use subquery in default expression"
 msgstr "Unteranfragen können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:2388
+#: catalog/heap.c:2409
 msgid "cannot use aggregate function in default expression"
 msgstr "Aggregatfunktionen können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:2392
+#: catalog/heap.c:2413
 msgid "cannot use window function in default expression"
 msgstr "Fensterfunktionen können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:2411 rewrite/rewriteHandler.c:992
+#: catalog/heap.c:2432 rewrite/rewriteHandler.c:1030
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "Spalte »%s« hat Typ %s, aber der Vorgabeausdruck hat Typ %s"
 
-#: catalog/heap.c:2416 commands/prepare.c:370 parser/parse_node.c:397
+#: catalog/heap.c:2437 commands/prepare.c:370 parser/parse_node.c:397
 #: parser/parse_target.c:489 parser/parse_target.c:735
-#: parser/parse_target.c:745 rewrite/rewriteHandler.c:997
+#: parser/parse_target.c:745 rewrite/rewriteHandler.c:1035
 msgid "You will need to rewrite or cast the expression."
 msgstr "Sie müssen den Ausdruck umschreiben oder eine Typumwandlung vornehmen."
 
-#: catalog/heap.c:2462
+#: catalog/heap.c:2483
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "nur Verweise auf Tabelle »%s« sind im Check-Constraint zugelassen"
 
-#: catalog/heap.c:2471 commands/typecmds.c:2385
+#: catalog/heap.c:2492 commands/typecmds.c:2386
 msgid "cannot use subquery in check constraint"
 msgstr "Unteranfragen können nicht in Check-Constraints verwendet werden"
 
-#: catalog/heap.c:2475 commands/typecmds.c:2389
+#: catalog/heap.c:2496 commands/typecmds.c:2390
 msgid "cannot use aggregate function in check constraint"
 msgstr "Aggregatfunktionen können nicht in Check-Constraints verwendet werden"
 
-#: catalog/heap.c:2479 commands/typecmds.c:2393
+#: catalog/heap.c:2500 commands/typecmds.c:2394
 msgid "cannot use window function in check constraint"
 msgstr "Fensterfunktionen können nicht in Check-Constraints verwendet werden"
 
-#: catalog/heap.c:2718
+#: catalog/heap.c:2739
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "nicht unterstützte Kombination aus ON COMMIT und Fremdschlüssel"
 
-#: catalog/heap.c:2719
+#: catalog/heap.c:2740
 #, c-format
 msgid ""
 "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT "
@@ -3473,62 +3153,62 @@ msgstr ""
 "Tabelle »%s« verweist auf »%s«, aber sie haben nicht die gleiche ON-COMMIT-"
 "Einstellung"
 
-#: catalog/heap.c:2724
+#: catalog/heap.c:2745
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr ""
 "kann eine Tabelle, die in einen Fremdschlüssel-Constraint eingebunden ist, "
 "nicht leeren"
 
-#: catalog/heap.c:2725
+#: catalog/heap.c:2746
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "Tabelle »%s« verweist auf »%s«."
 
-#: catalog/heap.c:2727
+#: catalog/heap.c:2748
 #, c-format
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr ""
 "Leeren Sie die Tabelle »%s« gleichzeitig oder verwenden Sie TRUNCATE ... "
 "CASCADE."
 
-#: catalog/index.c:200 parser/parse_utilcmd.c:1294 parser/parse_utilcmd.c:1380
+#: catalog/index.c:202 parser/parse_utilcmd.c:1296 parser/parse_utilcmd.c:1382
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "mehrere Primärschlüssel für Tabelle »%s« nicht erlaubt"
 
-#: catalog/index.c:218
+#: catalog/index.c:220
 msgid "primary keys cannot be expressions"
 msgstr "Primärschlüssel können keine Ausdrücke sein"
 
-#: catalog/index.c:728 catalog/index.c:1122
+#: catalog/index.c:730 catalog/index.c:1124
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr ""
 "benutzerdefinierte Indexe für Systemkatalogtabellen werden nicht unterstützt"
 
-#: catalog/index.c:738
+#: catalog/index.c:740
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr ""
 "nebenläufige Indexerzeugung für Systemkatalogtabellen wird nicht unterstützt"
 
-#: catalog/index.c:756
+#: catalog/index.c:758
 msgid "shared indexes cannot be created after initdb"
 msgstr "Cluster-globale Indexe können nicht nach initdb erzeugt werden"
 
-#: catalog/index.c:1719
+#: catalog/index.c:1727
 #, c-format
 msgid "building index \"%s\" on table \"%s\""
 msgstr "baue Index »%s« von Tabelle »%s«"
 
-#: catalog/index.c:2777
+#: catalog/index.c:2800
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht reindizieren"
 
-#: catalog/namespace.c:235 catalog/namespace.c:309 commands/trigger.c:4153
+#: catalog/namespace.c:235 catalog/namespace.c:309 commands/trigger.c:4147
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "Verweise auf andere Datenbanken sind nicht implementiert: »%s.%s.%s«"
 
-#: catalog/namespace.c:253 catalog/namespace.c:320
+#: catalog/namespace.c:253
 msgid "temporary tables cannot specify a schema name"
 msgstr "temporäre Tabellen können keinen Schemanamen angeben"
 
@@ -3543,89 +3223,102 @@ msgstr "Relation »%s.%s« existiert nicht"
 msgid "relation \"%s\" does not exist"
 msgstr "Relation »%s« existiert nicht"
 
-#: catalog/namespace.c:355 catalog/namespace.c:2548
+#: catalog/namespace.c:349 catalog/namespace.c:2580
 msgid "no schema has been selected to create in"
 msgstr "kein Schema für die Objekterzeugung ausgewählt"
 
-#: catalog/namespace.c:1865 commands/tsearchcmds.c:319
+#: catalog/namespace.c:401 catalog/namespace.c:414
+msgid "cannot create relations in temporary schemas of other sessions"
+msgstr "kann keine Relationen in temporären Schemas anderer Sitzungen erzeugen"
+
+#: catalog/namespace.c:405
+msgid "cannot create temporary relation in non-temporary schema"
+msgstr ""
+"kann keine temporäre Relation in einem nicht-temporären Schema erzeugen"
+
+#: catalog/namespace.c:420
+msgid "only temporary relations may be created in temporary schemas"
+msgstr "nur temporäre Relationen können in temporären Schemas erzeugt werden"
+
+#: catalog/namespace.c:1897 commands/tsearchcmds.c:320
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "Textsucheparser »%s« existiert nicht"
 
-#: catalog/namespace.c:1988 commands/tsearchcmds.c:768
+#: catalog/namespace.c:2020 commands/tsearchcmds.c:769
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "Textsuchewörterbuch »%s« existiert nicht"
 
-#: catalog/namespace.c:2112 commands/tsearchcmds.c:1303
+#: catalog/namespace.c:2144 commands/tsearchcmds.c:1304
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "Textsuchevorlage »%s« existiert nicht"
 
-#: catalog/namespace.c:2235 commands/tsearchcmds.c:1753
+#: catalog/namespace.c:2267 commands/tsearchcmds.c:1753
 #: commands/tsearchcmds.c:1909
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "Textsuchekonfiguration »%s« existiert nicht"
 
-#: catalog/namespace.c:2348 parser/parse_expr.c:775 parser/parse_target.c:1085
+#: catalog/namespace.c:2380 parser/parse_expr.c:775 parser/parse_target.c:1085
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "Verweise auf andere Datenbanken sind nicht implementiert: %s"
 
-#: catalog/namespace.c:2354 parser/parse_expr.c:782 parser/parse_target.c:1092
-#: gram.y:11615 gram.y:12814
+#: catalog/namespace.c:2386 parser/parse_expr.c:782 parser/parse_target.c:1092
+#: gram.y:11611 gram.y:12810
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "falscher qualifizierter Name (zu viele Namensteile): %s"
 
-#: catalog/namespace.c:2482
+#: catalog/namespace.c:2514
 #, c-format
 msgid "%s is already in schema \"%s\""
 msgstr "%s ist bereits in Schema »%s«"
 
-#: catalog/namespace.c:2490
+#: catalog/namespace.c:2522
 msgid "cannot move objects into or out of temporary schemas"
 msgstr "Objekte können nicht in oder aus temporären Schemas verschoben werden"
 
-#: catalog/namespace.c:2496
+#: catalog/namespace.c:2528
 msgid "cannot move objects into or out of TOAST schema"
 msgstr "Objekte können nicht in oder aus TOAST-Schemas verschoben werden"
 
-#: catalog/namespace.c:2569 catalog/namespace.c:3554 catalog/namespace.c:3557
+#: catalog/namespace.c:2601 catalog/namespace.c:3586 catalog/namespace.c:3589
 #: commands/schemacmds.c:253 commands/schemacmds.c:322
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "Schema »%s« existiert nicht"
 
-#: catalog/namespace.c:2600
+#: catalog/namespace.c:2632
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "falscher Relationsname (zu viele Namensteile): %s"
 
-#: catalog/namespace.c:2999
+#: catalog/namespace.c:3031
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" does not exist"
 msgstr "Sortierfolge »%s« für Kodierung »%s« existiert nicht"
 
-#: catalog/namespace.c:3051
+#: catalog/namespace.c:3083
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "Konversion »%s« existiert nicht"
 
-#: catalog/namespace.c:3256
+#: catalog/namespace.c:3288
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr ""
 "keine Berechtigung, um temporäre Tabellen in Datenbank »%s« zu erzeugen"
 
-#: catalog/namespace.c:3272
+#: catalog/namespace.c:3304
 msgid "cannot create temporary tables during recovery"
 msgstr ""
 "während der Wiederherstellung können keine temporäre Tabellen erzeugt werden"
 
-#: catalog/namespace.c:3516 commands/tablespace.c:1121 commands/variable.c:59
-#: replication/syncrep.c:657 utils/misc/guc.c:8151
+#: catalog/namespace.c:3548 commands/tablespace.c:1121 commands/variable.c:59
+#: replication/syncrep.c:656 utils/misc/guc.c:8161
 msgid "List syntax is invalid."
 msgstr "Die Listensyntax ist ungültig."
 
@@ -3662,45 +3355,45 @@ msgstr "Fremddaten-Wrapper-Name kann nicht qualifiziert werden"
 msgid "server name cannot be qualified"
 msgstr "Servername kann nicht qualifiziert werden"
 
-#: catalog/objectaddress.c:405 catalog/toasting.c:91 commands/indexcmds.c:199
-#: commands/indexcmds.c:1573 commands/lockcmds.c:149 commands/tablecmds.c:201
-#: commands/tablecmds.c:1119 commands/tablecmds.c:2468
-#: commands/tablecmds.c:3778
+#: catalog/objectaddress.c:405 catalog/toasting.c:91 commands/indexcmds.c:200
+#: commands/indexcmds.c:1574 commands/lockcmds.c:149 commands/tablecmds.c:202
+#: commands/tablecmds.c:1129 commands/tablecmds.c:2478
+#: commands/tablecmds.c:3825 commands/tablecmds.c:6759
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "»%s« ist keine Tabelle"
 
-#: catalog/objectaddress.c:412 commands/tablecmds.c:213
-#: commands/tablecmds.c:2243 commands/tablecmds.c:2500
-#: commands/tablecmds.c:3793 commands/tablecmds.c:8920 commands/view.c:182
+#: catalog/objectaddress.c:412 commands/tablecmds.c:214
+#: commands/tablecmds.c:2253 commands/tablecmds.c:2510
+#: commands/tablecmds.c:3840 commands/tablecmds.c:8976 commands/view.c:181
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "»%s« ist keine Sicht"
 
-#: catalog/objectaddress.c:419 commands/tablecmds.c:231
-#: commands/tablecmds.c:2249 commands/tablecmds.c:2508
-#: commands/tablecmds.c:3796 commands/tablecmds.c:8928
+#: catalog/objectaddress.c:419 commands/tablecmds.c:232
+#: commands/tablecmds.c:2259 commands/tablecmds.c:2518
+#: commands/tablecmds.c:3843 commands/tablecmds.c:8984
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "»%s« ist keine Fremdtabelle"
 
-#: catalog/objectaddress.c:819 catalog/pg_largeobject.c:200
+#: catalog/objectaddress.c:824 catalog/pg_largeobject.c:200
 #: libpq/be-fsstubs.c:287
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "Berechtigung nur für Eigentümer des Large Object %u"
 
-#: catalog/objectaddress.c:834 commands/functioncmds.c:1525
+#: catalog/objectaddress.c:839 commands/functioncmds.c:1526
 #: commands/functioncmds.c:1814
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "Berechtigung nur für Eigentümer des Typs %s oder des Typs %s"
 
-#: catalog/objectaddress.c:865 catalog/objectaddress.c:881
+#: catalog/objectaddress.c:870 catalog/objectaddress.c:886
 msgid "must be superuser"
 msgstr "Berechtigung nur für Superuser"
 
-#: catalog/objectaddress.c:872
+#: catalog/objectaddress.c:877
 msgid "must have CREATEROLE privilege"
 msgstr "Berechtigung nur mit CREATEROLE-Privileg"
 
@@ -3777,7 +3470,7 @@ msgstr "Funktion %s gibt eine Ergebnismenge zurück"
 msgid "function %s requires run-time type coercion"
 msgstr "Funktion %s erfordert Typumwandlung zur Laufzeit"
 
-#: catalog/pg_constraint.c:654 commands/typecmds.c:2320
+#: catalog/pg_constraint.c:654 commands/typecmds.c:2321
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "Constraint »%s« für Domäne »%s« existiert bereits"
@@ -3802,7 +3495,12 @@ msgstr "Konversion »%s« existiert bereits"
 msgid "default conversion for %s to %s already exists"
 msgstr "Standardumwandlung von %s nach %s existiert bereits"
 
-#: catalog/pg_depend.c:293
+#: catalog/pg_depend.c:164 commands/extension.c:2725
+#, c-format
+msgid "%s is already a member of extension \"%s\""
+msgstr "%s ist schon Mitglied der Erweiterung »%s«"
+
+#: catalog/pg_depend.c:323
 #, c-format
 msgid "cannot remove dependency on %s because it is a system object"
 msgstr "kann Abhängigkeit von %s nicht entfernen, weil es ein Systemobjekt ist"
@@ -3824,7 +3522,7 @@ msgstr "»%s« ist kein existierendes Enum-Label"
 
 #: catalog/pg_enum.c:325
 msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
-msgstr ""
+msgstr "ALTER TYPE ADD BEFORE/AFTER ist mit Binary Upgrade inkompatibel"
 
 #: catalog/pg_namespace.c:52 commands/schemacmds.c:259
 #, c-format
@@ -3952,22 +3650,22 @@ msgstr "Funktion %s ist eine Fensterfunktion"
 msgid "function \"%s\" is not a window function"
 msgstr "Funktion »%s« ist keine Fensterfunktion"
 
-#: catalog/pg_proc.c:695
+#: catalog/pg_proc.c:693
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "es gibt keine eingebaute Funktion namens %s"
 
-#: catalog/pg_proc.c:787
+#: catalog/pg_proc.c:785
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "SQL-Funktionen können keinen Rückgabetyp »%s« haben"
 
-#: catalog/pg_proc.c:802
+#: catalog/pg_proc.c:800
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "SQL-Funktionen können keine Argumente vom Typ »%s« haben"
 
-#: catalog/pg_proc.c:888 executor/functions.c:1162
+#: catalog/pg_proc.c:886 executor/functions.c:1162
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "SQL-Funktion »%s«"
@@ -4020,7 +3718,7 @@ msgid_plural "%d objects in %s"
 msgstr[0] "%d Objekt in %s"
 msgstr[1] "%d Objekte in %s"
 
-#: catalog/pg_shdepend.c:1191 catalog/pg_shdepend.c:1287
+#: catalog/pg_shdepend.c:1191
 #, c-format
 msgid ""
 "cannot drop objects owned by %s because they are required by the database "
@@ -4029,6 +3727,15 @@ msgstr ""
 "kann Objekte, die %s gehören, nicht löschen, weil sie vom Datenbanksystem "
 "benötigt werden"
 
+#: catalog/pg_shdepend.c:1287
+#, c-format
+msgid ""
+"cannot reassign ownership of objects owned by %s because they are required "
+"by the database system"
+msgstr ""
+"kann den Eigentümer von den Objekten, die %s gehören, nicht ändern, weil die "
+"Objekte vom Datenbanksystem benötigt werden"
+
 #: catalog/pg_type.c:241
 #, c-format
 msgid "invalid type internal size %d"
@@ -4054,7 +3761,7 @@ msgstr "Ausrichtung »%c« ist ungültig für Typen variabler Länge"
 msgid "fixed-size types must have storage PLAIN"
 msgstr "Typen mit fester Größe müssen Storage-Typ PLAIN haben"
 
-#: catalog/pg_type.c:761
+#: catalog/pg_type.c:760
 #, c-format
 msgid "could not form array type name for type \"%s\""
 msgstr "konnte keinen Arraytypnamen für Datentyp »%s« erzeugen"
@@ -4064,38 +3771,20 @@ msgid "shared tables cannot be toasted after initdb"
 msgstr ""
 "Cluster-globale Tabellen können nach initdb nicht mehr getoastet werden"
 
-#: commands/collationcmds.c:81
+#: catalog/pg_collation.c:75
 #, c-format
-msgid "collation attribute \"%s\" not recognized"
-msgstr "Attribut »%s« für Sortierfolge unbekannt"
-
-#: commands/collationcmds.c:126
-msgid "parameter \"lc_collate\" parameter must be specified"
-msgstr "Parameter »lc_collate« muss angegeben werden"
-
-#: commands/collationcmds.c:131
-msgid "parameter \"lc_ctype\" must be specified"
-msgstr "Parameter »lc_ctype« muss angegeben werden"
+msgid "collation \"%s\" for encoding \"%s\" already exists"
+msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits"
 
-#: commands/collationcmds.c:177
+#: catalog/pg_collation.c:89
 #, c-format
-msgid "collation \"%s\" does not exist, skipping"
-msgstr "Sortierfolge »%s« existiert nicht, wird übersprungen"
+msgid "collation \"%s\" already exists"
+msgstr "Sortierfolge »%s« existiert bereits"
 
-#: commands/collationcmds.c:237 commands/collationcmds.c:416
+#: commands/aggregatecmds.c:103
 #, c-format
-msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
-msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits in Schema »%s«"
-
-#: commands/collationcmds.c:249 commands/collationcmds.c:428
-#, c-format
-msgid "collation \"%s\" already exists in schema \"%s\""
-msgstr "Sortierfolge »%s« existiert bereits in Schema »%s«"
-
-#: commands/aggregatecmds.c:103
-#, c-format
-msgid "aggregate attribute \"%s\" not recognized"
-msgstr "Attribut »%s« für Aggregatfunktion unbekannt"
+msgid "aggregate attribute \"%s\" not recognized"
+msgstr "Attribut »%s« für Aggregatfunktion unbekannt"
 
 #: commands/aggregatecmds.c:113
 msgid "aggregate stype must be specified"
@@ -4131,60 +3820,62 @@ msgid "function %s already exists in schema \"%s\""
 msgstr "Funktion %s existiert bereits in Schema »%s«"
 
 #: commands/alter.c:423
-#, fuzzy, c-format
-msgid "must be superuser to SET SCHEMA of %s"
-msgstr "nur Superuser können Dateien lesen"
+#, c-format
+msgid "must be superuser to set schema of %s"
+msgstr "nur Superuser können Schema von %s setzen"
 
 #: commands/alter.c:451
 #, c-format
 msgid "%s already exists in schema \"%s\""
 msgstr "%s existiert bereits in Schema »%s«"
 
-#: commands/analyze.c:163
+#: commands/analyze.c:153
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "überspringe Analyze von »%s« --- Sperre nicht verfügbar"
 
-#: commands/analyze.c:180
+#: commands/analyze.c:170
 #, c-format
 msgid "skipping \"%s\" --- only superuser can analyze it"
 msgstr "überspringe »%s« --- nur Superuser kann sie analysieren"
 
-#: commands/analyze.c:184
+#: commands/analyze.c:174
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
 msgstr ""
 "überspringe »%s« --- nur Superuser oder Eigentümer der Datenbank kann sie "
 "analysieren"
 
-#: commands/analyze.c:188
+#: commands/analyze.c:178
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can analyze it"
 msgstr ""
 "überspringe »%s« --- nur Eigentümer der Tabelle oder der Datenbank kann sie "
 "analysieren"
 
-#: commands/analyze.c:204
+#: commands/analyze.c:194
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
-msgstr "überspringe »%s« --- kann Nicht-Tabellen oder besondere Systemtabellen nicht analysieren"
+msgstr ""
+"überspringe »%s« --- kann Nicht-Tabellen oder besondere Systemtabellen nicht "
+"analysieren"
 
-#: commands/analyze.c:297
+#: commands/analyze.c:285
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analysiere Vererbungsbaum von »%s.%s«"
 
-#: commands/analyze.c:302
+#: commands/analyze.c:290
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analysiere »%s.%s«"
 
-#: commands/analyze.c:623
+#: commands/analyze.c:598
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
 msgstr "automatisches Analysieren von Tabelle »%s.%s.%s« Systembenutzung: %s"
 
-#: commands/analyze.c:1263
+#: commands/analyze.c:1239
 #, c-format
 msgid ""
 "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead "
@@ -4193,7 +3884,7 @@ msgstr ""
 "»%s«: %d von %u Seiten gelesen, enthalten %.0f lebende Zeilen und %.0f tote "
 "Zeilen; %d Zeilen in Stichprobe, schätzungsweise %.0f Zeilen insgesamt"
 
-#: commands/analyze.c:1524 executor/execQual.c:2734
+#: commands/analyze.c:1500 executor/execQual.c:2734
 msgid "could not convert row type"
 msgstr "konnte Zeilentyp nicht umwandeln"
 
@@ -4220,19 +3911,19 @@ msgstr ""
 msgid "too many notifications in the NOTIFY queue"
 msgstr "zu viele Benachrichtigungen in NOTIFY-Schlange"
 
-#: commands/async.c:1421
+#: commands/async.c:1430
 #, c-format
 msgid "NOTIFY queue is %.0f%% full"
 msgstr "NOTIFY-Schlange ist %.0f%% voll"
 
-#: commands/async.c:1423
+#: commands/async.c:1432
 #, c-format
 msgid ""
 "The server process with PID %d is among those with the oldest transactions."
 msgstr ""
 "Der Serverprozess mit PID %d gehört zu denen mit den ältesten Transaktionen."
 
-#: commands/async.c:1426
+#: commands/async.c:1435
 msgid ""
 "The NOTIFY queue cannot be emptied until that process ends its current "
 "transaction."
@@ -4240,34 +3931,34 @@ msgstr ""
 "Die NOTIFY-Schlange kann erst geleert werden, wenn dieser Prozess seine "
 "aktuelle Transaktion beendet."
 
-#: commands/cluster.c:133 commands/cluster.c:371
+#: commands/cluster.c:134 commands/cluster.c:372
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht clustern"
 
-#: commands/cluster.c:163
+#: commands/cluster.c:164
 #, c-format
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "es gibt keinen bereits geclusterten Index für Tabelle »%s«"
 
-#: commands/cluster.c:177 commands/tablecmds.c:7602
+#: commands/cluster.c:178 commands/tablecmds.c:7659
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "Index »%s« für Tabelle »%s« existiert nicht"
 
-#: commands/cluster.c:360
+#: commands/cluster.c:361
 msgid "cannot cluster a shared catalog"
 msgstr "globaler Katalog kann nicht geclustert werden"
 
-#: commands/cluster.c:375
+#: commands/cluster.c:376
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "temporäre Tabellen anderer Sitzungen können nicht gevacuumt werden"
 
-#: commands/cluster.c:417
+#: commands/cluster.c:426
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "»%s« ist kein Index für Tabelle »%s«"
 
-#: commands/cluster.c:425
+#: commands/cluster.c:434
 #, c-format
 msgid ""
 "cannot cluster on index \"%s\" because access method does not support "
@@ -4276,32 +3967,32 @@ msgstr ""
 "kann nicht anhand des Index »%s« clustern, weil die Indexmethode Clustern "
 "nicht unterstützt"
 
-#: commands/cluster.c:437
+#: commands/cluster.c:446
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "kann nicht anhand des partiellen Index »%s« clustern"
 
-#: commands/cluster.c:451
+#: commands/cluster.c:460
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "kann nicht anhand des ungültigen Index »%s« clustern"
 
-#: commands/cluster.c:870
+#: commands/cluster.c:883
 #, c-format
 msgid "clustering \"%s.%s\" using index scan on \"%s\""
 msgstr "clustere »%s.%s« durch Index-Scan von »%s«"
 
-#: commands/cluster.c:876
+#: commands/cluster.c:889
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr "clustere »%s.%s« durch sequenziellen Scan und Sortieren"
 
-#: commands/cluster.c:881 commands/vacuumlazy.c:320
+#: commands/cluster.c:894 commands/vacuumlazy.c:315
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "vacuume »%s.%s«"
 
-#: commands/cluster.c:1041
+#: commands/cluster.c:1054
 #, c-format
 msgid ""
 "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
@@ -4309,18 +4000,20 @@ msgstr ""
 "»%s«: %.0f entfernbare, %.0f nicht entfernbare Zeilenversionen in %u Seiten "
 "gefunden"
 
-#: commands/cluster.c:1045
+#: commands/cluster.c:1058
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
 "%s."
 msgstr ""
+"%.0f tote Zeilenversionen können noch nicht entfernt werden.\n"
+"%s."
 
 #: commands/comment.c:60 commands/dbcommands.c:764 commands/dbcommands.c:909
 #: commands/dbcommands.c:1008 commands/dbcommands.c:1181
 #: commands/dbcommands.c:1366 commands/dbcommands.c:1451
-#: commands/dbcommands.c:1854 utils/init/postinit.c:707
-#: utils/init/postinit.c:775 utils/init/postinit.c:792
+#: commands/dbcommands.c:1854 utils/init/postinit.c:709
+#: utils/init/postinit.c:777 utils/init/postinit.c:794
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "Datenbank »%s« existiert nicht"
@@ -4664,7 +4357,7 @@ msgstr "fehlende Daten für Spalte »%s«"
 
 #: commands/copy.c:2476
 msgid "received copy data after EOF marker"
-msgstr ""
+msgstr "COPY-Daten nach EOF-Markierung empfangen"
 
 #: commands/copy.c:2483
 #, c-format
@@ -4730,14 +4423,14 @@ msgstr "ungültige Feldgröße"
 msgid "incorrect binary data format"
 msgstr "falsches Binärdatenformat"
 
-#: commands/copy.c:3779 commands/indexcmds.c:845 commands/tablecmds.c:1283
-#: commands/tablecmds.c:2138 parser/parse_expr.c:764
+#: commands/copy.c:3779 commands/indexcmds.c:846 commands/tablecmds.c:1293
+#: commands/tablecmds.c:2148 parser/parse_expr.c:764
 #: utils/adt/tsvector_op.c:1393
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "Spalte »%s« existiert nicht"
 
-#: commands/copy.c:3786 commands/tablecmds.c:1309 commands/trigger.c:599
+#: commands/copy.c:3786 commands/tablecmds.c:1319 commands/trigger.c:594
 #: parser/parse_target.c:911 parser/parse_target.c:922
 #, c-format
 msgid "column \"%s\" specified more than once"
@@ -5022,68 +4715,70 @@ msgstr "Option »%s« nicht gefunden"
 msgid "option \"%s\" provided more than once"
 msgstr "Option »%s« mehrmals angegeben"
 
-#: commands/foreigncmds.c:212 commands/foreigncmds.c:220
+#: commands/foreigncmds.c:224 commands/foreigncmds.c:232
 #, c-format
 msgid "permission denied to change owner of foreign-data wrapper \"%s\""
 msgstr ""
 "keine Berechtigung, um Eigentümer des Fremddaten-Wrappers »%s« zu ändern"
 
-#: commands/foreigncmds.c:214
+#: commands/foreigncmds.c:226
 msgid "Must be superuser to change owner of a foreign-data wrapper."
 msgstr "Nur Superuser können den Eigentümer eines Fremddaten-Wrappers ändern."
 
-#: commands/foreigncmds.c:222
+#: commands/foreigncmds.c:234
 msgid "The owner of a foreign-data wrapper must be a superuser."
 msgstr "Der Eigentümer eines Fremddaten-Wrappers muss ein Superuser sein."
 
-#: commands/foreigncmds.c:231 commands/foreigncmds.c:552
-#: commands/foreigncmds.c:703 foreign/foreign.c:515
+#: commands/foreigncmds.c:241 commands/foreigncmds.c:564
+#: commands/foreigncmds.c:712 foreign/foreign.c:515
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist"
 msgstr "Fremddaten-Wrapper »%s« existiert nicht"
 
-#: commands/foreigncmds.c:274 commands/foreigncmds.c:879
-#: commands/foreigncmds.c:970 commands/foreigncmds.c:1255
+#: commands/foreigncmds.c:284 commands/foreigncmds.c:890
+#: commands/foreigncmds.c:978 commands/foreigncmds.c:1262
 #: foreign/foreign.c:535
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "Server »%s« existiert nicht"
 
-#: commands/foreigncmds.c:336
+#: commands/foreigncmds.c:346
 #, c-format
 msgid "function %s must return type \"fdw_handler\""
 msgstr "Funktion %s muss Typ »fdw_handler« zurückgeben"
 
-#: commands/foreigncmds.c:429
+#: commands/foreigncmds.c:441
 #, c-format
 msgid "permission denied to create foreign-data wrapper \"%s\""
 msgstr "keine Berechtigung, um Fremddaten-Wrapper »%s« zu erzeugen"
 
-#: commands/foreigncmds.c:431
+#: commands/foreigncmds.c:443
 msgid "Must be superuser to create a foreign-data wrapper."
 msgstr "Nur Superuser können Fremddaten-Wrapper anlegen."
 
-#: commands/foreigncmds.c:442
+#: commands/foreigncmds.c:454
 #, c-format
 msgid "foreign-data wrapper \"%s\" already exists"
 msgstr "Fremddaten-Wrapper »%s« existiert bereits"
 
-#: commands/foreigncmds.c:542
+#: commands/foreigncmds.c:554
 #, c-format
 msgid "permission denied to alter foreign-data wrapper \"%s\""
 msgstr "keine Berechtigung, um Fremddaten-Wrapper »%s« zu ändern"
 
-#: commands/foreigncmds.c:544
+#: commands/foreigncmds.c:556
 msgid "Must be superuser to alter a foreign-data wrapper."
 msgstr "Nur Superuser können Fremddaten-Wrapper ändern."
 
-#: commands/foreigncmds.c:575
+#: commands/foreigncmds.c:587
 msgid ""
 "changing the foreign-data wrapper handler can change behavior of existing "
 "foreign tables"
-msgstr "das Ändern des Handlers des Fremddaten-Wrappers kann das Verhalten von bestehenden Fremdtabellen verändern"
+msgstr ""
+"das Ändern des Handlers des Fremddaten-Wrappers kann das Verhalten von "
+"bestehenden Fremdtabellen verändern"
 
-#: commands/foreigncmds.c:589
+#: commands/foreigncmds.c:601
 msgid ""
 "changing the foreign-data wrapper validator can cause the options for "
 "dependent objects to become invalid"
@@ -5091,45 +4786,45 @@ msgstr ""
 "durch Ändern des Validators des Fremddaten-Wrappers können die Optionen von "
 "abhängigen Objekten ungültig werden"
 
-#: commands/foreigncmds.c:694
+#: commands/foreigncmds.c:703
 #, c-format
 msgid "permission denied to drop foreign-data wrapper \"%s\""
 msgstr "keine Berechtigung, um Fremddaten-Wrapper »%s« zu löschen"
 
-#: commands/foreigncmds.c:696
+#: commands/foreigncmds.c:705
 msgid "Must be superuser to drop a foreign-data wrapper."
 msgstr "Nur Superuser können Fremddaten-Wrapper löschen."
 
-#: commands/foreigncmds.c:708
+#: commands/foreigncmds.c:717
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist, skipping"
 msgstr "Fremddaten-Wrapper »%s« existiert nicht, wird übersprungen"
 
-#: commands/foreigncmds.c:775
+#: commands/foreigncmds.c:786
 #, c-format
 msgid "server \"%s\" already exists"
 msgstr "Server »%s« existiert bereits"
 
-#: commands/foreigncmds.c:974
+#: commands/foreigncmds.c:982
 #, c-format
 msgid "server \"%s\" does not exist, skipping"
 msgstr "Server »%s« existiert nicht, wird übersprungen"
 
-#: commands/foreigncmds.c:1077
+#: commands/foreigncmds.c:1087
 #, c-format
 msgid "user mapping \"%s\" already exists for server %s"
 msgstr "Benutzerabbildung »%s« existiert bereits für Server »%s«"
 
-#: commands/foreigncmds.c:1163 commands/foreigncmds.c:1271
+#: commands/foreigncmds.c:1173 commands/foreigncmds.c:1278
 #, c-format
 msgid "user mapping \"%s\" does not exist for the server"
 msgstr "Benutzerabbildung »%s« existiert für den Server nicht"
 
-#: commands/foreigncmds.c:1258
+#: commands/foreigncmds.c:1265
 msgid "server does not exist, skipping"
 msgstr "Server existiert nicht, wird übersprungen"
 
-#: commands/foreigncmds.c:1276
+#: commands/foreigncmds.c:1283
 #, c-format
 msgid "user mapping \"%s\" does not exist for the server, skipping"
 msgstr ""
@@ -5145,8 +4840,8 @@ msgstr "SQL-Funktion kann keinen Hüllen-Rückgabetyp %s haben"
 msgid "return type %s is only a shell"
 msgstr "Rückgabetyp %s ist nur eine Hülle"
 
-#: commands/functioncmds.c:128 commands/tablecmds.c:223
-#: commands/typecmds.c:660 commands/typecmds.c:2660 parser/parse_func.c:1502
+#: commands/functioncmds.c:128 commands/tablecmds.c:224
+#: commands/typecmds.c:660 commands/typecmds.c:2661 parser/parse_func.c:1502
 #: parser/parse_type.c:196 utils/adt/regproc.c:973
 #, c-format
 msgid "type \"%s\" does not exist"
@@ -5254,7 +4949,7 @@ msgid "only one AS item needed for language \"%s\""
 msgstr "nur ein AS-Element benötigt für Sprache »%s«"
 
 #: commands/functioncmds.c:839 commands/functioncmds.c:2019
-#: commands/proclang.c:602 commands/proclang.c:642 commands/proclang.c:756
+#: commands/proclang.c:600 commands/proclang.c:640 commands/proclang.c:754
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "Sprache »%s« existiert nicht"
@@ -5286,7 +4981,7 @@ msgstr "Funktion %s(%s) existiert nicht, wird übersprungen"
 
 #: commands/functioncmds.c:1008 commands/functioncmds.c:1108
 #: commands/functioncmds.c:1171 commands/functioncmds.c:1322
-#: utils/adt/ruleutils.c:1694
+#: utils/adt/ruleutils.c:1696
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "»%s« ist eine Aggregatfunktion"
@@ -5310,21 +5005,21 @@ msgstr ""
 "Verwenden Sie ALTER AGGREGATE, um den Eigentümer einer Aggregatfunktion zu "
 "ändern."
 
-#: commands/functioncmds.c:1511
+#: commands/functioncmds.c:1512
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "Quelldatentyp %s ist ein Pseudotyp."
 
-#: commands/functioncmds.c:1517
+#: commands/functioncmds.c:1518
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "Zieldatentyp %s ist ein Pseudotyp"
 
-#: commands/functioncmds.c:1554
+#: commands/functioncmds.c:1555
 msgid "cast function must take one to three arguments"
 msgstr "Typumwandlungsfunktion muss ein bis drei Argumente haben"
 
-#: commands/functioncmds.c:1558
+#: commands/functioncmds.c:1559
 msgid ""
 "argument of cast function must match or be binary-coercible from source data "
 "type"
@@ -5332,15 +5027,15 @@ msgstr ""
 "Argument der Typumwandlungsfunktion muss mit Quelldatentyp übereinstimmen "
 "oder in ihn binär-umwandelbar sein"
 
-#: commands/functioncmds.c:1562
+#: commands/functioncmds.c:1563
 msgid "second argument of cast function must be type integer"
 msgstr "zweites Argument der Typumwandlungsfunktion muss Typ integer haben"
 
-#: commands/functioncmds.c:1566
+#: commands/functioncmds.c:1567
 msgid "third argument of cast function must be type boolean"
 msgstr "drittes Argument der Typumwandlungsfunktion muss Typ boolean haben"
 
-#: commands/functioncmds.c:1570
+#: commands/functioncmds.c:1571
 msgid ""
 "return data type of cast function must match or be binary-coercible to "
 "target data type"
@@ -5348,51 +5043,51 @@ msgstr ""
 "Rückgabetyp der Typumwandlungsfunktion muss mit Zieldatentyp übereinstimmen "
 "oder in ihn binär-umwandelbar sein"
 
-#: commands/functioncmds.c:1581
+#: commands/functioncmds.c:1582
 msgid "cast function must not be volatile"
 msgstr "Typumwandlungsfunktion darf nicht VOLATILE sein"
 
-#: commands/functioncmds.c:1586
+#: commands/functioncmds.c:1587
 msgid "cast function must not be an aggregate function"
 msgstr "Typumwandlungsfunktion darf keine Aggregatfunktion sein"
 
-#: commands/functioncmds.c:1590
+#: commands/functioncmds.c:1591
 msgid "cast function must not be a window function"
 msgstr "Typumwandlungsfunktion darf keine Fensterfunktion sein"
 
-#: commands/functioncmds.c:1594
+#: commands/functioncmds.c:1595
 msgid "cast function must not return a set"
 msgstr "Typumwandlungsfunktion darf keine Ergebnismenge zurückgeben"
 
-#: commands/functioncmds.c:1620
+#: commands/functioncmds.c:1621
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "nur Superuser können Typumwandlungen mit WITHOUT FUNCTION erzeugen"
 
-#: commands/functioncmds.c:1635
+#: commands/functioncmds.c:1636
 msgid "source and target data types are not physically compatible"
 msgstr "Quelldatentyp und Zieldatentyp sind nicht physikalisch kompatibel"
 
-#: commands/functioncmds.c:1650
+#: commands/functioncmds.c:1651
 msgid "composite data types are not binary-compatible"
 msgstr "zusammengesetzte Datentypen sind nicht binärkompatibel"
 
-#: commands/functioncmds.c:1656
+#: commands/functioncmds.c:1657
 msgid "enum data types are not binary-compatible"
 msgstr "Enum-Datentypen sind nicht binärkompatibel"
 
-#: commands/functioncmds.c:1662
+#: commands/functioncmds.c:1663
 msgid "array data types are not binary-compatible"
 msgstr "Array-Datentypen sind nicht binärkompatibel"
 
-#: commands/functioncmds.c:1679
+#: commands/functioncmds.c:1680
 msgid "domain data types must not be marked binary-compatible"
 msgstr "Domänendatentypen dürfen nicht als binärkompatibel markiert werden"
 
-#: commands/functioncmds.c:1689
+#: commands/functioncmds.c:1690
 msgid "source data type and target data type are the same"
 msgstr "Quelldatentyp und Zieldatentyp sind der selbe"
 
-#: commands/functioncmds.c:1722
+#: commands/functioncmds.c:1723
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "Typumwandlung von Typ %s in Typ %s existiert bereits"
@@ -5430,105 +5125,106 @@ msgstr "mindestens eine Spalte muss angegeben werden"
 msgid "cannot use more than %d columns in an index"
 msgstr "Index kann nicht mehr als %d Spalten enthalten"
 
-#: commands/indexcmds.c:194
+#: commands/indexcmds.c:195
 #, c-format
 msgid "cannot create index on foreign table \"%s\""
 msgstr "kann keinen Index für Fremdtabelle »%s« erzeugen"
 
-#: commands/indexcmds.c:209
+#: commands/indexcmds.c:210
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "kann keine Indexe für temporäre Tabellen anderer Sitzungen erzeugen"
 
-#: commands/indexcmds.c:264 commands/tablecmds.c:477 commands/tablecmds.c:7825
+#: commands/indexcmds.c:265 commands/tablecmds.c:479 commands/tablecmds.c:7882
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr ""
 "nur geteilte Relationen können in den Tablespace »pg_global« gelegt werden"
 
-#: commands/indexcmds.c:295
+#: commands/indexcmds.c:296
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "ersetze Zugriffsmethode »gist« für obsolete Methode »rtree«"
 
-#: commands/indexcmds.c:303 commands/opclasscmds.c:369
+#: commands/indexcmds.c:304 commands/opclasscmds.c:369
 #: commands/opclasscmds.c:790 commands/opclasscmds.c:2203
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "Zugriffsmethode »%s« existiert nicht"
 
-#: commands/indexcmds.c:312
+#: commands/indexcmds.c:313
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "Zugriffsmethode »%s« unterstützt keine Unique Indexe"
 
-#: commands/indexcmds.c:317
+#: commands/indexcmds.c:318
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "Zugriffsmethode »%s« unterstützt keine mehrspaltigen Indexe"
 
-#: commands/indexcmds.c:322
+#: commands/indexcmds.c:323
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "Zugriffsmethode »%s« unterstützt keine Exclusion-Constraints"
 
-#: commands/indexcmds.c:398
+#: commands/indexcmds.c:399
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%s %s erstellt implizit einen Index »%s« für Tabelle »%s«"
 
-#: commands/indexcmds.c:762
+#: commands/indexcmds.c:763
 msgid "cannot use subquery in index predicate"
 msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden"
 
-#: commands/indexcmds.c:766
+#: commands/indexcmds.c:767
 msgid "cannot use aggregate in index predicate"
 msgstr "Aggregatfunktionen können nicht im Indexprädikat verwendet werden"
 
-#: commands/indexcmds.c:775
+#: commands/indexcmds.c:776
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "Funktionen im Indexprädikat müssen als IMMUTABLE markiert sein"
 
-#: commands/indexcmds.c:840 parser/parse_utilcmd.c:1702
+#: commands/indexcmds.c:841 parser/parse_utilcmd.c:1704
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "Spalte »%s«, die im Schlüssel verwendet wird, existiert nicht"
 
-#: commands/indexcmds.c:893
+#: commands/indexcmds.c:894
 msgid "cannot use subquery in index expression"
 msgstr "Unteranfragen können nicht in Indexausdrücken verwendet werden"
 
-#: commands/indexcmds.c:897
+#: commands/indexcmds.c:898
 msgid "cannot use aggregate function in index expression"
 msgstr "Aggregatfunktionen können nicht in Indexausdrücken verwendet werden"
 
-#: commands/indexcmds.c:908
+#: commands/indexcmds.c:909
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "Funktionen im Indexausdruck müssen als IMMUTABLE markiert sein"
 
-#: commands/indexcmds.c:929
+#: commands/indexcmds.c:930
 msgid "could not determine which collation to use for index expression"
-msgstr "konnte die für den Indexausdruck zu verwendende Sortierfolge nicht bestimmen"
+msgstr ""
+"konnte die für den Indexausdruck zu verwendende Sortierfolge nicht bestimmen"
 
-#: commands/indexcmds.c:937 commands/typecmds.c:843 parser/parse_expr.c:2140
-#: parser/parse_type.c:492 parser/parse_utilcmd.c:2553
+#: commands/indexcmds.c:938 commands/typecmds.c:843 parser/parse_expr.c:2140
+#: parser/parse_type.c:492 parser/parse_utilcmd.c:2556
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "Sortierfolgen werden von Typ %s nicht unterstützt"
 
-#: commands/indexcmds.c:975
+#: commands/indexcmds.c:976
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "Operator %s ist nicht kommutativ"
 
-#: commands/indexcmds.c:977
+#: commands/indexcmds.c:978
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr ""
 "In Exclusion-Constraints können nur kommutative Operatoren verwendet werden."
 
-#: commands/indexcmds.c:1003
+#: commands/indexcmds.c:1004
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "Operator %s ist kein Mitglied der Operatorfamilie »%s«"
 
-#: commands/indexcmds.c:1006
+#: commands/indexcmds.c:1007
 msgid ""
 "The exclusion operator must be related to the index operator class for the "
 "constraint."
@@ -5536,22 +5232,22 @@ msgstr ""
 "Der Exklusionsoperator muss in Beziehung zur Indexoperatorklasse des "
 "Constraints stehen."
 
-#: commands/indexcmds.c:1041
+#: commands/indexcmds.c:1042
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "Zugriffsmethode »%s« unterstützt die Optionen ASC/DESC nicht"
 
-#: commands/indexcmds.c:1046
+#: commands/indexcmds.c:1047
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "Zugriffsmethode »%s« unterstützt die Optionen NULLS FIRST/LAST nicht"
 
-#: commands/indexcmds.c:1102
+#: commands/indexcmds.c:1103
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr "Datentyp %s hat keine Standardoperatorklasse für Zugriffsmethode »%s«"
 
-#: commands/indexcmds.c:1104
+#: commands/indexcmds.c:1105
 msgid ""
 "You must specify an operator class for the index or define a default "
 "operator class for the data type."
@@ -5559,32 +5255,32 @@ msgstr ""
 "Sie müssen für den Index eine Operatorklasse angeben oder eine "
 "Standardoperatorklasse für den Datentyp definieren."
 
-#: commands/indexcmds.c:1133 commands/indexcmds.c:1141
+#: commands/indexcmds.c:1134 commands/indexcmds.c:1142
 #: commands/opclasscmds.c:212 commands/opclasscmds.c:1568
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "Operatorklasse »%s« existiert nicht für Zugriffsmethode »%s«"
 
-#: commands/indexcmds.c:1154
+#: commands/indexcmds.c:1155
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "Operatorklasse »%s« akzeptiert Datentyp %s nicht"
 
-#: commands/indexcmds.c:1244
+#: commands/indexcmds.c:1245
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr "es gibt mehrere Standardoperatorklassen für Datentyp %s"
 
-#: commands/indexcmds.c:1585
+#: commands/indexcmds.c:1586
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "Tabelle »%s« hat keine Indexe"
 
-#: commands/indexcmds.c:1613
+#: commands/indexcmds.c:1614
 msgid "can only reindex the currently open database"
 msgstr "aktuell geöffnete Datenbank kann nicht reindiziert werden"
 
-#: commands/indexcmds.c:1698
+#: commands/indexcmds.c:1699
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "Tabelle »%s.%s« wurde neu indiziert"
@@ -5803,7 +5499,7 @@ msgid "invalid cursor name: must not be empty"
 msgstr "ungültiger Cursorname: darf nicht leer sein"
 
 #: commands/portalcmds.c:168 commands/portalcmds.c:222
-#: executor/execCurrent.c:66 utils/adt/xml.c:2044 utils/adt/xml.c:2208
+#: executor/execCurrent.c:66 utils/adt/xml.c:2046 utils/adt/xml.c:2210
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "Cursor »%s« existiert nicht"
@@ -5875,7 +5571,7 @@ msgstr "vorbereitete Anweisung »%s« existiert nicht"
 #: commands/prepare.c:751 commands/extension.c:1679 commands/extension.c:1788
 #: commands/extension.c:1981 executor/execQual.c:1613 executor/execQual.c:1638
 #: executor/execQual.c:1999 executor/execQual.c:5115 executor/functions.c:785
-#: foreign/foreign.c:350 replication/walsender.c:1387
+#: foreign/foreign.c:350 replication/walsender.c:1403
 #: utils/mmgr/portalmem.c:946 utils/fmgr/funcapi.c:60
 msgid "set-valued function called in context that cannot accept a set"
 msgstr ""
@@ -5884,7 +5580,7 @@ msgstr ""
 
 #: commands/prepare.c:755 commands/extension.c:1683 commands/extension.c:1792
 #: commands/extension.c:1985 foreign/foreign.c:355
-#: replication/walsender.c:1391 utils/mmgr/portalmem.c:950
+#: replication/walsender.c:1407 utils/mmgr/portalmem.c:950
 msgid "materialize mode required, but it is not allowed in this context"
 msgstr ""
 "Materialisierungsmodus wird benötigt, ist aber in diesem Zusammenhang nicht "
@@ -5918,7 +5614,7 @@ msgstr "Rolle »%s« existiert bereits"
 
 #: commands/user.c:623 commands/user.c:825 commands/user.c:905
 #: commands/user.c:1056 commands/variable.c:882 commands/variable.c:954
-#: utils/adt/acl.c:4822 utils/init/miscinit.c:432
+#: utils/init/miscinit.c:432 utils/adt/acl.c:4822
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "Rolle »%s« existiert nicht"
@@ -6052,12 +5748,12 @@ msgid ""
 "changing return type of function %s from \"opaque\" to \"language_handler\""
 msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in »language_handler«"
 
-#: commands/proclang.c:357 commands/proclang.c:608
+#: commands/proclang.c:357 commands/proclang.c:606
 #, c-format
 msgid "language \"%s\" already exists"
 msgstr "Sprache »%s« existiert bereits"
 
-#: commands/proclang.c:539
+#: commands/proclang.c:537
 #, c-format
 msgid "language \"%s\" does not exist, skipping"
 msgstr "Sprache »%s« existiert nicht, wird übersprungen"
@@ -6105,282 +5801,282 @@ msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr ""
 "setval: Wert %s ist außerhalb des gültigen Bereichs von Sequenz »%s« (%s..%s)"
 
-#: commands/sequence.c:1017 lib/stringinfo.c:266 libpq/auth.c:1043
-#: libpq/auth.c:1397 libpq/auth.c:1465 libpq/auth.c:2002
-#: storage/buffer/buf_init.c:154 storage/buffer/localbuf.c:350
-#: storage/file/fd.c:359 storage/file/fd.c:742 storage/file/fd.c:860
+#: commands/sequence.c:1017 lib/stringinfo.c:266 libpq/auth.c:1022
+#: libpq/auth.c:1382 libpq/auth.c:1450 libpq/auth.c:1852
 #: storage/ipc/procarray.c:784 storage/ipc/procarray.c:1183
 #: storage/ipc/procarray.c:1190 storage/ipc/procarray.c:1425
-#: storage/ipc/procarray.c:1819 postmaster/postmaster.c:2003
+#: storage/ipc/procarray.c:1819 storage/buffer/buf_init.c:154
+#: storage/buffer/localbuf.c:350 storage/file/fd.c:358 storage/file/fd.c:742
+#: storage/file/fd.c:860 postmaster/postmaster.c:2003
 #: postmaster/postmaster.c:2034 postmaster/postmaster.c:3231
 #: postmaster/postmaster.c:3915 postmaster/postmaster.c:3996
-#: postmaster/postmaster.c:4610 utils/adt/formatting.c:1529
-#: utils/adt/formatting.c:1650 utils/adt/formatting.c:1783
-#: utils/adt/regexp.c:210 utils/adt/varlena.c:3474 utils/adt/varlena.c:3495
-#: utils/mmgr/aset.c:416 utils/mmgr/aset.c:587 utils/mmgr/aset.c:765
-#: utils/mmgr/aset.c:966 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:364
-#: utils/hash/dynahash.c:436 utils/hash/dynahash.c:932
-#: utils/init/miscinit.c:150 utils/init/miscinit.c:171
-#: utils/init/miscinit.c:181 utils/mb/mbutils.c:374 utils/mb/mbutils.c:675
-#: utils/misc/tzparser.c:455 utils/misc/guc.c:3296 utils/misc/guc.c:3309
-#: utils/misc/guc.c:3322
+#: postmaster/postmaster.c:4610 utils/init/miscinit.c:150
+#: utils/init/miscinit.c:171 utils/init/miscinit.c:181
+#: utils/adt/formatting.c:1529 utils/adt/formatting.c:1650
+#: utils/adt/formatting.c:1783 utils/adt/regexp.c:210 utils/adt/varlena.c:3474
+#: utils/adt/varlena.c:3495 utils/mmgr/aset.c:416 utils/mmgr/aset.c:587
+#: utils/mmgr/aset.c:765 utils/mmgr/aset.c:966 utils/fmgr/dfmgr.c:224
+#: utils/hash/dynahash.c:364 utils/hash/dynahash.c:436
+#: utils/hash/dynahash.c:932 utils/mb/mbutils.c:374 utils/mb/mbutils.c:675
+#: utils/misc/guc.c:3298 utils/misc/guc.c:3311 utils/misc/guc.c:3324
+#: utils/misc/tzparser.c:455
 msgid "out of memory"
 msgstr "Speicher aufgebraucht"
 
-#: commands/sequence.c:1190
+#: commands/sequence.c:1206
 msgid "INCREMENT must not be zero"
 msgstr "INCREMENT darf nicht null sein"
 
-#: commands/sequence.c:1236
+#: commands/sequence.c:1252
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "MINVALUE (%s) muss kleiner als MAXVALUE (%s) sein"
 
-#: commands/sequence.c:1261
+#: commands/sequence.c:1277
 #, c-format
 msgid "START value (%s) cannot be less than MINVALUE (%s)"
 msgstr "START-Wert (%s) kann nicht kleiner als MINVALUE (%s) sein"
 
-#: commands/sequence.c:1273
+#: commands/sequence.c:1289
 #, c-format
 msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "START-Wert (%s) kann nicht größer als MAXVALUE (%s) sein"
 
-#: commands/sequence.c:1304
+#: commands/sequence.c:1320
 #, c-format
 msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
 msgstr "RESTART-Wert (%s) kann nicht kleiner als MINVALUE (%s) sein"
 
-#: commands/sequence.c:1316
+#: commands/sequence.c:1332
 #, c-format
 msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "RESTART-Wert (%s) kann nicht größer als MAXVALUE (%s) sein"
 
-#: commands/sequence.c:1331
+#: commands/sequence.c:1347
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "CACHE (%s) muss größer als null sein"
 
-#: commands/sequence.c:1362
+#: commands/sequence.c:1378
 msgid "invalid OWNED BY option"
 msgstr "ungültige OWNED BY Option"
 
-#: commands/sequence.c:1363
+#: commands/sequence.c:1379
 msgid "Specify OWNED BY table.column or OWNED BY NONE."
 msgstr "Geben Sie OWNED BY tabelle.spalte oder OWNED BY NONE an."
 
-#: commands/sequence.c:1385 commands/tablecmds.c:5470
+#: commands/sequence.c:1401 commands/tablecmds.c:5525
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "Relation »%s«, auf die verwiesen wird, ist keine Tabelle"
 
-#: commands/sequence.c:1392
+#: commands/sequence.c:1408
 msgid "sequence must have same owner as table it is linked to"
 msgstr "Sequenz muss selben Eigentümer wie die verknüpfte Tabelle haben"
 
-#: commands/sequence.c:1396
+#: commands/sequence.c:1412
 msgid "sequence must be in same schema as table it is linked to"
 msgstr "Sequenz muss im selben Schema wie die verknüpfte Tabelle sein"
 
-#: commands/tablecmds.c:199
+#: commands/tablecmds.c:200
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "Tabelle »%s« existiert nicht"
 
-#: commands/tablecmds.c:200
+#: commands/tablecmds.c:201
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "Tabelle »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:202
+#: commands/tablecmds.c:203
 msgid "Use DROP TABLE to remove a table."
 msgstr "Verwenden Sie DROP TABLE, um eine Tabelle zu löschen."
 
-#: commands/tablecmds.c:205
+#: commands/tablecmds.c:206
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "Sequenz »%s« existiert nicht"
 
-#: commands/tablecmds.c:206
+#: commands/tablecmds.c:207
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "Sequenz »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:208
+#: commands/tablecmds.c:209
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Verwenden Sie DROP SEQUENCE, um eine Sequenz zu löschen."
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:212
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "Sicht »%s« existiert nicht"
 
-#: commands/tablecmds.c:212
+#: commands/tablecmds.c:213
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "Sicht »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:214
+#: commands/tablecmds.c:215
 msgid "Use DROP VIEW to remove a view."
 msgstr "Verwenden Sie DROP VIEW, um eine Sicht zu löschen."
 
-#: commands/tablecmds.c:217 parser/parse_utilcmd.c:1447
+#: commands/tablecmds.c:218 parser/parse_utilcmd.c:1449
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "Index »%s« existiert nicht"
 
-#: commands/tablecmds.c:218
+#: commands/tablecmds.c:219
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "Index »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:220
+#: commands/tablecmds.c:221
 msgid "Use DROP INDEX to remove an index."
 msgstr "Verwenden Sie DROP INDEX, um einen Index zu löschen."
 
-#: commands/tablecmds.c:224 commands/typecmds.c:666
+#: commands/tablecmds.c:225 commands/typecmds.c:666
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "Typ »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:225
+#: commands/tablecmds.c:226
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "»%s« ist kein Typ"
 
-#: commands/tablecmds.c:226
+#: commands/tablecmds.c:227
 msgid "Use DROP TYPE to remove a type."
 msgstr "Verwenden Sie DROP TYPE, um einen Typen zu löschen."
 
-#: commands/tablecmds.c:229 commands/tablecmds.c:8832
+#: commands/tablecmds.c:230 commands/tablecmds.c:8888
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "Fremdtabelle »%s« existiert nicht"
 
-#: commands/tablecmds.c:230
+#: commands/tablecmds.c:231
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "Fremdtabelle »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:232
+#: commands/tablecmds.c:233
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Verwenden Sie DROP FOREIGN TABLE, um eine Fremdtabelle zu löschen."
 
-#: commands/tablecmds.c:424 executor/execMain.c:2363
+#: commands/tablecmds.c:425 executor/execMain.c:2415
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT kann nur mit temporären Tabellen verwendet werden"
 
-#: commands/tablecmds.c:428
+#: commands/tablecmds.c:429
 msgid "constraints on foreign tables are not supported"
 msgstr "Constraints für Fremdtabellen werden nicht unterstützt"
 
-#: commands/tablecmds.c:439 executor/execMain.c:2374
+#: commands/tablecmds.c:447 executor/execMain.c:2433
 msgid "cannot create temporary table within security-restricted operation"
 msgstr ""
 "kann temporäre Tabelle nicht in einer sicherheitsbeschränkten Operation "
 "erzeugen"
 
-#: commands/tablecmds.c:543 commands/tablecmds.c:4303
+#: commands/tablecmds.c:545 commands/tablecmds.c:4351
 msgid "default values on foreign tables are not supported"
 msgstr "Vorgabewerte für Fremdtabellen werden nicht unterstützt"
 
-#: commands/tablecmds.c:811 commands/tablecmds.c:1132
-#: commands/tablecmds.c:2060 commands/tablecmds.c:3760
-#: commands/tablecmds.c:5476 commands/trigger.c:199 commands/trigger.c:1104
-#: tcop/utility.c:95 rewrite/rewriteDefine.c:265
+#: commands/tablecmds.c:813 commands/tablecmds.c:1142
+#: commands/tablecmds.c:2070 commands/tablecmds.c:3807
+#: commands/tablecmds.c:5531 commands/trigger.c:192 commands/trigger.c:1098
+#: tcop/utility.c:95 rewrite/rewriteDefine.c:263
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "keine Berechtigung: »%s« ist ein Systemkatalog"
 
-#: commands/tablecmds.c:923
+#: commands/tablecmds.c:925
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "Truncate-Vorgang leert ebenfalls Tabelle »%s«"
 
-#: commands/tablecmds.c:1142
+#: commands/tablecmds.c:1152
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht leeren"
 
-#: commands/tablecmds.c:1344 parser/parse_utilcmd.c:617
-#: parser/parse_utilcmd.c:1665
+#: commands/tablecmds.c:1354 parser/parse_utilcmd.c:621
+#: parser/parse_utilcmd.c:1667
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "geerbte Relation »%s« ist keine Tabelle"
 
-#: commands/tablecmds.c:1351 commands/tablecmds.c:8057
+#: commands/tablecmds.c:1361 commands/tablecmds.c:8114
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "von temporärer Relation »%s« kann nicht geerbt werden"
 
-#: commands/tablecmds.c:1368 commands/tablecmds.c:8085
+#: commands/tablecmds.c:1378 commands/tablecmds.c:8142
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "von der Relation »%s« würde mehrmals geerbt werden"
 
-#: commands/tablecmds.c:1424
+#: commands/tablecmds.c:1434
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "geerbte Definitionen von Spalte »%s« werden zusammengeführt"
 
-#: commands/tablecmds.c:1432
+#: commands/tablecmds.c:1442
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "geerbte Spalte »%s« hat Typkonflikt"
 
-#: commands/tablecmds.c:1434 commands/tablecmds.c:1455
-#: commands/tablecmds.c:1620 commands/tablecmds.c:1642
-#: parser/parse_coerce.c:1473 parser/parse_coerce.c:1492
-#: parser/parse_coerce.c:1537 parser/parse_param.c:217
+#: commands/tablecmds.c:1444 commands/tablecmds.c:1465
+#: commands/tablecmds.c:1630 commands/tablecmds.c:1652
+#: parser/parse_coerce.c:1514 parser/parse_coerce.c:1534
+#: parser/parse_coerce.c:1579 parser/parse_param.c:217
 #, c-format
 msgid "%s versus %s"
 msgstr "%s gegen %s"
 
-#: commands/tablecmds.c:1441
+#: commands/tablecmds.c:1451
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "geerbte Spalte »%s« hat Sortierfolgenkonflikt"
 
-#: commands/tablecmds.c:1443 commands/tablecmds.c:1630
-#: commands/tablecmds.c:4172
+#: commands/tablecmds.c:1453 commands/tablecmds.c:1640
+#: commands/tablecmds.c:4220
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "»%s« gegen »%s«"
 
-#: commands/tablecmds.c:1453
+#: commands/tablecmds.c:1463
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "geerbte Spalte »%s« hat einen Konflikt bei einem Storage-Parameter"
 
-#: commands/tablecmds.c:1610
+#: commands/tablecmds.c:1620
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "Spalte »%s« wird mit geerbter Definition zusammengeführt"
 
-#: commands/tablecmds.c:1618
+#: commands/tablecmds.c:1628
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "für Spalte »%s« besteht ein Typkonflikt"
 
-#: commands/tablecmds.c:1628
+#: commands/tablecmds.c:1638
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "für Spalte »%s« besteht ein Sortierfolgenkonflikt"
 
-#: commands/tablecmds.c:1640
+#: commands/tablecmds.c:1650
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "für Spalte »%s« besteht ein Konflikt bei einem Storage-Parameter"
 
-#: commands/tablecmds.c:1692
+#: commands/tablecmds.c:1702
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "Spalte »%s« erbt widersprüchliche Vorgabewerte"
 
-#: commands/tablecmds.c:1694
+#: commands/tablecmds.c:1704
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Um den Konflikt zu lösen, geben Sie einen Vorgabewert ausdrücklich an."
 
-#: commands/tablecmds.c:1741
+#: commands/tablecmds.c:1751
 #, c-format
 msgid ""
 "check constraint name \"%s\" appears multiple times but with different "
@@ -6389,44 +6085,45 @@ msgstr ""
 "Check-Constraint-Name »%s« erscheint mehrmals, aber mit unterschiedlichen "
 "Ausdrücken"
 
-#: commands/tablecmds.c:2031
+#: commands/tablecmds.c:2041
 msgid "cannot rename column of typed table"
 msgstr "Spalte einer getypten Tabelle kann nicht umbenannt werden"
 
-#: commands/tablecmds.c:2048
+#: commands/tablecmds.c:2058
 #, c-format
 msgid "\"%s\" is not a table, view, composite type, index or foreign table"
-msgstr "»%s« ist weder Tabelle, Sicht, zusammengesetzter Typ, Index noch Fremdtabelle"
+msgstr ""
+"»%s« ist weder Tabelle, Sicht, zusammengesetzter Typ, Index noch Fremdtabelle"
 
-#: commands/tablecmds.c:2114
+#: commands/tablecmds.c:2124
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr ""
 "vererbte Spalte »%s« muss ebenso in den abgeleiteten Tabellen umbenannt "
 "werden"
 
-#: commands/tablecmds.c:2146
+#: commands/tablecmds.c:2156
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht umbenannt werden"
 
-#: commands/tablecmds.c:2161
+#: commands/tablecmds.c:2171
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "kann vererbte Spalte »%s« nicht umbenennen"
 
-#: commands/tablecmds.c:2172 commands/tablecmds.c:4216
+#: commands/tablecmds.c:2182 commands/tablecmds.c:4264
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "Spalte »%s« von Relation »%s« existiert bereits"
 
-#: commands/tablecmds.c:2261 commands/tablecmds.c:7381
-#: commands/tablecmds.c:8964
+#: commands/tablecmds.c:2271 commands/tablecmds.c:7438
+#: commands/tablecmds.c:9020
 msgid "Use ALTER TYPE instead."
 msgstr "Verwenden Sie stattdessen ALTER TYPE."
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2384
+#: commands/tablecmds.c:2394
 #, c-format
 msgid ""
 "cannot %s \"%s\" because it is being used by active queries in this session"
@@ -6435,205 +6132,207 @@ msgstr ""
 "Sitzung verwendet wird"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2393
+#: commands/tablecmds.c:2403
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr ""
 "%s mit Relation »%s« nicht möglich, weil es anstehende Trigger-Ereignisse "
 "dafür gibt"
 
-#: commands/tablecmds.c:2492
+#: commands/tablecmds.c:2502
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "»%s« ist kein zusammengesetzter Typ"
 
-#: commands/tablecmds.c:3288
+#: commands/tablecmds.c:3327
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "Systemrelation »%s« kann nicht neu geschrieben werden"
 
-#: commands/tablecmds.c:3298
+#: commands/tablecmds.c:3337
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht neu schreiben"
 
-#: commands/tablecmds.c:3525
+#: commands/tablecmds.c:3562
 #, c-format
 msgid "rewriting table \"%s\""
 msgstr "schreibe Tabelle »%s« neu"
 
-#: commands/tablecmds.c:3529
+#: commands/tablecmds.c:3566
 #, c-format
 msgid "verifying table \"%s\""
 msgstr "überprüfe Tabelle »%s«"
 
-#: commands/tablecmds.c:3626
+#: commands/tablecmds.c:3673
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "Spalte »%s« enthält NULL-Werte"
 
-#: commands/tablecmds.c:3640
+#: commands/tablecmds.c:3687
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "Check-Constraint »%s« wird von irgendeiner Zeile verletzt"
 
-#: commands/tablecmds.c:3781 commands/tablecmds.c:4730
+#: commands/tablecmds.c:3828 commands/tablecmds.c:4778
 #, c-format
 msgid "\"%s\" is not a table or index"
 msgstr "»%s« ist keine Tabelle und kein Index"
 
-#: commands/tablecmds.c:3784 commands/trigger.c:193 commands/trigger.c:1098
-#: rewrite/rewriteDefine.c:259
+#: commands/tablecmds.c:3831 commands/trigger.c:186 commands/trigger.c:1092
+#: rewrite/rewriteDefine.c:257
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "»%s« ist keine Tabelle oder Sicht"
 
-#: commands/tablecmds.c:3787
+#: commands/tablecmds.c:3834
 #, c-format
 msgid "\"%s\" is not a table or foreign table"
 msgstr "»%s« ist keine Tabelle oder Fremdtabelle"
 
-#: commands/tablecmds.c:3790
+#: commands/tablecmds.c:3837
 #, c-format
 msgid "\"%s\" is not a table, composite type, or foreign table"
 msgstr "»%s« ist weder Tabelle, Sicht, zusammengesetzter Typ noch Fremdtabelle"
 
-#: commands/tablecmds.c:3800
+#: commands/tablecmds.c:3847
 #, c-format
 msgid "\"%s\" is of the wrong type"
 msgstr "»%s« hat den falschen Typ"
 
-#: commands/tablecmds.c:3949 commands/tablecmds.c:3956
+#: commands/tablecmds.c:3996 commands/tablecmds.c:4003
 #, c-format
-msgid "cannot alter type \"%s\" because column \"%s\".\"%s\" uses it"
+msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "kann Typ »%s« nicht ändern, weil Spalte »%s.%s« ihn verwendet"
 
-#: commands/tablecmds.c:3963
-#, fuzzy, c-format
+#: commands/tablecmds.c:4010
+#, c-format
 msgid ""
-"cannot alter foreign table \"%s\" because column \"%s\".\"%s\" uses its "
-"rowtype"
+"cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr ""
-"kann Tabelle »%s« nicht ändern, weil Spalte »%s.%s« ihren Zeilentyp verwendet"
+"kann Fremdtabelle »%s« nicht ändern, weil Spalte »%s.%s« ihren Zeilentyp "
+"verwendet"
 
-#: commands/tablecmds.c:3970
+#: commands/tablecmds.c:4017
 #, c-format
-msgid "cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"
+msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr ""
 "kann Tabelle »%s« nicht ändern, weil Spalte »%s.%s« ihren Zeilentyp verwendet"
 
-#: commands/tablecmds.c:4032
+#: commands/tablecmds.c:4079
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "kann Typ »%s« nicht ändern, weil er der Typ einer getypten Tabelle ist"
 
-#: commands/tablecmds.c:4034
+#: commands/tablecmds.c:4081
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
-msgstr "Verwenden Sie ALTER ... CASCADE, um die getypten Tabellen ebenfalls zu ändern."
+msgstr ""
+"Verwenden Sie ALTER ... CASCADE, um die getypten Tabellen ebenfalls zu "
+"ändern."
 
-#: commands/tablecmds.c:4077
+#: commands/tablecmds.c:4125
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "Typ %s ist kein zusammengesetzter Typ"
 
-#: commands/tablecmds.c:4103
+#: commands/tablecmds.c:4151
 msgid "cannot add column to typed table"
 msgstr "zu einer getypten Tabelle kann keine Spalte hinzugefügt werden"
 
-#: commands/tablecmds.c:4164 commands/tablecmds.c:8239
+#: commands/tablecmds.c:4212 commands/tablecmds.c:8296
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "abgeleitete Tabelle »%s« hat unterschiedlichen Typ für Spalte »%s«"
 
-#: commands/tablecmds.c:4170 commands/tablecmds.c:8246
+#: commands/tablecmds.c:4218 commands/tablecmds.c:8303
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr ""
 "abgeleitete Tabelle »%s« hat unterschiedliche Sortierfolge für Spalte »%s«"
 
-#: commands/tablecmds.c:4180
+#: commands/tablecmds.c:4228
 #, c-format
 msgid "child table \"%s\" has a conflicting \"%s\" column"
 msgstr "abgeleitete Tabelle »%s« hat eine widersprüchliche Spalte »%s«"
 
-#: commands/tablecmds.c:4192
+#: commands/tablecmds.c:4240
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr ""
 "Definition von Spalte »%s« für abgeleitete Tabelle »%s« wird zusammengeführt"
 
-#: commands/tablecmds.c:4422
+#: commands/tablecmds.c:4470
 msgid "column must be added to child tables too"
 msgstr "Spalte muss ebenso in den abgeleiteten Tabellen hinzugefügt werden"
 
-#: commands/tablecmds.c:4552 commands/tablecmds.c:4642
-#: commands/tablecmds.c:4687 commands/tablecmds.c:4783
-#: commands/tablecmds.c:4827 commands/tablecmds.c:4906
-#: commands/tablecmds.c:6600
+#: commands/tablecmds.c:4600 commands/tablecmds.c:4690
+#: commands/tablecmds.c:4735 commands/tablecmds.c:4831
+#: commands/tablecmds.c:4875 commands/tablecmds.c:4954
+#: commands/tablecmds.c:6656
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht geändert werden"
 
-#: commands/tablecmds.c:4586
+#: commands/tablecmds.c:4634
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "Spalte »%s« ist in einem Primärschlüssel"
 
-#: commands/tablecmds.c:4757
+#: commands/tablecmds.c:4805
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "Statistikziel %d ist zu niedrig"
 
-#: commands/tablecmds.c:4765
+#: commands/tablecmds.c:4813
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "setze Statistikziel auf %d herab"
 
-#: commands/tablecmds.c:4887
+#: commands/tablecmds.c:4935
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "ungültiger Storage-Typ »%s«"
 
-#: commands/tablecmds.c:4918
+#: commands/tablecmds.c:4966
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "Spaltendatentyp %s kann nur Storage-Typ PLAIN"
 
-#: commands/tablecmds.c:4948
+#: commands/tablecmds.c:4996
 msgid "cannot drop column from typed table"
 msgstr "aus einer getypten Tabelle können keine Spalten gelöscht werden"
 
-#: commands/tablecmds.c:4989
+#: commands/tablecmds.c:5037
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "Spalte »%s« von Relation »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:5002
+#: commands/tablecmds.c:5050
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:5009
+#: commands/tablecmds.c:5057
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "geerbte Spalte »%s« kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:5235
+#: commands/tablecmds.c:5283
 #, c-format
 msgid ""
 "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX benennt Index »%s« um in »%s«"
 
-#: commands/tablecmds.c:5412
+#: commands/tablecmds.c:5460
 msgid "constraint must be added to child tables too"
 msgstr "Constraint muss ebenso in den abgeleiteten Tabellen hinzugefügt werden"
 
-#: commands/tablecmds.c:5493
+#: commands/tablecmds.c:5548
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr ""
 "Constraints für permanente Tabellen dürfen nur auf permanente Tabellen "
 "verweisen"
 
-#: commands/tablecmds.c:5500
+#: commands/tablecmds.c:5555
 msgid ""
 "constraints on unlogged tables may reference only permanent or unlogged "
 "tables"
@@ -6641,289 +6340,279 @@ msgstr ""
 "Constraints für ungeloggte Tabellen dürfen nur auf permanente oder "
 "ungeloggte Tabellen verweisen"
 
-#: commands/tablecmds.c:5506
+#: commands/tablecmds.c:5561
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr ""
 "Constraints für temporäre Tabellen dürfen nur auf temporäre Tabellen "
 "verweisen"
 
-#: commands/tablecmds.c:5567
+#: commands/tablecmds.c:5622
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr ""
 "Anzahl der Quell- und Zielspalten im Fremdschlüssel stimmt nicht überein"
 
-#: commands/tablecmds.c:5656
+#: commands/tablecmds.c:5711
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "Fremdschlüssel-Constraint »%s« kann nicht implementiert werden"
 
-#: commands/tablecmds.c:5659
+#: commands/tablecmds.c:5714
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Schlüsselspalten »%s« und »%s« haben inkompatible Typen: %s und %s."
 
-#: commands/tablecmds.c:5772
+#: commands/tablecmds.c:5827
 #, c-format
 msgid "foreign key constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "Fremdschlüssel-Constraint »%s« von Relation »%s« existiert nicht"
 
-#: commands/tablecmds.c:5834
+#: commands/tablecmds.c:5890
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "Spalte »%s«, die im Fremdschlüssel verwendet wird, existiert nicht"
 
-#: commands/tablecmds.c:5839
+#: commands/tablecmds.c:5895
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "Fremdschlüssel kann nicht mehr als %d Schlüssel haben"
 
-#: commands/tablecmds.c:5904
+#: commands/tablecmds.c:5960
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr ""
 "aufschiebbarer Primärschlüssel kann nicht für Tabelle »%s«, auf die "
 "verwiesen wird, verwendet werden"
 
-#: commands/tablecmds.c:5921
+#: commands/tablecmds.c:5977
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr ""
 "in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Primärschlüssel"
 
-#: commands/tablecmds.c:6071
+#: commands/tablecmds.c:6127
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr ""
 "aufschiebbarer Unique-Constraint kann nicht für Tabelle »%s«, auf die "
 "verwiesen wird, verwendet werden"
 
-#: commands/tablecmds.c:6076
+#: commands/tablecmds.c:6132
 #, c-format
 msgid ""
 "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr ""
-"in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Unique Constraint, "
+"in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Unique-Constraint, "
 "der auf die angegebenen Schlüssel passt"
 
-#: commands/tablecmds.c:6127
+#: commands/tablecmds.c:6183
 #, c-format
 msgid "validating foreign key constraint \"%s\""
 msgstr "validiere Fremdschlüssel-Constraint »%s«"
 
-#: commands/tablecmds.c:6409
+#: commands/tablecmds.c:6465
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:6436 commands/tablecmds.c:6549
+#: commands/tablecmds.c:6492 commands/tablecmds.c:6605
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "Constraint »%s« von Relation »%s« existiert nicht"
 
-#: commands/tablecmds.c:6442
+#: commands/tablecmds.c:6498
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "Constraint »%s« von Relation »%s« existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:6584
+#: commands/tablecmds.c:6640
 msgid "cannot alter column type of typed table"
 msgstr "Spaltentyp einer getypten Tabelle kann nicht geändert werden"
 
-#: commands/tablecmds.c:6607
+#: commands/tablecmds.c:6663
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "kann vererbte Spalte »%s« nicht ändern"
 
-#: commands/tablecmds.c:6649
+#: commands/tablecmds.c:6705
 msgid "transform expression must not return a set"
 msgstr "Umwandlungsausdruck kann keine Ergebnismenge zurückgeben"
 
-#: commands/tablecmds.c:6655
+#: commands/tablecmds.c:6711
 msgid "cannot use subquery in transform expression"
 msgstr "Unteranfragen können in Umwandlungsausdrücken nicht verwendet werden"
 
-#: commands/tablecmds.c:6659
+#: commands/tablecmds.c:6715
 msgid "cannot use aggregate function in transform expression"
 msgstr ""
 "Aggregatfunktionen können in Umwandlungsausdrücken nicht verwendet werden"
 
-#: commands/tablecmds.c:6663
+#: commands/tablecmds.c:6719
 msgid "cannot use window function in transform expression"
 msgstr ""
 "Fensterfunktionen können in Umwandlungsausdrücken nicht verwendet werden"
 
-#: commands/tablecmds.c:6682
+#: commands/tablecmds.c:6738
 #, c-format
 msgid "column \"%s\" cannot be cast to type %s"
 msgstr "Spalte »%s« kann nicht in Typ %s umgewandelt werden"
 
-#: commands/tablecmds.c:6703
-msgid "ALTER TYPE USING is only supported on plain tables"
-msgstr ""
-
-#: commands/tablecmds.c:6728
+#: commands/tablecmds.c:6785
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr ""
 "Typ der vererbten Spalte »%s« muss ebenso in den abgeleiteten Tabellen "
 "geändert werden"
 
-#: commands/tablecmds.c:6809
+#: commands/tablecmds.c:6866
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "Typ der Spalte »%s« kann nicht zweimal geändert werden"
 
-#: commands/tablecmds.c:6845
+#: commands/tablecmds.c:6902
 #, c-format
 msgid "default for column \"%s\" cannot be cast to type %s"
 msgstr "Vorgabewert der Spalte »%s« kann nicht in Typ %s umgewandelt werden"
 
-#: commands/tablecmds.c:6971
+#: commands/tablecmds.c:7028
 msgid "cannot alter type of a column used by a view or rule"
 msgstr ""
 "Typ einer Spalte, die von einer Sicht oder Regel verwendet wird, kann nicht "
 "geändert werden"
 
-#: commands/tablecmds.c:6972 commands/tablecmds.c:6991
+#: commands/tablecmds.c:7029 commands/tablecmds.c:7048
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s hängt von Spalte »%s« ab"
 
-#: commands/tablecmds.c:6990
+#: commands/tablecmds.c:7047
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr ""
 "Typ einer Spalte, die in einer Trigger-Definition verwendet wird, kann nicht "
 "geändert werden"
 
-#: commands/tablecmds.c:7349
+#: commands/tablecmds.c:7406
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "kann Eigentümer des Index »%s« nicht ändern"
 
-#: commands/tablecmds.c:7351
+#: commands/tablecmds.c:7408
 msgid "Change the ownership of the index's table, instead."
 msgstr "Ändern Sie stattdessen den Eigentümer der Tabelle des Index."
 
-#: commands/tablecmds.c:7367
+#: commands/tablecmds.c:7424
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "kann Eigentümer der Sequenz »%s« nicht ändern"
 
-#: commands/tablecmds.c:7369 commands/tablecmds.c:8954
+#: commands/tablecmds.c:7426 commands/tablecmds.c:9010
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "Sequenz »%s« ist mit Tabelle »%s« verknüpft."
 
-#: commands/tablecmds.c:7390
-#, fuzzy, c-format
-msgid ""
-"\"%s\" is not a table, view, sequence, or foreign tabl, or foreign tablee"
-msgstr "»%s« ist weder Tabelle, Sicht, zusammengesetzter Typ noch Index"
+#: commands/tablecmds.c:7447 commands/tablecmds.c:9028
+#, c-format
+msgid "\"%s\" is not a table, view, sequence, or foreign table"
+msgstr "»%s« ist keine Tabelle, Sicht, Sequenz oder Fremdtabelle"
 
-#: commands/tablecmds.c:7645
+#: commands/tablecmds.c:7702
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "mehrere SET TABLESPACE Unterbefehle sind ungültig"
 
-#: commands/tablecmds.c:7697
+#: commands/tablecmds.c:7754
 #, c-format
 msgid "\"%s\" is not a table, index, or TOAST table"
 msgstr "»%s« ist weder Tabelle, Index noch TOAST-Tabelle"
 
-#: commands/tablecmds.c:7818
+#: commands/tablecmds.c:7875
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "Systemrelation »%s« kann nicht verschoben werden"
 
-#: commands/tablecmds.c:7834
+#: commands/tablecmds.c:7891
 msgid "cannot move temporary tables of other sessions"
 msgstr "temporäre Tabellen anderer Sitzungen können nicht verschoben werden"
 
-#: commands/tablecmds.c:8026
+#: commands/tablecmds.c:8083
 msgid "cannot change inheritance of typed table"
 msgstr "Vererbung einer getypten Tabelle kann nicht geändert werden"
 
-#: commands/tablecmds.c:8112
+#: commands/tablecmds.c:8169
 msgid "circular inheritance not allowed"
 msgstr "zirkuläre Vererbung ist nicht erlaubt"
 
-#: commands/tablecmds.c:8113
+#: commands/tablecmds.c:8170
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "»%s« ist schon von »%s« abgeleitet."
 
-#: commands/tablecmds.c:8121
+#: commands/tablecmds.c:8178
 #, c-format
 msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
 msgstr "Tabelle »%s« ohne OIDs kann nicht von Tabelle »%s« mit OIDs erben"
 
-#: commands/tablecmds.c:8257
+#: commands/tablecmds.c:8314
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "Spalte »%s« in abgeleiteter Tabelle muss als NOT NULL markiert sein"
 
-#: commands/tablecmds.c:8273
+#: commands/tablecmds.c:8330
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "Spalte »%s« fehlt in abgeleiteter Tabelle"
 
-#: commands/tablecmds.c:8352
+#: commands/tablecmds.c:8409
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr ""
 "abgeleitete Tabelle »%s« hat unterschiedliche Definition für Check-"
 "Constraint »%s«"
 
-#: commands/tablecmds.c:8376
+#: commands/tablecmds.c:8433
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "Constraint »%s« fehlt in abgeleiteter Tabelle"
 
-#: commands/tablecmds.c:8456
+#: commands/tablecmds.c:8513
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "Relation »%s« ist keine Basisrelation von Relation »%s«"
 
-#: commands/tablecmds.c:8675
+#: commands/tablecmds.c:8730
 msgid "typed tables cannot inherit"
 msgstr "getypte Tabellen können nicht erben"
 
-#: commands/tablecmds.c:8706
-#, fuzzy, c-format
+#: commands/tablecmds.c:8761
+#, c-format
 msgid "table is missing column \"%s\""
-msgstr "Spalte »%s« fehlt in abgeleiteter Tabelle"
+msgstr "Spalte »%s« fehlt in Tabelle"
 
-#: commands/tablecmds.c:8716
-#, fuzzy, c-format
+#: commands/tablecmds.c:8771
+#, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
-msgstr "Tabelle »%s« verweist auf »%s«."
+msgstr "Tabelle hat Spalte »%s«, aber Typ benötigt »%s«"
 
-#: commands/tablecmds.c:8725
+#: commands/tablecmds.c:8780
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "Tabelle »%s« hat unterschiedlichen Typ für Spalte »%s«"
 
-#: commands/tablecmds.c:8737
-#, fuzzy, c-format
+#: commands/tablecmds.c:8793
+#, c-format
 msgid "table has extra column \"%s\""
-msgstr "Spalte »%s« fehlt in abgeleiteter Tabelle"
+msgstr "Tabelle hat zusätzliche Spalte »%s«"
 
-#: commands/tablecmds.c:8784
+#: commands/tablecmds.c:8840
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "»%s« ist keine getypte Tabelle"
 
-#: commands/tablecmds.c:8953
+#: commands/tablecmds.c:9009
 msgid "cannot move an owned sequence into another schema"
 msgstr ""
 "einer Tabelle zugeordnete Sequenz kann nicht in ein anderes Schema "
 "verschoben werden"
 
-#: commands/tablecmds.c:8972
-#, c-format
-msgid "\"%s\" is not a table, view, sequence, or foreign table"
-msgstr "»%s« ist keine Tabelle, Sicht, Sequenz oder Fremdtabelle"
-
-#: commands/tablecmds.c:9029
+#: commands/tablecmds.c:9085
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "Relation »%s« existiert bereits in Schema »%s«"
@@ -7009,7 +6698,9 @@ msgstr "Verzeichnis »%s« existiert nicht"
 
 #: commands/tablespace.c:561
 msgid "Create this directory for the tablespace before restarting the server."
-msgstr "Erzeugen Sie dieses Verzeichnis für den Tablespace bevor Sie den Server neu starten."
+msgstr ""
+"Erzeugen Sie dieses Verzeichnis für den Tablespace bevor Sie den Server neu "
+"starten."
 
 #: commands/tablespace.c:566
 #, c-format
@@ -7032,7 +6723,7 @@ msgid "could not create symbolic link \"%s\": %m"
 msgstr "konnte symbolische Verknüpfung »%s« nicht erstellen: %m"
 
 #: commands/tablespace.c:684 storage/file/copydir.c:67
-#: storage/file/copydir.c:106 storage/file/fd.c:1605
+#: storage/file/copydir.c:106 storage/file/fd.c:1624
 #: postmaster/postmaster.c:1165 utils/adt/genfile.c:353 utils/adt/misc.c:213
 #: utils/misc/tzparser.c:323
 #, c-format
@@ -7055,258 +6746,258 @@ msgstr "Tablespace »%s« existiert nicht."
 msgid "tablespace %u is not empty"
 msgstr "Tablespace %u ist nicht leer"
 
-#: commands/trigger.c:166
+#: commands/trigger.c:159
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "»%s« ist eine Tabelle"
 
-#: commands/trigger.c:168
+#: commands/trigger.c:161
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "Tabellen können keine INSTEAD OF-Trigger haben."
 
-#: commands/trigger.c:179 commands/trigger.c:186
+#: commands/trigger.c:172 commands/trigger.c:179
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "»%s« ist eine Sicht"
 
-#: commands/trigger.c:181
+#: commands/trigger.c:174
 msgid "Views cannot have row-level BEFORE or AFTER triggers."
-msgstr ""
+msgstr "Sichten können keine BEFORE- oder AFTER-Trigger auf Zeilenebene haben."
 
-#: commands/trigger.c:188
+#: commands/trigger.c:181
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "Sichten können keine TRUNCATE-Trigger haben."
 
-#: commands/trigger.c:235
+#: commands/trigger.c:228
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "TRUNCATE FOR EACH ROW-Trigger werden nicht unterstützt"
 
-#: commands/trigger.c:243
+#: commands/trigger.c:236
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "INSTEAD OF-Trigger müssen FOR EACH ROW sein"
 
-#: commands/trigger.c:247
+#: commands/trigger.c:240
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "INSTEAD OF-Trigger können keine WHEN-Bedingungen haben"
 
-#: commands/trigger.c:251
+#: commands/trigger.c:244
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "INSTEAD OF-Trigger können keine Spaltenlisten haben"
 
-#: commands/trigger.c:295
+#: commands/trigger.c:288
 msgid "cannot use subquery in trigger WHEN condition"
 msgstr ""
 "Unteranfragen können nicht in der WHEN-Bedingung eines Triggers verwendet "
 "werden"
 
-#: commands/trigger.c:299
+#: commands/trigger.c:292
 msgid "cannot use aggregate function in trigger WHEN condition"
 msgstr ""
 "Aggregatfunktionen können nicht in der WHEN-Bedingung eines Triggers "
 "verwendet werden"
 
-#: commands/trigger.c:303
+#: commands/trigger.c:296
 msgid "cannot use window function in trigger WHEN condition"
 msgstr ""
 "Fensterfunktionen können nicht in der WHEN-Bedingung eines Triggers "
 "verwendet werden"
 
-#: commands/trigger.c:323 commands/trigger.c:336
+#: commands/trigger.c:318 commands/trigger.c:331
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr ""
 "WHEN-Bedingung eines Statement-Triggers kann keine Verweise auf Spaltenwerte "
 "enthalten"
 
-#: commands/trigger.c:328
+#: commands/trigger.c:323
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr ""
 "WHEN-Bedingung eines INSERT-Triggers kann keine Verweise auf OLD-Werte "
 "enthalten"
 
-#: commands/trigger.c:341
+#: commands/trigger.c:336
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr ""
 "WHEN-Bedingung eines DELETE-Triggers kann keine Verweise auf NEW-Werte "
 "enthalten"
 
-#: commands/trigger.c:346
+#: commands/trigger.c:341
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr ""
 "WHEN-Bedingung eines BEFORE-Triggers kann keine Verweise auf Systemspalten "
 "in NEW enthalten"
 
-#: commands/trigger.c:384
+#: commands/trigger.c:379
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"trigger\""
 msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in »trigger«"
 
-#: commands/trigger.c:391
+#: commands/trigger.c:386
 #, c-format
 msgid "function %s must return type \"trigger\""
 msgstr "Funktion %s muss Typ »trigger« zurückgeben"
 
-#: commands/trigger.c:501 commands/trigger.c:1240
+#: commands/trigger.c:496 commands/trigger.c:1234
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "Trigger »%s« für Relation »%s« existiert bereits"
 
-#: commands/trigger.c:786
+#: commands/trigger.c:781
 msgid "Found referenced table's UPDATE trigger."
 msgstr "UPDATE-Trigger der Zieltabelle wurde gefunden."
 
-#: commands/trigger.c:787
+#: commands/trigger.c:782
 msgid "Found referenced table's DELETE trigger."
 msgstr "DELETE-Trigger der Zieltabelle wurde gefunden."
 
-#: commands/trigger.c:788
+#: commands/trigger.c:783
 msgid "Found referencing table's trigger."
 msgstr "Trigger der Quelltabelle wurde gefunden."
 
-#: commands/trigger.c:897 commands/trigger.c:913
+#: commands/trigger.c:892 commands/trigger.c:908
 #, c-format
 msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
 msgstr "unvollständige Triggergruppe für Constraint \"%s\" %s ignoriert"
 
-#: commands/trigger.c:925
+#: commands/trigger.c:920
 #, c-format
 msgid "converting trigger group into constraint \"%s\" %s"
 msgstr "Triggergruppe wird in Constraint \"%s\" %s umgewandelt"
 
-#: commands/trigger.c:1039
+#: commands/trigger.c:1036
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist, skipping"
 msgstr "Trigger »%s« für Tabelle »%s« existiert nicht, wird übersprungen"
 
-#: commands/trigger.c:1169 commands/trigger.c:1282 commands/trigger.c:1393
+#: commands/trigger.c:1163 commands/trigger.c:1276 commands/trigger.c:1387
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "Trigger »%s« für Tabelle »%s« existiert nicht"
 
-#: commands/trigger.c:1361
+#: commands/trigger.c:1355
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "keine Berechtigung: »%s« ist ein Systemtrigger"
 
-#: commands/trigger.c:1843
+#: commands/trigger.c:1837
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "Triggerfunktion %u gab NULL-Wert zurück"
 
-#: commands/trigger.c:1902 commands/trigger.c:2101 commands/trigger.c:2285
-#: commands/trigger.c:2527
+#: commands/trigger.c:1896 commands/trigger.c:2095 commands/trigger.c:2279
+#: commands/trigger.c:2521
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "Trigger für BEFORE STATEMENT kann keinen Wert zurückgeben"
 
-#: commands/trigger.c:2589 executor/execMain.c:1811
+#: commands/trigger.c:2583 executor/execMain.c:1863
 #: executor/nodeLockRows.c:137 executor/nodeModifyTable.c:366
 #: executor/nodeModifyTable.c:582
 msgid "could not serialize access due to concurrent update"
 msgstr "kann Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung"
 
-#: commands/trigger.c:4204
+#: commands/trigger.c:4198
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "Constraint »%s« ist nicht aufschiebbar"
 
-#: commands/trigger.c:4227
+#: commands/trigger.c:4221
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "Constraint »%s« existiert nicht"
 
-#: commands/tsearchcmds.c:116 commands/tsearchcmds.c:1043
+#: commands/tsearchcmds.c:117 commands/tsearchcmds.c:1044
 #, c-format
 msgid "function %s should return type %s"
 msgstr "Function %s sollte Rückgabetyp %s haben"
 
-#: commands/tsearchcmds.c:188
+#: commands/tsearchcmds.c:189
 msgid "must be superuser to create text search parsers"
 msgstr "nur Superuser können Textsucheparser anlegen"
 
-#: commands/tsearchcmds.c:236
+#: commands/tsearchcmds.c:237
 #, c-format
 msgid "text search parser parameter \"%s\" not recognized"
 msgstr "Textsucheparserparameter »%s« nicht erkannt"
 
-#: commands/tsearchcmds.c:246
+#: commands/tsearchcmds.c:247
 msgid "text search parser start method is required"
 msgstr "Textsucheparserstartmethode muss angegeben werden"
 
-#: commands/tsearchcmds.c:251
+#: commands/tsearchcmds.c:252
 msgid "text search parser gettoken method is required"
 msgstr "Gettoken-Methode für Textsucheparser muss angegeben werden"
 
-#: commands/tsearchcmds.c:256
+#: commands/tsearchcmds.c:257
 msgid "text search parser end method is required"
 msgstr "Textsucheparserendemethode muss angegeben werden"
 
-#: commands/tsearchcmds.c:261
+#: commands/tsearchcmds.c:262
 msgid "text search parser lextypes method is required"
 msgstr "Lextypes-Methode für Textsucheparser muss angegeben werden"
 
-#: commands/tsearchcmds.c:296
+#: commands/tsearchcmds.c:297
 msgid "must be superuser to drop text search parsers"
 msgstr "nur Superuser können Textsucheparser löschen"
 
-#: commands/tsearchcmds.c:325
+#: commands/tsearchcmds.c:326
 #, c-format
 msgid "text search parser \"%s\" does not exist, skipping"
 msgstr "Textsucheparser »%s« existiert nicht, wird übersprungen"
 
-#: commands/tsearchcmds.c:380
+#: commands/tsearchcmds.c:381
 msgid "must be superuser to rename text search parsers"
 msgstr "nur Superuser können Textsucheparser umbenennen"
 
-#: commands/tsearchcmds.c:398
+#: commands/tsearchcmds.c:399
 #, c-format
 msgid "text search parser \"%s\" already exists"
 msgstr "Textsucheparser »%s« existiert bereits"
 
-#: commands/tsearchcmds.c:524
+#: commands/tsearchcmds.c:525
 #, c-format
 msgid "text search template \"%s\" does not accept options"
 msgstr "Textsuchevorlage »%s« akzeptiert keine Optionen"
 
-#: commands/tsearchcmds.c:597
+#: commands/tsearchcmds.c:598
 msgid "text search template is required"
 msgstr "Textsuchevorlage muss angegeben werden"
 
-#: commands/tsearchcmds.c:666
+#: commands/tsearchcmds.c:667
 #, c-format
 msgid "text search dictionary \"%s\" already exists"
 msgstr "Textsuchewörterbuch »%s« existiert bereits"
 
-#: commands/tsearchcmds.c:774
+#: commands/tsearchcmds.c:775
 #, c-format
 msgid "text search dictionary \"%s\" does not exist, skipping"
 msgstr "Textsuchewörterbuch »%s« existiert nicht, wird übersprungen"
 
-#: commands/tsearchcmds.c:1107
+#: commands/tsearchcmds.c:1108
 msgid "must be superuser to create text search templates"
 msgstr "nur Superuser können Textsuchevorlagen erzeugen"
 
-#: commands/tsearchcmds.c:1144
+#: commands/tsearchcmds.c:1145
 #, c-format
 msgid "text search template parameter \"%s\" not recognized"
 msgstr "Textsuchevorlageparameter »%s« nicht erkannt"
 
-#: commands/tsearchcmds.c:1154
+#: commands/tsearchcmds.c:1155
 msgid "text search template lexize method is required"
 msgstr "Lexize-Methode für Textsuchevorlage muss angegeben werden"
 
-#: commands/tsearchcmds.c:1192
+#: commands/tsearchcmds.c:1193
 msgid "must be superuser to rename text search templates"
 msgstr "nur Superuser können Textsuchevorlagen umbenennen"
 
-#: commands/tsearchcmds.c:1211
+#: commands/tsearchcmds.c:1212
 #, c-format
 msgid "text search template \"%s\" already exists"
 msgstr "Textsuchevorlage »%s« existiert bereits"
 
-#: commands/tsearchcmds.c:1280
+#: commands/tsearchcmds.c:1281
 msgid "must be superuser to drop text search templates"
 msgstr "nur Superuser können Textsuchevorlagen löschen"
 
-#: commands/tsearchcmds.c:1309
+#: commands/tsearchcmds.c:1310
 #, c-format
 msgid "text search template \"%s\" does not exist, skipping"
 msgstr "Textsuchevorlage »%s« existiert nicht, wird übersprungen"
@@ -7446,27 +7137,27 @@ msgstr "mehrere Vorgabeausdrücke"
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "wiedersprüchliche NULL/NOT NULL-Constraints"
 
-#: commands/typecmds.c:1001 commands/typecmds.c:1983
+#: commands/typecmds.c:1001 commands/typecmds.c:1984
 msgid "unique constraints not possible for domains"
-msgstr "Unique Constraints sind nicht für Domänen möglich"
+msgstr "Unique-Constraints sind nicht für Domänen möglich"
 
-#: commands/typecmds.c:1007 commands/typecmds.c:1989
+#: commands/typecmds.c:1007 commands/typecmds.c:1990
 msgid "primary key constraints not possible for domains"
 msgstr "Primärschlüssel-Constraints sind nicht fürDomänen möglich"
 
-#: commands/typecmds.c:1013 commands/typecmds.c:1995
+#: commands/typecmds.c:1013 commands/typecmds.c:1996
 msgid "exclusion constraints not possible for domains"
 msgstr "Exclusion-Constraints sind nicht für Domänen möglich"
 
-#: commands/typecmds.c:1019 commands/typecmds.c:2001
+#: commands/typecmds.c:1019 commands/typecmds.c:2002
 msgid "foreign key constraints not possible for domains"
 msgstr "Fremdschlüssel-Constraints sind nicht für Domänen möglich"
 
-#: commands/typecmds.c:1028 commands/typecmds.c:2010
+#: commands/typecmds.c:1028 commands/typecmds.c:2011
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "Setzen des Constraint-Modus wird für Domänen nicht unterstützt"
 
-#: commands/typecmds.c:1272 utils/cache/typcache.c:761
+#: commands/typecmds.c:1272 utils/cache/typcache.c:996
 #, c-format
 msgid "%s is not an enum"
 msgstr "»%s« ist kein Enum"
@@ -7496,12 +7187,12 @@ msgstr "typmod_out-Funktion %s muss Typ »cstring« zurückgeben"
 msgid "type analyze function %s must return type \"boolean\""
 msgstr "Typanalysefunktion %s muss Typ »boolean« zurückgeben"
 
-#: commands/typecmds.c:1835
+#: commands/typecmds.c:1836
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "Spalte »%s« von Tabelle »%s« enthält NULL-Werte"
 
-#: commands/typecmds.c:2081
+#: commands/typecmds.c:2082
 #, c-format
 msgid ""
 "column \"%s\" of table \"%s\" contains values that violate the new constraint"
@@ -7509,37 +7200,37 @@ msgstr ""
 "Spalte »%s« von Tabelle »%s« enthält Werte, die den neuen Constraint "
 "verletzen"
 
-#: commands/typecmds.c:2286
+#: commands/typecmds.c:2287
 #, c-format
 msgid "%s is not a domain"
 msgstr "%s ist keine Domäne"
 
-#: commands/typecmds.c:2368 commands/typecmds.c:2377
+#: commands/typecmds.c:2369 commands/typecmds.c:2378
 msgid "cannot use table references in domain check constraint"
 msgstr ""
 "Tabellenverweise können in Domänen-Check-Constraints nicht verwendet werden"
 
-#: commands/typecmds.c:2607 commands/typecmds.c:2679 commands/typecmds.c:2903
+#: commands/typecmds.c:2608 commands/typecmds.c:2680 commands/typecmds.c:2904
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s ist der Zeilentyp einer Tabelle"
 
-#: commands/typecmds.c:2609 commands/typecmds.c:2681 commands/typecmds.c:2905
+#: commands/typecmds.c:2610 commands/typecmds.c:2682 commands/typecmds.c:2906
 msgid "Use ALTER TABLE instead."
 msgstr "Verwenden Sie stattdessen ALTER TABLE."
 
-#: commands/typecmds.c:2616 commands/typecmds.c:2688 commands/typecmds.c:2834
+#: commands/typecmds.c:2617 commands/typecmds.c:2689 commands/typecmds.c:2835
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "Array-Typ %s kann nicht verändert werden"
 
-#: commands/typecmds.c:2618 commands/typecmds.c:2690 commands/typecmds.c:2836
+#: commands/typecmds.c:2619 commands/typecmds.c:2691 commands/typecmds.c:2837
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr ""
 "Sie können den Typ %s ändern, wodurch der Array-Typ ebenfalls geändert wird."
 
-#: commands/typecmds.c:2889
+#: commands/typecmds.c:2890
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "Typ %s existiert bereits in Schema »%s«"
@@ -7554,48 +7245,50 @@ msgstr ""
 "Schließen Sie bald alle offenen Transaktionen, um Überlaufprobleme zu "
 "vermeiden."
 
-#: commands/vacuum.c:736
+#: commands/vacuum.c:809
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr ""
 "einige Datenbanken sind seit über 2 Milliarden Transaktionen nicht gevacuumt "
 "worden"
 
-#: commands/vacuum.c:737
+#: commands/vacuum.c:810
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr ""
 "Sie haben möglicherweise bereits Daten wegen Transaktionsnummernüberlauf "
 "verloren."
 
-#: commands/vacuum.c:851
+#: commands/vacuum.c:917
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "überspringe Vacuum von »%s« --- Sperre nicht verfügbar"
 
-#: commands/vacuum.c:877
+#: commands/vacuum.c:943
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "überspringe »%s« --- nur Superuser kann sie vacuumen"
 
-#: commands/vacuum.c:881
+#: commands/vacuum.c:947
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr ""
 "überspringe »%s« --- nur Superuser oder Eigentümer der Datenbank kann sie "
 "vacuumen"
 
-#: commands/vacuum.c:885
+#: commands/vacuum.c:951
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
 msgstr ""
 "überspringe »%s« --- nur Eigentümer der Tabelle oder der Datenbank kann sie "
 "vacuumen"
 
-#: commands/vacuum.c:902
+#: commands/vacuum.c:968
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
-msgstr "überspringe »%s« --- kann Nicht-Tabellen oder besondere Systemtabellen nicht vacuumen"
+msgstr ""
+"überspringe »%s« --- kann Nicht-Tabellen oder besondere Systemtabellen nicht "
+"vacuumen"
 
-#: commands/vacuumlazy.c:234
+#: commands/vacuumlazy.c:230
 #, c-format
 msgid ""
 "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
@@ -7608,18 +7301,18 @@ msgstr ""
 "Tuple: %.0f entfernt, %.0f noch vorhanden\n"
 "Systembenutzung: %s"
 
-#: commands/vacuumlazy.c:450
+#: commands/vacuumlazy.c:484
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr ""
 "Seite %2$u in Relation »%1$s« ist nicht initialisiert --- wird repariert"
 
-#: commands/vacuumlazy.c:801
+#: commands/vacuumlazy.c:841
 #, c-format
 msgid "\"%s\": removed %.0f row versions in %u pages"
 msgstr "»%s«: %.0f Zeilenversionen in %u Seiten entfernt"
 
-#: commands/vacuumlazy.c:806
+#: commands/vacuumlazy.c:846
 #, c-format
 msgid ""
 "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u "
@@ -7628,7 +7321,7 @@ msgstr ""
 "»%s«: %.0f entfernbare, %.0f nicht entfernbare Zeilenversionen in %u von %u "
 "Seiten gefunden"
 
-#: commands/vacuumlazy.c:809
+#: commands/vacuumlazy.c:850
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7641,28 +7334,28 @@ msgstr ""
 "%u Seiten sind vollkommen leer.\n"
 "%s."
 
-#: commands/vacuumlazy.c:867
+#: commands/vacuumlazy.c:908
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "»%s«: %d Zeilenversionen in %d Seiten entfernt"
 
-#: commands/vacuumlazy.c:870 commands/vacuumlazy.c:962
-#: commands/vacuumlazy.c:1087
+#: commands/vacuumlazy.c:911 commands/vacuumlazy.c:1003
+#: commands/vacuumlazy.c:1136
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: commands/vacuumlazy.c:959
+#: commands/vacuumlazy.c:1000
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "Index »%s« gelesen und %d Zeilenversionen entfernt"
 
-#: commands/vacuumlazy.c:1001
+#: commands/vacuumlazy.c:1041
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "Index »%s« enthält %.0f Zeilenversionen in %u Seiten"
 
-#: commands/vacuumlazy.c:1005
+#: commands/vacuumlazy.c:1045
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -7673,12 +7366,12 @@ msgstr ""
 "%u Indexseiten wurden gelöscht, %u sind gegenwärtig wiederverwendbar.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1084
+#: commands/vacuumlazy.c:1133
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "»%s«: von %u auf %u Seiten verkürzt"
 
-#: commands/variable.c:160 utils/misc/guc.c:8175
+#: commands/variable.c:160 utils/misc/guc.c:8185
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Unbekanntes Schlüsselwort: »%s«."
@@ -7711,11 +7404,9 @@ msgstr ""
 "Transaktion setzen"
 
 #: commands/variable.c:589
-#, fuzzy
 msgid "transaction read-write mode must be set before any query"
 msgstr ""
-"kann den Read/Write-Modus einer Transaktion nicht während der "
-"Wiederherstellung setzen"
+"Read/Write-Modus einer Transaktion muss vor allen Anfragen gesetzt werden"
 
 #: commands/variable.c:595
 msgid "cannot set transaction read-write mode during recovery"
@@ -7735,37 +7426,33 @@ msgstr ""
 "aufgerufen werden"
 
 #: commands/variable.c:655
-#, fuzzy
 msgid "cannot use serializable mode in a hot standby"
-msgstr "initialisiere für Hot Standby"
+msgstr "kann serialisierbaren Modus nicht in einem Hot Standby verwenden"
 
 #: commands/variable.c:656
-#, fuzzy
 msgid "You can use REPEATABLE READ instead."
-msgstr "Sie könnten stattdessen EXECUTE ... INTO verwenden."
+msgstr "Sie können stattdessen REPEATABLE READ verwenden."
 
 #: commands/variable.c:704
-#, fuzzy
 msgid ""
 "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr ""
-"SET TRANSACTION ISOLATION LEVEL kann nicht in einer Subtransaktion "
+"SET TRANSACTION [NOT] DEFERRABLE kann nicht in einer Subtransaktion "
 "aufgerufen werden"
 
 #: commands/variable.c:710
-#, fuzzy
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr ""
-"SET TRANSACTION ISOLATION LEVEL muss vor allen Anfragen aufgerufen werden"
+"SET TRANSACTION [NOT] DEFERRABLE muss vor allen Anfragen aufgerufen werden"
 
 #: commands/variable.c:792
-#, fuzzy, c-format
+#, c-format
 msgid "Conversion between %s and %s is not supported."
-msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt"
+msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt."
 
 #: commands/variable.c:799
 msgid "Cannot change \"client_encoding\" now."
-msgstr ""
+msgstr "»client_encoding« kann jetzt nicht geändert werden."
 
 #: commands/variable.c:969
 #, c-format
@@ -7773,26 +7460,26 @@ msgid "permission denied to set role \"%s\""
 msgstr "keine Berechtigung, um Rolle »%s« zu setzen"
 
 #: commands/view.c:143
-#, fuzzy, c-format
+#, c-format
 msgid "could not determine which collation to use for view column \"%s\""
 msgstr ""
-"konnte den tatsächlichen Rückgabetyp der polymorphischen Funktion »%s« nicht "
-"ermitteln"
+"konnte die für die Sichtspalte »%s« zu verwendende Sortierfolge nicht "
+"bestimmen"
 
 #: commands/view.c:158
 msgid "view must have at least one column"
 msgstr "Sicht muss mindestens eine Spalte haben"
 
-#: commands/view.c:284 commands/view.c:296
+#: commands/view.c:283 commands/view.c:295
 msgid "cannot drop columns from view"
 msgstr "aus einer Sicht können keine Spalten gelöscht werden"
 
-#: commands/view.c:301
+#: commands/view.c:300
 #, c-format
 msgid "cannot change name of view column \"%s\" to \"%s\""
 msgstr "kann Namen der Sichtspalte »%s« nicht in »%s« ändern"
 
-#: commands/view.c:309
+#: commands/view.c:308
 #, c-format
 msgid "cannot change data type of view column \"%s\" from %s to %s"
 msgstr "kann Datentyp der Sichtspalte »%s« nicht von %s in %s ändern"
@@ -7810,29 +7497,31 @@ msgstr ""
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW gibt mehr Spaltennamen als Spalten an"
 
-#: commands/view.c:496
-#, c-format
-msgid "view \"%s\" will be a temporary view"
-msgstr "Sicht »%s« wird eine temporäre Sicht"
-
-#: commands/view.c:504
+#: commands/view.c:487
 msgid "views cannot be unlogged because they do not have storage"
 msgstr ""
 "Sichten können nicht ungeloggt sein, weil sie keinen Speicherplatz verwenden"
 
+#: commands/view.c:501
+#, c-format
+msgid "view \"%s\" will be a temporary view"
+msgstr "Sicht »%s« wird eine temporäre Sicht"
+
 #: commands/seclabel.c:58
 msgid "no security label providers have been loaded"
-msgstr ""
+msgstr "es sind keine Security-Label-Provider geladen"
 
 #: commands/seclabel.c:62
 msgid ""
 "must specify provider when multiple security label providers have been loaded"
 msgstr ""
+"Provider muss angegeben werden, wenn mehrere Security-Label-Provider geladen "
+"sind"
 
 #: commands/seclabel.c:80
-#, fuzzy, c-format
+#, c-format
 msgid "security label provider \"%s\" is not loaded"
-msgstr "Variable »%s« ist nicht deklariert"
+msgstr "Security-Label-Provider »%s« ist nicht geladen"
 
 #: commands/extension.c:147 commands/extension.c:2431
 #, c-format
@@ -7889,9 +7578,11 @@ msgid "could not open extension control file \"%s\": %m"
 msgstr "konnte Erweiterungskontrolldatei »%s« nicht öffnen: %m"
 
 #: commands/extension.c:493 commands/extension.c:503
-#, fuzzy, c-format
+#, c-format
 msgid "parameter \"%s\" cannot be set in a secondary extension control file"
-msgstr "Parameter »%s« kann nach Start der Verbindung nicht geändert werden"
+msgstr ""
+"Parameter »%s« kann nicht in einer sekundären Erweitungskontrolldatei "
+"gesetzt werden"
 
 #: commands/extension.c:542
 #, c-format
@@ -7899,9 +7590,9 @@ msgid "\"%s\" is not a valid encoding name"
 msgstr "»%s« ist kein gültiger Kodierungsname"
 
 #: commands/extension.c:556
-#, fuzzy, c-format
+#, c-format
 msgid "parameter \"%s\" must be a list of extension names"
-msgstr "Argument von Option »%s« muss eine Liste aus Spaltennamen sein"
+msgstr "Parameter »%s« muss eine Liste von Erweiterungsnamen sein"
 
 #: commands/extension.c:563
 #, c-format
@@ -7909,39 +7600,42 @@ msgid "unrecognized parameter \"%s\" in file \"%s\""
 msgstr "unbekannter Parameter »%s« in Datei »%s«"
 
 #: commands/extension.c:572
-#, fuzzy
 msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
-msgstr "Parameter »%s« kann nach Start der Verbindung nicht geändert werden"
+msgstr ""
+"Parameter »schema« kann nicht angegeben werden, wenn »relocatable« an ist"
 
 #: commands/extension.c:724
 msgid ""
 "transaction control statements are not allowed within an extension script"
 msgstr ""
+"Transaktionskontrollanweisungen sind nicht in einem Erweiterungsskript "
+"erlaubt"
 
 #: commands/extension.c:794
-#, fuzzy, c-format
+#, c-format
 msgid "permission denied to create extension \"%s\""
-msgstr "keine Berechtigung, um Tablespace »%s« zu erzeugen"
+msgstr "keine Berechtigung, um Erweiterung »%s« zu erzeugen"
 
 #: commands/extension.c:796
 msgid "Must be superuser to create this extension."
 msgstr "Nur Superuser können diese Erweiterung anlegen."
 
 #: commands/extension.c:800
-#, fuzzy, c-format
+#, c-format
 msgid "permission denied to update extension \"%s\""
-msgstr "keine Berechtigung, um Tablespace »%s« zu erzeugen"
+msgstr "keine Berechtigung, um Erweiterung »%s« zu aktualisieren"
 
 #: commands/extension.c:802
-#, fuzzy
 msgid "Must be superuser to update this extension."
-msgstr "Nur Superuser können Tablespaces anlegen."
+msgstr "Nur Superuser können diese Erweiterung aktualisieren."
 
 #: commands/extension.c:1082
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
-msgstr "Relation »%s« ist keine Basisrelation von Relation »%s«"
+msgstr ""
+"Erweiterung »%s« hat keinen Aktualisierungspfad von Version »%s« auf Version "
+"»%s«"
 
 #: commands/extension.c:1209
 #, c-format
@@ -7954,29 +7648,28 @@ msgid "extension \"%s\" already exists"
 msgstr "Erweiterung »%s« existiert bereits"
 
 #: commands/extension.c:1227
-#, fuzzy
 msgid "nested CREATE EXTENSION is not supported"
-msgstr "LOCATION wird nicht mehr unterstützt"
+msgstr "geschachteltes CREATE EXTENSION wird nicht unterstützt"
 
 #: commands/extension.c:1282 commands/extension.c:2491
-#, fuzzy
 msgid "version to install must be specified"
-msgstr "Hostname muss angegeben werden\n"
+msgstr "die zu installierende Version muss angegeben werden"
 
 #: commands/extension.c:1299
 #, c-format
 msgid "FROM version must be different from installation target version \"%s\""
 msgstr ""
+"FROM-Version muss verschieden von der zu installierenden Version »%s« sein"
 
 #: commands/extension.c:1354
-#, fuzzy, c-format
+#, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
-msgstr "Relation »%s« ist bereits in Schema »%s«"
+msgstr "Erweiterung »%s« muss in Schema »%s« installiert werden"
 
 #: commands/extension.c:1424 commands/extension.c:2632
-#, fuzzy, c-format
+#, c-format
 msgid "required extension \"%s\" is not installed"
-msgstr "Relation »%s«, auf die verwiesen wird, ist keine Tabelle"
+msgstr "benötigte Erweiterung »%s« ist nicht installiert"
 
 #: commands/extension.c:1593
 #, c-format
@@ -7985,9 +7678,11 @@ msgstr "Erweiterung »%s« existiert nicht, wird übersprungen"
 
 #: commands/extension.c:2101
 msgid ""
-"pg_extension_config_dump() can only be called from a SQL script executed by "
+"pg_extension_config_dump() can only be called from an SQL script executed by "
 "CREATE EXTENSION"
 msgstr ""
+"pg_extension_config_dump() kann nur von einem SQL-Skript aufgerufen werden, "
+"das von CREATE EXTENSION ausgeführt wird"
 
 #: commands/extension.c:2113
 #, c-format
@@ -7995,38 +7690,61 @@ msgid "OID %u does not refer to a table"
 msgstr "OID %u bezieht sich nicht auf eine Tabelle"
 
 #: commands/extension.c:2118
-#, fuzzy, c-format
+#, c-format
 msgid "table \"%s\" is not a member of the extension being created"
-msgstr "Rolle »%s« ist kein Mitglied der Rolle »%s«"
+msgstr "Tabelle »%s« ist kein Mitglied der anzulegenden Erweiterung"
 
 #: commands/extension.c:2301 commands/extension.c:2360
-#, fuzzy, c-format
+#, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
-msgstr "Zugriffsmethode »%s« unterstützt die Optionen ASC/DESC nicht"
+msgstr "Erweiterung »%s« unterstützt SET SCHEMA nicht"
 
 #: commands/extension.c:2362
-#, fuzzy, c-format
+#, c-format
 msgid "%s is not in the extension's schema \"%s\""
-msgstr "Funktion %s existiert bereits in Schema »%s«"
+msgstr "%s ist nicht im Schema der Erweiterung (»%s«)"
 
 #: commands/extension.c:2411
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "geschachteltes ALTER EXTENSION wird nicht unterstützt"
 
 #: commands/extension.c:2502
-#, fuzzy, c-format
+#, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
-msgstr "Spalte »%s« von Relation »%s« existiert bereits"
-
-#: commands/extension.c:2725
-#, fuzzy, c-format
-msgid "%s is already a member of extension \"%s\""
-msgstr "Rolle »%s« ist schon Mitglied der Rolle »%s«"
+msgstr "Version »%s« von Erweiterung »%s« ist bereits installiert"
 
 #: commands/extension.c:2742
-#, fuzzy, c-format
+#, c-format
 msgid "%s is not a member of extension \"%s\""
-msgstr "Rolle »%s« ist kein Mitglied der Rolle »%s«"
+msgstr "%s ist kein Mitglied der Erweiterung »%s«"
+
+#: commands/collationcmds.c:81
+#, c-format
+msgid "collation attribute \"%s\" not recognized"
+msgstr "Attribut »%s« für Sortierfolge unbekannt"
+
+#: commands/collationcmds.c:126
+msgid "parameter \"lc_collate\" parameter must be specified"
+msgstr "Parameter »lc_collate« muss angegeben werden"
+
+#: commands/collationcmds.c:131
+msgid "parameter \"lc_ctype\" must be specified"
+msgstr "Parameter »lc_ctype« muss angegeben werden"
+
+#: commands/collationcmds.c:177
+#, c-format
+msgid "collation \"%s\" does not exist, skipping"
+msgstr "Sortierfolge »%s« existiert nicht, wird übersprungen"
+
+#: commands/collationcmds.c:237 commands/collationcmds.c:416
+#, c-format
+msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
+msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits in Schema »%s«"
+
+#: commands/collationcmds.c:249 commands/collationcmds.c:428
+#, c-format
+msgid "collation \"%s\" already exists in schema \"%s\""
+msgstr "Sortierfolge »%s« existiert bereits in Schema »%s«"
 
 #: tcop/fastpath.c:109 tcop/fastpath.c:485 tcop/fastpath.c:615
 #, c-format
@@ -8076,7 +7794,7 @@ msgid "incorrect binary data format in function argument %d"
 msgstr "falsches Binärdatenformat in Funktionsargument %d"
 
 #: tcop/postgres.c:399 tcop/postgres.c:411 tcop/postgres.c:422
-#: tcop/postgres.c:434 tcop/postgres.c:4150
+#: tcop/postgres.c:434 tcop/postgres.c:4152
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "ungültiger Frontend-Message-Typ %d"
@@ -8195,7 +7913,7 @@ msgstr ""
 "Benutzeranfrage hat möglicherweise Zeilenversionen sehen müssen, die "
 "entfernt werden müssen."
 
-#: tcop/postgres.c:2249 storage/ipc/standby.c:490
+#: tcop/postgres.c:2249 storage/ipc/standby.c:491
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr ""
 "Benutzertransaktion hat Verklemmung (Deadlock) mit Wiederherstellung "
@@ -8219,7 +7937,7 @@ msgstr ""
 "zurückzurollen und die Sitzung zu beenden, weil ein anderer Serverprozess "
 "abnormal beendet wurde und möglicherweise das Shared Memory verfälscht hat."
 
-#: tcop/postgres.c:2591 tcop/postgres.c:2939
+#: tcop/postgres.c:2591 tcop/postgres.c:2941
 msgid ""
 "In a moment you should be able to reconnect to the database and repeat your "
 "command."
@@ -8227,11 +7945,11 @@ msgstr ""
 "In einem Moment sollten Sie wieder mit der Datenbank verbinden und Ihren "
 "Befehl wiederholen können."
 
-#: tcop/postgres.c:2701
+#: tcop/postgres.c:2703
 msgid "floating-point exception"
 msgstr "Fließkommafehler"
 
-#: tcop/postgres.c:2702
+#: tcop/postgres.c:2704
 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."
@@ -8240,58 +7958,58 @@ msgstr ""
 "wahrscheinlich ein Ergebnis außerhalb des gültigen Bereichs oder eine "
 "ungültige Operation, zum Beispiel Division durch null."
 
-#: tcop/postgres.c:2870
+#: tcop/postgres.c:2872
 msgid "terminating autovacuum process due to administrator command"
 msgstr "breche Autovacuum-Prozess ab aufgrund von Anweisung des Administrators"
 
-#: tcop/postgres.c:2876 tcop/postgres.c:2886 tcop/postgres.c:2937
+#: tcop/postgres.c:2878 tcop/postgres.c:2888 tcop/postgres.c:2939
 msgid "terminating connection due to conflict with recovery"
 msgstr "breche Verbindung ab wegen Konflikt mit der Wiederherstellung"
 
-#: tcop/postgres.c:2892
+#: tcop/postgres.c:2894
 msgid "terminating connection due to administrator command"
 msgstr "breche Verbindung ab aufgrund von Anweisung des Administrators"
 
-#: tcop/postgres.c:2907
+#: tcop/postgres.c:2909
 msgid "canceling authentication due to timeout"
 msgstr "storniere Authentifizierung wegen Zeitüberschreitung"
 
-#: tcop/postgres.c:2916
+#: tcop/postgres.c:2918
 msgid "canceling statement due to statement timeout"
 msgstr "storniere Anfrage wegen Zeitüberschreitung"
 
-#: tcop/postgres.c:2925
+#: tcop/postgres.c:2927
 msgid "canceling autovacuum task"
 msgstr "storniere Autovacuum-Aufgabe"
 
-#: tcop/postgres.c:2944 storage/ipc/standby.c:489
+#: tcop/postgres.c:2946 storage/ipc/standby.c:490
 msgid "canceling statement due to conflict with recovery"
 msgstr "storniere Anfrage wegen Konflikt mit der Wiederherstellung"
 
-#: tcop/postgres.c:2960
+#: tcop/postgres.c:2962
 msgid "canceling statement due to user request"
 msgstr "storniere Anfrage wegen Benutzeraufforderung"
 
-#: tcop/postgres.c:3041 tcop/postgres.c:3063
+#: tcop/postgres.c:3043 tcop/postgres.c:3065
 msgid "stack depth limit exceeded"
 msgstr "Grenze für Stacktiefe überschritten"
 
-#: tcop/postgres.c:3042 tcop/postgres.c:3064
-#, fuzzy, c-format
+#: tcop/postgres.c:3044 tcop/postgres.c:3066
+#, c-format
 msgid ""
 "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), "
 "after ensuring the platform's stack depth limit is adequate."
 msgstr ""
-"Erhöhen Sie den Konfigurationsparameter »max_stack_depth«, nachdem Sie "
-"sichergestellt haben, dass die Stacktiefenbegrenzung Ihrer Plattform "
-"ausreichend ist."
+"Erhöhen Sie den Konfigurationsparameter »max_stack_depth« (aktuell %dkB), "
+"nachdem Sie sichergestellt haben, dass die Stacktiefenbegrenzung Ihrer "
+"Plattform ausreichend ist."
 
-#: tcop/postgres.c:3080
-#, fuzzy, c-format
+#: tcop/postgres.c:3082
+#, c-format
 msgid "\"max_stack_depth\" must not exceed %ldkB."
-msgstr "»max_stack_depth« darf %ldkB nicht überschreiten"
+msgstr "»max_stack_depth« darf %ldkB nicht überschreiten."
 
-#: tcop/postgres.c:3082
+#: tcop/postgres.c:3084
 msgid ""
 "Increase the platform's stack depth limit via \"ulimit -s\" or local "
 "equivalent."
@@ -8299,36 +8017,36 @@ msgstr ""
 "Erhöhen Sie die Stacktiefenbegrenzung Ihrer Plattform mit »ulimit -s« oder "
 "der lokalen Entsprechung."
 
-#: tcop/postgres.c:3417
+#: tcop/postgres.c:3419
 msgid "invalid command-line arguments for server process"
 msgstr "ungültige Kommandozeilenargumente für Serverprozess"
 
-#: tcop/postgres.c:3418 tcop/postgres.c:3424
+#: tcop/postgres.c:3420 tcop/postgres.c:3426
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Versuchen Sie »%s --help« für weitere Informationen."
 
-#: tcop/postgres.c:3422
+#: tcop/postgres.c:3424
 #, c-format
 msgid "%s: invalid command-line arguments"
 msgstr "%s: ungültige Kommandozeilenargumente"
 
-#: tcop/postgres.c:3521
+#: tcop/postgres.c:3523
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s: weder Datenbankname noch Benutzername angegeben"
 
-#: tcop/postgres.c:4060
+#: tcop/postgres.c:4062
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "ungültiger Subtyp %d von CLOSE-Message"
 
-#: tcop/postgres.c:4093
+#: tcop/postgres.c:4095
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "ungültiger Subtyp %d von DESCRIBE-Message"
 
-#: tcop/postgres.c:4327
+#: tcop/postgres.c:4329
 #, c-format
 msgid ""
 "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s"
@@ -8417,39 +8135,35 @@ msgstr ""
 msgid "no value found for parameter %d"
 msgstr "kein Wert für Parameter %d gefunden"
 
-#: executor/execMain.c:844 parser/analyze.c:2382
-#, fuzzy, c-format
-msgid "SELECT FOR UPDATE/SHARE cannot be used with foreign table \"%s\""
-msgstr "SELECT FOR UPDATE/SHARE kann nicht auf einen Verbund angewendet werden"
-
-#: executor/execMain.c:994
+#: executor/execMain.c:995
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "kann Sequenz »%s« nicht ändern"
 
-#: executor/execMain.c:1000
+#: executor/execMain.c:1001
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "kann TOAST-Relation »%s« nicht ändern"
 
-#: executor/execMain.c:1010
-#, fuzzy, c-format
+#: executor/execMain.c:1011
+#, c-format
 msgid "cannot insert into view \"%s\""
-msgstr "kann nicht in eine Sicht einfügen"
+msgstr "kann nicht in Sicht »%s« einfügen"
 
-#: executor/execMain.c:1012
-#, fuzzy
+#: executor/execMain.c:1013
 msgid ""
 "You need an unconditional ON INSERT DO INSTEAD rule or an INSTEAD OF INSERT "
 "trigger."
-msgstr "Sie benötigen eine ON INSERT DO INSTEAD Regel ohne Bedingung."
+msgstr ""
+"Sie benötigen eine ON INSERT DO INSTEAD Regel ohne Bedingung oder einen "
+"INSTEAD OF INSERT Trigger."
 
-#: executor/execMain.c:1018
+#: executor/execMain.c:1019
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "kann Sicht »%s« nicht aktualisieren"
 
-#: executor/execMain.c:1020
+#: executor/execMain.c:1021
 msgid ""
 "You need an unconditional ON UPDATE DO INSTEAD rule or an INSTEAD OF UPDATE "
 "trigger."
@@ -8457,34 +8171,60 @@ msgstr ""
 "Sie benötigen eine ON UPDATE DO INSTEAD Regel ohne Bedingung oder einen "
 "INSTEAD OF UPDATE Trigger."
 
-#: executor/execMain.c:1026
-#, fuzzy, c-format
+#: executor/execMain.c:1027
+#, c-format
 msgid "cannot delete from view \"%s\""
-msgstr "kann nicht in einer Sicht löschen"
+msgstr "kann nicht in Sicht »%s« löschen"
 
-#: executor/execMain.c:1028
-#, fuzzy
+#: executor/execMain.c:1029
 msgid ""
 "You need an unconditional ON DELETE DO INSTEAD rule or an INSTEAD OF DELETE "
 "trigger."
-msgstr "Sie benötigen eine ON DELETE DO INSTEAD Regel ohne Bedingung."
+msgstr ""
+"Sie benötigen eine ON DELETE DO INSTEAD Regel ohne Bedingung oder einen "
+"INSTEAD OF DELETE Trigger."
 
-#: executor/execMain.c:1038
-#, fuzzy, c-format
+#: executor/execMain.c:1039
+#, c-format
 msgid "cannot change foreign table \"%s\""
-msgstr "kann Relation »%s« nicht ändern"
+msgstr "kann Fremdtabelle »%s« nicht ändern"
 
-#: executor/execMain.c:1044
+#: executor/execMain.c:1045
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "kann Relation »%s« nicht ändern"
 
-#: executor/execMain.c:1515
+#: executor/execMain.c:1069
+#, c-format
+msgid "cannot lock rows in sequence \"%s\""
+msgstr "kann Zeilen in Sequenz »%s« nicht sperren"
+
+#: executor/execMain.c:1076
+#, c-format
+msgid "cannot lock rows in TOAST relation \"%s\""
+msgstr "kann Zeilen in TOAST-Relation »%s« nicht sperren"
+
+#: executor/execMain.c:1083
+#, c-format
+msgid "cannot lock rows in view \"%s\""
+msgstr "kann Zeilen in Sicht »%s« nicht sperren"
+
+#: executor/execMain.c:1090
+#, c-format
+msgid "cannot lock rows in foreign table \"%s\""
+msgstr "kann Zeilen in Fremdtabelle »%s« nicht sperren"
+
+#: executor/execMain.c:1096
+#, c-format
+msgid "cannot lock rows in relation \"%s\""
+msgstr "kann Zeilen in Relation »%s« nicht sperren"
+
+#: executor/execMain.c:1567
 #, c-format
 msgid "null value in column \"%s\" violates not-null constraint"
 msgstr "NULL-Wert in Spalte »%s« verletzt Not-Null-Constraint"
 
-#: executor/execMain.c:1527
+#: executor/execMain.c:1579
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "neue Zeile für Relation »%s« verletzt Check-Constraint »%s«"
@@ -8492,7 +8232,7 @@ msgstr "neue Zeile für Relation »%s« verletzt Check-Constraint »%s«"
 #: executor/execQual.c:298 executor/execQual.c:326 executor/execQual.c:2987
 #: utils/adt/array_userfuncs.c:430 utils/adt/arrayfuncs.c:228
 #: utils/adt/arrayfuncs.c:507 utils/adt/arrayfuncs.c:1242
-#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:4934
+#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:4940
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
@@ -8640,12 +8380,12 @@ msgstr "Domäne %s erlaubt keine NULL-Werte"
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "Wert für Domäne %s verletzt Check-Constraint »%s«"
 
-#: executor/execQual.c:4288 optimizer/util/clauses.c:608
+#: executor/execQual.c:4288 optimizer/util/clauses.c:572
 #: parser/parse_agg.c:164
 msgid "aggregate function calls cannot be nested"
 msgstr "Aufrufe von Aggregatfunktionen können nicht geschachtelt werden"
 
-#: executor/execQual.c:4326 optimizer/util/clauses.c:682
+#: executor/execQual.c:4326 optimizer/util/clauses.c:646
 #: parser/parse_agg.c:211
 msgid "window function calls cannot be nested"
 msgstr "Aufrufe von Fensterfunktionen können nicht geschachtelt werden"
@@ -8761,26 +8501,26 @@ msgstr "Die letzte Anweisung gibt zu wenige Spalten zurück."
 #: executor/functions.c:1607
 #, c-format
 msgid "return type %s is not supported for SQL functions"
-msgstr "Rückgabetyp %s wird nicht von SQL-Funktionen unterstützt"
+msgstr "Rückgabetyp %s wird von SQL-Funktionen nicht unterstützt"
 
 #: executor/nodeAgg.c:1730 executor/nodeWindowAgg.c:1851
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr "Aggregatfunktion %u muss kompatiblen Eingabe- und Übergangstyp haben"
 
-#: executor/nodeHashjoin.c:806 executor/nodeHashjoin.c:836
+#: executor/nodeHashjoin.c:814 executor/nodeHashjoin.c:844
 #, c-format
 msgid "could not rewind hash-join temporary file: %m"
 msgstr ""
 "konnte Position in temporärer Datei für Hash-Verbund nicht auf Anfang "
 "setzen: %m"
 
-#: executor/nodeHashjoin.c:871 executor/nodeHashjoin.c:877
+#: executor/nodeHashjoin.c:879 executor/nodeHashjoin.c:885
 #, c-format
 msgid "could not write to hash-join temporary file: %m"
 msgstr "konnte nicht in temporäre Datei für Hash-Verbund schreiben: %m"
 
-#: executor/nodeHashjoin.c:911 executor/nodeHashjoin.c:921
+#: executor/nodeHashjoin.c:919 executor/nodeHashjoin.c:929
 #, c-format
 msgid "could not read from hash-join temporary file: %m"
 msgstr "konnte nicht aus temporärer Datei für Hash-Verbund lesen: %m"
@@ -8859,11 +8599,11 @@ msgstr "Plan mit mehreren Anfragen kann nicht als Cursor geöffnet werden"
 msgid "cannot open %s query as cursor"
 msgstr "%s kann nicht als Cursor geöffnet werden"
 
-#: executor/spi.c:1233 parser/analyze.c:2205
+#: executor/spi.c:1233 parser/analyze.c:2206
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE wird nicht unterstützt"
 
-#: executor/spi.c:1234 parser/analyze.c:2206
+#: executor/spi.c:1234 parser/analyze.c:2207
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Scrollbare Cursor müssen READ ONLY sein."
 
@@ -8878,9 +8618,9 @@ msgid "user mapping not found for \"%s\""
 msgstr "Benutzerabbildung für »%s« nicht gefunden"
 
 #: foreign/foreign.c:321
-#, fuzzy, c-format
+#, c-format
 msgid "foreign-data wrapper \"%s\" has no handler"
-msgstr "Fremddaten-Wrapper »%s« existiert nicht"
+msgstr "Fremddaten-Wrapper »%s« hat keinen Handler"
 
 #: foreign/foreign.c:489
 #, c-format
@@ -8897,107 +8637,107 @@ msgstr "Gültige Optionen in diesem Zusammenhang sind: %s"
 msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
 msgstr "Kann Zeichenkettenpuffer mit %d Bytes nicht um %d Bytes vergrößern."
 
-#: libpq/auth.c:265
+#: libpq/auth.c:257
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "Authentifizierung für Benutzer »%s« fehlgeschlagen: Host abgelehnt"
 
-#: libpq/auth.c:268
+#: libpq/auth.c:260
 #, c-format
 msgid "Kerberos 5 authentication failed for user \"%s\""
 msgstr "Kerberos-5-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:271
+#: libpq/auth.c:263
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "»trust«-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:274
+#: libpq/auth.c:266
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "Ident-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:277
-#, fuzzy, c-format
+#: libpq/auth.c:269
+#, c-format
 msgid "Peer authentication failed for user \"%s\""
-msgstr "PAM-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+msgstr "Peer-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:281
+#: libpq/auth.c:273
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "Passwort-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:286
+#: libpq/auth.c:278
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "GSSAPI-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:289
+#: libpq/auth.c:281
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "SSPI-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:292
+#: libpq/auth.c:284
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "PAM-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:295
+#: libpq/auth.c:287
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "LDAP-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:298
+#: libpq/auth.c:290
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "Zertifikatauthentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:301
+#: libpq/auth.c:293
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "RADIUS-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:304
+#: libpq/auth.c:296
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr ""
 "Authentifizierung für Benutzer »%s« fehlgeschlagen: ungültige "
 "Authentifizierungsmethode"
 
-#: libpq/auth.c:333
+#: libpq/auth.c:325
 msgid "missing or erroneous pg_hba.conf file"
 msgstr "fehlende oder fehlerhafter pg_hba.conf-Datei"
 
-#: libpq/auth.c:334
+#: libpq/auth.c:326
 msgid "See server log for details."
 msgstr "Einzelheiten finden Sie im Serverlog."
 
-#: libpq/auth.c:364
+#: libpq/auth.c:356
 msgid "connection requires a valid client certificate"
 msgstr "Verbindung erfordert ein gültiges Client-Zertifikat"
 
-#: libpq/auth.c:408 libpq/auth.c:424 libpq/auth.c:461 libpq/auth.c:477
+#: libpq/auth.c:400 libpq/auth.c:416 libpq/auth.c:464 libpq/auth.c:482
 msgid "SSL on"
 msgstr "SSL an"
 
-#: libpq/auth.c:408 libpq/auth.c:424 libpq/auth.c:461 libpq/auth.c:477
+#: libpq/auth.c:400 libpq/auth.c:416 libpq/auth.c:464 libpq/auth.c:482
 msgid "SSL off"
 msgstr "SSL aus"
 
-#: libpq/auth.c:406
+#: libpq/auth.c:398
 #, c-format
 msgid ""
 "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr ""
 "pg_hba.conf lehnt Replikationsverbindung ab für Host »%s«, Benutzer »%s«, %s"
 
-#: libpq/auth.c:412
+#: libpq/auth.c:404
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
 msgstr ""
 "pg_hba.conf lehnt Replikationsverbindung ab für Host »%s«, Benutzer »%s«"
 
-#: libpq/auth.c:421
+#: libpq/auth.c:413
 #, c-format
 msgid ""
 "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s"
@@ -9006,14 +8746,29 @@ msgstr ""
 "pg_hba.conf lehnt Verbindung ab für Host »%s«, Benutzer »%s«, Datenbank "
 "»%s«, %s"
 
-#: libpq/auth.c:428
+#: libpq/auth.c:420
 #, c-format
 msgid ""
 "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
 msgstr ""
 "pg_hba.conf lehnt Verbindung ab für Host »%s«, Benutzer »%s«, Datenbank »%s«"
 
-#: libpq/auth.c:459
+#: libpq/auth.c:449
+#, c-format
+msgid "Client IP address resolved to \"%s\", forward lookup matches."
+msgstr "Auflösung der Client-IP-Adresse ergab »%s«, Vorwärtsauflösung stimmt überein."
+
+#: libpq/auth.c:451
+#, c-format
+msgid "Client IP address resolved to \"%s\", forward lookup not checked."
+msgstr "Auflösung der Client-IP-Adresse ergab »%s«, Vorwärtsauflösung nicht geprüft."
+
+#: libpq/auth.c:453
+#, c-format
+msgid "Client IP address resolved to \"%s\", forward lookup does not match."
+msgstr "Auflösung der Client-IP-Adresse ergab »%s«, Vorwärtsauflösung stimmt nicht überein."
+
+#: libpq/auth.c:462
 #, c-format
 msgid ""
 "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s"
@@ -9022,7 +8777,7 @@ msgstr ""
 "kein pg_hba.conf-Eintrag für Replikationsverbindung von Host »%s«, Benutzer "
 "»%s«, %s"
 
-#: libpq/auth.c:465
+#: libpq/auth.c:469
 #, c-format
 msgid ""
 "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
@@ -9030,250 +8785,222 @@ msgstr ""
 "kein pg_hba.conf-Eintrag für Replikationsverbindung von Host »%s«, Benutzer "
 "»%s«"
 
-#: libpq/auth.c:474
+#: libpq/auth.c:479
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "kein pg_hba.conf-Eintrag für Host »%s«, Benutzer »%s«, Datenbank »%s«, %s"
 
-#: libpq/auth.c:481
+#: libpq/auth.c:487
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
 msgstr "kein pg_hba.conf-Eintrag für Host »%s«, Benutzer »%s«, Datenbank »%s«"
 
-#: libpq/auth.c:540
-#, c-format
-msgid "could not enable credential reception: %m"
-msgstr "konnte Empfang von Credentials nicht einschalten: %m"
-
-#: libpq/auth.c:560 libpq/hba.c:1109
+#: libpq/auth.c:539 libpq/hba.c:1118
 msgid ""
 "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr ""
 "MD5-Authentifizierung wird nicht unterstützt, wenn »db_user_namespace« "
 "angeschaltet ist"
 
-#: libpq/auth.c:684
+#: libpq/auth.c:663
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "Passwort-Antwort erwartet, Message-Typ %d empfangen"
 
-#: libpq/auth.c:712
+#: libpq/auth.c:691
 msgid "invalid password packet size"
 msgstr "ungültige Größe des Passwortpakets"
 
-#: libpq/auth.c:716
+#: libpq/auth.c:695
 msgid "received password packet"
 msgstr "Passwortpaket empfangen"
 
-#: libpq/auth.c:774
+#: libpq/auth.c:753
 #, c-format
 msgid "Kerberos initialization returned error %d"
 msgstr "Kerberos-Initialisierung ergab Fehler %d"
 
-#: libpq/auth.c:784
+#: libpq/auth.c:763
 #, c-format
 msgid "Kerberos keytab resolving returned error %d"
 msgstr "Auflösung der Kerberos-Keytab ergab Fehler %d"
 
-#: libpq/auth.c:808
+#: libpq/auth.c:787
 #, c-format
 msgid "Kerberos sname_to_principal(\"%s\", \"%s\") returned error %d"
 msgstr "Kerberos sname_to_principal(\"%s\", \"%s\") ergab Fehler %d"
 
-#: libpq/auth.c:853
+#: libpq/auth.c:832
 #, c-format
 msgid "Kerberos recvauth returned error %d"
 msgstr "Kerberos recvauth ergab Fehler %d"
 
-#: libpq/auth.c:876
+#: libpq/auth.c:855
 #, c-format
 msgid "Kerberos unparse_name returned error %d"
 msgstr "Kerberos unparse_name ergab Fehler %d"
 
-#: libpq/auth.c:998
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: libpq/auth.c:1024
+#: libpq/auth.c:1003
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI wird in Protokollversion 2 nicht unterstützt"
 
-#: libpq/auth.c:1079
+#: libpq/auth.c:1058
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "GSS-Antwort erwartet, Message-Typ %d empfangen"
 
-#: libpq/auth.c:1142
+#: libpq/auth.c:1121
 msgid "accepting GSS security context failed"
 msgstr "Annahme des GSS-Sicherheitskontexts fehlgeschlagen"
 
-#: libpq/auth.c:1168
+#: libpq/auth.c:1147
 msgid "retrieving GSS user name failed"
 msgstr "Abfrage des GSS-Benutzernamens fehlgeschlagen"
 
-#: libpq/auth.c:1241
-#, c-format
-msgid "SSPI error %x"
-msgstr "SSPI-Fehler %x"
-
-#: libpq/auth.c:1245
-#, c-format
-msgid "%s (%x)"
-msgstr "%s (%x)"
-
-#: libpq/auth.c:1285
+#: libpq/auth.c:1264
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSL wird in Protokollversion 2 nicht unterstützt"
 
-#: libpq/auth.c:1300
+#: libpq/auth.c:1279
 msgid "could not acquire SSPI credentials"
 msgstr "konnte SSPI-Credentials nicht erhalten"
 
-#: libpq/auth.c:1317
+#: libpq/auth.c:1296
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "SSPI-Antwort erwartet, Message-Typ %d empfangen"
 
-#: libpq/auth.c:1389
+#: libpq/auth.c:1368
 msgid "could not accept SSPI security context"
 msgstr "konnte SSPI-Sicherheitskontext nicht akzeptieren"
 
-#: libpq/auth.c:1445
+#: libpq/auth.c:1430
 msgid "could not get token from SSPI security context"
 msgstr "konnte kein Token vom SSPI-Sicherheitskontext erhalten"
 
-#: libpq/auth.c:1689
+#: libpq/auth.c:1674
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "konnte Socket für Ident-Verbindung nicht erzeugen: %m"
 
-#: libpq/auth.c:1704
+#: libpq/auth.c:1689
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "konnte nicht mit lokaler Adresse »%s« verbinden: %m"
 
-#: libpq/auth.c:1716
+#: libpq/auth.c:1701
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "konnte nicht mit Ident-Server auf Adresse »%s«, Port %s verbinden: %m"
 
-#: libpq/auth.c:1736
+#: libpq/auth.c:1721
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "konnte Anfrage an Ident-Server auf Adresse »%s«, Port %s nicht senden: %m"
 
-#: libpq/auth.c:1751
+#: libpq/auth.c:1736
 #, c-format
 msgid ""
 "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "konnte Antwort von Ident-Server auf Adresse »%s«, Port %s nicht empfangen: %m"
 
-#: libpq/auth.c:1761
+#: libpq/auth.c:1746
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "ungültig formatierte Antwort vom Ident-Server: »%s«"
 
-#: libpq/auth.c:1802 libpq/auth.c:1830 libpq/auth.c:1856 libpq/auth.c:1930
+#: libpq/auth.c:1785
+msgid "peer authentication is not supported on this platform"
+msgstr "Peer-Authentifizierung wird auf dieser Plattform nicht unterstützt"
+
+#: libpq/auth.c:1789
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "konnte Credentials von Gegenstelle nicht ermitteln: %m"
 
-#: libpq/auth.c:1811 libpq/auth.c:1839 libpq/auth.c:1874 libpq/auth.c:1941
+#: libpq/auth.c:1798
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "lokaler Benutzer mit ID %d existiert nicht"
 
-#: libpq/auth.c:1864
-#, c-format
-msgid "could not get effective UID from peer credentials: %m"
-msgstr "konnte effektive UID nicht aus Peer-Credentials ermitteln: %m"
-
-#: libpq/auth.c:1950
-msgid ""
-"Ident authentication is not supported on local connections on this platform"
-msgstr ""
-"Ident-Authentifizierung auf lokalen Verbindungen wird auf dieser Plattform "
-"nicht unterstützt"
-
-#: libpq/auth.c:2031 libpq/auth.c:2303 libpq/auth.c:2663
+#: libpq/auth.c:1881 libpq/auth.c:2153 libpq/auth.c:2513
 msgid "empty password returned by client"
 msgstr "Client gab leeres Passwort zurück"
 
-#: libpq/auth.c:2041
+#: libpq/auth.c:1891
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "Fehler von der unteren PAM-Ebene: %s"
 
-#: libpq/auth.c:2110
+#: libpq/auth.c:1960
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "konnte PAM-Authenticator nicht erzeugen: %s"
 
-#: libpq/auth.c:2121
+#: libpq/auth.c:1971
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) fehlgeschlagen: %s"
 
-#: libpq/auth.c:2132
+#: libpq/auth.c:1982
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) fehlgeschlagen: %s"
 
-#: libpq/auth.c:2143
+#: libpq/auth.c:1993
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate fehlgeschlagen: %s"
 
-#: libpq/auth.c:2154
+#: libpq/auth.c:2004
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt fehlgeschlagen: %s"
 
-#: libpq/auth.c:2165
+#: libpq/auth.c:2015
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "konnte PAM-Authenticator nicht freigeben: %s"
 
-#: libpq/auth.c:2198 libpq/auth.c:2202
+#: libpq/auth.c:2048 libpq/auth.c:2052
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "konnte LDAP nicht initialisieren: Fehlercode %d"
 
-#: libpq/auth.c:2212
+#: libpq/auth.c:2062
 #, c-format
 msgid "could not set LDAP protocol version: error code %d"
 msgstr "konnte LDAP-Protokollversion nicht setzen: Fehlercode %d"
 
-#: libpq/auth.c:2241
+#: libpq/auth.c:2091
 msgid "could not load wldap32.dll"
 msgstr "konnte wldap32.dll nicht laden"
 
-#: libpq/auth.c:2249
+#: libpq/auth.c:2099
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "konnte Funktion _ldap_start_tls_sA in wldap32.dll nicht laden"
 
-#: libpq/auth.c:2250
+#: libpq/auth.c:2100
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP über SSL wird auf dieser Plattform nicht unterstützt"
 
-#: libpq/auth.c:2265
+#: libpq/auth.c:2115
 #, c-format
 msgid "could not start LDAP TLS session: error code %d"
 msgstr "konnte LDAP-TLS-Sitzung nicht öffnen: Fehlercode %d"
 
-#: libpq/auth.c:2287
+#: libpq/auth.c:2137
 msgid "LDAP server not specified"
 msgstr "LDAP-Server nicht angegeben"
 
-#: libpq/auth.c:2339
+#: libpq/auth.c:2189
 msgid "invalid character in user name for LDAP authentication"
 msgstr "ungültiges Zeichen im Benutzernamen für LDAP-Authentifizierung"
 
-#: libpq/auth.c:2354
+#: libpq/auth.c:2204
 #, c-format
 msgid ""
 "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": "
@@ -9282,20 +9009,20 @@ msgstr ""
 "erstes LDAP-Binden für ldapbinddn »%s« auf Server »%s« fehlgeschlagen: "
 "Fehlercode %d"
 
-#: libpq/auth.c:2379
+#: libpq/auth.c:2229
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": error code %d"
 msgstr ""
 "konnte LDAP nicht mit Filter »%s« auf Server »%s« durchsuchen: Fehlercode %d"
 
-#: libpq/auth.c:2389
+#: libpq/auth.c:2239
 #, c-format
 msgid "LDAP search failed for filter \"%s\" on server \"%s\": no such user"
 msgstr ""
 "LDAP-Suche fehlgeschlagen für Filter »%s« auf Server »%s«: Benutzer "
 "existiert nicht"
 
-#: libpq/auth.c:2393
+#: libpq/auth.c:2243
 #, c-format
 msgid ""
 "LDAP search failed for filter \"%s\" on server \"%s\": user is not unique "
@@ -9304,26 +9031,26 @@ msgstr ""
 "LDAP-Suche fehlgeschlagen für Filter »%s« auf Server »%s«: Benutzer ist "
 "nicht eindeutig (%ld Treffer)"
 
-#: libpq/auth.c:2410
+#: libpq/auth.c:2260
 #, c-format
 msgid ""
 "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr ""
 "konnte DN fũr den ersten Treffer für »%s« auf Server »%s« nicht lesen: %s"
 
-#: libpq/auth.c:2430
+#: libpq/auth.c:2280
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\": %s"
 msgstr ""
 "Losbinden fehlgeschlagen nach Suche nach Benutzer »%s« auf Server »%s«: %s"
 
-#: libpq/auth.c:2467
+#: libpq/auth.c:2317
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": error code %d"
 msgstr ""
 "LDAP-Login fehlgeschlagen für Benutzer »%s« auf Server »%s«: Fehlercode %d"
 
-#: libpq/auth.c:2495
+#: libpq/auth.c:2345
 #, c-format
 msgid ""
 "certificate authentication failed for user \"%s\": client certificate "
@@ -9332,91 +9059,91 @@ msgstr ""
 "Zertifikatauthentifizierung für Benutzer »%s« fehlgeschlagen: Client-"
 "Zertifikat enthält keinen Benutzernamen"
 
-#: libpq/auth.c:2619
+#: libpq/auth.c:2469
 msgid "RADIUS server not specified"
 msgstr "RADIUS-Server nicht angegeben"
 
-#: libpq/auth.c:2626
+#: libpq/auth.c:2476
 msgid "RADIUS secret not specified"
 msgstr "RADIUS-Geheimnis nicht angegeben"
 
-#: libpq/auth.c:2642 libpq/hba.c:1394
+#: libpq/auth.c:2492 libpq/hba.c:1403
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "konnte RADIUS-Servername »%s« nicht in Adresse übersetzen: %s"
 
-#: libpq/auth.c:2670
+#: libpq/auth.c:2520
 msgid ""
 "RADIUS authentication does not support passwords longer than 16 characters"
 msgstr ""
 "RADIUS-Authentifizierung unterstützt keine Passwörter länger als 16 Zeichen"
 
-#: libpq/auth.c:2681
+#: libpq/auth.c:2531
 msgid "could not generate random encryption vector"
 msgstr "konnte zufälligen Verschlüsselungsvektor nicht erzeugen"
 
-#: libpq/auth.c:2704
+#: libpq/auth.c:2554
 msgid "could not perform MD5 encryption of password"
 msgstr "konnte MD5-Verschlüsselung des Passworts nicht durchführen"
 
-#: libpq/auth.c:2726
+#: libpq/auth.c:2576
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "konnte RADIUS-Socket nicht erstellen: %m"
 
-#: libpq/auth.c:2747
+#: libpq/auth.c:2597
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "konnte lokales RADIUS-Socket nicht binden: %m"
 
-#: libpq/auth.c:2757
+#: libpq/auth.c:2607
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "konnte RADIUS-Paket nicht senden: %m"
 
-#: libpq/auth.c:2786 libpq/auth.c:2811
+#: libpq/auth.c:2636 libpq/auth.c:2661
 msgid "timeout waiting for RADIUS response"
 msgstr "Zeitüberschreitung beim Warten auf RADIUS-Antwort"
 
-#: libpq/auth.c:2804
+#: libpq/auth.c:2654
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "konnte Status des RADIUS-Sockets nicht prüfen: %m"
 
-#: libpq/auth.c:2833
+#: libpq/auth.c:2683
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "konnte RADIUS-Antwort nicht lesen: %m"
 
-#: libpq/auth.c:2845 libpq/auth.c:2849
+#: libpq/auth.c:2695 libpq/auth.c:2699
 #, c-format
 msgid "RADIUS response was sent from incorrect port: %i"
 msgstr "RADIUS-Antwort wurde von falschem Port gesendet: %i"
 
-#: libpq/auth.c:2858
+#: libpq/auth.c:2708
 #, c-format
 msgid "RADIUS response too short: %i"
 msgstr "RADIUS-Antwort zu kurz: %i"
 
-#: libpq/auth.c:2865
+#: libpq/auth.c:2715
 #, c-format
 msgid "RADIUS response has corrupt length: %i (actual length %i)"
 msgstr "RADIUS-Antwort hat verfälschte Länge: %i (tatsächliche Länge %i)"
 
-#: libpq/auth.c:2873
+#: libpq/auth.c:2723
 #, c-format
 msgid "RADIUS response is to a different request: %i (should be %i)"
 msgstr "RADIUS-Antwort unterscheidet sich von Anfrage: %i (sollte %i sein)"
 
-#: libpq/auth.c:2898
+#: libpq/auth.c:2748
 msgid "could not perform MD5 encryption of received packet"
 msgstr "konnte MD5-Verschlüsselung des empfangenen Pakets nicht durchführen"
 
-#: libpq/auth.c:2907
+#: libpq/auth.c:2757
 msgid "RADIUS response has incorrect MD5 signature"
 msgstr "RADIUS-Antwort hat falsche MD5-Signatur"
 
-#: libpq/auth.c:2924
+#: libpq/auth.c:2774
 #, c-format
 msgid "RADIUS response has invalid code (%i) for user \"%s\""
 msgstr "RADIUS-Antwort hat ungültigen Code (%i) für Benutzer »%s«"
@@ -9478,7 +9205,7 @@ msgstr "konnte Serverdatei »%s« nicht schreiben: %m"
 msgid "SSL error: %s"
 msgstr "SSL-Fehler: %s"
 
-#: libpq/be-secure.c:292 libpq/be-secure.c:387 libpq/be-secure.c:951
+#: libpq/be-secure.c:292 libpq/be-secure.c:387 libpq/be-secure.c:957
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "unbekannter SSL-Fehlercode: %d"
@@ -9496,103 +9223,103 @@ msgstr "SSL konnte keine neue Verhandlungsanfrage senden"
 msgid "could not create SSL context: %s"
 msgstr "konnte SSL-Kontext nicht erzeugen: %s"
 
-#: libpq/be-secure.c:746
+#: libpq/be-secure.c:752
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "konnte Serverzertifikatsdatei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:752
+#: libpq/be-secure.c:758
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "konnte auf private Schlüsseldatei »%s« nicht zugreifen: %m"
 
-#: libpq/be-secure.c:767
+#: libpq/be-secure.c:773
 #, c-format
 msgid "private key file \"%s\" has group or world access"
 msgstr "private Schlüsseldatei »%s« erlaubt Zugriff von Gruppe oder Welt"
 
-#: libpq/be-secure.c:769
+#: libpq/be-secure.c:775
 msgid "Permissions should be u=rw (0600) or less."
 msgstr "Rechte sollten u=rw (0600) oder weniger sein."
 
-#: libpq/be-secure.c:776
+#: libpq/be-secure.c:782
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "konnte private Schlüsseldatei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:781
+#: libpq/be-secure.c:787
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "Überprüfung des privaten Schlüssels fehlgeschlagen: %s"
 
-#: libpq/be-secure.c:809
+#: libpq/be-secure.c:815
 #, c-format
 msgid "could not access root certificate file \"%s\": %m"
 msgstr "konnte nicht auf Root-Zertifikat-Datei »%s« zugreifen: %m"
 
-#: libpq/be-secure.c:820
+#: libpq/be-secure.c:826
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "konnte Root-Zertifikat-Datei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:843
+#: libpq/be-secure.c:849
 #, c-format
 msgid "SSL certificate revocation list file \"%s\" ignored"
 msgstr "SSL-Certificate-Revocation-List-Datei »%s« ignoriert"
 
-#: libpq/be-secure.c:845
+#: libpq/be-secure.c:851
 msgid "SSL library does not support certificate revocation lists."
 msgstr "SSL-Bibliothek unterstützt keine Certificate-Revocation-Lists."
 
-#: libpq/be-secure.c:852
+#: libpq/be-secure.c:858
 #, c-format
 msgid "SSL certificate revocation list file \"%s\" not found, skipping: %s"
 msgstr ""
 "SSL-Certificate-Revocation-List-Datei »%s« nicht gefunden, wird "
 "übersprungen: %s"
 
-#: libpq/be-secure.c:854
+#: libpq/be-secure.c:860
 msgid "Certificates will not be checked against revocation list."
 msgstr "Zertifikate werden nicht gegen die Revocation-Liste geprüft."
 
-#: libpq/be-secure.c:896
+#: libpq/be-secure.c:902
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "konnte SSL-Verbindung nicht initialisieren: %s"
 
-#: libpq/be-secure.c:905
+#: libpq/be-secure.c:911
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "konnte SSL-Socket nicht setzen: %s"
 
-#: libpq/be-secure.c:931
+#: libpq/be-secure.c:937
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "konnte SSL-Verbindung nicht annehmen: %m"
 
-#: libpq/be-secure.c:935 libpq/be-secure.c:946
+#: libpq/be-secure.c:941 libpq/be-secure.c:952
 msgid "could not accept SSL connection: EOF detected"
 msgstr "konnte SSL-Verbindung nicht annehmen: EOF entdeckt"
 
-#: libpq/be-secure.c:940
+#: libpq/be-secure.c:946
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "konnte SSL-Verbindung nicht annehmen: %s"
 
-#: libpq/be-secure.c:991
+#: libpq/be-secure.c:997
 msgid "SSL certificate's common name contains embedded null"
 msgstr "Common-Name im SSL-Zertifikat enthält Null-Byte"
 
-#: libpq/be-secure.c:998
+#: libpq/be-secure.c:1004
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "SSL-Verbindung von »%s«"
 
-#: libpq/be-secure.c:1042
+#: libpq/be-secure.c:1048
 msgid "no SSL error reported"
 msgstr "kein SSL-Fehler berichtet"
 
-#: libpq/be-secure.c:1046
+#: libpq/be-secure.c:1052
 #, c-format
 msgid "SSL error code %lu"
 msgstr "SSL-Fehlercode %lu"
@@ -9609,9 +9336,9 @@ msgstr ""
 "konnte sekundäre Authentifizierungsdatei »@%s« nicht als »%s« öffnen: %m"
 
 #: libpq/hba.c:628
-#, fuzzy, c-format
+#, c-format
 msgid "could not translate host name \"%s\" to address: %s"
-msgstr "konnte Hostname »%s« nicht in Adresse übersetzen: %s\n"
+msgstr "konnte Hostname »%s« nicht in Adresse übersetzen: %s"
 
 #. translator: the second %s is a list of auth methods
 #: libpq/hba.c:779
@@ -9627,116 +9354,117 @@ msgstr ""
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "Authentifizierungsmethode »%s« benötigt Argument »%s«"
 
-#: libpq/hba.c:844
+#: libpq/hba.c:832
+msgid "local connections are not supported by this build"
+msgstr "lokale Verbindungen werden von dieser Installation nicht unterstützt"
+
+#: libpq/hba.c:853
 msgid "hostssl requires SSL to be turned on"
-msgstr ""
+msgstr "für hostssl muss SSL angeschaltet sein"
 
-#: libpq/hba.c:845
+#: libpq/hba.c:854
 msgid "Set ssl = on in postgresql.conf."
-msgstr ""
+msgstr "Setzen Sie ssl = on in postgresql.conf."
 
-#: libpq/hba.c:853
-#, fuzzy
+#: libpq/hba.c:862
 msgid "hostssl is not supported by this build"
-msgstr "SSL wird von dieser Installation nicht unterstützt"
+msgstr "hostssl wird von dieser Installation nicht unterstützt"
 
-#: libpq/hba.c:854
+#: libpq/hba.c:863
 msgid "Compile with --with-openssl to use SSL connections."
 msgstr "Kompilieren Sie mit --with-openssl, um SSL-Verbindungen zu verwenden."
 
-#: libpq/hba.c:876
+#: libpq/hba.c:885
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "ungültiger Verbindungstyp »%s«"
 
-#: libpq/hba.c:889
+#: libpq/hba.c:898
 msgid "end-of-line before database specification"
 msgstr "Zeilenende vor Datenbankangabe"
 
-#: libpq/hba.c:902
+#: libpq/hba.c:911
 msgid "end-of-line before role specification"
 msgstr "Zeilenende vor Rollenangabe"
 
-#: libpq/hba.c:917
+#: libpq/hba.c:926
 msgid "end-of-line before IP address specification"
 msgstr "Zeilenende vor IP-Adressangabe"
 
-#: libpq/hba.c:971
+#: libpq/hba.c:980
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "ungültige IP-Adresse »%s«: %s"
 
-#: libpq/hba.c:991
+#: libpq/hba.c:1000
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
-msgstr ""
+msgstr "Angabe von sowohl Hostname als auch CIDR-Maske ist ungültig: »%s«"
 
-#: libpq/hba.c:1005
+#: libpq/hba.c:1014
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "ungültige CIDR-Maske in Adresse »%s«"
 
-#: libpq/hba.c:1023
+#: libpq/hba.c:1032
 msgid "end-of-line before netmask specification"
 msgstr "Zeilenende vor Netzmaskenangabe"
 
-#: libpq/hba.c:1035
+#: libpq/hba.c:1044
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "ungültige IP-Maske »%s«: %s"
 
-#: libpq/hba.c:1052
+#: libpq/hba.c:1061
 msgid "IP address and mask do not match"
 msgstr "IP-Adresse und -Maske passen nicht zusammen"
 
-#: libpq/hba.c:1067
+#: libpq/hba.c:1076
 msgid "end-of-line before authentication method"
 msgstr "Zeilenende vor Authentifizierungsmethode"
 
-#: libpq/hba.c:1140
+#: libpq/hba.c:1149
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "ungültige Authentifizierungsmethode »%s«"
 
-#: libpq/hba.c:1151
-#, fuzzy, c-format
+#: libpq/hba.c:1160
+#, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr ""
-"ungültige Authentifizierungsmethode »%s«: auf dieser Platform nicht "
+"ungültige Authentifizierungsmethode »%s«: von dieser Installation nicht "
 "unterstützt"
 
-#: libpq/hba.c:1172
+#: libpq/hba.c:1181
 msgid "krb5 authentication is not supported on local sockets"
 msgstr "krb5-Authentifizierung wird auf lokalen Sockets nicht unterstützt"
 
-#: libpq/hba.c:1183
+#: libpq/hba.c:1192
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "gssapi-Authentifizierung wird auf lokalen Sockets nicht unterstützt"
 
-#: libpq/hba.c:1194
-#, fuzzy
+#: libpq/hba.c:1203
 msgid "peer authentication is only supported on local sockets"
-msgstr "krb5-Authentifizierung wird auf lokalen Sockets nicht unterstützt"
+msgstr "peer-Authentifizierung wird nur auf lokalen Sockets unterstützt"
 
-#: libpq/hba.c:1211
+#: libpq/hba.c:1220
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "cert-Authentifizierung wird nur auf »hostssl«-Verbindungen unterstützt"
 
-#: libpq/hba.c:1232
+#: libpq/hba.c:1241
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "Authentifizierungsoption nicht im Format name=wert: %s"
 
-#: libpq/hba.c:1248
-#, fuzzy
+#: libpq/hba.c:1257
 msgid "ident, peer, krb5, gssapi, sspi and cert"
-msgstr "ident, krb5, gssapi, sspi und cert"
+msgstr "ident, peer, krb5, gssapi, sspi und cert"
 
-#: libpq/hba.c:1262
+#: libpq/hba.c:1271
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "clientcert kann nur für »hostssl«-Zeilen konfiguriert werden"
 
-#: libpq/hba.c:1273
+#: libpq/hba.c:1282
 msgid ""
 "client certificates can only be checked if a root certificate store is "
 "available"
@@ -9744,36 +9472,36 @@ msgstr ""
 "Client-Zertifikate können nur überprüft werden, wenn Wurzelzertifikat "
 "verfügbar ist"
 
-#: libpq/hba.c:1274
+#: libpq/hba.c:1283
 msgid "Make sure the root.crt file is present and readable."
 msgstr "Stellen Sie sicher, dass die Datei root.crt vorhanden und lesbar ist."
 
-#: libpq/hba.c:1287
+#: libpq/hba.c:1296
 msgid "clientcert can not be set to 0 when using \"cert\" authentication"
 msgstr ""
 "clientcert kann nicht auf 0 gesetzt sein, wenn »cert«-Authentifizierung "
 "verwendet wird"
 
-#: libpq/hba.c:1321
+#: libpq/hba.c:1330
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "ungültige LDAP-Portnummer: »%s«"
 
-#: libpq/hba.c:1367 libpq/hba.c:1375
+#: libpq/hba.c:1376 libpq/hba.c:1384
 msgid "krb5, gssapi and sspi"
 msgstr "krb5, gssapi und sspi"
 
-#: libpq/hba.c:1413
+#: libpq/hba.c:1422
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "ungültige RADIUS-Portnummer: »%s«"
 
-#: libpq/hba.c:1433
+#: libpq/hba.c:1442
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "unbekannter Authentifizierungsoptionsname: »%s«"
 
-#: libpq/hba.c:1465
+#: libpq/hba.c:1474
 msgid ""
 "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, or ldapsearchattribute "
 "together with ldapprefix"
@@ -9781,7 +9509,7 @@ msgstr ""
 "ldapbasedn, ldapbinddn, ldapbindpasswd oder ldapsearchattribute kann nicht "
 "zusammen mit ldapprefix verwendet werden"
 
-#: libpq/hba.c:1475
+#: libpq/hba.c:1484
 msgid ""
 "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix"
 "\", or \"ldapsuffix\" to be set"
@@ -9789,22 +9517,22 @@ msgstr ""
 "Authentifizierungsmethode »ldap« benötigt Argument »ldapbasedn«, "
 "»ldapprefix« oder »ldapsuffix«"
 
-#: libpq/hba.c:1674 guc-file.l:409
+#: libpq/hba.c:1683 guc-file.l:409
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "konnte Konfigurationsdatei »%s« nicht öffnen: %m"
 
-#: libpq/hba.c:1806
+#: libpq/hba.c:1815
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "ungültiger regulärer Ausdruck »%s«: %s"
 
-#: libpq/hba.c:1829
+#: libpq/hba.c:1838
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "Suche nach regulärem Ausdruck für »%s« fehlgeschlagen: %s"
 
-#: libpq/hba.c:1847
+#: libpq/hba.c:1856
 #, c-format
 msgid ""
 "regular expression \"%s\" has no subexpressions as requested by "
@@ -9813,26 +9541,26 @@ msgstr ""
 "regulärer Ausdruck »%s« hat keine Teilausdrücke wie von der Backreference in "
 "»%s« verlangt"
 
-#: libpq/hba.c:1913
+#: libpq/hba.c:1922
 #, c-format
 msgid "missing entry in file \"%s\" at end of line %d"
 msgstr "fehlender Eintrag in Datei »%s« am Ende von Zeile %d"
 
-#: libpq/hba.c:1954
+#: libpq/hba.c:1963
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr ""
 "angegebener Benutzername (%s) und authentifizierter Benutzername (%s) "
 "stimmen nicht überein"
 
-#: libpq/hba.c:1975
+#: libpq/hba.c:1984
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr ""
 "kein passender Eintrag in Usermap »%s« für Benutzer »%s«, authentifiziert "
 "als »%s«"
 
-#: libpq/hba.c:1999
+#: libpq/hba.c:2008
 #, c-format
 msgid "could not open usermap file \"%s\": %m"
 msgstr "konnte Usermap-Datei »%s« nicht öffnen: %m"
@@ -10003,91 +9731,50 @@ msgstr "unbekannter Snowball-Parameter: »%s«"
 msgid "missing Language parameter"
 msgstr "Parameter »Language« fehlt"
 
-#: storage/smgr/md.c:378 storage/smgr/md.c:849
-#, c-format
-msgid "could not truncate file \"%s\": %m"
-msgstr "kann Datei »%s« nicht kürzen: %m"
-
-#: storage/smgr/md.c:446
-#, c-format
-msgid "cannot extend file \"%s\" beyond %u blocks"
-msgstr "kann Datei »%s« nicht auf über %u Blöcke erweitern"
-
-# XXX
-#: storage/smgr/md.c:468 storage/smgr/md.c:629 storage/smgr/md.c:704
-#, c-format
-msgid "could not seek to block %u in file \"%s\": %m"
-msgstr "konnte Positionszeiger nicht auf Block %u in Datei »%s« setzen: %m"
+#: storage/ipc/procarray.c:270 storage/ipc/sinvaladt.c:302
+#: storage/lmgr/proc.c:297 postmaster/postmaster.c:1861
+msgid "sorry, too many clients already"
+msgstr "tut mir leid, schon zu viele Verbindungen"
 
-#: storage/smgr/md.c:476
-#, c-format
-msgid "could not extend file \"%s\": %m"
-msgstr "konnte Datei »%s« nicht erweitern: %m"
+#: storage/ipc/procarray.c:637
+msgid "consistent state delayed because recovery snapshot incomplete"
+msgstr ""
+"konsistenter Zustand ist verzögert, weil Wiederherstellungs-Snapshot "
+"unvollständig ist"
 
-#: storage/smgr/md.c:478 storage/smgr/md.c:485 storage/smgr/md.c:731
-msgid "Check free disk space."
-msgstr "Prüfen Sie den freien Festplattenplatz."
+#: storage/ipc/shmem.c:190 storage/lmgr/lock.c:631 storage/lmgr/lock.c:700
+#: storage/lmgr/lock.c:2163 storage/lmgr/lock.c:2542 storage/lmgr/lock.c:2607
+#: storage/lmgr/proc.c:197 storage/lmgr/proc.c:216
+#: storage/lmgr/predicate.c:2233 storage/lmgr/predicate.c:2248
+#: storage/lmgr/predicate.c:3623 storage/lmgr/predicate.c:4770
+#: utils/hash/dynahash.c:928
+msgid "out of shared memory"
+msgstr "Shared Memory aufgebraucht"
 
-#: storage/smgr/md.c:482
+#: storage/ipc/shmem.c:346 storage/ipc/shmem.c:399
 #, c-format
-msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
+msgid ""
+"not enough shared memory for data structure \"%s\" (%lu bytes requested)"
 msgstr ""
-"konnte Datei »%s« nicht erweitern: es wurden nur %d von %d Bytes bei Block "
-"%u geschrieben"
+"nicht genug Shared-Memory für Datenstruktur »%s« (%lu Bytes angefordert)"
 
-#: storage/smgr/md.c:647
+#: storage/ipc/shmem.c:365
 #, c-format
-msgid "could not read block %u in file \"%s\": %m"
-msgstr "konnte Block %u in Datei »%s« nicht lesen: %m"
+msgid "could not create ShmemIndex entry for data structure \"%s\""
+msgstr "konnte ShmemIndex-Eintrag für Datenstruktur »%s« nicht erzeugen"
 
-#: storage/smgr/md.c:663
+#: storage/ipc/shmem.c:380
 #, c-format
-msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
-msgstr ""
-"konnte Block %u in Datei »%s« nicht lesen: es wurden nur %d von %d Bytes "
-"gelesen"
-
-#: storage/smgr/md.c:722
-#, c-format
-msgid "could not write block %u in file \"%s\": %m"
-msgstr "konnte Block %u in Datei »%s« nicht schreiben: %m"
-
-#: storage/smgr/md.c:727
-#, c-format
-msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
-msgstr ""
-"konnte Block %u in Datei »%s« nicht schreiben: es wurden nur %d von %d Bytes "
-"geschrieben"
-
-#: storage/smgr/md.c:825
-#, c-format
-msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
-msgstr ""
-"konnte Datei »%s« nicht auf %u Blöcke kürzen: es sind jetzt nur %u Blöcke"
-
-#: storage/smgr/md.c:874
-#, c-format
-msgid "could not truncate file \"%s\" to %u blocks: %m"
-msgstr "konnte Datei »%s« nicht auf %u Blöcke kürzen: %m"
-
-#: storage/smgr/md.c:1128
-#, c-format
-msgid "could not fsync file \"%s\" but retrying: %m"
-msgstr "konnte Datei »%s« nicht fsyncen, versuche erneut: %m"
-
-#: storage/smgr/md.c:1270
-msgid "could not forward fsync request because request queue is full"
+msgid ""
+"ShmemIndex entry size is wrong for data structure \"%s\": expected %lu, "
+"actual %lu"
 msgstr ""
+"ShmemIndex-Eintraggröße ist falsch für Datenstruktur »%s«: erwartet %lu, "
+"tatsächlich %lu"
 
-#: storage/smgr/md.c:1637
-#, c-format
-msgid "could not open file \"%s\" (target block %u): %m"
-msgstr "konnte Datei »%s« nicht öffnen (Zielblock %u): %m"
-
-#: storage/smgr/md.c:1659
-#, c-format
-msgid "could not seek to end of file \"%s\": %m"
-msgstr "konnte Positionszeiger nicht ans Ende der Datei »%s« setzen: %m"
+#: storage/ipc/shmem.c:427 storage/ipc/shmem.c:446
+msgid "requested shared memory size overflows size_t"
+msgstr "angeforderte Shared-Memory-Größe übersteigt Kapazität von size_t"
 
 #: storage/buffer/bufmgr.c:134 storage/buffer/bufmgr.c:239
 msgid "cannot access temporary tables of other sessions"
@@ -10117,16 +9804,16 @@ msgstr ""
 msgid "invalid page header in block %u of relation %s"
 msgstr "ungültiger Seitenkopf in Block %u von Relation %s"
 
-#: storage/buffer/bufmgr.c:2728
+#: storage/buffer/bufmgr.c:2735
 #, c-format
 msgid "could not write block %u of %s"
 msgstr "konnte Block %u von %s nicht schreiben"
 
-#: storage/buffer/bufmgr.c:2730
+#: storage/buffer/bufmgr.c:2737
 msgid "Multiple failures --- write error might be permanent."
 msgstr "Mehrere Fehlschläge --- Schreibfehler ist möglicherweise dauerhaft."
 
-#: storage/buffer/bufmgr.c:2751 storage/buffer/bufmgr.c:2770
+#: storage/buffer/bufmgr.c:2758 storage/buffer/bufmgr.c:2777
 #, c-format
 msgid "writing block %u of relation %s"
 msgstr "schreibe Block %u von Relation %s"
@@ -10135,192 +9822,130 @@ msgstr "schreibe Block %u von Relation %s"
 msgid "no empty local buffer available"
 msgstr "kein leerer lokaler Puffer verfügbar"
 
-#: storage/file/fd.c:406
+#: storage/file/fd.c:405
 #, c-format
 msgid "getrlimit failed: %m"
 msgstr "getrlimit fehlgeschlagen: %m"
 
-#: storage/file/fd.c:496
+#: storage/file/fd.c:495
 msgid "insufficient file descriptors available to start server process"
 msgstr "nicht genug Dateideskriptoren verfügbar, um Serverprozess zu starten"
 
-#: storage/file/fd.c:497
+#: storage/file/fd.c:496
 #, c-format
 msgid "System allows %d, we need at least %d."
 msgstr "System erlaubt %d, wir benötigen mindestens %d."
 
-#: storage/file/fd.c:538 storage/file/fd.c:1450 storage/file/fd.c:1566
+#: storage/file/fd.c:537 storage/file/fd.c:1469 storage/file/fd.c:1585
 #, c-format
 msgid "out of file descriptors: %m; release and retry"
 msgstr "keine Dateideskriptoren mehr: %m; freigeben und nochmal versuchen"
 
-#: storage/file/fd.c:1091
+#: storage/file/fd.c:1110
 #, c-format
 msgid "temporary file: path \"%s\", size %lu"
 msgstr "temporäre Datei: Pfad »%s«, Größe %lu"
 
-#: storage/file/fd.c:1625
+#: storage/file/fd.c:1644
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "konnte Verzeichnis »%s« nicht lesen: %m"
 
-#: storage/file/reinit.c:58
+#: storage/smgr/md.c:381 storage/smgr/md.c:855
 #, c-format
-msgid "resetting unlogged relations: cleanup %d init %d"
-msgstr ""
-
-#: storage/ipc/procarray.c:270 storage/ipc/sinvaladt.c:302
-#: storage/lmgr/proc.c:293 postmaster/postmaster.c:1861
-msgid "sorry, too many clients already"
-msgstr "tut mir leid, schon zu viele Verbindungen"
-
-#: storage/ipc/procarray.c:637
-msgid "consistent state delayed because recovery snapshot incomplete"
-msgstr ""
-"konsistenter Zustand ist verzögert, weil Wiederherstellungs-Snapshot "
-"unvollständig ist"
-
-#: storage/ipc/shmem.c:190 storage/lmgr/predicate.c:2054
-#: storage/lmgr/predicate.c:2069 storage/lmgr/predicate.c:3296
-#: storage/lmgr/predicate.c:4253 storage/lmgr/lock.c:631
-#: storage/lmgr/lock.c:700 storage/lmgr/lock.c:2170 storage/lmgr/lock.c:2549
-#: storage/lmgr/lock.c:2614 storage/lmgr/proc.c:193 storage/lmgr/proc.c:212
-#: utils/hash/dynahash.c:928
-msgid "out of shared memory"
-msgstr "Shared Memory aufgebraucht"
+msgid "could not truncate file \"%s\": %m"
+msgstr "kann Datei »%s« nicht kürzen: %m"
 
-#: storage/ipc/shmem.c:346 storage/ipc/shmem.c:399
+#: storage/smgr/md.c:449
 #, c-format
-msgid ""
-"not enough shared memory for data structure \"%s\" (%lu bytes requested)"
-msgstr ""
-"nicht genug Shared-Memory für Datenstruktur »%s« (%lu Bytes angefordert)"
+msgid "cannot extend file \"%s\" beyond %u blocks"
+msgstr "kann Datei »%s« nicht auf über %u Blöcke erweitern"
 
-#: storage/ipc/shmem.c:365
+# XXX
+#: storage/smgr/md.c:471 storage/smgr/md.c:635 storage/smgr/md.c:710
 #, c-format
-msgid "could not create ShmemIndex entry for data structure \"%s\""
-msgstr "konnte ShmemIndex-Eintrag für Datenstruktur »%s« nicht erzeugen"
+msgid "could not seek to block %u in file \"%s\": %m"
+msgstr "konnte Positionszeiger nicht auf Block %u in Datei »%s« setzen: %m"
 
-#: storage/ipc/shmem.c:380
+#: storage/smgr/md.c:479
 #, c-format
-msgid ""
-"ShmemIndex entry size is wrong for data structure \"%s\": expected %lu, "
-"actual %lu"
-msgstr ""
-"ShmemIndex-Eintraggröße ist falsch für Datenstruktur »%s«: erwartet %lu, "
-"tatsächlich %lu"
-
-#: storage/ipc/shmem.c:427 storage/ipc/shmem.c:446
-msgid "requested shared memory size overflows size_t"
-msgstr "angeforderte Shared-Memory-Größe übersteigt Kapazität von size_t"
+msgid "could not extend file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht erweitern: %m"
 
-#: storage/large_object/inv_api.c:555 storage/large_object/inv_api.c:752
-#, c-format
-msgid "large object %u was not opened for writing"
-msgstr "Large Object %u wurde nicht zum Schreiben geöffnet"
+#: storage/smgr/md.c:481 storage/smgr/md.c:488 storage/smgr/md.c:737
+msgid "Check free disk space."
+msgstr "Prüfen Sie den freien Festplattenplatz."
 
-#: storage/large_object/inv_api.c:562 storage/large_object/inv_api.c:759
+#: storage/smgr/md.c:485
 #, c-format
-msgid "large object %u was already dropped"
-msgstr "Large Object %u wurde gleichzeitig gelöscht"
-
-#: storage/lmgr/predicate.c:574
-msgid "not enough elements in RWConflictPool to record a rw-conflict"
-msgstr ""
-
-#: storage/lmgr/predicate.c:575 storage/lmgr/predicate.c:603
-msgid ""
-"You might need to run fewer transactions at a time or increase "
-"max_connections."
-msgstr ""
-
-#: storage/lmgr/predicate.c:602
-msgid "not enough elements in RWConflictPool to record a potential rw-conflict"
-msgstr ""
-
-#: storage/lmgr/predicate.c:782
-msgid "memory for serializable conflict tracking is nearly exhausted"
-msgstr ""
-
-#: storage/lmgr/predicate.c:783
-#, fuzzy
-msgid ""
-"There may be an idle transaction or a forgotten prepared transaction causing "
-"this."
+msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
 msgstr ""
-"%d andere Sitzung(en) und %d vorbereitete Transaktion(en) verwenden die "
-"Datenbank."
+"konnte Datei »%s« nicht erweitern: es wurden nur %d von %d Bytes bei Block "
+"%u geschrieben"
 
-#: storage/lmgr/predicate.c:1067 storage/lmgr/predicate.c:1138
+#: storage/smgr/md.c:653
 #, c-format
-msgid ""
-"not enough shared memory for elements of data structure \"%s\" (%lu bytes "
-"requested)"
-msgstr ""
-"nicht genug Shared-Memory für Elemente der Datenstruktur »%s« (%lu Bytes "
-"angefordert)"
+msgid "could not read block %u in file \"%s\": %m"
+msgstr "konnte Block %u in Datei »%s« nicht lesen: %m"
 
-#: storage/lmgr/predicate.c:1408
-msgid "deferrable snapshot was unsafe; trying a new one"
+#: storage/smgr/md.c:669
+#, c-format
+msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
 msgstr ""
+"konnte Block %u in Datei »%s« nicht lesen: es wurden nur %d von %d Bytes "
+"gelesen"
 
-#: storage/lmgr/predicate.c:2055 storage/lmgr/predicate.c:2070
-#: storage/lmgr/predicate.c:3297
-msgid "You might need to increase max_pred_locks_per_transaction."
-msgstr "Sie müssen möglicherweise max_pred_locks_per_transaction erhöhen."
-
-#: storage/lmgr/predicate.c:3449 storage/lmgr/predicate.c:3538
-#: storage/lmgr/predicate.c:3546 storage/lmgr/predicate.c:3587
-#: storage/lmgr/predicate.c:3828 storage/lmgr/predicate.c:3995
-#: storage/lmgr/predicate.c:4004 storage/lmgr/predicate.c:4045
-#, fuzzy
-msgid ""
-"could not serialize access due to read/write dependencies among transactions"
-msgstr "kann Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung"
+#: storage/smgr/md.c:728
+#, c-format
+msgid "could not write block %u in file \"%s\": %m"
+msgstr "konnte Block %u in Datei »%s« nicht schreiben: %m"
 
-#: storage/lmgr/predicate.c:3450
-msgid "Cancelled on identification as a pivot, during conflict out checking."
+#: storage/smgr/md.c:733
+#, c-format
+msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
 msgstr ""
+"konnte Block %u in Datei »%s« nicht schreiben: es wurden nur %d von %d Bytes "
+"geschrieben"
 
-#: storage/lmgr/predicate.c:3451 storage/lmgr/predicate.c:3540
-#: storage/lmgr/predicate.c:3548 storage/lmgr/predicate.c:3589
-#: storage/lmgr/predicate.c:3830 storage/lmgr/predicate.c:3997
-#: storage/lmgr/predicate.c:4006 storage/lmgr/predicate.c:4047
-msgid "The transaction might succeed if retried."
+#: storage/smgr/md.c:831
+#, c-format
+msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
 msgstr ""
+"konnte Datei »%s« nicht auf %u Blöcke kürzen: es sind jetzt nur %u Blöcke"
 
-#: storage/lmgr/predicate.c:3539
+#: storage/smgr/md.c:880
 #, c-format
-msgid "Cancelled on conflict out to old pivot %u."
-msgstr ""
+msgid "could not truncate file \"%s\" to %u blocks: %m"
+msgstr "konnte Datei »%s« nicht auf %u Blöcke kürzen: %m"
 
-#: storage/lmgr/predicate.c:3547
+#: storage/smgr/md.c:1134
 #, c-format
-msgid ""
-"Cancelled on identification as a pivot, with conflict out to old committed "
-"transaction %u."
-msgstr ""
+msgid "could not fsync file \"%s\" but retrying: %m"
+msgstr "konnte Datei »%s« nicht fsyncen, versuche erneut: %m"
 
-#: storage/lmgr/predicate.c:3588
-msgid "Cancelled on conflict out to old pivot."
-msgstr ""
+#: storage/smgr/md.c:1276
+msgid "could not forward fsync request because request queue is full"
+msgstr "konnte fsync-Anfrage nicht weiterleiten, weil Anfrageschlange voll ist"
 
-#: storage/lmgr/predicate.c:3829
-msgid "Cancelled on identification as a pivot, during conflict in checking."
-msgstr ""
+#: storage/smgr/md.c:1646
+#, c-format
+msgid "could not open file \"%s\" (target block %u): %m"
+msgstr "konnte Datei »%s« nicht öffnen (Zielblock %u): %m"
 
-#: storage/lmgr/predicate.c:3996
-msgid "Cancelled on identification as pivot, during write."
-msgstr ""
+#: storage/smgr/md.c:1668
+#, c-format
+msgid "could not seek to end of file \"%s\": %m"
+msgstr "konnte Positionszeiger nicht ans Ende der Datei »%s« setzen: %m"
 
-#: storage/lmgr/predicate.c:4005
+#: storage/large_object/inv_api.c:555 storage/large_object/inv_api.c:752
 #, c-format
-msgid "Cancelled on conflict out to pivot %u, during read."
-msgstr ""
+msgid "large object %u was not opened for writing"
+msgstr "Large Object %u wurde nicht zum Schreiben geöffnet"
 
-#: storage/lmgr/predicate.c:4046
-msgid "Cancelled on identification as a pivot, during commit attempt."
-msgstr ""
+#: storage/large_object/inv_api.c:562 storage/large_object/inv_api.c:759
+#, c-format
+msgid "large object %u was already dropped"
+msgstr "Large Object %u wurde gleichzeitig gelöscht"
 
 #: storage/lmgr/deadlock.c:915
 #, c-format
@@ -10406,23 +10031,23 @@ msgstr ""
 "Nur Sperren gleich oder unter RowExclusiveLock können während der "
 "Wiederherstellung auf Datenbankobjekte gesetzt werden."
 
-#: storage/lmgr/lock.c:632 storage/lmgr/lock.c:701 storage/lmgr/lock.c:2550
-#: storage/lmgr/lock.c:2615
+#: storage/lmgr/lock.c:632 storage/lmgr/lock.c:701 storage/lmgr/lock.c:2543
+#: storage/lmgr/lock.c:2608
 msgid "You might need to increase max_locks_per_transaction."
 msgstr "Sie müssen möglicherweise max_locks_per_transaction erhöhen."
 
-#: storage/lmgr/lock.c:2171
+#: storage/lmgr/lock.c:2164
 msgid "Not enough memory for reassigning the prepared transaction's locks."
 msgstr ""
 "Nicht genug Speicher, um die Sperren der vorbereiteten Transaktion zu "
 "übergeben."
 
-#: storage/lmgr/proc.c:1019 utils/adt/misc.c:102
+#: storage/lmgr/proc.c:1046 utils/adt/misc.c:102
 #, c-format
 msgid "could not send signal to process %d: %m"
 msgstr "konnte Signal nicht an Prozess %d senden: %m"
 
-#: storage/lmgr/proc.c:1053
+#: storage/lmgr/proc.c:1080
 #, c-format
 msgid ""
 "process %d avoided deadlock for %s on %s by rearranging queue order after "
@@ -10431,7 +10056,7 @@ msgstr ""
 "Prozess %d vermied Verklemmung wegen %s-Sperre auf %s durch Umordnen der "
 "Queue nach %ld,%03d ms"
 
-#: storage/lmgr/proc.c:1065
+#: storage/lmgr/proc.c:1092
 #, c-format
 msgid ""
 "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
@@ -10439,21 +10064,95 @@ msgstr ""
 "Prozess %d hat Verklemmung festgestellt beim Warten auf %s-Sperre auf %s "
 "nach %ld,%03d ms"
 
-#: storage/lmgr/proc.c:1071
+#: storage/lmgr/proc.c:1098
 #, c-format
 msgid "process %d still waiting for %s on %s after %ld.%03d ms"
 msgstr "Prozess %d wartet immer noch auf %s-Sperre auf %s nach %ld,%03d ms"
 
-#: storage/lmgr/proc.c:1075
+#: storage/lmgr/proc.c:1102
 #, c-format
 msgid "process %d acquired %s on %s after %ld.%03d ms"
 msgstr "Prozess %d erlangte %s-Sperre auf %s nach %ld,%03d ms"
 
-#: storage/lmgr/proc.c:1091
+#: storage/lmgr/proc.c:1118
 #, c-format
 msgid "process %d failed to acquire %s on %s after %ld.%03d ms"
 msgstr "Prozess %d konnte %s-Sperre auf %s nach %ld,%03d ms nicht erlangen"
 
+#: storage/lmgr/predicate.c:665
+msgid "not enough elements in RWConflictPool to record a read/write conflict"
+msgstr ""
+"nicht genügend Elemente in RWConflictPool, um einen Lese-/Schreibkonflikt "
+"aufzuzeichnen"
+
+#: storage/lmgr/predicate.c:666 storage/lmgr/predicate.c:694
+msgid ""
+"You might need to run fewer transactions at a time or increase "
+"max_connections."
+msgstr ""
+"Sie müssten entweder weniger Transaktionen auf einmal ausführen oder "
+"max_connections erhöhen."
+
+#: storage/lmgr/predicate.c:693
+msgid ""
+"not enough elements in RWConflictPool to record a potential read/write "
+"conflict"
+msgstr ""
+"nicht genügend Elemente in RWConflictPool, um einen möglichen Lese-/"
+"Schreibkonflikt aufzuzeichnen"
+
+#: storage/lmgr/predicate.c:898
+msgid "memory for serializable conflict tracking is nearly exhausted"
+msgstr ""
+"Speicher für die Verfolgung von Serialisierungskonflikten ist fast "
+"aufgebraucht"
+
+#: storage/lmgr/predicate.c:899
+msgid ""
+"There might be an idle transaction or a forgotten prepared transaction "
+"causing this."
+msgstr ""
+"Möglicherweise gibt es eine stillliegende Transaktion oder eine vergessene "
+"vorbereitete Transaktion, die der Grund dafür ist."
+
+#: storage/lmgr/predicate.c:1181 storage/lmgr/predicate.c:1253
+#, c-format
+msgid ""
+"not enough shared memory for elements of data structure \"%s\" (%lu bytes "
+"requested)"
+msgstr ""
+"nicht genug Shared-Memory für Elemente der Datenstruktur »%s« (%lu Bytes "
+"angefordert)"
+
+#: storage/lmgr/predicate.c:1536
+msgid "deferrable snapshot was unsafe; trying a new one"
+msgstr "aufschiebbarer Snapshot war unsicher; versuche einen neuen"
+
+#: storage/lmgr/predicate.c:2234 storage/lmgr/predicate.c:2249
+#: storage/lmgr/predicate.c:3624
+msgid "You might need to increase max_pred_locks_per_transaction."
+msgstr "Sie müssen möglicherweise max_pred_locks_per_transaction erhöhen."
+
+#: storage/lmgr/predicate.c:3778 storage/lmgr/predicate.c:3867
+#: storage/lmgr/predicate.c:3875 storage/lmgr/predicate.c:3914
+#: storage/lmgr/predicate.c:4153 storage/lmgr/predicate.c:4491
+#: storage/lmgr/predicate.c:4503 storage/lmgr/predicate.c:4545
+#: storage/lmgr/predicate.c:4583
+msgid ""
+"could not serialize access due to read/write dependencies among transactions"
+msgstr ""
+"konnte Zugriff nicht serialisieren wegen Lese-/Schreib-Abhängigkeiten "
+"zwischen Transaktionen"
+
+#: storage/lmgr/predicate.c:3780 storage/lmgr/predicate.c:3869
+#: storage/lmgr/predicate.c:3877 storage/lmgr/predicate.c:3916
+#: storage/lmgr/predicate.c:4155 storage/lmgr/predicate.c:4493
+#: storage/lmgr/predicate.c:4505 storage/lmgr/predicate.c:4547
+#: storage/lmgr/predicate.c:4585
+msgid "The transaction might succeed if retried."
+msgstr ""
+"Die Transaktion könnte erfolgreich sein, wenn sie erneut versucht würde."
+
 #: storage/page/bufpage.c:143 storage/page/bufpage.c:390
 #: storage/page/bufpage.c:623 storage/page/bufpage.c:753
 #, c-format
@@ -10475,63 +10174,316 @@ msgstr "verfälschte Item-Längen: gesamt %u, verfügbarer Platz %u"
 msgid "corrupted item pointer: offset = %u, size = %u"
 msgstr "verfälschter Item-Zeiger: offset = %u, size = %u"
 
-#: nodes/nodeFuncs.c:114 nodes/nodeFuncs.c:140 parser/parse_coerce.c:1603
-#: parser/parse_coerce.c:1620 parser/parse_coerce.c:1678
-#: parser/parse_expr.c:1633 parser/parse_func.c:367 parser/parse_oper.c:984
+#: main/main.c:237
 #, c-format
-msgid "could not find array type for data type %s"
-msgstr "konnte Arraytyp für Datentyp %s nicht finden"
+msgid "%s: setsysinfo failed: %s\n"
+msgstr "%s: setsysinfo fehlgeschlagen: %s\n"
+
+#: main/main.c:259
+#, c-format
+msgid "%s: WSAStartup failed: %d\n"
+msgstr "%s: WSAStartup fehlgeschlagen: %d\n"
 
-#: optimizer/plan/initsplan.c:587
+#: main/main.c:278
+#, c-format
 msgid ""
-"SELECT FOR UPDATE/SHARE cannot be applied to the nullable side of an outer "
-"join"
+"%s is the PostgreSQL server.\n"
+"\n"
 msgstr ""
-"SELECT FOR UPDATE/SHARE kann nicht auf die nullbare Seite eines äußeren "
-"Verbundes angewendet werden"
-
-#: optimizer/plan/planner.c:959 parser/analyze.c:1336 parser/analyze.c:1533
-#: parser/analyze.c:2262
-msgid "SELECT FOR UPDATE/SHARE is not allowed with UNION/INTERSECT/EXCEPT"
-msgstr "SELECT FOR UPDATE/SHARE ist nicht in UNION/INTERSECT/EXCEPT erlaubt"
-
-#: optimizer/plan/planner.c:2249
-msgid "could not implement GROUP BY"
-msgstr "konnte GROUP BY nicht implementieren"
+"%s ist der PostgreSQL-Server.\n"
+"\n"
 
-#: optimizer/plan/planner.c:2250 optimizer/plan/planner.c:2422
-#: optimizer/prep/prepunion.c:791
+#: main/main.c:279
+#, c-format
 msgid ""
-"Some of the datatypes only support hashing, while others only support "
-"sorting."
+"Usage:\n"
+"  %s [OPTION]...\n"
+"\n"
 msgstr ""
-"Einige Datentypen unterstützen nur Hashing, während andere nur Sortieren "
-"unterstützen."
-
-#: optimizer/plan/planner.c:2421
-msgid "could not implement DISTINCT"
-msgstr "konnte DISTINCT nicht implementieren"
+"Aufruf:\n"
+"  %s [OPTION]...\n"
+"\n"
 
-#: optimizer/plan/planner.c:2868
-msgid "could not implement window PARTITION BY"
-msgstr "konnte PARTITION BY für Fenster nicht implementieren"
+#: main/main.c:280
+#, c-format
+msgid "Options:\n"
+msgstr "Optionen:\n"
 
-#: optimizer/plan/planner.c:2869
-msgid "Window partitioning columns must be of sortable datatypes."
-msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben."
+#: main/main.c:282
+#, c-format
+msgid "  -A 1|0          enable/disable run-time assert checking\n"
+msgstr "  -A 1|0          Assert-Prüfungen ein-/ausschalten\n"
 
-#: optimizer/plan/planner.c:2873
-msgid "could not implement window ORDER BY"
-msgstr "konnte ORDER BY für Fenster nicht implementieren"
+#: main/main.c:284
+#, c-format
+msgid "  -B NBUFFERS     number of shared buffers\n"
+msgstr "  -B ZAHL         Anzahl der geteilten Puffer\n"
 
-#: optimizer/plan/planner.c:2874
-msgid "Window ordering columns must be of sortable datatypes."
-msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben."
+#: main/main.c:285
+#, c-format
+msgid "  -c NAME=VALUE   set run-time parameter\n"
+msgstr "  -c NAME=WERT    setze Konfigurationsparameter\n"
 
-#: optimizer/util/clauses.c:4201
+#: main/main.c:286
 #, c-format
-msgid "SQL function \"%s\" during inlining"
-msgstr "SQL-Funktion »%s« beim Inlining"
+msgid "  -d 1-5          debugging level\n"
+msgstr "  -d 1-5          Debug-Level\n"
+
+#: main/main.c:287
+#, c-format
+msgid "  -D DATADIR      database directory\n"
+msgstr "  -D VERZEICHNIS  Datenbankverzeichnis\n"
+
+#: main/main.c:288
+#, c-format
+msgid "  -e              use European date input format (DMY)\n"
+msgstr "  -e              verwende europäisches Datumseingabeformat (DMY)\n"
+
+#: main/main.c:289
+#, c-format
+msgid "  -F              turn fsync off\n"
+msgstr "  -F              »fsync« ausschalten\n"
+
+#: main/main.c:290
+#, c-format
+msgid "  -h HOSTNAME     host name or IP address to listen on\n"
+msgstr "  -h HOSTNAME     horche auf Hostname oder IP-Adresse\n"
+
+#: main/main.c:291
+#, c-format
+msgid "  -i              enable TCP/IP connections\n"
+msgstr "  -i              ermögliche TCP/IP-Verbindungen\n"
+
+#: main/main.c:292
+#, c-format
+msgid "  -k DIRECTORY    Unix-domain socket location\n"
+msgstr "  -k VERZEICHNIS  Ort der Unix-Domain-Socket\n"
+
+#: main/main.c:294
+#, c-format
+msgid "  -l              enable SSL connections\n"
+msgstr "  -l              ermögliche SSL-Verbindungen\n"
+
+#: main/main.c:296
+#, c-format
+msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
+msgstr "  -N ZAHL         Anzahl der erlaubten Verbindugen\n"
+
+#: main/main.c:297
+#, c-format
+msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process (obsolete)\n"
+msgstr ""
+"  -o OPTIONEN     »OPTIONEN« an jeden Serverprozess weiterreichen (obsolet)\n"
+
+#: main/main.c:298
+#, c-format
+msgid "  -p PORT         port number to listen on\n"
+msgstr "  -p PORT         auf dieser Portnummer horchen\n"
+
+#: main/main.c:299
+#, c-format
+msgid "  -s              show statistics after each query\n"
+msgstr "  -s              zeige Statistiken nach jeder Anfrage\n"
+
+#: main/main.c:300
+#, c-format
+msgid "  -S WORK-MEM     set amount of memory for sorts (in kB)\n"
+msgstr "  -S ZAHL         setze Speicher für Sortiervorgänge (in kB)\n"
+
+#: main/main.c:301
+#, c-format
+msgid "  --NAME=VALUE    set run-time parameter\n"
+msgstr "  --NAME=WERT     setze Konfigurationsparameter\n"
+
+#: main/main.c:302
+#, c-format
+msgid "  --describe-config  describe configuration parameters, then exit\n"
+msgstr "  --describe-config  zeige Konfigurationsparameter und beende\n"
+
+#: main/main.c:303
+#, c-format
+msgid "  --help          show this help, then exit\n"
+msgstr "  --help          diese Hilfe anzeigen, dann beenden\n"
+
+#: main/main.c:304
+#, c-format
+msgid "  --version       output version information, then exit\n"
+msgstr "  --version       Versionsinformationen anzeigen, dann beenden\n"
+
+#: main/main.c:306
+#, c-format
+msgid ""
+"\n"
+"Developer options:\n"
+msgstr ""
+"\n"
+"Entwickleroptionen:\n"
+
+#: main/main.c:307
+#, c-format
+msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
+msgstr "  -f s|i|n|m|h    verbiete Verwendung einiger Plantypen\n"
+
+#: main/main.c:308
+#, c-format
+msgid ""
+"  -n              do not reinitialize shared memory after abnormal exit\n"
+msgstr ""
+"  -n              Shared Memory nach abnormalem Ende nicht neu "
+"initialisieren\n"
+
+#: main/main.c:309
+#, c-format
+msgid "  -O              allow system table structure changes\n"
+msgstr "  -O              erlaube Änderungen an Systemtabellenstruktur\n"
+
+#: main/main.c:310
+#, c-format
+msgid "  -P              disable system indexes\n"
+msgstr "  -P              schalte Systemindexe aus\n"
+
+#: main/main.c:311
+#, c-format
+msgid "  -t pa|pl|ex     show timings after each query\n"
+msgstr "  -t pa|pl|ex     zeige Zeitmessung nach jeder Anfrage\n"
+
+#: main/main.c:312
+#, c-format
+msgid "  -T              send SIGSTOP to all backend processes if one dies\n"
+msgstr ""
+"  -T              SIGSTOP an alle Backend-Prozesse senden wenn einer stirbt\n"
+
+#: main/main.c:313
+#, c-format
+msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
+msgstr "  -W ZAHL         warte ZAHL Sekunden, um Debugger starten zu können\n"
+
+#: main/main.c:315
+#, c-format
+msgid ""
+"\n"
+"Options for single-user mode:\n"
+msgstr ""
+"\n"
+"Optionen für Einzelbenutzermodus:\n"
+
+#: main/main.c:316
+#, c-format
+msgid "  --single        selects single-user mode (must be first argument)\n"
+msgstr ""
+"  --single        wählt den Einzelbenutzermodus (muss erstes Argument sein)\n"
+
+#: main/main.c:317
+#, c-format
+msgid "  DBNAME          database name (defaults to user name)\n"
+msgstr "  DBNAME          Datenbankname (Standard: Benutzername)\n"
+
+#: main/main.c:318
+#, c-format
+msgid "  -d 0-5          override debugging level\n"
+msgstr "  -d 1-5          Debug-Level setzen\n"
+
+#: main/main.c:319
+#, c-format
+msgid "  -E              echo statement before execution\n"
+msgstr "  -E              gebe Befehl vor der Ausführung aus\n"
+
+#: main/main.c:320
+#, c-format
+msgid "  -j              do not use newline as interactive query delimiter\n"
+msgstr ""
+"  -j              verwende Zeilenende nicht als Anfrageende im interaktiven\n"
+"                  Modus\n"
+
+#: main/main.c:321 main/main.c:326
+#, c-format
+msgid "  -r FILENAME     send stdout and stderr to given file\n"
+msgstr "  -r DATEINAME    sende stdout und stderr in genannte Datei\n"
+
+#: main/main.c:323
+#, c-format
+msgid ""
+"\n"
+"Options for bootstrapping mode:\n"
+msgstr ""
+"\n"
+"Optionen für Bootstrap-Modus:\n"
+
+#: main/main.c:324
+#, c-format
+msgid "  --boot          selects bootstrapping mode (must be first argument)\n"
+msgstr ""
+"  --boot          wählt den Bootstrap-Modus (muss erstes Argument sein)\n"
+
+#: main/main.c:325
+#, c-format
+msgid ""
+"  DBNAME          database name (mandatory argument in bootstrapping mode)\n"
+msgstr "  DBNAME          Datenbankname (Pflichtangabe im Bootstrap-Modus)\n"
+
+#: main/main.c:327
+#, c-format
+msgid "  -x NUM          internal use\n"
+msgstr "  -x NUM          interne Verwendung\n"
+
+#: main/main.c:329
+#, c-format
+msgid ""
+"\n"
+"Please read the documentation for the complete list of run-time\n"
+"configuration settings and how to set them on the command line or in\n"
+"the configuration file.\n"
+"\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
+msgstr ""
+"\n"
+"In der Dokumentation finden Sie eine komplette Liste der Konfigurations-\n"
+"parameter und Informationen wie man sie auf der Kommandozeile oder in der\n"
+"Konfiguratonsdatei setzen kann.\n"
+"\n"
+"Berichten Sie Fehler an <pgsql-bugs@postgresql.org>.\n"
+
+#: main/main.c:343
+msgid ""
+"\"root\" execution of the PostgreSQL server is not permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromise.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
+"Der PostgreSQL-Server darf nicht als »root« ausgeführt werden.  Der\n"
+"Server muss unter einer unprivilegierten Benutzer-ID gestartet werden,\n"
+"um mögliche Sicherheitskompromittierung zu verhindern.  In der\n"
+"Dokumentation finden Sie weitere Informationen darüber, wie der\n"
+"Server richtig gestartet wird.\n"
+
+#: main/main.c:360
+#, c-format
+msgid "%s: real and effective user IDs must match\n"
+msgstr "%s: reelle und effektive Benutzer-IDs müssen übereinstimmen\n"
+
+#: main/main.c:367
+msgid ""
+"Execution of PostgreSQL by a user with administrative permissions is not\n"
+"permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromises.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
+"Der PostgreSQL-Server darf nicht als Benutzer mit Administrator-Rechten\n"
+"ausgeführt werden.  Der Server muss unter einer unprivilegierten\n"
+"Benutzer-ID gestartet werden, um mögliche Sicherheitskompromittierung zu\n"
+"verhindern.  In der Dokumentation finden Sie weitere Informationen darüber,\n"
+"wie der Server richtig gestartet wird.\n"
+
+#: main/main.c:388
+#, c-format
+msgid "%s: invalid effective UID: %d\n"
+msgstr "%s: ungültige effektive UID: %d\n"
+
+#: main/main.c:401
+#, c-format
+msgid "%s: could not determine user name (GetUserName failed)\n"
+msgstr "%s: konnte Benutzername nicht ermitteln (GetUserName fehlgeschlagen)\n"
 
 #: optimizer/prep/prepunion.c:385
 msgid "could not implement recursive UNION"
@@ -10547,29 +10499,70 @@ msgstr "Alle Spaltendatentypen müssen hashbar sein."
 msgid "could not implement %s"
 msgstr "konnte %s nicht implementieren"
 
-#: optimizer/path/joinrels.c:673
+#: optimizer/prep/prepunion.c:791 optimizer/plan/planner.c:2255
+#: optimizer/plan/planner.c:2427
 msgid ""
-"FULL JOIN is only supported with merge-joinable or hash-joinable join "
-"conditions"
+"Some of the datatypes only support hashing, while others only support "
+"sorting."
 msgstr ""
-"FULL JOIN wird nur für Merge- oder Hash-Verbund-fähige Verbundbedingungen "
-"unterstützt"
+"Einige Datentypen unterstützen nur Hashing, während andere nur Sortieren "
+"unterstützen."
 
-#: parser/parse_collate.c:214 parser/parse_collate.c:538
+#: optimizer/util/clauses.c:4165
 #, c-format
-msgid "collation mismatch between implicit collations \"%s\" and \"%s\""
+msgid "SQL function \"%s\" during inlining"
+msgstr "SQL-Funktion »%s« beim Inlining"
+
+#: optimizer/util/plancat.c:97
+msgid "cannot access temporary or unlogged relations during recovery"
 msgstr ""
+"während der Wiederherstellung kann nicht auf temporäre oder ungeloggte "
+"Tabellen zugegriffen werden"
 
-#: parser/parse_collate.c:217 parser/parse_collate.c:541
+#: optimizer/plan/initsplan.c:595
 msgid ""
-"You can choose the collation by applying the COLLATE clause to one or both "
-"expressions."
+"SELECT FOR UPDATE/SHARE cannot be applied to the nullable side of an outer "
+"join"
 msgstr ""
+"SELECT FOR UPDATE/SHARE kann nicht auf die nullbare Seite eines äußeren "
+"Verbundes angewendet werden"
 
-#: parser/parse_collate.c:763
-#, c-format
-msgid "collation mismatch between explicit collations \"%s\" and \"%s\""
+#: optimizer/plan/planner.c:959 parser/analyze.c:1337 parser/analyze.c:1534
+#: parser/analyze.c:2263
+msgid "SELECT FOR UPDATE/SHARE is not allowed with UNION/INTERSECT/EXCEPT"
+msgstr "SELECT FOR UPDATE/SHARE ist nicht in UNION/INTERSECT/EXCEPT erlaubt"
+
+#: optimizer/plan/planner.c:2254
+msgid "could not implement GROUP BY"
+msgstr "konnte GROUP BY nicht implementieren"
+
+#: optimizer/plan/planner.c:2426
+msgid "could not implement DISTINCT"
+msgstr "konnte DISTINCT nicht implementieren"
+
+#: optimizer/plan/planner.c:2877
+msgid "could not implement window PARTITION BY"
+msgstr "konnte PARTITION BY für Fenster nicht implementieren"
+
+#: optimizer/plan/planner.c:2878
+msgid "Window partitioning columns must be of sortable datatypes."
+msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben."
+
+#: optimizer/plan/planner.c:2882
+msgid "could not implement window ORDER BY"
+msgstr "konnte ORDER BY für Fenster nicht implementieren"
+
+#: optimizer/plan/planner.c:2883
+msgid "Window ordering columns must be of sortable datatypes."
+msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben."
+
+#: optimizer/path/joinrels.c:673
+msgid ""
+"FULL JOIN is only supported with merge-joinable or hash-joinable join "
+"conditions"
 msgstr ""
+"FULL JOIN wird nur für Merge- oder Hash-Verbund-fähige Verbundbedingungen "
+"unterstützt"
 
 #: parser/analyze.c:471
 msgid "INSERT ... SELECT cannot specify INTO"
@@ -10579,23 +10572,23 @@ msgstr "INSERT ... SELECT kann INTO nicht verwenden"
 msgid "VALUES lists must all be the same length"
 msgstr "VALUES-Listen müssen alle die gleiche Länge haben"
 
-#: parser/analyze.c:606 parser/analyze.c:1210
+#: parser/analyze.c:606 parser/analyze.c:1211
 msgid "VALUES must not contain table references"
 msgstr "VALUES darf keine Tabellenverweise enthalten"
 
-#: parser/analyze.c:620 parser/analyze.c:1224
+#: parser/analyze.c:620 parser/analyze.c:1225
 msgid "VALUES must not contain OLD or NEW references"
 msgstr "VALUES darf keine Verweise auf OLD oder NEW enthalten"
 
-#: parser/analyze.c:621 parser/analyze.c:1225
+#: parser/analyze.c:621 parser/analyze.c:1226
 msgid "Use SELECT ... UNION ALL ... instead."
 msgstr "Verwenden Sie stattdessen SELECT ... UNION ALL ..."
 
-#: parser/analyze.c:725 parser/analyze.c:1237
+#: parser/analyze.c:725 parser/analyze.c:1238
 msgid "cannot use aggregate function in VALUES"
 msgstr "Aggregatfunktionen können nicht in VALUES verwendet werden"
 
-#: parser/analyze.c:731 parser/analyze.c:1243
+#: parser/analyze.c:731 parser/analyze.c:1244
 msgid "cannot use window function in VALUES"
 msgstr "Fensterfunktionen können nicht in VALUES verwendet werden"
 
@@ -10612,26 +10605,28 @@ msgid ""
 "The insertion source is a row expression containing the same number of "
 "columns expected by the INSERT. Did you accidentally use extra parentheses?"
 msgstr ""
+"Der einzufügende Wert ist ein Zeilenausdruck mit der gleichen Anzahl Spalten "
+"wie von INSERT erwartet. Haben Sie versehentlich zu viele Klammern gesetzt?"
 
 #: parser/analyze.c:1084
 msgid "DEFAULT can only appear in a VALUES list within INSERT"
 msgstr "DEFAULT kann nur in VALUES-Liste innerhalb von INSERT auftreten"
 
-#: parser/analyze.c:1191 parser/analyze.c:2413
+#: parser/analyze.c:1192 parser/analyze.c:2414
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to VALUES"
 msgstr "SELECT FOR UPDATE/SHARE kann nicht auf VALUES angewendet werden"
 
-#: parser/analyze.c:1451
+#: parser/analyze.c:1452
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "ungültige ORDER-BY-Klausel mit UNION/INTERSECT/EXCEPT"
 
-#: parser/analyze.c:1452
+#: parser/analyze.c:1453
 msgid "Only result column names can be used, not expressions or functions."
 msgstr ""
 "Es können nur Ergebnisspaltennamen verwendet werden, keine Ausdrücke oder "
 "Funktionen."
 
-#: parser/analyze.c:1453
+#: parser/analyze.c:1454
 msgid ""
 "Add the expression/function to every SELECT, or move the UNION into a FROM "
 "clause."
@@ -10639,11 +10634,11 @@ msgstr ""
 "Fügen Sie den Ausdrück/die Funktion jedem SELECT hinzu oder verlegen Sie die "
 "UNION in eine FROM-Klausel."
 
-#: parser/analyze.c:1525
+#: parser/analyze.c:1526
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "INTO ist nur im ersten SELECT von UNION/INTERSECT/EXCEPT erlaubt"
 
-#: parser/analyze.c:1585
+#: parser/analyze.c:1586
 msgid ""
 "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of "
 "same query level"
@@ -10651,85 +10646,85 @@ msgstr ""
 "Teilanweisung von UNION/INTERSECT/EXCEPT kann nicht auf andere Relationen "
 "auf der selben Anfrageebene verweisen"
 
-#: parser/analyze.c:1673
+#: parser/analyze.c:1674
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "jede %s-Anfrage muss die gleiche Anzahl Spalten haben"
 
-#: parser/analyze.c:1929
+#: parser/analyze.c:1930
 msgid "CREATE TABLE AS specifies too many column names"
 msgstr "CREATE TABLE AS gibt zu viele Spaltennamen an"
 
-#: parser/analyze.c:1987
+#: parser/analyze.c:1988
 msgid "cannot use aggregate function in UPDATE"
 msgstr "Aggregatfunktionen können nicht in UPDATE verwendet werden"
 
-#: parser/analyze.c:1993
+#: parser/analyze.c:1994
 msgid "cannot use window function in UPDATE"
 msgstr "Fensterfunktionen können nicht in UPDATE verwendet werden"
 
-#: parser/analyze.c:2102
+#: parser/analyze.c:2103
 msgid "cannot use aggregate function in RETURNING"
 msgstr "Aggregatfunktionen können nicht in RETURNING verwendet werden"
 
-#: parser/analyze.c:2108
+#: parser/analyze.c:2109
 msgid "cannot use window function in RETURNING"
 msgstr "Fensterfunktionen können nicht in RETURNING verwendet werden"
 
-#: parser/analyze.c:2127
+#: parser/analyze.c:2128
 msgid "RETURNING cannot contain references to other relations"
 msgstr "RETURNING kann keine Verweise auf andere Relationen enthalten"
 
-#: parser/analyze.c:2166
+#: parser/analyze.c:2167
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "SCROLL und NO SCROLL können nicht beide angegeben werden"
 
-#: parser/analyze.c:2180
+#: parser/analyze.c:2181
 msgid "DECLARE CURSOR cannot specify INTO"
 msgstr "DECLARE CURSOR kann nicht INTO verwenden"
 
-#: parser/analyze.c:2192
+#: parser/analyze.c:2193
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr ""
 "DECLARE CURSOR darf keine datenmodifizierenden Anweisungen in WITH enthalten"
 
-#: parser/analyze.c:2198
+#: parser/analyze.c:2199
 msgid "DECLARE CURSOR WITH HOLD ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... FOR UPDATE/SHARE wird nicht unterstützt"
 
-#: parser/analyze.c:2199
+#: parser/analyze.c:2200
 msgid "Holdable cursors must be READ ONLY."
 msgstr "Haltbare Cursor müssen READ ONLY sein."
 
-#: parser/analyze.c:2212
+#: parser/analyze.c:2213
 msgid "DECLARE INSENSITIVE CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE INSENSITIVE CURSOR ... FOR UPDATE/SHARE wird nicht unterstützt"
 
-#: parser/analyze.c:2213
+#: parser/analyze.c:2214
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "Insensitive Cursor müssen READ ONLY sein."
 
-#: parser/analyze.c:2266
+#: parser/analyze.c:2267
 msgid "SELECT FOR UPDATE/SHARE is not allowed with DISTINCT clause"
 msgstr "SELECT FOR UPDATE/SHARE ist nicht mit DISTINCT-Klausel erlaubt"
 
-#: parser/analyze.c:2270
+#: parser/analyze.c:2271
 msgid "SELECT FOR UPDATE/SHARE is not allowed with GROUP BY clause"
 msgstr "SELECT FOR UPDATE/SHARE ist nicht mit GROUP-BY-Klausel erlaubt"
 
-#: parser/analyze.c:2274
+#: parser/analyze.c:2275
 msgid "SELECT FOR UPDATE/SHARE is not allowed with HAVING clause"
 msgstr "SELECT FOR UPDATE/SHARE ist nicht mit HAVING-Klausel erlaubt"
 
-#: parser/analyze.c:2278
+#: parser/analyze.c:2279
 msgid "SELECT FOR UPDATE/SHARE is not allowed with aggregate functions"
 msgstr "SELECT FOR UPDATE/SHARE ist nicht mit Aggregatfunktionen erlaubt"
 
-#: parser/analyze.c:2282
+#: parser/analyze.c:2283
 msgid "SELECT FOR UPDATE/SHARE is not allowed with window functions"
 msgstr "SELECT FOR UPDATE/SHARE ist nicht mit Fensterfunktionen erlaubt"
 
-#: parser/analyze.c:2286
+#: parser/analyze.c:2287
 msgid ""
 "SELECT FOR UPDATE/SHARE is not allowed with set-returning functions in the "
 "target list"
@@ -10737,29 +10732,35 @@ msgstr ""
 "SELECT FOR UPDATE/SHARE ist nicht mit Funktionen mit Ergebnismenge in der "
 "Targetliste erlaubt"
 
-#: parser/analyze.c:2365
+#: parser/analyze.c:2366
 msgid "SELECT FOR UPDATE/SHARE must specify unqualified relation names"
 msgstr "SELECT FOR UPDATE/SHARE muss unqualifizierte Relationsnamen angeben"
 
-#: parser/analyze.c:2401
+#: parser/analyze.c:2383
+#, c-format
+msgid "SELECT FOR UPDATE/SHARE cannot be used with foreign table \"%s\""
+msgstr ""
+"SELECT FOR UPDATE/SHARE kann nicht mit Fremdtabelle »%s« verwendet werden"
+
+#: parser/analyze.c:2402
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a join"
 msgstr "SELECT FOR UPDATE/SHARE kann nicht auf einen Verbund angewendet werden"
 
-#: parser/analyze.c:2407
+#: parser/analyze.c:2408
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a function"
 msgstr "SELECT FOR UPDATE/SHARE kann nicht auf eine Funktion angewendet werden"
 
-#: parser/analyze.c:2419
+#: parser/analyze.c:2420
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a WITH query"
 msgstr ""
 "SELECT FOR UPDATE/SHARE kann nicht auf eine WITH-Anfrage angewendet werden"
 
-#: parser/analyze.c:2433
+#: parser/analyze.c:2434
 #, c-format
 msgid "relation \"%s\" in FOR UPDATE/SHARE clause not found in FROM clause"
 msgstr "Relation »%s« in FOR UPDATE/SHARE nicht in der FROM-Klausel gefunden"
 
-#: parser/parse_agg.c:131 parser/parse_oper.c:255
+#: parser/parse_agg.c:131 parser/parse_oper.c:219
 #, c-format
 msgid "could not identify an ordering operator for type %s"
 msgstr "konnte keine Sortieroperator für Typ %s ermitteln"
@@ -10986,72 +10987,72 @@ msgstr ""
 "Sortieroperatoren müssen die Mitglieder »<« oder »>« einer »btree«-"
 "Operatorfamilie sein."
 
-#: parser/parse_coerce.c:875 parser/parse_coerce.c:905
-#: parser/parse_coerce.c:923 parser/parse_coerce.c:938
+#: parser/parse_coerce.c:906 parser/parse_coerce.c:936
+#: parser/parse_coerce.c:954 parser/parse_coerce.c:969
 #: parser/parse_expr.c:1667 parser/parse_expr.c:2109 parser/parse_target.c:829
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "kann Typ %s nicht in Typ %s umwandeln"
 
-#: parser/parse_coerce.c:908
+#: parser/parse_coerce.c:939
 msgid "Input has too few columns."
 msgstr "Eingabe hat zu wenige Spalten."
 
-#: parser/parse_coerce.c:926
+#: parser/parse_coerce.c:957
 #, c-format
 msgid "Cannot cast type %s to %s in column %d."
 msgstr "Kann in Spalte %3$d Typ %1$s nicht in Typ %2$s umwandeln."
 
-#: parser/parse_coerce.c:941
+#: parser/parse_coerce.c:972
 msgid "Input has too many columns."
 msgstr "Eingabe hat zu viele Spalten."
 
 #. translator: first %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:984
+#: parser/parse_coerce.c:1015
 #, c-format
 msgid "argument of %s must be type boolean, not type %s"
 msgstr "Argument von %s muss Typ boolean haben, nicht Typ %s"
 
 #. translator: %s is name of a SQL construct, eg WHERE
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:994 parser/parse_coerce.c:1043
+#: parser/parse_coerce.c:1025 parser/parse_coerce.c:1074
 #, c-format
 msgid "argument of %s must not return a set"
 msgstr "Argument von %s darf keine Ergebnismenge zurückgeben"
 
 #. translator: first %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:1031
+#: parser/parse_coerce.c:1062
 #, c-format
 msgid "argument of %s must be type %s, not type %s"
 msgstr "Argument von %s muss Typ %s haben, nicht Typ %s"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1164
+#: parser/parse_coerce.c:1195
 #, c-format
 msgid "%s types %s and %s cannot be matched"
 msgstr "%s-Typen %s und %s passen nicht zusammen"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1231
+#: parser/parse_coerce.c:1262
 #, c-format
 msgid "%s could not convert type %s to %s"
 msgstr "%s konnte Typ %s nicht in %s umwandeln"
 
-#: parser/parse_coerce.c:1472
+#: parser/parse_coerce.c:1513
 msgid "arguments declared \"anyelement\" are not all alike"
 msgstr "als »anyelement« deklariert Argumente sind nicht alle gleich"
 
-#: parser/parse_coerce.c:1491
+#: parser/parse_coerce.c:1533
 msgid "arguments declared \"anyarray\" are not all alike"
 msgstr "als »anyarray« deklarierte Argumente sind nicht alle gleich"
 
-#: parser/parse_coerce.c:1520 parser/parse_coerce.c:1664
-#: parser/parse_coerce.c:1695
+#: parser/parse_coerce.c:1562 parser/parse_coerce.c:1710
+#: parser/parse_coerce.c:1742
 #, c-format
 msgid "argument declared \"anyarray\" is not an array but type %s"
 msgstr "als »anyarray« deklariertes Argument ist kein Array sondern Typ %s"
 
-#: parser/parse_coerce.c:1536
+#: parser/parse_coerce.c:1578
 msgid ""
 "argument declared \"anyarray\" is not consistent with argument declared "
 "\"anyelement\""
@@ -11059,17 +11060,17 @@ msgstr ""
 "als »anyarray« deklariertes Argument ist nicht mit als »anyelement« "
 "deklariertem Argument konsistent"
 
-#: parser/parse_coerce.c:1554
+#: parser/parse_coerce.c:1596
 msgid "could not determine polymorphic type because input has type \"unknown\""
 msgstr ""
 "konnte polymorphischen Typ nicht bestimmen, weil Eingabe Typ »unknown« hat"
 
-#: parser/parse_coerce.c:1564
+#: parser/parse_coerce.c:1606
 #, c-format
 msgid "type matched to anynonarray is an array type: %s"
 msgstr "mit »anynonarray« gepaarter Typ ist ein Array-Typ: %s"
 
-#: parser/parse_coerce.c:1574
+#: parser/parse_coerce.c:1616
 #, c-format
 msgid "type matched to anyenum is not an enum type: %s"
 msgstr "mit »anyenum« gepaarter Typ ist kein Enum-Typ: %s"
@@ -11140,17 +11141,19 @@ msgstr ""
 "Typ um."
 
 #: parser/parse_cte.c:331
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "recursive query \"%s\" column %d has collation \"%s\" in non-recursive term "
 "but collation \"%s\" overall"
 msgstr ""
-"Spalte %2$d in rekursiver Anfrage »%1$s« hat Typ %3$s im nicht-rekursiven "
-"Teilausdruck aber Typ %4$s insgesamt"
+"Spalte %2$d in rekursiver Anfrage »%1$s« hat Sortierfolge %3$s im nicht-"
+"rekursiven Teilausdruck aber Sortierfolge %4$s insgesamt"
 
 #: parser/parse_cte.c:335
 msgid "Use the COLLATE clause to set the collation of the non-recursive term."
 msgstr ""
+"Verwenden Sie die COLLATE-Klausel, um die Sortierfolge des nicht-rekursiven "
+"Teilsausdrucks zu setzen."
 
 #: parser/parse_cte.c:426
 #, c-format
@@ -11297,30 +11300,29 @@ msgstr "XML-Attributname »%s« einscheint mehrmals"
 msgid "cannot cast XMLSERIALIZE result to %s"
 msgstr "kann das Ergebnis von XMLSERIALIZE nicht in Typ %s umwandeln"
 
-#: parser/parse_expr.c:2183 parser/parse_expr.c:2382
+#: parser/parse_expr.c:2182 parser/parse_expr.c:2382
 msgid "unequal number of entries in row expressions"
 msgstr "ungleiche Anzahl Einträge in Zeilenausdrücken"
 
-#: parser/parse_expr.c:2193
+#: parser/parse_expr.c:2192
 msgid "cannot compare rows of zero length"
 msgstr "kann Zeilen mit Länge null nicht vergleichen"
 
-#: parser/parse_expr.c:2218
+#: parser/parse_expr.c:2217
 #, c-format
 msgid "row comparison operator must yield type boolean, not type %s"
 msgstr "Zeilenvergleichsoperator muss Typ boolean zurückgeben, nicht Typ %s"
 
-#: parser/parse_expr.c:2225
+#: parser/parse_expr.c:2224
 msgid "row comparison operator must not return a set"
 msgstr "Zeilenvergleichsoperator darf keine Ergebnismenge zurückgeben"
 
-#: parser/parse_expr.c:2284 parser/parse_expr.c:2328
+#: parser/parse_expr.c:2283 parser/parse_expr.c:2328
 #, c-format
 msgid "could not determine interpretation of row comparison operator %s"
-msgstr ""
-"konnte Interpretation des Zeilenvergleichsoperators %s nicht bestimmten"
+msgstr "konnte Interpretation des Zeilenvergleichsoperators %s nicht bestimmen"
 
-#: parser/parse_expr.c:2286
+#: parser/parse_expr.c:2285
 msgid ""
 "Row comparison operators must be associated with btree operator families."
 msgstr ""
@@ -11466,35 +11468,35 @@ msgstr "Arrayindex muss Typ integer haben"
 msgid "array assignment requires type %s but expression is of type %s"
 msgstr "Arrayzuweisung erfordert Typ %s, aber Ausdruck hat Typ %s"
 
-#: parser/parse_oper.c:124 parser/parse_oper.c:754 utils/adt/regproc.c:464
+#: parser/parse_oper.c:124 parser/parse_oper.c:718 utils/adt/regproc.c:464
 #: utils/adt/regproc.c:484 utils/adt/regproc.c:643
 #, c-format
 msgid "operator does not exist: %s"
 msgstr "Operator existiert nicht: %s"
 
-#: parser/parse_oper.c:257
+#: parser/parse_oper.c:221
 msgid "Use an explicit ordering operator or modify the query."
 msgstr ""
 "Verwenden Sie einen ausdrücklichen Sortieroperator oder ändern Sie die "
 "Anfrage."
 
-#: parser/parse_oper.c:261 utils/adt/arrayfuncs.c:3176
-#: utils/adt/arrayfuncs.c:3689 utils/adt/rowtypes.c:1157
+#: parser/parse_oper.c:225 utils/adt/arrayfuncs.c:3176
+#: utils/adt/arrayfuncs.c:3695 utils/adt/rowtypes.c:1157
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "konnte keinen Ist-Gleich-Operator für Typ %s ermitteln"
 
-#: parser/parse_oper.c:512
+#: parser/parse_oper.c:476
 #, c-format
 msgid "operator requires run-time type coercion: %s"
 msgstr "Operator erfordert Typumwandlung zur Laufzeit: %s"
 
-#: parser/parse_oper.c:746
+#: parser/parse_oper.c:710
 #, c-format
 msgid "operator is not unique: %s"
 msgstr "Operator ist nicht eindeutig: %s"
 
-#: parser/parse_oper.c:748
+#: parser/parse_oper.c:712
 msgid ""
 "Could not choose a best candidate operator. You might need to add explicit "
 "type casts."
@@ -11502,7 +11504,7 @@ msgstr ""
 "Konnte keinen besten Kandidatoperator auswählen. Sie müssen möglicherweise "
 "ausdrückliche Typumwandlungen hinzufügen."
 
-#: parser/parse_oper.c:756
+#: parser/parse_oper.c:720
 msgid ""
 "No operator matches the given name and argument type(s). You might need to "
 "add explicit type casts."
@@ -11510,20 +11512,20 @@ msgstr ""
 "Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen "
 "überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen."
 
-#: parser/parse_oper.c:815 parser/parse_oper.c:929
+#: parser/parse_oper.c:779 parser/parse_oper.c:893
 #, c-format
 msgid "operator is only a shell: %s"
 msgstr "Operator ist nur eine Hülle: %s"
 
-#: parser/parse_oper.c:917
+#: parser/parse_oper.c:881
 msgid "op ANY/ALL (array) requires array on right side"
 msgstr "op ANY/ALL (array) erfordert Array auf der rechten Seite"
 
-#: parser/parse_oper.c:959
+#: parser/parse_oper.c:923
 msgid "op ANY/ALL (array) requires operator to yield boolean"
 msgstr "op ANY/ALL (array) erfordert, dass Operator boolean ergibt"
 
-#: parser/parse_oper.c:964
+#: parser/parse_oper.c:928
 msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr ""
 "op ANY/ALL (array) erfordert, dass Operator keine Ergebnismenge zurückgibt"
@@ -11705,7 +11707,7 @@ msgstr "falscher %%TYPE-Verweis (zu viele Namensteile): %s"
 msgid "type reference %s converted to %s"
 msgstr "Typverweis %s in %s umgewandelt"
 
-#: parser/parse_type.c:202 utils/cache/typcache.c:176
+#: parser/parse_type.c:202 utils/cache/typcache.c:195
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "Typ »%s« ist nur eine Hülle"
@@ -11724,138 +11726,134 @@ msgstr "Typmodifikatoren müssen einfache Konstanten oder Bezeichner sein"
 msgid "invalid type name \"%s\""
 msgstr "ungültiger Typname: »%s«"
 
-#: parser/parse_utilcmd.c:180
+#: parser/parse_utilcmd.c:181
 #, c-format
 msgid "relation \"%s\" already exists, skipping"
 msgstr "Relation »%s« existiert bereits, wird übersprungen"
 
-#: parser/parse_utilcmd.c:333
+#: parser/parse_utilcmd.c:334
 msgid "array of serial is not implemented"
 msgstr "Array aus Typ serial ist nicht implementiert"
 
-#: parser/parse_utilcmd.c:378
+#: parser/parse_utilcmd.c:382
 #, c-format
 msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
 msgstr "%s erstellt implizit eine Sequenz »%s« für die »serial«-Spalte »%s.%s«"
 
-#: parser/parse_utilcmd.c:479 parser/parse_utilcmd.c:491
+#: parser/parse_utilcmd.c:483 parser/parse_utilcmd.c:495
 #, c-format
 msgid ""
 "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
 msgstr ""
 "widersprüchliche NULL/NOT NULL-Deklarationen für Spalte »%s« von Tabelle »%s«"
 
-#: parser/parse_utilcmd.c:503
+#: parser/parse_utilcmd.c:507
 #, c-format
 msgid "multiple default values specified for column \"%s\" of table \"%s\""
 msgstr "mehrere Vorgabewerte angegeben für Spalte »%s« von Tabelle »%s«"
 
-#: parser/parse_utilcmd.c:1438
+#: parser/parse_utilcmd.c:1440
 msgid "cannot use an existing index in CREATE TABLE"
 msgstr "bestehender Index kann nicht in CREATE TABLE verwendet werden"
 
-#: parser/parse_utilcmd.c:1458
+#: parser/parse_utilcmd.c:1460
 #, c-format
 msgid "index \"%s\" is already associated with a constraint"
-msgstr ""
+msgstr "Index »%s« gehört bereits zu einem Constraint"
 
-#: parser/parse_utilcmd.c:1466
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1468
+#, c-format
 msgid "index \"%s\" does not belong to table \"%s\""
-msgstr "Index »%s« existiert nicht"
+msgstr "Index »%s« gehört nicht zu Tabelle »%s«"
 
-#: parser/parse_utilcmd.c:1473
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1475
+#, c-format
 msgid "index \"%s\" is not valid"
-msgstr "Index »%s« ist kein Hash-Index"
+msgstr "Index »%s« ist nicht gültig"
 
-#: parser/parse_utilcmd.c:1479
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1481
+#, c-format
 msgid "index \"%s\" is not ready"
-msgstr "Index »%s« ist kein B-Tree"
+msgstr "Index »%s« ist nicht bereit"
 
-#: parser/parse_utilcmd.c:1485
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1487
+#, c-format
 msgid "\"%s\" is not a unique index"
-msgstr "»%s« ist kein Index"
+msgstr "»%s« ist kein Unique Index"
 
-#: parser/parse_utilcmd.c:1486 parser/parse_utilcmd.c:1493
-#: parser/parse_utilcmd.c:1500 parser/parse_utilcmd.c:1570
-msgid "Cannot create a PRIMARY KEY or UNIQUE constraint using such an index."
+#: parser/parse_utilcmd.c:1488 parser/parse_utilcmd.c:1495
+#: parser/parse_utilcmd.c:1502 parser/parse_utilcmd.c:1572
+msgid "Cannot create a primary key or unique constraint using such an index."
 msgstr ""
+"Ein Primärschlüssel oder Unique-Constraint kann nicht mit einem solchen "
+"Index erzeugt werden."
 
-#: parser/parse_utilcmd.c:1492
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1494
+#, c-format
 msgid "index \"%s\" contains expressions"
-msgstr "Index »%s« hat falsche Hash-Version"
+msgstr "Index »%s« enthält Ausdrücke"
 
-#: parser/parse_utilcmd.c:1499
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1501
+#, c-format
 msgid "\"%s\" is a partial index"
-msgstr "»%s« ist ein Index"
+msgstr "»%s« ist ein partieller Index"
 
-#: parser/parse_utilcmd.c:1511
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1513
+#, c-format
 msgid "\"%s\" is a deferrable index"
-msgstr "»%s« ist keine Tabelle und kein Index"
+msgstr "»%s« ist ein aufschiebbarer Index"
 
-#: parser/parse_utilcmd.c:1512
-#, fuzzy
+#: parser/parse_utilcmd.c:1514
 msgid "Cannot create a non-deferrable constraint using a deferrable index."
 msgstr ""
-"aufschiebbarer Unique-Constraint kann nicht für Tabelle »%s«, auf die "
-"verwiesen wird, verwendet werden"
-
-#: parser/parse_utilcmd.c:1525
-#, fuzzy, c-format
-msgid "index \"%s\" is not a b-tree"
-msgstr "Index »%s« ist kein B-Tree"
+"Ein nicht aufschiebbarer Constraint kann nicht mit einem aufschiebbaren "
+"Index erzeugt werden."
 
-#: parser/parse_utilcmd.c:1569
-#, fuzzy, c-format
+#: parser/parse_utilcmd.c:1571
+#, c-format
 msgid "index \"%s\" does not have default sorting behavior"
-msgstr "Index »%s« existiert nicht, wird übersprungen"
+msgstr "Index »%s« hat nicht das Standardsortierverhalten"
 
-#: parser/parse_utilcmd.c:1714
+#: parser/parse_utilcmd.c:1716
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "Spalte »%s« erscheint zweimal im Primärschlüssel-Constraint"
 
-#: parser/parse_utilcmd.c:1720
+#: parser/parse_utilcmd.c:1722
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
-msgstr "Spalte »%s« erscheint zweimal im Unique Constraint"
+msgstr "Spalte »%s« erscheint zweimal im Unique-Constraint"
 
-#: parser/parse_utilcmd.c:1884
+#: parser/parse_utilcmd.c:1887
 msgid "index expression cannot return a set"
 msgstr "Indexausdruck kann keine Ergebnismenge zurückgeben"
 
-#: parser/parse_utilcmd.c:1894
+#: parser/parse_utilcmd.c:1897
 msgid ""
 "index expressions and predicates can refer only to the table being indexed"
 msgstr ""
 "Indexausdrücke und -prädikate können nur auf die zu indizierende Tabelle "
 "verweisen"
 
-#: parser/parse_utilcmd.c:1991
+#: parser/parse_utilcmd.c:1994
 msgid "rule WHERE condition cannot contain references to other relations"
 msgstr ""
 "WHERE-Bedingung einer Regel kann keine Verweise auf andere Relationen "
 "enthalten"
 
-#: parser/parse_utilcmd.c:1997
+#: parser/parse_utilcmd.c:2000
 msgid "cannot use aggregate function in rule WHERE condition"
 msgstr ""
 "Aggregatfunktionen können nicht in der WHERE-Bedingung einer Regel verwendet "
 "werden"
 
-#: parser/parse_utilcmd.c:2001
+#: parser/parse_utilcmd.c:2004
 msgid "cannot use window function in rule WHERE condition"
 msgstr ""
 "Fensterfunktionen können nicht in der WHERE-Bedingung einer Regel verwendet "
 "werden"
 
-#: parser/parse_utilcmd.c:2073
+#: parser/parse_utilcmd.c:2076
 msgid ""
 "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE "
 "actions"
@@ -11863,66 +11861,65 @@ msgstr ""
 "Regeln mit WHERE-Bedingungen können als Aktion nur SELECT, INSERT, UPDATE "
 "oder DELETE haben"
 
-#: parser/parse_utilcmd.c:2091 parser/parse_utilcmd.c:2190
+#: parser/parse_utilcmd.c:2094 parser/parse_utilcmd.c:2193
 #: rewrite/rewriteHandler.c:442 rewrite/rewriteManip.c:1024
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr "UNION/INTERSECTION/EXCEPT mit Bedingung sind nicht implementiert"
 
-#: parser/parse_utilcmd.c:2109
+#: parser/parse_utilcmd.c:2112
 msgid "ON SELECT rule cannot use OLD"
 msgstr "ON-SELECT-Regel kann nicht OLD verwenden"
 
-#: parser/parse_utilcmd.c:2113
+#: parser/parse_utilcmd.c:2116
 msgid "ON SELECT rule cannot use NEW"
 msgstr "ON-SELECT-Regel kann nicht NEW verwenden"
 
-#: parser/parse_utilcmd.c:2122
+#: parser/parse_utilcmd.c:2125
 msgid "ON INSERT rule cannot use OLD"
 msgstr "ON-INSERT-Regel kann nicht OLD verwenden"
 
-#: parser/parse_utilcmd.c:2128
+#: parser/parse_utilcmd.c:2131
 msgid "ON DELETE rule cannot use NEW"
 msgstr "ON-DELETE-Regel kann nicht NEW verwenden"
 
-#: parser/parse_utilcmd.c:2156
+#: parser/parse_utilcmd.c:2159
 msgid "cannot refer to OLD within WITH query"
-msgstr ""
+msgstr "in WITH-Anfrage kann nicht auf OLD verweisen werden"
 
-#: parser/parse_utilcmd.c:2163
+#: parser/parse_utilcmd.c:2166
 msgid "cannot refer to NEW within WITH query"
-msgstr ""
+msgstr "in WITH-Anfrage kann nicht auf NEW verwiesen werden"
 
-#: parser/parse_utilcmd.c:2446
+#: parser/parse_utilcmd.c:2449
 msgid "misplaced DEFERRABLE clause"
 msgstr "falsch platzierte DEFERRABLE-Klausel"
 
-#: parser/parse_utilcmd.c:2451 parser/parse_utilcmd.c:2466
+#: parser/parse_utilcmd.c:2454 parser/parse_utilcmd.c:2469
 msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
 msgstr "mehrere DEFERRABLE/NOT DEFERRABLE-Klauseln sind nicht erlaubt"
 
-#: parser/parse_utilcmd.c:2461
+#: parser/parse_utilcmd.c:2464
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "falsch platzierte NOT DEFERRABLE-Klausel"
 
-#: parser/parse_utilcmd.c:2474 parser/parse_utilcmd.c:2500 gram.y:4145
-#: gram.y:4161
+#: parser/parse_utilcmd.c:2477 parser/parse_utilcmd.c:2503 gram.y:4153
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr ""
 "Constraint, der als INITIALLY DEFERRED deklariert wurde, muss DEFERRABLE sein"
 
-#: parser/parse_utilcmd.c:2482
+#: parser/parse_utilcmd.c:2485
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "falsch platzierte INITIALLY DEFERRED-Klausel"
 
-#: parser/parse_utilcmd.c:2487 parser/parse_utilcmd.c:2513
+#: parser/parse_utilcmd.c:2490 parser/parse_utilcmd.c:2516
 msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
 msgstr "mehrere INITIALLY IMMEDIATE/DEFERRED-Klauseln sind nicht erlaubt"
 
-#: parser/parse_utilcmd.c:2508
+#: parser/parse_utilcmd.c:2511
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "falsch platzierte INITIALLY IMMEDIATE-Klausel"
 
-#: parser/parse_utilcmd.c:2699
+#: parser/parse_utilcmd.c:2702
 #, c-format
 msgid ""
 "CREATE specifies a schema (%s) different from the one being created (%s)"
@@ -11935,28 +11932,42 @@ msgstr ""
 msgid "identifier \"%s\" will be truncated to \"%s\""
 msgstr "Bezeichner »%s« wird auf »%s« gekürzt"
 
-#: gram.y:906
-#, fuzzy, c-format
+#: parser/parse_collate.c:214 parser/parse_collate.c:538
+#, c-format
+msgid "collation mismatch between implicit collations \"%s\" and \"%s\""
+msgstr "implizite Sortierfolgen »%s« und »%s« stimmen nicht überein"
+
+#: parser/parse_collate.c:217 parser/parse_collate.c:541
+msgid ""
+"You can choose the collation by applying the COLLATE clause to one or both "
+"expressions."
+msgstr ""
+"Sie können die Sortierfolge auswählen, indem Sie die COLLATE-Klausel auf "
+"einen oder beide Ausdrücke anwenden."
+
+#: parser/parse_collate.c:763
+#, c-format
+msgid "collation mismatch between explicit collations \"%s\" and \"%s\""
+msgstr "explizite Sortierfolgen »%s« und »%s« stimmen nicht überein"
+
+#: gram.y:915
+#, c-format
 msgid "unrecognized role option \"%s\""
-msgstr "unbekannte EXPLAIN-Option »%s«"
+msgstr "unbekannte Rollenoption »%s«"
 
-#: gram.y:1292
+#: gram.y:1301
 msgid "current database cannot be changed"
 msgstr "aktuelle Datenbank kann nicht geändert werden"
 
-#: gram.y:1410 gram.y:1425
+#: gram.y:1419 gram.y:1434
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "Zeitzonenintervall muss HOUR oder HOUR TO MINUTE sein"
 
-#: gram.y:1430 gram.y:9250 gram.y:11740
+#: gram.y:1439 gram.y:9246 gram.y:11736
 msgid "interval precision specified twice"
 msgstr "Intervallpräzision doppelt angegeben"
 
-#: gram.y:2752
-msgid "CHECK constraints cannot be deferred"
-msgstr "CHECK-Constraints sind nicht aufschiebbar"
-
-#: gram.y:2888 utils/adt/ri_triggers.c:375 utils/adt/ri_triggers.c:435
+#: gram.y:2887 utils/adt/ri_triggers.c:375 utils/adt/ri_triggers.c:435
 #: utils/adt/ri_triggers.c:598 utils/adt/ri_triggers.c:838
 #: utils/adt/ri_triggers.c:1026 utils/adt/ri_triggers.c:1188
 #: utils/adt/ri_triggers.c:1376 utils/adt/ri_triggers.c:1547
@@ -11967,7 +11978,7 @@ msgstr "CHECK-Constraints sind nicht aufschiebbar"
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL ist noch nicht implementiert"
 
-#: gram.y:3006
+#: gram.y:3005
 msgid "CREATE TABLE AS cannot specify INTO"
 msgstr "CREATE TABLE AS kann INTO nicht verwenden"
 
@@ -11975,154 +11986,169 @@ msgstr "CREATE TABLE AS kann INTO nicht verwenden"
 msgid "duplicate trigger events specified"
 msgstr "mehrere Trigger-Ereignisse angegeben"
 
-#: gram.y:4225
+#: gram.y:4160
+msgid "conflicting constraint properties"
+msgstr "widersprüchliche Constraint-Eigentschaften"
+
+#: gram.y:4221
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION ist noch nicht implementiert"
 
-#: gram.y:4241
+#: gram.y:4237
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION ist noch nicht implementiert"
 
-#: gram.y:4577
+#: gram.y:4573
 msgid "RECHECK is no longer required"
 msgstr "RECHECK wird nicht mehr benötigt"
 
-#: gram.y:4578
+#: gram.y:4574
 msgid "Update your data type."
 msgstr "Aktualisieren Sie Ihren Datentyp."
 
-#: gram.y:6221 utils/adt/regproc.c:630
+#: gram.y:6217 utils/adt/regproc.c:630
 msgid "missing argument"
 msgstr "Argument fehlt"
 
-#: gram.y:6222 utils/adt/regproc.c:631
+#: gram.y:6218 utils/adt/regproc.c:631
 msgid "Use NONE to denote the missing argument of a unary operator."
 msgstr ""
 "Verwenden Sie NONE, um das fehlende Argument eines unären Operators "
 "anzugeben."
 
-#: gram.y:7301 gram.y:7307 gram.y:7313
+#: gram.y:7297 gram.y:7303 gram.y:7309
 msgid "WITH CHECK OPTION is not implemented"
 msgstr "WITH CHECK OPTION ist nicht implementiert"
 
-#: gram.y:7990
+#: gram.y:7986
 msgid "column name list not allowed in CREATE TABLE / AS EXECUTE"
 msgstr "Spaltennamenliste nicht erlaubt in CREATE TABLE / EXECUTE"
 
-#: gram.y:8214
+#: gram.y:8210
 msgid "number of columns does not match number of values"
 msgstr "Anzahl der Spalten stimmt nicht mit der Anzahl der Werte überein"
 
-#: gram.y:8664
+#: gram.y:8660
 msgid "LIMIT #,# syntax is not supported"
 msgstr "Syntax LIMIT x,y wird nicht unterstützt"
 
-#: gram.y:8665
+#: gram.y:8661
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Verwenden Sie die getrennten Klauseln LIMIT und OFFSET."
 
-#: gram.y:8883
+#: gram.y:8879
 msgid "VALUES in FROM must have an alias"
 msgstr "VALUES in FROM muss Aliasnamen erhalten"
 
-#: gram.y:8884
+#: gram.y:8880
 msgid "For example, FROM (VALUES ...) [AS] foo."
 msgstr "Zum Beispiel FROM (VALUES ...) [AS] xyz."
 
-#: gram.y:8889
+#: gram.y:8885
 msgid "subquery in FROM must have an alias"
 msgstr "Unteranfrage in FROM muss Aliasnamen erhalten"
 
-#: gram.y:8890
+#: gram.y:8886
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Zum Beispiel FROM (SELECT ...) [AS] xyz."
 
-#: gram.y:9376
+#: gram.y:9372
 msgid "precision for type float must be at least 1 bit"
 msgstr "Präzision von Typ float muss mindestens 1 Bit sein"
 
-#: gram.y:9385
+#: gram.y:9381
 msgid "precision for type float must be less than 54 bits"
 msgstr "Präzision von Typ float muss weniger als 54 Bits sein"
 
-#: gram.y:10099
+#: gram.y:10095
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "UNIQUE-Prädikat ist noch nicht implementiert"
 
-#: gram.y:11007
+#: gram.y:11003
 msgid "RANGE PRECEDING is only supported with UNBOUNDED"
 msgstr "RANGE PRECEDING wird nur mit UNBOUNDED unterstützt"
 
-#: gram.y:11013
+#: gram.y:11009
 msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
 msgstr "RANGE FOLLOWING wird nur mit UNBOUNDED unterstützt"
 
-#: gram.y:11040 gram.y:11063
+#: gram.y:11036 gram.y:11059
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "Frame-Beginn kann nicht UNBOUNDED FOLLOWING sein"
 
-#: gram.y:11045
+#: gram.y:11041
 msgid "frame starting from following row cannot end with current row"
 msgstr ""
 "Frame der in der folgenden Zeile beginnt kann nicht in der aktuellen Zeile "
 "enden"
 
-#: gram.y:11068
+#: gram.y:11064
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "Frame-Ende kann nicht UNBOUNDED PRECEDING sein"
 
-#: gram.y:11074
+#: gram.y:11070
 msgid "frame starting from current row cannot have preceding rows"
 msgstr ""
 "Frame der in der aktuellen Zeile beginnt kann keine vorhergehenden Zeilen "
 "haben"
 
-#: gram.y:11081
+#: gram.y:11077
 msgid "frame starting from following row cannot have preceding rows"
 msgstr ""
 "Frame der in der folgenden Zeile beginnt kann keine vorhergehenden Zeilen "
 "haben"
 
-#: gram.y:11715
+#: gram.y:11711
 msgid "type modifier cannot have parameter name"
 msgstr "Typmodifikator kann keinen Parameternamen haben"
 
-#: gram.y:12310 gram.y:12518
+#: gram.y:12306 gram.y:12514
 msgid "improper use of \"*\""
 msgstr "unzulässige Verwendung von »*«"
 
-#: gram.y:12449
+#: gram.y:12445
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf linker Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:12456
+#: gram.y:12452
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf rechter Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:12581
+#: gram.y:12577
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "mehrere ORDER-BY-Klauseln sind nicht erlaubt"
 
-#: gram.y:12592
+#: gram.y:12588
 msgid "multiple OFFSET clauses not allowed"
 msgstr "mehrere OFFSET-Klauseln sind nicht erlaubt"
 
-#: gram.y:12601
+#: gram.y:12597
 msgid "multiple LIMIT clauses not allowed"
 msgstr "mehrere LIMIT-Klauseln sind nicht erlaubt"
 
-#: gram.y:12610
+#: gram.y:12606
 msgid "multiple WITH clauses not allowed"
 msgstr "mehrere WITH-Klauseln sind nicht erlaubt"
 
-#: gram.y:12755
+#: gram.y:12751
 msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
 msgstr "OUT- und INOUT-Argumente sind in TABLE-Funktionen nicht erlaubt"
 
-#: gram.y:12856
-#, fuzzy
+#: gram.y:12852
 msgid "multiple COLLATE clauses not allowed"
-msgstr "mehrere LIMIT-Klauseln sind nicht erlaubt"
+msgstr "mehrere COLLATE-Klauseln sind nicht erlaubt"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:12890 gram.y:12903
+#, c-format
+msgid "%s constraints cannot be marked DEFERRABLE"
+msgstr "%s-Constraints können nicht als DEFERRABLE markiert werden"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:12916
+#, c-format
+msgid "%s constraints cannot be marked NOT VALID"
+msgstr "%s-Constraints können nicht als NOT VALID markiert werden"
 
 #: scan.l:411
 msgid "unterminated /* comment"
@@ -12249,9 +12275,24 @@ msgstr "nicht standardkonforme Verwendung von Escape in Zeichenkettenkonstante"
 msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
 msgstr "Verwenden Sie die Syntax für Escape-Zeichenketten, z.B. E'\\r\\n'."
 
+#: port/win32/security.c:43
+#, c-format
+msgid "could not open process token: error code %d\n"
+msgstr "konnte Prozess-Token nicht öffnen: Fehlercode %d\n"
+
+#: port/win32/security.c:63
+#, c-format
+msgid "could not get SID for Administrators group: error code %d\n"
+msgstr "konnte SID der Administrators-Gruppe nicht ermitteln: Fehlercode %d\n"
+
+#: port/win32/security.c:72
+#, c-format
+msgid "could not get SID for PowerUsers group: error code %d\n"
+msgstr "konnte SID der PowerUsers-Gruppe nicht ermitteln: Fehlercode %d\n"
+
 #: port/win32/signal.c:189
 #, c-format
-msgid "could not create signal listener pipe for pid %d: error code %d"
+msgid "could not create signal listener pipe for PID %d: error code %d"
 msgstr ""
 "konnte Listener-Pipe für Signale für PID %d nicht erzeugen: Fehlercode %d"
 
@@ -12267,96 +12308,32 @@ msgstr ""
 msgid "could not create signal dispatch thread: error code %d\n"
 msgstr "konnte Signal-Dispatch-Thread nicht erzeugen: Fehlercode %d\n"
 
-#: port/win32/security.c:43
-#, c-format
-msgid "could not open process token: error code %d\n"
-msgstr "konnte Prozess-Token nicht öffnen: Fehlercode %d\n"
-
-#: port/win32/security.c:63
-#, c-format
-msgid "could not get SID for Administrators group: error code %d\n"
-msgstr "konnte SID der Administrators-Gruppe nicht ermitteln: Fehlercode %d\n"
-
-#: port/win32/security.c:72
-#, c-format
-msgid "could not get SID for PowerUsers group: error code %d\n"
-msgstr "konnte SID der PowerUsers-Gruppe nicht ermitteln: Fehlercode %d\n"
-
 #: port/win32/crashdump.c:108
-msgid "could not load dbghelp.dll, cannot write crashdump\n"
-msgstr ""
+msgid "could not load dbghelp.dll, cannot write crash dump\n"
+msgstr "konnte dbghelp.dll nicht laden, kann Crash-Dump nicht schreiben\n"
 
 #: port/win32/crashdump.c:116
-#, fuzzy
 msgid ""
-"could not load required functions in dbghelp.dll, cannot write crashdump\n"
-msgstr "konnte den nötigen Checkpoint-Datensatz nicht finden"
+"could not load required functions in dbghelp.dll, cannot write crash dump\n"
+msgstr ""
+"konnte benötigte Funktionen in dbghelp.dll nicht laden, kann Crash-Dump "
+"nicht schreiben\n"
 
 #: port/win32/crashdump.c:147
-#, fuzzy, c-format
-msgid "could not open crash dump file %s for writing: error code %u\n"
-msgstr "konnte Datei »%s« nicht zum Schreiben öffnen: %m"
-
-#: port/win32/crashdump.c:154
-#, fuzzy, c-format
-msgid "wrote crash dump to %s\n"
-msgstr "Löschvorgang löscht ebenfalls %s"
-
-#: port/win32/crashdump.c:156
-#, fuzzy, c-format
-msgid "could not write crash dump to %s: error code %08x\n"
-msgstr "konnte Semaphore nicht erzeugen: Fehlercode %d"
-
-#: port/win32_sema.c:94
-#, c-format
-msgid "could not create semaphore: error code %d"
-msgstr "konnte Semaphore nicht erzeugen: Fehlercode %d"
-
-#: port/win32_sema.c:161
-#, c-format
-msgid "could not lock semaphore: error code %d"
-msgstr "konnte Semaphore nicht sperren: Fehlercode %d"
-
-#: port/win32_sema.c:174
-#, c-format
-msgid "could not unlock semaphore: error code %d"
-msgstr "konnte Semaphore nicht entsperren: Fehlercode %d"
-
-#: port/win32_sema.c:203
 #, c-format
-msgid "could not try-lock semaphore: error code %d"
-msgstr "konnte Semaphore nicht versuchsweise sperren: Fehlercode %d"
+msgid "could not open crash dump file \"%s\" for writing: error code %u\n"
+msgstr ""
+"konnte Crash-Dump-Datei »%s« nicht zum Schreiben öffnen: Fehlercode %u\n"
 
-#: port/win32_shmem.c:168 port/win32_shmem.c:203 port/win32_shmem.c:224
+#: port/win32/crashdump.c:154
 #, c-format
-msgid "could not create shared memory segment: %lu"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %lu"
+msgid "wrote crash dump to file \"%s\"\n"
+msgstr "Crash-Dump nach Datei »%s« geschrieben\n"
 
-#: port/win32_shmem.c:169
+#: port/win32/crashdump.c:156
 #, c-format
-msgid "Failed system call was CreateFileMapping(size=%lu, name=%s)."
-msgstr ""
-"Fehlgeschlagener Systemaufruf war CreateFileMapping(Größe=%lu, Name=%s)."
-
-#: port/win32_shmem.c:193
-msgid "pre-existing shared memory block is still in use"
-msgstr "bereits bestehender Shared-Memory-Block wird noch benutzt"
-
-#: port/win32_shmem.c:194
-msgid ""
-"Check if there are any old server processes still running, and terminate "
-"them."
-msgstr ""
-"Prüfen Sie, ob irgendwelche alten Serverprozesse noch laufen und beenden Sie "
-"diese."
-
-#: port/win32_shmem.c:204
-msgid "Failed system call was DuplicateHandle."
-msgstr "Fehlgeschlagener Systemaufruf war DuplicateHandle."
-
-#: port/win32_shmem.c:225
-msgid "Failed system call was MapViewOfFileEx."
-msgstr "Fehlgeschlagener Systemaufruf war MapViewOfFileEx."
+msgid "could not write crash dump to file \"%s\": error code %08x\n"
+msgstr "konnte Crash-Dump nicht nach Datei »%s« schreiben: Fehlercode %08x\n"
 
 #: port/sysv_sema.c:114 port/pg_sema.c:114
 #, c-format
@@ -12369,7 +12346,6 @@ msgid "Failed system call was semget(%lu, %d, 0%o)."
 msgstr "Fehlgeschlagener Systemaufruf war semget(%lu, %d, 0%o)."
 
 #: port/sysv_sema.c:119 port/pg_sema.c:119
-#, fuzzy
 msgid ""
 "This error does *not* mean that you have run out of disk space.  It occurs "
 "when either the system limit for the maximum number of semaphore sets "
@@ -12381,13 +12357,11 @@ msgid ""
 "your system for PostgreSQL."
 msgstr ""
 "Dieser Fehler bedeutet *nicht*, dass kein Platz mehr auf der Festplatte "
-"ist.\n"
-"Er tritt auf, wenn entweder die Systemhöchstgrenze für die Anzahl Semaphor-"
-"Sets (SEMMNI) oder die Systemhöchstgrenze für die Anzahl Semaphore (SEMMNS) "
-"überschritten würde.  Sie müssen den entsprechenden Kernelparameter "
+"ist.  Er tritt auf, wenn entweder die Systemhöchstgrenze für die Anzahl "
+"Semaphor-Sets (SEMMNI) oder die Systemhöchstgrenze für die Anzahl Semaphore "
+"(SEMMNS) überschritten würde.  Sie müssen den entsprechenden Kernelparameter "
 "erhöhen.  Alternativ können Sie den Semaphorverbrauch von PostgreSQL "
-"reduzieren indem Sie den Parameter »max_connections« herabsetzen (aktuell "
-"%d).\n"
+"reduzieren indem Sie den Parameter »max_connections« herabsetzen.\n"
 "Die PostgreSQL-Dokumentation enthält weitere Informationen, wie Sie Ihr "
 "System für PostgreSQL konfigurieren können."
 
@@ -12460,7 +12434,7 @@ msgstr ""
 "Konfiguration von Shared Memory."
 
 #: port/sysv_shmem.c:176 port/pg_shmem.c:176
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space.  It occurs "
 "either if all available shared memory IDs have been taken, in which case you "
@@ -12477,9 +12451,8 @@ msgstr ""
 "aufgebraucht sind, dann müssen den Kernelparameter SHMMNI erhöhen, oder weil "
 "die Systemhöchstgrenze für Shared Memory insgesamt erreicht wurde.  Wenn Sie "
 "die Höchstgrenze für Shared Memory nicht erhöhen können, verkleinern Sie das "
-"von PostgreSQL benötigte Shared Memory (aktuell %lu Bytes), indem Sie den "
-"PostgreSQL-Parameter »shared_buffers« (aktuell %d) und/oder "
-"»max_connections« (aktuell %d) reduzieren.\n"
+"von PostgreSQL benötigte Shared Memory (aktuell %lu Bytes), beispielsweise "
+"indem Sie »shared_buffers« oder »max_connections« reduzieren.\n"
 "Die PostgreSQL-Dokumentation enthält weitere Informationen über die "
 "Konfiguration von Shared Memory."
 
@@ -12488,12 +12461,63 @@ msgstr ""
 msgid "could not stat data directory \"%s\": %m"
 msgstr "konnte »stat« für Datenverzeichnis »%s« nicht ausführen: %m"
 
-#: port/unix_latch.c:269 port/pg_latch.c:269
+#: port/unix_latch.c:237 port/pg_latch.c:237
 #: replication/libpqwalreceiver/libpqwalreceiver.c:233
 #, c-format
 msgid "select() failed: %m"
 msgstr "select() fehlgeschlagen: %m"
 
+#: port/win32_sema.c:94
+#, c-format
+msgid "could not create semaphore: error code %d"
+msgstr "konnte Semaphore nicht erzeugen: Fehlercode %d"
+
+#: port/win32_sema.c:161
+#, c-format
+msgid "could not lock semaphore: error code %d"
+msgstr "konnte Semaphore nicht sperren: Fehlercode %d"
+
+#: port/win32_sema.c:174
+#, c-format
+msgid "could not unlock semaphore: error code %d"
+msgstr "konnte Semaphore nicht entsperren: Fehlercode %d"
+
+#: port/win32_sema.c:203
+#, c-format
+msgid "could not try-lock semaphore: error code %d"
+msgstr "konnte Semaphore nicht versuchsweise sperren: Fehlercode %d"
+
+#: port/win32_shmem.c:168 port/win32_shmem.c:203 port/win32_shmem.c:224
+#, c-format
+msgid "could not create shared memory segment: %lu"
+msgstr "konnte Shared-Memory-Segment nicht erzeugen: %lu"
+
+#: port/win32_shmem.c:169
+#, c-format
+msgid "Failed system call was CreateFileMapping(size=%lu, name=%s)."
+msgstr ""
+"Fehlgeschlagener Systemaufruf war CreateFileMapping(Größe=%lu, Name=%s)."
+
+#: port/win32_shmem.c:193
+msgid "pre-existing shared memory block is still in use"
+msgstr "bereits bestehender Shared-Memory-Block wird noch benutzt"
+
+#: port/win32_shmem.c:194
+msgid ""
+"Check if there are any old server processes still running, and terminate "
+"them."
+msgstr ""
+"Prüfen Sie, ob irgendwelche alten Serverprozesse noch laufen und beenden Sie "
+"diese."
+
+#: port/win32_shmem.c:204
+msgid "Failed system call was DuplicateHandle."
+msgstr "Fehlgeschlagener Systemaufruf war DuplicateHandle."
+
+#: port/win32_shmem.c:225
+msgid "Failed system call was MapViewOfFileEx."
+msgstr "Fehlgeschlagener Systemaufruf war MapViewOfFileEx."
+
 #: postmaster/autovacuum.c:359
 #, c-format
 msgid "could not fork autovacuum launcher process: %m"
@@ -12576,7 +12600,7 @@ msgstr "Einzelheiten finden Sie in den letzten Meldungen im Serverlog."
 #: postmaster/bgwriter.c:1223
 #, c-format
 msgid "compacted fsync request queue from %d entries to %d entries"
-msgstr ""
+msgstr "fsync-Anfrageschlange von %d Einträgen auf %d Einträge zusammengefasst"
 
 #: postmaster/pgarch.c:158
 #, c-format
@@ -12677,7 +12701,7 @@ msgid "could not send test message on socket for statistics collector: %m"
 msgstr ""
 "konnte Testnachricht auf Socket für Statistiksammelprozess nicht senden: %m"
 
-#: postmaster/pgstat.c:448 postmaster/pgstat.c:2999
+#: postmaster/pgstat.c:448 postmaster/pgstat.c:2996
 #, c-format
 msgid "select() failed in statistics collector: %m"
 msgstr "select() im Statistiksammelprozess fehlgeschlagen: %m"
@@ -12719,59 +12743,59 @@ msgstr "konnte Statistiksammelprozess nicht starten (fork-Fehler): %m"
 msgid "must be superuser to reset statistics counters"
 msgstr "nur Superuser können Statistikzähler zurücksetzen"
 
-#: postmaster/pgstat.c:1184
+#: postmaster/pgstat.c:1184 utils/adt/pgstatfuncs.c:1547
 #, c-format
 msgid "unrecognized reset target: \"%s\""
 msgstr "unbekanntes Reset-Ziel: »%s«"
 
-#: postmaster/pgstat.c:1185
+#: postmaster/pgstat.c:1185 utils/adt/pgstatfuncs.c:1548
 msgid "Target must be \"bgwriter\"."
 msgstr "Das Reset-Ziel muss »bgwriter« sein."
 
-#: postmaster/pgstat.c:2978
+#: postmaster/pgstat.c:2975
 #, c-format
 msgid "poll() failed in statistics collector: %m"
 msgstr "poll() im Statistiksammelprozess fehlgeschlagen: %m"
 
-#: postmaster/pgstat.c:3023
+#: postmaster/pgstat.c:3020
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "konnte Statistiknachricht nicht lesen: %m"
 
-#: postmaster/pgstat.c:3294
+#: postmaster/pgstat.c:3291
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht öffnen: %m"
 
-#: postmaster/pgstat.c:3366
+#: postmaster/pgstat.c:3363
 #, c-format
 msgid "could not write temporary statistics file \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht schreiben: %m"
 
-#: postmaster/pgstat.c:3375
+#: postmaster/pgstat.c:3372
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht schließen: %m"
 
-#: postmaster/pgstat.c:3383
+#: postmaster/pgstat.c:3380
 #, c-format
 msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht in »%s« umbenennen: %m"
 
-#: postmaster/pgstat.c:3489 postmaster/pgstat.c:3718
+#: postmaster/pgstat.c:3486 postmaster/pgstat.c:3715
 #, c-format
 msgid "could not open statistics file \"%s\": %m"
 msgstr "konnte Statistikdatei »%s« nicht öffnen: %m"
 
-#: postmaster/pgstat.c:3501 postmaster/pgstat.c:3511 postmaster/pgstat.c:3533
-#: postmaster/pgstat.c:3548 postmaster/pgstat.c:3611 postmaster/pgstat.c:3629
-#: postmaster/pgstat.c:3645 postmaster/pgstat.c:3663 postmaster/pgstat.c:3679
-#: postmaster/pgstat.c:3730 postmaster/pgstat.c:3741
+#: postmaster/pgstat.c:3498 postmaster/pgstat.c:3508 postmaster/pgstat.c:3530
+#: postmaster/pgstat.c:3545 postmaster/pgstat.c:3608 postmaster/pgstat.c:3626
+#: postmaster/pgstat.c:3642 postmaster/pgstat.c:3660 postmaster/pgstat.c:3676
+#: postmaster/pgstat.c:3727 postmaster/pgstat.c:3738
 #, c-format
 msgid "corrupted statistics file \"%s\""
 msgstr "verfälschte Statistikdatei »%s«"
 
-#: postmaster/pgstat.c:4039
+#: postmaster/pgstat.c:4036
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr "Datenbank-Hash-Tabelle beim Aufräumen verfälscht --- Abbruch"
 
@@ -13253,12 +13277,11 @@ msgid "disabling automatic rotation (use SIGHUP to re-enable)"
 msgstr ""
 "automatische Rotation abgeschaltet (SIGHUP zum Wiederanschalten verwenden)"
 
-#: regex/regc_pg_locale.c:258 utils/adt/selfuncs.c:4969
-#, fuzzy
+#: regex/regc_pg_locale.c:258 utils/adt/selfuncs.c:4971
 msgid "could not determine which collation to use for regular expression"
 msgstr ""
-"konnte Zeilenbeschreibung für Funktion, die »record« zurückgibt, nicht "
-"ermitteln"
+"konnte die für den regulären Ausdruck zu verwendende Sortierfolge nicht "
+"bestimmen"
 
 #: replication/libpqwalreceiver/libpqwalreceiver.c:101
 #, c-format
@@ -13327,9 +13350,9 @@ msgid "replication terminated by primary server"
 msgstr "Replikation wurde durch Primärserver beendet"
 
 #: replication/libpqwalreceiver/libpqwalreceiver.c:415
-#, fuzzy, c-format
+#, c-format
 msgid "could not send data to WAL stream: %s"
-msgstr "konnte keine Daten an den Server senden: %s\n"
+msgstr "konnte keine Daten an den WAL-Stream senden: %s"
 
 #: replication/walreceiver.c:150
 msgid "terminating walreceiver process due to administrator command"
@@ -13367,25 +13390,24 @@ msgid "invalid standby query string: %s"
 msgstr "ungültige Standby-Anfragezeichenkette: %s"
 
 #: replication/walsender.c:518
-#, fuzzy, c-format
-msgid "invalid standby message type %d"
-msgstr "ungültiger Standby-Closing-Message-Typ %d"
+#, c-format
+msgid "invalid standby message type \"%c\""
+msgstr "ungültiger Standby-Message-Typ »%c«"
 
 #: replication/walsender.c:569
-#, fuzzy, c-format
-msgid "unexpected message type %c"
-msgstr "Typname erwartet"
+#, c-format
+msgid "unexpected message type \"%c\""
+msgstr "unerwarteter Message-Typ »%c«"
 
 #: replication/walsender.c:822
-#, fuzzy
 msgid "terminating walsender process due to replication timeout"
 msgstr ""
-"breche WAL-Receiver-Prozess ab aufgrund von Anweisung des Administrators"
+"breche WAL-Sender-Prozess ab wegen Zeitüberschreitung bei der Replikation"
 
 #: replication/walsender.c:838
 #, c-format
 msgid "standby \"%s\" has now caught up with primary"
-msgstr ""
+msgstr "Standby-Server »%s« hat jetzt den Primärserver eingeholt"
 
 #: replication/walsender.c:907
 #, c-format
@@ -13407,322 +13429,335 @@ msgid "could not read from log file %u, segment %u, offset %u, length %lu: %m"
 msgstr ""
 "konnte nicht aus Logdatei %u, Segment %u bei Position %u, Länge %lu lesen: %m"
 
-#: replication/basebackup.c:122
-#, fuzzy, c-format
-msgid "unable to read symbolic link %s: %m"
-msgstr "konnte symbolische Verknüpfung »%s« nicht erstellen: %m"
+#: replication/basebackup.c:122 replication/basebackup.c:631
+#, c-format
+msgid "could not read symbolic link \"%s\": %m"
+msgstr "konnte symbolische Verknüpfung »%s« nicht lesen: %m"
 
 #: replication/basebackup.c:231 replication/basebackup.c:743
 msgid "base backup could not send data, aborting backup"
-msgstr ""
+msgstr "Basissicherung konnte keine Daten senden, Sicherung abgebrochen"
 
 #: replication/basebackup.c:278 replication/basebackup.c:287
 #: replication/basebackup.c:296 replication/basebackup.c:305
 #: replication/basebackup.c:314
-#, fuzzy, c-format
+#, c-format
 msgid "duplicate option \"%s\""
-msgstr "ungültige Option »%s«"
+msgstr "doppelte Option »%s«"
 
 #: replication/basebackup.c:366
-#, fuzzy, c-format
-msgid "unable to open directory pg_tblspc: %m"
-msgstr "konnte Verzeichnis »%s« nicht öffnen: %m"
+#, c-format
+msgid "could not open directory \"pg_tblspc\": %m"
+msgstr "konnte Verzeichnis »pg_tblspc« nicht öffnen: %m"
 
 #: replication/basebackup.c:576
 msgid "shutdown requested, aborting active base backup"
-msgstr ""
+msgstr "Herunterfahren verlangt, aktive Basissicherung wird abgebrochen"
 
 #: replication/basebackup.c:589
-#, fuzzy, c-format
+#, c-format
 msgid "could not stat file or directory \"%s\": %m"
-msgstr "konnte »stat« für Datei oder Verzeichnis »%s« nicht ausführen: %s\n"
-
-#: replication/basebackup.c:631
-#, fuzzy, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "konnte symbolische Verknüpfung »%s« nicht erstellen: %m"
+msgstr "konnte »stat« für Datei oder Verzeichnis »%s« nicht ausführen: %m"
 
 #: replication/basebackup.c:660
-#, fuzzy, c-format
+#, c-format
 msgid "skipping special file \"%s\""
-msgstr "entferne Transaktionslogdatei »%s«"
+msgstr "überspringe besondere Datei »%s«"
 
 #: replication/basebackup.c:733
-#, fuzzy, c-format
+#, c-format
 msgid "archive member \"%s\" too large for tar format"
-msgstr "Archivmitglied zu groß für Tar-Format\n"
+msgstr "Archivmitglied »%s« zu groß für Tar-Format"
 
-#: replication/syncrep.c:214
-#, fuzzy
+#: replication/syncrep.c:210
 msgid ""
 "canceling the wait for synchronous replication and terminating connection "
 "due to administrator command"
-msgstr "breche Verbindung ab aufgrund von Anweisung des Administrators"
+msgstr ""
+"storniere Warten auf synchrone Replikation and breche Verbindung ab aufgrund "
+"von Anweisung des Administrators"
 
-#: replication/syncrep.c:215 replication/syncrep.c:232
+#: replication/syncrep.c:211 replication/syncrep.c:228
 msgid ""
-"The transaction has already committed locally, but may not have been "
+"The transaction has already committed locally, but might not have been "
 "replicated to the standby."
 msgstr ""
+"Die Transaktion wurde lokal bereits committet, aber möglicherweise noch "
+"nicht zum Standby repliziert."
 
-#: replication/syncrep.c:231
-#, fuzzy
+#: replication/syncrep.c:227
 msgid "canceling wait for synchronous replication due to user request"
-msgstr "storniere Anfrage wegen Benutzeraufforderung"
+msgstr "storniere Warten auf synchrone Replikation wegen Benutzeraufforderung"
 
-#: replication/syncrep.c:357
+#: replication/syncrep.c:358
 #, c-format
 msgid "standby \"%s\" now has synchronous standby priority %u"
 msgstr "Standby »%s« hat jetzt synchrone Standby-Priorität %u"
 
-#: replication/syncrep.c:450
+#: replication/syncrep.c:451
 #, c-format
 msgid "standby \"%s\" is now the synchronous standby with priority %u"
 msgstr "Standby »%s« ist jetzt der synchrone Standby mit Priorität %u"
 
 #: repl_scanner.l:76
-#, fuzzy
 msgid "invalid streaming start location"
-msgstr "ungültige XML-Verarbeitungsanweisung"
+msgstr "ungültige Streaming-Startposition"
 
 #: repl_scanner.l:107
-#, fuzzy, c-format
+#, c-format
 msgid "syntax error: unexpected character \"%s\""
-msgstr "Syntaxfehler, »=« erwartet"
+msgstr "Syntaxfehler: unerwartetes Zeichen »%s«"
 
-#: rewrite/rewriteDefine.c:109 rewrite/rewriteDefine.c:771
+#: rewrite/rewriteDefine.c:109 rewrite/rewriteDefine.c:769
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" already exists"
 msgstr "Regel »%s« für Relation »%s« existiert bereits"
 
-#: rewrite/rewriteDefine.c:289
+#: rewrite/rewriteDefine.c:287
 msgid "rule actions on OLD are not implemented"
 msgstr "Regelaktionen für OLD sind nicht implementiert"
 
-#: rewrite/rewriteDefine.c:290
+#: rewrite/rewriteDefine.c:288
 msgid "Use views or triggers instead."
 msgstr "Verwenden Sie stattdessen Sichten oder Trigger."
 
-#: rewrite/rewriteDefine.c:294
+#: rewrite/rewriteDefine.c:292
 msgid "rule actions on NEW are not implemented"
 msgstr "Regelaktionen für NEW sind nicht implementiert"
 
-#: rewrite/rewriteDefine.c:295
+#: rewrite/rewriteDefine.c:293
 msgid "Use triggers instead."
 msgstr "Verwenden Sie stattdessen Trigger."
 
-#: rewrite/rewriteDefine.c:308
+#: rewrite/rewriteDefine.c:306
 msgid "INSTEAD NOTHING rules on SELECT are not implemented"
 msgstr "INSTEAD-NOTHING-Regeln für SELECT sind nicht implementiert"
 
-#: rewrite/rewriteDefine.c:309
+#: rewrite/rewriteDefine.c:307
 msgid "Use views instead."
 msgstr "Verwenden Sie stattdessen Sichten."
 
-#: rewrite/rewriteDefine.c:317
+#: rewrite/rewriteDefine.c:315
 msgid "multiple actions for rules on SELECT are not implemented"
 msgstr "mehrere Regelaktionen für SELECT-Regeln sind nicht implementiert"
 
-#: rewrite/rewriteDefine.c:329
+#: rewrite/rewriteDefine.c:327
 msgid "rules on SELECT must have action INSTEAD SELECT"
 msgstr "Regeln für SELECT müssen als Aktion INSTEAD SELECT haben"
 
-#: rewrite/rewriteDefine.c:337
+#: rewrite/rewriteDefine.c:335
 msgid "rules on SELECT must not contain data-modifying statements in WITH"
 msgstr ""
 "Regeln für SELECT dürfen keine datenmodifizierenden Anweisungen in WITH "
 "enthalten"
 
-#: rewrite/rewriteDefine.c:345
+#: rewrite/rewriteDefine.c:343
 msgid "event qualifications are not implemented for rules on SELECT"
 msgstr "Ereignisqualifikationen sind nicht implementiert für SELECT-Regeln"
 
-#: rewrite/rewriteDefine.c:370
+#: rewrite/rewriteDefine.c:368
 #, c-format
 msgid "\"%s\" is already a view"
 msgstr "»%s« ist bereits eine Sicht"
 
-#: rewrite/rewriteDefine.c:394
+#: rewrite/rewriteDefine.c:392
 #, c-format
 msgid "view rule for \"%s\" must be named \"%s\""
 msgstr "Sicht-Regel für »%s« muss »%s« heißen"
 
-#: rewrite/rewriteDefine.c:419
+#: rewrite/rewriteDefine.c:417
 #, c-format
 msgid "could not convert table \"%s\" to a view because it is not empty"
 msgstr "konnte Tabelle »%s« nicht in Sicht umwandeln, weil sie nicht leer ist"
 
-#: rewrite/rewriteDefine.c:426
+#: rewrite/rewriteDefine.c:424
 #, c-format
 msgid "could not convert table \"%s\" to a view because it has triggers"
 msgstr "konnte Tabelle »%s« nicht in Sicht umwandeln, weil sie Trigger hat"
 
-#: rewrite/rewriteDefine.c:428
+#: rewrite/rewriteDefine.c:426
 msgid ""
 "In particular, the table cannot be involved in any foreign key relationships."
 msgstr ""
 "Insbesondere darf die Tabelle nicht in Fremschlüsselverhältnisse eingebunden "
 "sein."
 
-#: rewrite/rewriteDefine.c:433
+#: rewrite/rewriteDefine.c:431
 #, c-format
 msgid "could not convert table \"%s\" to a view because it has indexes"
 msgstr "konnte Tabelle »%s« nicht in Sicht umwandeln, weil sie Indexe hat"
 
-#: rewrite/rewriteDefine.c:439
+#: rewrite/rewriteDefine.c:437
 #, c-format
 msgid "could not convert table \"%s\" to a view because it has child tables"
 msgstr ""
 "konnte Tabelle »%s« nicht in Sicht umwandeln, weil sie abgeleitete Tabellen "
 "hat"
 
-#: rewrite/rewriteDefine.c:466
+#: rewrite/rewriteDefine.c:464
 msgid "cannot have multiple RETURNING lists in a rule"
 msgstr "Regel kann nicht mehrere RETURNING-Listen enthalten"
 
-#: rewrite/rewriteDefine.c:471
+#: rewrite/rewriteDefine.c:469
 msgid "RETURNING lists are not supported in conditional rules"
 msgstr "RETURNING-Listen werden in Regeln mit Bedingung nicht unterstützt"
 
-#: rewrite/rewriteDefine.c:475
+#: rewrite/rewriteDefine.c:473
 msgid "RETURNING lists are not supported in non-INSTEAD rules"
 msgstr "RETURNING-Listen werden nur in INSTEAD-Regeln unterstützt"
 
-#: rewrite/rewriteDefine.c:554
+#: rewrite/rewriteDefine.c:552
 msgid "SELECT rule's target list has too many entries"
 msgstr "Targetliste von SELECT-Regel hat zu viele Einträge"
 
-#: rewrite/rewriteDefine.c:555
+#: rewrite/rewriteDefine.c:553
 msgid "RETURNING list has too many entries"
 msgstr "RETURNING-Liste hat zu viele Einträge"
 
-#: rewrite/rewriteDefine.c:571
+#: rewrite/rewriteDefine.c:569
 msgid "cannot convert relation containing dropped columns to view"
 msgstr "kann Relation mit gelöschten Spalten nicht in Sicht umwandeln"
 
-#: rewrite/rewriteDefine.c:576
+#: rewrite/rewriteDefine.c:574
 #, c-format
 msgid "SELECT rule's target entry %d has different column name from \"%s\""
 msgstr ""
 "Spaltenname in Targeteintrag %d von SELECT-Regel unterscheidet sich von "
 "Spalte »%s«"
 
-#: rewrite/rewriteDefine.c:582
+#: rewrite/rewriteDefine.c:580
 #, c-format
 msgid "SELECT rule's target entry %d has different type from column \"%s\""
 msgstr ""
 "Typ von Targeteintrag %d von SELECT-Regel unterscheidet sich von Spalte »%s«"
 
-#: rewrite/rewriteDefine.c:584
+#: rewrite/rewriteDefine.c:582
 #, c-format
 msgid "RETURNING list's entry %d has different type from column \"%s\""
 msgstr "Eintrag %d in RETURNING-Liste hat anderen Typ als Spalte »%s«"
 
-#: rewrite/rewriteDefine.c:599
+#: rewrite/rewriteDefine.c:597
 #, c-format
 msgid "SELECT rule's target entry %d has different size from column \"%s\""
 msgstr ""
 "Größe von Targeteintrag %d von SELECT-Regel unterscheidet sich von Spalte "
 "»%s«"
 
-#: rewrite/rewriteDefine.c:601
+#: rewrite/rewriteDefine.c:599
 #, c-format
 msgid "RETURNING list's entry %d has different size from column \"%s\""
 msgstr "Eintrag %d in RETURNING-Liste hat andere Größe als Spalte »%s«"
 
-#: rewrite/rewriteDefine.c:609
+#: rewrite/rewriteDefine.c:607
 msgid "SELECT rule's target list has too few entries"
 msgstr "Targetliste von SELECT-Regeln hat zu wenige Einträge"
 
-#: rewrite/rewriteDefine.c:610
+#: rewrite/rewriteDefine.c:608
 msgid "RETURNING list has too few entries"
 msgstr "RETURNING-Liste hat zu wenige Einträge"
 
-#: rewrite/rewriteDefine.c:702 rewrite/rewriteDefine.c:764
+#: rewrite/rewriteDefine.c:700 rewrite/rewriteDefine.c:762
 #: rewrite/rewriteRemove.c:62 rewrite/rewriteSupport.c:117
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist"
 msgstr "Regel »%s« für Relation »%s« existiert nicht"
 
-#: rewrite/rewriteHandler.c:505
-msgid "cannot have RETURNING lists in multiple rules"
-msgstr "RETURNING-Listen können nicht in mehreren Regeln auftreten"
+#: rewrite/rewriteHandler.c:485
+#, c-format
+msgid ""
+"WITH query name \"%s\" appears in both a rule action and the query being "
+"rewritten"
+msgstr ""
+"WITH-Anfragename »%s« erscheint sowohl in der Regelaktion als auch in der "
+"umzuschreibenden Anfrage"
+
+#: rewrite/rewriteHandler.c:543
+msgid "cannot have RETURNING lists in multiple rules"
+msgstr "RETURNING-Listen können nicht in mehreren Regeln auftreten"
+
+#: rewrite/rewriteHandler.c:874 rewrite/rewriteHandler.c:892
+#, c-format
+msgid "multiple assignments to same column \"%s\""
+msgstr "mehrere Zuweisungen zur selben Spalte »%s«"
+
+#: rewrite/rewriteHandler.c:1626 rewrite/rewriteHandler.c:2021
+#, c-format
+msgid "infinite recursion detected in rules for relation \"%s\""
+msgstr "unendliche Rekursion entdeckt in Regeln für Relation »%s«"
+
+#: rewrite/rewriteHandler.c:1882
+msgid ""
+"DO INSTEAD NOTHING rules are not supported for data-modifying statements in "
+"WITH"
+msgstr ""
+"DO INSTEAD NOTHING-Regeln werden für datenmodifizierende Anweisungen in WITH "
+"nicht unterstützt"
+
+#: rewrite/rewriteHandler.c:1896
+msgid ""
+"conditional DO INSTEAD rules are not supported for data-modifying statements "
+"in WITH"
+msgstr ""
+"Do INSTEAD-Regeln mit Bedingung werden für datenmodifizierende Anweisungen "
+"in WITH nicht unterstützt"
 
-#: rewrite/rewriteHandler.c:836 rewrite/rewriteHandler.c:854
-#, c-format
-msgid "multiple assignments to same column \"%s\""
-msgstr "mehrere Zuweisungen zur selben Spalte »%s«"
+#: rewrite/rewriteHandler.c:1900
+msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
+msgstr ""
+"DO ALSO-Regeln werden für datenmodifizierende Anweisungen in WITH nicht "
+"unterstützt"
 
-#: rewrite/rewriteHandler.c:1588 rewrite/rewriteHandler.c:1920
-#, c-format
-msgid "infinite recursion detected in rules for relation \"%s\""
-msgstr "unendliche Rekursion entdeckt in Regeln für Relation »%s«"
+#: rewrite/rewriteHandler.c:1905
+msgid ""
+"multi-statement DO INSTEAD rules are not supported for data-modifying "
+"statements in WITH"
+msgstr ""
+"DO INSTEAD-Regeln mit mehreren Anweisungen werden für datenmodifizierende "
+"Anweisungen in WITH nicht unterstützt"
 
-#: rewrite/rewriteHandler.c:1958
+#: rewrite/rewriteHandler.c:2059
 #, c-format
 msgid "cannot perform INSERT RETURNING on relation \"%s\""
 msgstr "INSERT RETURNING kann in Relation »%s« nicht ausgeführt werden"
 
-#: rewrite/rewriteHandler.c:1960
+#: rewrite/rewriteHandler.c:2061
 msgid ""
 "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Sie benötigen eine ON INSERT DO INSTEAD Regel ohne Bedingung, mit RETURNING-"
 "Klausel."
 
-#: rewrite/rewriteHandler.c:1965
+#: rewrite/rewriteHandler.c:2066
 #, c-format
 msgid "cannot perform UPDATE RETURNING on relation \"%s\""
 msgstr "UPDATE RETURNING kann in Relation »%s« nicht ausgeführt werden"
 
-#: rewrite/rewriteHandler.c:1967
+#: rewrite/rewriteHandler.c:2068
 msgid ""
 "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Sie benötigen eine ON UPDATE DO INSTEAD Regel ohne Bedingung, mit RETURNING-"
 "Klausel."
 
-#: rewrite/rewriteHandler.c:1972
+#: rewrite/rewriteHandler.c:2073
 #, c-format
 msgid "cannot perform DELETE RETURNING on relation \"%s\""
 msgstr "DELETE RETURNING kann in Relation »%s« nicht ausgeführt werden"
 
-#: rewrite/rewriteHandler.c:1974
+#: rewrite/rewriteHandler.c:2075
 msgid ""
 "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
 msgstr ""
 "Sie benötigen eine ON DELETE DO INSTEAD Regel ohne Bedingung, mit RETURNING-"
 "Klausel."
 
-#: rewrite/rewriteHandler.c:2020
-msgid ""
-"DO INSTEAD NOTHING rules are not supported for data-modifying statements in "
-"WITH"
-msgstr ""
-"DO INSTEAD NOTHING-Regeln werden für datenmodifizierende Anweisungen in WITH "
-"nicht unterstützt"
-
-#: rewrite/rewriteHandler.c:2034
-msgid ""
-"conditional DO INSTEAD rules are not supported for data-modifying statements "
-"in WITH"
-msgstr ""
-"Do INSTEAD-Regeln mit Bedingung werden für datenmodifizierende Anweisungen "
-"in WITH nicht unterstützt"
-
-#: rewrite/rewriteHandler.c:2038
-msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
-msgstr ""
-"DO ALSO-Regeln werden für datenmodifizierende Anweisungen in WITH nicht "
-"unterstützt"
-
-#: rewrite/rewriteHandler.c:2043
+#: rewrite/rewriteHandler.c:2139
 msgid ""
-"multi-statement DO INSTEAD rules are not supported for data-modifying "
-"statements in WITH"
+"WITH cannot be used in a query that is rewritten by rules into multiple "
+"queries"
 msgstr ""
-"DO INSTEAD-Regeln mit mehreren Anweisungen werden für datenmodifizierende "
-"Anweisungen in WITH nicht unterstützt"
+"WITH kann nicht in einer Anfrage verwendet werden, die durch Regeln in "
+"mehrere Anfragen umgeschrieben wird"
 
 #: rewrite/rewriteManip.c:1012
 msgid "conditional utility statements are not implemented"
@@ -13751,256 +13786,284 @@ msgstr "es gibt mehrere Regeln namens »%s«"
 msgid "Specify a relation name as well as a rule name."
 msgstr "Geben Sie einen Relationsnamen und einen Regelnamen an."
 
-#: utils/error/assert.c:37
-msgid "TRAP: ExceptionalCondition: bad arguments\n"
-msgstr "TRAP: ExceptionalCondition: fehlerhafte Argumente\n"
+#: utils/init/miscinit.c:115
+#, c-format
+msgid "could not change directory to \"%s\": %m"
+msgstr "konnte nicht in Verzeichnis »%s« wechseln: %m"
 
-#: utils/error/assert.c:40
+#: utils/init/miscinit.c:381 utils/misc/guc.c:5257
 #, c-format
-msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
-msgstr "TRAP: %s(»%s«, Datei: »%s«, Zeile: %d)\n"
+msgid "cannot set parameter \"%s\" within security-restricted operation"
+msgstr ""
+"kann Parameter »%s« nicht in einer sicherheitsbeschränkten Operation setzen"
 
-#: utils/error/elog.c:1479
+#: utils/init/miscinit.c:460
 #, c-format
-msgid "could not reopen file \"%s\" as stderr: %m"
-msgstr "konnte Datei »%s« nicht als stderr neu öffnen: %m"
+msgid "role \"%s\" is not permitted to log in"
+msgstr "Rolle »%s« hat keine Berechtigung zum Einloggen"
 
-#: utils/error/elog.c:1492
+#: utils/init/miscinit.c:478
 #, c-format
-msgid "could not reopen file \"%s\" as stdout: %m"
-msgstr "konnte Datei »%s« nicht als stdou neu öffnen: %m"
+msgid "too many connections for role \"%s\""
+msgstr "zu viele Verbindungen von Rolle »%s«"
 
-#: utils/error/elog.c:1882 utils/error/elog.c:1892 utils/error/elog.c:1902
-msgid "[unknown]"
-msgstr "[unbekannt]"
+#: utils/init/miscinit.c:538
+msgid "permission denied to set session authorization"
+msgstr "keine Berechtigung, um Sitzungsauthorisierung zu setzen"
 
-#: utils/error/elog.c:2253 utils/error/elog.c:2533 utils/error/elog.c:2611
-msgid "missing error text"
-msgstr "fehlender Fehlertext"
+#: utils/init/miscinit.c:618
+#, c-format
+msgid "invalid role OID: %u"
+msgstr "ungültige Rollen-OID: %u"
 
-#: utils/error/elog.c:2256 utils/error/elog.c:2259 utils/error/elog.c:2614
-#: utils/error/elog.c:2617
+#: utils/init/miscinit.c:750
 #, c-format
-msgid " at character %d"
-msgstr " bei Zeichen %d"
+msgid "could not create lock file \"%s\": %m"
+msgstr "konnte Sperrdatei »%s« nicht erstellen: %m"
 
-#: utils/error/elog.c:2269 utils/error/elog.c:2276
-msgid "DETAIL:  "
-msgstr "DETAIL:  "
+#: utils/init/miscinit.c:764
+#, c-format
+msgid "could not open lock file \"%s\": %m"
+msgstr "konnte Sperrdatei »%s« nicht öffnen: %m"
 
-#: utils/error/elog.c:2283
-msgid "HINT:  "
-msgstr "TIPP:  "
+#: utils/init/miscinit.c:770
+#, c-format
+msgid "could not read lock file \"%s\": %m"
+msgstr "konnte Sperrdatei »%s« nicht lesen: %m"
 
-#: utils/error/elog.c:2290
-msgid "QUERY:  "
-msgstr "ANFRAGE:  "
+#: utils/init/miscinit.c:818
+#, c-format
+msgid "lock file \"%s\" already exists"
+msgstr "Sperrdatei »%s« existiert bereits"
 
-#: utils/error/elog.c:2297
-msgid "CONTEXT:  "
-msgstr "ZUSAMMENHANG:  "
+#: utils/init/miscinit.c:822
+#, c-format
+msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
+msgstr ""
+"Läuft bereits ein anderer postgres-Prozess (PID %d) im Datenverzeichnis »%s«?"
 
-#: utils/error/elog.c:2307
+#: utils/init/miscinit.c:824
 #, c-format
-msgid "LOCATION:  %s, %s:%d\n"
-msgstr "ORT:  %s, %s:%d\n"
+msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
+msgstr ""
+"Läuft bereits ein anderer postmaster-Prozess (PID %d) im Datenverzeichnis "
+"»%s«?"
 
-#: utils/error/elog.c:2314
+#: utils/init/miscinit.c:827
 #, c-format
-msgid "LOCATION:  %s:%d\n"
-msgstr "ORT:  %s:%d\n"
+msgid "Is another postgres (PID %d) using socket file \"%s\"?"
+msgstr ""
+"Verwendet bereits ein anderer postgres-Prozess (PID %d) die Socketdatei »%s«?"
 
-#: utils/error/elog.c:2328
-msgid "STATEMENT:  "
-msgstr "ANWEISUNG:  "
+#: utils/init/miscinit.c:829
+#, c-format
+msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
+msgstr ""
+"Verwendet bereits ein anderer postmaster-Prozess (PID %d) die Socketdatei "
+"»%s«?"
 
-#. translator: This string will be truncated at 47
-#. characters expanded.
-#: utils/error/elog.c:2726
+#: utils/init/miscinit.c:865
 #, c-format
-msgid "operating system error %d"
-msgstr "Betriebssystemfehler %d"
+msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
+msgstr ""
+"bereits bestehender Shared-Memory-Block (Schlüssel %lu, ID %lu) wird noch "
+"benutzt"
 
-#: utils/error/elog.c:2749
-msgid "DEBUG"
-msgstr "DEBUG"
+#: utils/init/miscinit.c:868
+#, 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 ""
+"Wenn Sie sich sicher sind, dass kein alter Serverprozess mehr läuft, "
+"entfernen Sie den Shared-Memory-Block oder löschen Sie einfach die Datei "
+"»%s«."
 
-#: utils/error/elog.c:2753
-msgid "LOG"
-msgstr "LOG"
+#: utils/init/miscinit.c:884
+#, c-format
+msgid "could not remove old lock file \"%s\": %m"
+msgstr "konnte alte Sperrdatei »%s« nicht löschen: %m"
 
-#: utils/error/elog.c:2756
-msgid "INFO"
-msgstr "INFO"
+#: utils/init/miscinit.c:886
+msgid ""
+"The file seems accidentally left over, but it could not be removed. Please "
+"remove the file by hand and try again."
+msgstr ""
+"Die Datei ist anscheinend aus Versehen übrig geblieben, konnte aber nicht "
+"gelöscht werden. Bitte entfernen Sie die Datei von Hand und versuchen Sie es "
+"erneut."
 
-#: utils/error/elog.c:2759
-msgid "NOTICE"
-msgstr "HINWEIS"
+#: utils/init/miscinit.c:920 utils/init/miscinit.c:931
+#: utils/init/miscinit.c:941
+#, c-format
+msgid "could not write lock file \"%s\": %m"
+msgstr "konnte Sperrdatei »%s« nicht schreiben: %m"
 
-#: utils/error/elog.c:2762
-msgid "WARNING"
-msgstr "WARNUNG"
+#: utils/init/miscinit.c:1048 utils/misc/guc.c:7517
+#, c-format
+msgid "could not read from file \"%s\": %m"
+msgstr "konnte nicht aus Datei »%s« lesen: %m"
 
-#: utils/error/elog.c:2765
-msgid "ERROR"
-msgstr "FEHLER"
+#: utils/init/miscinit.c:1147 utils/init/miscinit.c:1160
+#, c-format
+msgid "\"%s\" is not a valid data directory"
+msgstr "»%s« ist kein gültiges Datenverzeichnis"
 
-#: utils/error/elog.c:2768
-msgid "FATAL"
-msgstr "FATAL"
+#: utils/init/miscinit.c:1149
+#, c-format
+msgid "File \"%s\" is missing."
+msgstr "Die Datei »%s« fehlt."
 
-#: utils/error/elog.c:2771
-msgid "PANIC"
-msgstr "PANIK"
+#: utils/init/miscinit.c:1162
+#, c-format
+msgid "File \"%s\" does not contain valid data."
+msgstr "Die Datei »%s« enthält keine gültigen Daten."
 
-#: utils/adt/xml.c:135
-msgid "unsupported XML feature"
-msgstr "nicht unterstützte XML-Funktionalität"
+#: utils/init/miscinit.c:1164
+msgid "You might need to initdb."
+msgstr "Sie müssen möglicherweise initdb ausführen."
 
-#: utils/adt/xml.c:136
-msgid "This functionality requires the server to be built with libxml support."
+#: utils/init/miscinit.c:1172
+#, c-format
+msgid ""
+"The data directory was initialized by PostgreSQL version %ld.%ld, which is "
+"not compatible with this version %s."
 msgstr ""
-"Diese Funktionalität verlangt, dass der Server mit Libxml-Unterstützung "
-"gebaut wird."
+"Das Datenverzeichnis wurde von PostgreSQL Version %ld.%ld initialisiert, "
+"welche nicht mit dieser Version %s kompatibel ist."
 
-#: utils/adt/xml.c:137
-msgid "You need to rebuild PostgreSQL using --with-libxml."
-msgstr "Sie müssen PostgreSQL mit --with-libxml neu bauen."
+#: utils/init/miscinit.c:1220
+#, c-format
+msgid "invalid list syntax in parameter \"%s\""
+msgstr "ungültige Listensyntax für Parameter »%s«"
 
-#: utils/adt/xml.c:156 utils/mb/mbutils.c:515
+#: utils/init/miscinit.c:1257
 #, c-format
-msgid "invalid encoding name \"%s\""
-msgstr "ungültiger Kodierungsname »%s«"
+msgid "loaded library \"%s\""
+msgstr "Bibliothek »%s« geladen"
 
-#: utils/adt/xml.c:402 utils/adt/xml.c:407
-msgid "invalid XML comment"
-msgstr "ungültiger XML-Kommentar"
+#: utils/init/postinit.c:225
+#, c-format
+msgid "replication connection authorized: user=%s"
+msgstr "Replikationsverbindung authorisiert: Benutzer=%s"
 
-#: utils/adt/xml.c:536
-msgid "not an XML document"
-msgstr "kein XML-Dokument"
+#: utils/init/postinit.c:229
+#, c-format
+msgid "connection authorized: user=%s database=%s"
+msgstr "Verbindung authorisiert: Benutzer=%s Datenbank=%s"
 
-#: utils/adt/xml.c:689 utils/adt/xml.c:712
-msgid "invalid XML processing instruction"
-msgstr "ungültige XML-Verarbeitungsanweisung"
+#: utils/init/postinit.c:260
+#, c-format
+msgid "database \"%s\" has disappeared from pg_database"
+msgstr "Datenbank »%s« ist aus pg_database verschwunden"
+
+#: utils/init/postinit.c:262
+#, c-format
+msgid "Database OID %u now seems to belong to \"%s\"."
+msgstr "Datenbank-OID %u gehört jetzt anscheinend zu »%s«."
+
+#: utils/init/postinit.c:282
+#, c-format
+msgid "database \"%s\" is not currently accepting connections"
+msgstr "Datenbank »%s« akzeptiert gegenwärtig keine Verbindungen"
 
-#: utils/adt/xml.c:690
+#: utils/init/postinit.c:295
 #, c-format
-msgid "XML processing instruction target name cannot be \"%s\"."
-msgstr "Die Zielangabe der XML-Verarbeitungsanweisung darf nicht »%s« sein."
+msgid "permission denied for database \"%s\""
+msgstr "keine Berechtigung für Datenbank »%s«"
 
-#: utils/adt/xml.c:713
-msgid "XML processing instruction cannot contain \"?>\"."
-msgstr "XML-Verarbeitungsanweisung darf nicht »?>« enthalten."
+#: utils/init/postinit.c:296
+msgid "User does not have CONNECT privilege."
+msgstr "Benutzer hat das CONNECT-Privileg nicht."
 
-#: utils/adt/xml.c:792
-msgid "xmlvalidate is not implemented"
-msgstr "xmlvalidate ist nicht implementiert"
+#: utils/init/postinit.c:313
+#, c-format
+msgid "too many connections for database \"%s\""
+msgstr "zu viele Verbindungen für Datenbank »%s«"
 
-#: utils/adt/xml.c:877
-msgid "could not initialize XML library"
-msgstr "konnte XML-Bibliothek nicht initialisieren"
+#: utils/init/postinit.c:335 utils/init/postinit.c:342
+msgid "database locale is incompatible with operating system"
+msgstr "Datenbank-Locale ist inkompatibel mit Betriebssystem"
 
-#: utils/adt/xml.c:878
+#: utils/init/postinit.c:336
 #, c-format
 msgid ""
-"libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
+"The database was initialized with LC_COLLATE \"%s\",  which is not "
+"recognized by setlocale()."
 msgstr ""
-"libxml2 hat inkompatiblen char-Typ: sizeof(char)=%u, sizeof(xmlChar)=%u."
-
-#: utils/adt/xml.c:1418
-msgid "Invalid character value."
-msgstr "Ungültiger Zeichenwert."
-
-#: utils/adt/xml.c:1421
-msgid "Space required."
-msgstr "Leerzeichen benötigt."
-
-#: utils/adt/xml.c:1424
-msgid "standalone accepts only 'yes' or 'no'."
-msgstr "standalone akzeptiert nur »yes« oder »no«."
-
-#: utils/adt/xml.c:1427
-msgid "Malformed declaration: missing version."
-msgstr "Fehlerhafte Deklaration: Version fehlt."
-
-#: utils/adt/xml.c:1430
-msgid "Missing encoding in text declaration."
-msgstr "Fehlende Kodierung in Textdeklaration."
+"Die Datenbank wurde mit LC_COLLATE »%s« initialisiert, was von setlocale() "
+"nicht erkannt wird."
 
-#: utils/adt/xml.c:1433
-msgid "Parsing XML declaration: '?>' expected."
-msgstr "Beim Parsen der XML-Deklaration: »?>« erwartet."
+#: utils/init/postinit.c:338 utils/init/postinit.c:345
+msgid ""
+"Recreate the database with another locale or install the missing locale."
+msgstr ""
+"Erzeugen Sie die Datenbank neu mit einer anderen Locale oder installieren "
+"Sie die fehlende Locale."
 
-#: utils/adt/xml.c:1436
+#: utils/init/postinit.c:343
 #, c-format
-msgid "Unrecognized libxml error code: %d."
-msgstr "Unbekannter Libxml-Fehlercode: %d."
-
-#: utils/adt/xml.c:1687 utils/adt/date.c:217
-msgid "date out of range"
-msgstr "date ist außerhalb des gültigen Bereichs"
+msgid ""
+"The database was initialized with LC_CTYPE \"%s\",  which is not recognized "
+"by setlocale()."
+msgstr ""
+"Die Datenbank wurde mit LC_CTYPE »%s« initialisiert, was von setlocale() "
+"nicht erkannt wird."
 
-#: utils/adt/xml.c:1688
-msgid "XML does not support infinite date values."
-msgstr "XML unterstützt keine unendlichen Datumswerte."
+#: utils/init/postinit.c:599
+msgid "no roles are defined in this database system"
+msgstr "in diesem Datenbanksystem sind keine Rollen definiert"
 
-#: utils/adt/xml.c:1710 utils/adt/xml.c:1717 utils/adt/xml.c:1737
-#: utils/adt/xml.c:1744 utils/adt/date.c:913 utils/adt/date.c:960
-#: utils/adt/date.c:1516 utils/adt/date.c:1553 utils/adt/date.c:2427
-#: utils/adt/formatting.c:3185 utils/adt/formatting.c:3217
-#: utils/adt/formatting.c:3285 utils/adt/nabstime.c:480
-#: utils/adt/nabstime.c:523 utils/adt/nabstime.c:553 utils/adt/nabstime.c:596
-#: utils/adt/timestamp.c:226 utils/adt/timestamp.c:269
-#: utils/adt/timestamp.c:491 utils/adt/timestamp.c:531
-#: utils/adt/timestamp.c:2530 utils/adt/timestamp.c:2551
-#: utils/adt/timestamp.c:2564 utils/adt/timestamp.c:2573
-#: utils/adt/timestamp.c:2631 utils/adt/timestamp.c:2654
-#: utils/adt/timestamp.c:2667 utils/adt/timestamp.c:2678
-#: utils/adt/timestamp.c:3114 utils/adt/timestamp.c:3244
-#: utils/adt/timestamp.c:3285 utils/adt/timestamp.c:3373
-#: utils/adt/timestamp.c:3420 utils/adt/timestamp.c:3531
-#: utils/adt/timestamp.c:3844 utils/adt/timestamp.c:3981
-#: utils/adt/timestamp.c:3988 utils/adt/timestamp.c:4002
-#: utils/adt/timestamp.c:4012 utils/adt/timestamp.c:4075
-#: utils/adt/timestamp.c:4215 utils/adt/timestamp.c:4225
-#: utils/adt/timestamp.c:4440 utils/adt/timestamp.c:4519
-#: utils/adt/timestamp.c:4526 utils/adt/timestamp.c:4553
-#: utils/adt/timestamp.c:4557 utils/adt/timestamp.c:4614
-msgid "timestamp out of range"
-msgstr "timestamp ist außerhalb des gültigen Bereichs"
+#: utils/init/postinit.c:600
+#, c-format
+msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
+msgstr "Sie sollten sofort CREATE USER \"%s\" SUPERUSER; ausführen."
 
-#: utils/adt/xml.c:1711 utils/adt/xml.c:1738
-msgid "XML does not support infinite timestamp values."
-msgstr "XML unterstützt keine unendliche timestamp-Werte."
+#: utils/init/postinit.c:623
+msgid "new replication connections are not allowed during database shutdown"
+msgstr ""
+"während des Herunterfahrens der Datenbank sind keine neuen "
+"Replikationsverbindungen erlaubt"
 
-#: utils/adt/xml.c:2123
-msgid "invalid query"
-msgstr "ungültige Anfrage"
+#: utils/init/postinit.c:627
+msgid "must be superuser to connect during database shutdown"
+msgstr ""
+"nur Superuser können während des Herunterfahrens der Datenbank verbinden"
 
-#: utils/adt/xml.c:3347
-msgid "invalid array for XML namespace mapping"
-msgstr "ungültiges Array for XML-Namensraumabbildung"
+#: utils/init/postinit.c:637
+msgid "must be superuser to connect in binary upgrade mode"
+msgstr "nur Superuser können im Binary-Upgrade-Modus verbinden"
 
-#: utils/adt/xml.c:3348
+#: utils/init/postinit.c:651
 msgid ""
-"The array must be two-dimensional with length of the second axis equal to 2."
+"remaining connection slots are reserved for non-replication superuser "
+"connections"
 msgstr ""
-"Das Array muss zweidimensional sein und die Länge der zweiten Achse muss "
-"gleich 2 sein."
+"die verbleibenden Verbindungen sind für Superuser auf Nicht-"
+"Replikationsverbindungen reserviert"
 
-#: utils/adt/xml.c:3372
-msgid "empty XPath expression"
-msgstr "leerer XPath-Ausdruck"
+#: utils/init/postinit.c:666
+msgid "must be replication role to start walsender"
+msgstr "nur Replikationsrollen können WAL-Sender starten"
 
-#: utils/adt/xml.c:3420
-msgid "neither namespace name nor URI may be null"
-msgstr "weder Namensraumname noch URI dürfen NULL sein"
+#: utils/init/postinit.c:726
+#, c-format
+msgid "database %u does not exist"
+msgstr "Datenbank %u existiert nicht"
+
+#: utils/init/postinit.c:778
+msgid "It seems to have just been dropped or renamed."
+msgstr "Sie wurde anscheinend gerade gelöscht oder umbenannt."
 
-#: utils/adt/xml.c:3427
+#: utils/init/postinit.c:796
 #, c-format
-msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
-msgstr "konnte XML-Namensraum mit Namen »%s« und URI »%s« nicht registrieren"
+msgid "The database subdirectory \"%s\" is missing."
+msgstr "Das Datenbankunterverzeichnis »%s« fehlt."
+
+#: utils/init/postinit.c:801
+#, c-format
+msgid "could not access directory \"%s\": %m"
+msgstr "konnte nicht auf Verzeichnis »%s« zugreifen: %m"
 
 #: utils/adt/acl.c:166 utils/adt/name.c:87
 msgid "identifier too long"
@@ -14158,7 +14221,7 @@ msgstr ""
 "Aneinanderhängen."
 
 #: utils/adt/array_userfuncs.c:426 utils/adt/arrayfuncs.c:1238
-#: utils/adt/arrayfuncs.c:2911 utils/adt/arrayfuncs.c:4930
+#: utils/adt/arrayfuncs.c:2911 utils/adt/arrayfuncs.c:4936
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "ungültige Anzahl Dimensionen: %d"
@@ -14206,7 +14269,7 @@ msgstr "fehlerhafte Arraykonstante: »%s«"
 
 #: utils/adt/arrayfuncs.c:871 utils/adt/arrayfuncs.c:1473
 #: utils/adt/arrayfuncs.c:2795 utils/adt/arrayfuncs.c:2943
-#: utils/adt/arrayfuncs.c:5030 utils/adt/arrayutils.c:93
+#: utils/adt/arrayfuncs.c:5036 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)"
@@ -14220,7 +14283,7 @@ msgstr "ungültige Array-Flags"
 msgid "wrong element type"
 msgstr "falscher Elementtyp"
 
-#: utils/adt/arrayfuncs.c:1307 utils/cache/lsyscache.c:2467
+#: utils/adt/arrayfuncs.c:1307 utils/cache/lsyscache.c:2485
 #, c-format
 msgid "no binary input function available for type %s"
 msgstr "keine binäre Eingabefunktion verfügbar für Typ %s"
@@ -14230,7 +14293,7 @@ msgstr "keine binäre Eingabefunktion verfügbar für Typ %s"
 msgid "improper binary format in array element %d"
 msgstr "falsches Binärformat in Arrayelement %d"
 
-#: utils/adt/arrayfuncs.c:1529 utils/cache/lsyscache.c:2500
+#: utils/adt/arrayfuncs.c:1529 utils/cache/lsyscache.c:2518
 #, c-format
 msgid "no binary output function available for type %s"
 msgstr "keine binäre Ausgabefunktion verfügbar für Typ %s"
@@ -14242,8 +14305,8 @@ msgstr ""
 
 #: utils/adt/arrayfuncs.c:2076 utils/adt/arrayfuncs.c:2098
 #: utils/adt/arrayfuncs.c:2132 utils/adt/arrayfuncs.c:2418
-#: utils/adt/arrayfuncs.c:4910 utils/adt/arrayfuncs.c:4942
-#: utils/adt/arrayfuncs.c:4959
+#: utils/adt/arrayfuncs.c:4916 utils/adt/arrayfuncs.c:4948
+#: utils/adt/arrayfuncs.c:4965
 msgid "wrong number of array subscripts"
 msgstr "falsche Anzahl Arrayindizes"
 
@@ -14270,37 +14333,36 @@ msgid "null array element not allowed in this context"
 msgstr "NULL-Werte im Array sind in diesem Zusammenhang nicht erlaubt"
 
 #: utils/adt/arrayfuncs.c:3153 utils/adt/arrayfuncs.c:3361
-#: utils/adt/arrayfuncs.c:3672
+#: utils/adt/arrayfuncs.c:3678
 msgid "cannot compare arrays of different element types"
 msgstr "kann Arrays mit verschiedenen Elementtypen nicht vergleichen"
 
 #: utils/adt/arrayfuncs.c:3563
-#, fuzzy, c-format
+#, c-format
 msgid "could not identify a hash function for type %s"
-msgstr "konnte keine Vergleichsfunktion für Typ %s ermitteln"
+msgstr "konnte keine Hash-Funktion für Typ %s ermitteln"
 
-#: utils/adt/arrayfuncs.c:4808 utils/adt/arrayfuncs.c:4848
-#, fuzzy
+#: utils/adt/arrayfuncs.c:4814 utils/adt/arrayfuncs.c:4854
 msgid "dimension array or low bound array cannot be null"
-msgstr "Dimensions-Array oder Untergrenzen-Array kann nicht NULL sein"
+msgstr "Dimensions-Array oder Untergrenzen-Array darf nicht NULL sein"
 
-#: utils/adt/arrayfuncs.c:4911 utils/adt/arrayfuncs.c:4943
+#: utils/adt/arrayfuncs.c:4917 utils/adt/arrayfuncs.c:4949
 msgid "Dimension array must be one dimensional."
 msgstr "Dimensions-Array muss eindimensional sein."
 
-#: utils/adt/arrayfuncs.c:4916 utils/adt/arrayfuncs.c:4948
+#: utils/adt/arrayfuncs.c:4922 utils/adt/arrayfuncs.c:4954
 msgid "wrong range of array subscripts"
 msgstr "falscher Bereich der Arrayindizes"
 
-#: utils/adt/arrayfuncs.c:4917 utils/adt/arrayfuncs.c:4949
+#: utils/adt/arrayfuncs.c:4923 utils/adt/arrayfuncs.c:4955
 msgid "Lower bound of dimension array must be one."
 msgstr "Untergrenze des Dimensions-Arrays muss eins sein."
 
-#: utils/adt/arrayfuncs.c:4922 utils/adt/arrayfuncs.c:4954
+#: utils/adt/arrayfuncs.c:4928 utils/adt/arrayfuncs.c:4960
 msgid "dimension values cannot be null"
 msgstr "Dimensionswerte dürfen nicht NULL sein"
 
-#: utils/adt/arrayfuncs.c:4960
+#: utils/adt/arrayfuncs.c:4966
 msgid "Low bound array has different size than dimensions array."
 msgstr "Untergrenzen-Array hat andere Größe als Dimensions-Array."
 
@@ -14371,6 +14433,10 @@ msgstr "Datum/Zeitwert »current« wird nicht mehr unterstützt"
 msgid "date out of range: \"%s\""
 msgstr "date ist außerhalb des gültigen Bereichs: »%s«"
 
+#: utils/adt/date.c:217 utils/adt/xml.c:1689
+msgid "date out of range"
+msgstr "date ist außerhalb des gültigen Bereichs"
+
 #: utils/adt/date.c:359
 msgid "cannot subtract infinite dates"
 msgstr "kann unendliche date-Werte nicht subtrahieren"
@@ -14379,6 +14445,31 @@ msgstr "kann unendliche date-Werte nicht subtrahieren"
 msgid "date out of range for timestamp"
 msgstr "Datum ist außerhalb des gültigen Bereichs für Typ »timestamp«"
 
+#: utils/adt/date.c:913 utils/adt/date.c:960 utils/adt/date.c:1516
+#: utils/adt/date.c:1553 utils/adt/date.c:2427 utils/adt/formatting.c:3185
+#: utils/adt/formatting.c:3217 utils/adt/formatting.c:3285
+#: utils/adt/nabstime.c:480 utils/adt/nabstime.c:523 utils/adt/nabstime.c:553
+#: utils/adt/nabstime.c:596 utils/adt/timestamp.c:226
+#: utils/adt/timestamp.c:269 utils/adt/timestamp.c:491
+#: utils/adt/timestamp.c:531 utils/adt/timestamp.c:2530
+#: utils/adt/timestamp.c:2551 utils/adt/timestamp.c:2564
+#: utils/adt/timestamp.c:2573 utils/adt/timestamp.c:2631
+#: utils/adt/timestamp.c:2654 utils/adt/timestamp.c:2667
+#: utils/adt/timestamp.c:2678 utils/adt/timestamp.c:3114
+#: utils/adt/timestamp.c:3244 utils/adt/timestamp.c:3285
+#: utils/adt/timestamp.c:3373 utils/adt/timestamp.c:3420
+#: utils/adt/timestamp.c:3531 utils/adt/timestamp.c:3844
+#: utils/adt/timestamp.c:3981 utils/adt/timestamp.c:3988
+#: utils/adt/timestamp.c:4002 utils/adt/timestamp.c:4012
+#: utils/adt/timestamp.c:4075 utils/adt/timestamp.c:4215
+#: utils/adt/timestamp.c:4225 utils/adt/timestamp.c:4440
+#: utils/adt/timestamp.c:4519 utils/adt/timestamp.c:4526
+#: utils/adt/timestamp.c:4553 utils/adt/timestamp.c:4557
+#: utils/adt/timestamp.c:4614 utils/adt/xml.c:1712 utils/adt/xml.c:1719
+#: utils/adt/xml.c:1739 utils/adt/xml.c:1746
+msgid "timestamp out of range"
+msgstr "timestamp ist außerhalb des gültigen Bereichs"
+
 #: utils/adt/date.c:986
 msgid "cannot convert reserved abstime value to date"
 msgstr "kann reservierten »abstime«-Wert nicht in »date« umwandeln"
@@ -14500,9 +14591,9 @@ msgid "could not determine actual enum type"
 msgstr "konnte tatsächlichen Enum-Typen nicht bestimmen"
 
 #: utils/adt/enum.c:365 utils/adt/enum.c:394
-#, fuzzy, c-format
+#, c-format
 msgid "enum %s contains no values"
-msgstr "Spalte »%s« enthält NULL-Werte"
+msgstr "Enum %s enthält keine Werte"
 
 #: utils/adt/float.c:54
 msgid "value out of range: overflow"
@@ -14656,25 +14747,22 @@ msgid "\"%s\" is not a number"
 msgstr "»%s« ist keine Zahl"
 
 #: utils/adt/formatting.c:1519 utils/adt/formatting.c:1569
-#, fuzzy
 msgid "could not determine which collation to use for lower() function"
 msgstr ""
-"konnte den tatsächlichen Rückgabetyp der polymorphischen Funktion »%s« nicht "
-"ermitteln"
+"konnte die für die Funktion lower() zu verwendende Sortierfolge nicht "
+"bestimmen"
 
 #: utils/adt/formatting.c:1640 utils/adt/formatting.c:1690
-#, fuzzy
 msgid "could not determine which collation to use for upper() function"
 msgstr ""
-"konnte den tatsächlichen Rückgabetyp der polymorphischen Funktion »%s« nicht "
-"ermitteln"
+"konnte die für die Funktion upper() zu verwendende Sortierfolge nicht "
+"bestimmen"
 
 #: utils/adt/formatting.c:1773 utils/adt/formatting.c:1835
-#, fuzzy
 msgid "could not determine which collation to use for initcap() function"
 msgstr ""
-"konnte den tatsächlichen Rückgabetyp der polymorphischen Funktion »%s« nicht "
-"ermitteln"
+"konnte die für die Funktion initcap() zu verwendende Sortierfolge nicht "
+"bestimmen"
 
 #: utils/adt/formatting.c:2017
 msgid "invalid combination of date conventions"
@@ -14967,10 +15055,9 @@ msgstr "bigint ist außerhalb des gültigen Bereichs"
 msgid "OID out of range"
 msgstr "OID ist außerhalb des gültigen Bereichs"
 
-#: utils/adt/like.c:211 utils/adt/selfuncs.c:4852
-#, fuzzy
+#: utils/adt/like.c:211 utils/adt/selfuncs.c:4854
 msgid "could not determine which collation to use for ILIKE"
-msgstr "konnte Eingabedatentypen nicht bestimmen"
+msgstr "konnte die für ILIKE zu verwendende Sortierfolge nicht bestimmen"
 
 #: utils/adt/like_match.c:104 utils/adt/like_match.c:164
 msgid "LIKE pattern must not end with escape character"
@@ -15239,22 +15326,23 @@ msgstr "Null-Zeichen ist nicht erlaubt"
 
 #: utils/adt/pg_locale.c:993 utils/adt/pg_locale.c:1006
 #: utils/adt/pg_locale.c:1012
-#, fuzzy, c-format
+#, c-format
 msgid "could not create locale \"%s\": %m"
-msgstr "konnte Sperrdatei »%s« nicht erstellen: %m"
+msgstr "konnte Locale »%s« nicht erzeugen: %m"
 
 #: utils/adt/pg_locale.c:1023
-#, fuzzy
 msgid ""
 "collations with different collate and ctype values are not supported on this "
 "platform"
-msgstr "Tablespaces werden auf dieser Plattform nicht unterstützt"
+msgstr ""
+"Sortierfolgen mit unterschiedlichen »collate«- und »ctype«-Werten werden auf "
+"dieser Plattform nicht unterstützt"
 
 #: utils/adt/pg_locale.c:1038
-#, fuzzy
 msgid "nondefault collations are not supported on this platform"
 msgstr ""
-"%s: symbolische Verknüpfungen werden auf dieser Plattform nicht unterstützt"
+"Sortierfolgen außer der Standardsortierfolge werden auf dieser Plattform "
+"nicht unterstützt"
 
 #: utils/adt/pg_locale.c:1209
 msgid "invalid multibyte character for locale"
@@ -15301,14 +15389,12 @@ msgid "cannot display a value of type language_handler"
 msgstr "kann keinen Wert vom Typ language_handler anzeigen"
 
 #: utils/adt/pseudotypes.c:306
-#, fuzzy
 msgid "cannot accept a value of type fdw_handler"
-msgstr "kann keinen Wert vom Typ language_handler annehmen"
+msgstr "kann keinen Wert vom Typ fdw_handler annehmen"
 
 #: utils/adt/pseudotypes.c:319
-#, fuzzy
 msgid "cannot display a value of type fdw_handler"
-msgstr "kann keinen Wert vom Typ language_handler anzeigen"
+msgstr "kann keinen Wert vom Typ fdw_handler anzeigen"
 
 #: utils/adt/pseudotypes.c:333
 msgid "cannot accept a value of type internal"
@@ -15351,9 +15437,8 @@ msgid "cannot display a value of a shell type"
 msgstr "kann keinen Wert eines Hüllentyps anzeigen"
 
 #: utils/adt/pseudotypes.c:474 utils/adt/pseudotypes.c:498
-#, fuzzy
 msgid "cannot accept a value of type pg_node_tree"
-msgstr "kann keinen Wert vom Typ trigger annehmen"
+msgstr "kann keinen Wert vom Typ pg_node_tree annehmen"
 
 #: utils/adt/regexp.c:275 utils/adt/varlena.c:2866
 #, c-format
@@ -15379,8 +15464,8 @@ msgstr "es gibt mehrere Funktionen namens »%s«"
 msgid "more than one operator named %s"
 msgstr "es gibt mehrere Operatoren namens %s"
 
-#: utils/adt/regproc.c:635 utils/adt/regproc.c:1485 utils/adt/ruleutils.c:5798
-#: utils/adt/ruleutils.c:5853 utils/adt/ruleutils.c:5890
+#: utils/adt/regproc.c:635 utils/adt/regproc.c:1485 utils/adt/ruleutils.c:5799
+#: utils/adt/ruleutils.c:5854 utils/adt/ruleutils.c:5891
 msgid "too many arguments"
 msgstr "zu viele Argumente"
 
@@ -15547,18 +15632,18 @@ msgid "cannot compare record types with different numbers of columns"
 msgstr ""
 "kann Record-Typen mit unterschiedlicher Anzahl Spalten nicht vergleichen"
 
-#: utils/adt/ruleutils.c:2427
+#: utils/adt/ruleutils.c:2429
 #, c-format
 msgid "rule \"%s\" has unsupported event type %d"
 msgstr "Regel »%s« hat nicht unterstützten Ereignistyp %d"
 
-#: utils/adt/selfuncs.c:4837 utils/adt/selfuncs.c:5291
+#: utils/adt/selfuncs.c:4839 utils/adt/selfuncs.c:5293
 msgid "case insensitive matching not supported on type bytea"
 msgstr ""
 "Mustersuche ohne Rücksicht auf Groß-/Kleinschreibung wird für Typ bytea "
 "nicht unterstützt"
 
-#: utils/adt/selfuncs.c:4952 utils/adt/selfuncs.c:5451
+#: utils/adt/selfuncs.c:4954 utils/adt/selfuncs.c:5453
 msgid "regular-expression matching not supported on type bytea"
 msgstr ""
 "Mustersuche mit regulären Ausdrücken wird für Typ bytea nicht unterstützt"
@@ -15872,79 +15957,202 @@ msgstr ""
 
 #: utils/adt/varbit.c:1731 utils/adt/varbit.c:1789
 #, c-format
-msgid "bit index %d out of valid range (0..%d)"
-msgstr "Bitindex %d ist außerhalb des gültigen Bereichs (0..%d)"
+msgid "bit index %d out of valid range (0..%d)"
+msgstr "Bitindex %d ist außerhalb des gültigen Bereichs (0..%d)"
+
+#: utils/adt/varbit.c:1740 utils/adt/varlena.c:2163
+msgid "new bit must be 0 or 1"
+msgstr "neues Bit muss 0 oder 1 sein"
+
+#: utils/adt/varchar.c:152 utils/adt/varchar.c:305
+#, c-format
+msgid "value too long for type character(%d)"
+msgstr "Wert zu lang für Typ character(%d)"
+
+#: utils/adt/varchar.c:473 utils/adt/varchar.c:594
+#, c-format
+msgid "value too long for type character varying(%d)"
+msgstr "Wert zu lang für Typ character varying(%d)"
+
+#: utils/adt/varlena.c:1314
+msgid "could not determine which collation to use for string comparison"
+msgstr ""
+"konnte die für den Zeichenkettenvergleich zu verwendende Sortierfolge nicht "
+"bestimmen"
+
+#: utils/adt/varlena.c:1358 utils/adt/varlena.c:1371
+#, c-format
+msgid "could not convert string to UTF-16: error %lu"
+msgstr "konnte Zeichenkette nicht in UTF-16 umwandeln: Fehler %lu"
+
+#: utils/adt/varlena.c:1386
+#, c-format
+msgid "could not compare Unicode strings: %m"
+msgstr "konnte Unicode-Zeichenketten nicht vergleichen: %m"
+
+#: utils/adt/varlena.c:2041 utils/adt/varlena.c:2072 utils/adt/varlena.c:2108
+#: utils/adt/varlena.c:2151
+#, c-format
+msgid "index %d out of valid range, 0..%d"
+msgstr "Index %d ist außerhalb des gültigen Bereichs, 0..%d"
+
+#: utils/adt/varlena.c:2959
+msgid "field position must be greater than zero"
+msgstr "Feldposition muss größer als null sein"
+
+#: utils/adt/varlena.c:3816 utils/adt/varlena.c:3877
+msgid "unterminated conversion specifier"
+msgstr "Konvertierungsspezifikation nicht abgeschlossen"
+
+#: utils/adt/varlena.c:3840 utils/adt/varlena.c:3856
+msgid "argument number is out of range"
+msgstr "Argumentnummer ist außerhalb des zulässigen Bereichs"
+
+#: utils/adt/varlena.c:3883
+msgid "conversion specifies argument 0, but arguments are numbered from 1"
+msgstr ""
+"Konvertierung gibt Argument 0 an, aber die Argumente sind von 1 an nummeriert"
+
+#: utils/adt/varlena.c:3890
+msgid "too few arguments for format"
+msgstr "zu wenige Argumente für Format"
+
+#: utils/adt/varlena.c:3911
+#, c-format
+msgid "unrecognized conversion specifier \"%c\""
+msgstr "unbekannte Konvertierungsspezifikation »%c«"
+
+#: utils/adt/varlena.c:3940
+msgid "null values cannot be formatted as an SQL identifier"
+msgstr "NULL-Werte können nicht als SQL-Bezeichner formatiert werden"
+
+#: utils/adt/windowfuncs.c:243
+msgid "argument of ntile must be greater than zero"
+msgstr "Argument von ntile muss größer als null sein"
+
+#: utils/adt/windowfuncs.c:465
+msgid "argument of nth_value must be greater than zero"
+msgstr "Argument von nth_value muss größer als null sein"
+
+#: utils/adt/xml.c:135
+msgid "unsupported XML feature"
+msgstr "nicht unterstützte XML-Funktionalität"
+
+#: utils/adt/xml.c:136
+msgid "This functionality requires the server to be built with libxml support."
+msgstr ""
+"Diese Funktionalität verlangt, dass der Server mit Libxml-Unterstützung "
+"gebaut wird."
+
+#: utils/adt/xml.c:137
+msgid "You need to rebuild PostgreSQL using --with-libxml."
+msgstr "Sie müssen PostgreSQL mit --with-libxml neu bauen."
+
+#: utils/adt/xml.c:156 utils/mb/mbutils.c:515
+#, c-format
+msgid "invalid encoding name \"%s\""
+msgstr "ungültiger Kodierungsname »%s«"
+
+#: utils/adt/xml.c:402 utils/adt/xml.c:407
+msgid "invalid XML comment"
+msgstr "ungültiger XML-Kommentar"
+
+#: utils/adt/xml.c:536
+msgid "not an XML document"
+msgstr "kein XML-Dokument"
+
+#: utils/adt/xml.c:689 utils/adt/xml.c:712
+msgid "invalid XML processing instruction"
+msgstr "ungültige XML-Verarbeitungsanweisung"
+
+#: utils/adt/xml.c:690
+#, c-format
+msgid "XML processing instruction target name cannot be \"%s\"."
+msgstr "Die Zielangabe der XML-Verarbeitungsanweisung darf nicht »%s« sein."
+
+#: utils/adt/xml.c:713
+msgid "XML processing instruction cannot contain \"?>\"."
+msgstr "XML-Verarbeitungsanweisung darf nicht »?>« enthalten."
+
+#: utils/adt/xml.c:792
+msgid "xmlvalidate is not implemented"
+msgstr "xmlvalidate ist nicht implementiert"
+
+#: utils/adt/xml.c:877
+msgid "could not initialize XML library"
+msgstr "konnte XML-Bibliothek nicht initialisieren"
+
+#: utils/adt/xml.c:878
+#, c-format
+msgid ""
+"libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
+msgstr ""
+"libxml2 hat inkompatiblen char-Typ: sizeof(char)=%u, sizeof(xmlChar)=%u."
 
-#: utils/adt/varbit.c:1740 utils/adt/varlena.c:2163
-msgid "new bit must be 0 or 1"
-msgstr "neues Bit muss 0 oder 1 sein"
+#: utils/adt/xml.c:1420
+msgid "Invalid character value."
+msgstr "Ungültiger Zeichenwert."
 
-#: utils/adt/varchar.c:152 utils/adt/varchar.c:305
-#, c-format
-msgid "value too long for type character(%d)"
-msgstr "Wert zu lang für Typ character(%d)"
+#: utils/adt/xml.c:1423
+msgid "Space required."
+msgstr "Leerzeichen benötigt."
 
-#: utils/adt/varchar.c:473 utils/adt/varchar.c:594
-#, c-format
-msgid "value too long for type character varying(%d)"
-msgstr "Wert zu lang für Typ character varying(%d)"
+#: utils/adt/xml.c:1426
+msgid "standalone accepts only 'yes' or 'no'."
+msgstr "standalone akzeptiert nur »yes« oder »no«."
 
-#: utils/adt/varlena.c:1314
-#, fuzzy
-msgid "could not determine which collation to use for string comparison"
-msgstr ""
-"konnte Interpretation des Zeilenvergleichsoperators %s nicht bestimmten"
+#: utils/adt/xml.c:1429
+msgid "Malformed declaration: missing version."
+msgstr "Fehlerhafte Deklaration: Version fehlt."
 
-#: utils/adt/varlena.c:1358 utils/adt/varlena.c:1371
-#, c-format
-msgid "could not convert string to UTF-16: error %lu"
-msgstr "konnte Zeichenkette nicht in UTF-16 umwandeln: Fehler %lu"
+#: utils/adt/xml.c:1432
+msgid "Missing encoding in text declaration."
+msgstr "Fehlende Kodierung in Textdeklaration."
 
-#: utils/adt/varlena.c:1386
-#, c-format
-msgid "could not compare Unicode strings: %m"
-msgstr "konnte Unicode-Zeichenketten nicht vergleichen: %m"
+#: utils/adt/xml.c:1435
+msgid "Parsing XML declaration: '?>' expected."
+msgstr "Beim Parsen der XML-Deklaration: »?>« erwartet."
 
-#: utils/adt/varlena.c:2041 utils/adt/varlena.c:2072 utils/adt/varlena.c:2108
-#: utils/adt/varlena.c:2151
+#: utils/adt/xml.c:1438
 #, c-format
-msgid "index %d out of valid range, 0..%d"
-msgstr "Index %d ist außerhalb des gültigen Bereichs, 0..%d"
-
-#: utils/adt/varlena.c:2959
-msgid "field position must be greater than zero"
-msgstr "Feldposition muss größer als null sein"
+msgid "Unrecognized libxml error code: %d."
+msgstr "Unbekannter Libxml-Fehlercode: %d."
 
-#: utils/adt/varlena.c:3816 utils/adt/varlena.c:3862
-#, fuzzy
-msgid "unterminated conversion specifier"
-msgstr "Bezeichner in Anführungszeichen nicht abgeschlossen"
+#: utils/adt/xml.c:1690
+msgid "XML does not support infinite date values."
+msgstr "XML unterstützt keine unendlichen Datumswerte."
 
-#: utils/adt/varlena.c:3868
-msgid "conversion specifies argument 0, but arguments are numbered from 1"
-msgstr ""
+#: utils/adt/xml.c:1713 utils/adt/xml.c:1740
+msgid "XML does not support infinite timestamp values."
+msgstr "XML unterstützt keine unendlichen timestamp-Werte."
 
-#: utils/adt/varlena.c:3875
-#, fuzzy
-msgid "too few arguments for format conversion"
-msgstr "zu wenige Argumente auf Zeile %d"
+#: utils/adt/xml.c:2125
+msgid "invalid query"
+msgstr "ungültige Anfrage"
 
-#: utils/adt/varlena.c:3896
-#, fuzzy, c-format
-msgid "unrecognized conversion specifier: %c"
-msgstr "unbekannter Constraint-Typ: %c\n"
+#: utils/adt/xml.c:3349
+msgid "invalid array for XML namespace mapping"
+msgstr "ungültiges Array for XML-Namensraumabbildung"
 
-#: utils/adt/varlena.c:3925
-msgid "NULL cannot be escaped as an SQL identifier"
+#: utils/adt/xml.c:3350
+msgid ""
+"The array must be two-dimensional with length of the second axis equal to 2."
 msgstr ""
+"Das Array muss zweidimensional sein und die Länge der zweiten Achse muss "
+"gleich 2 sein."
 
-#: utils/adt/windowfuncs.c:243
-msgid "argument of ntile must be greater than zero"
-msgstr "Argument von ntile muss größer als null sein"
+#: utils/adt/xml.c:3374
+msgid "empty XPath expression"
+msgstr "leerer XPath-Ausdruck"
 
-#: utils/adt/windowfuncs.c:465
-msgid "argument of nth_value must be greater than zero"
-msgstr "Argument von nth_value muss größer als null sein"
+#: utils/adt/xml.c:3422
+msgid "neither namespace name nor URI may be null"
+msgstr "weder Namensraumname noch URI dürfen NULL sein"
+
+#: utils/adt/xml.c:3429
+#, c-format
+msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
+msgstr "konnte XML-Namensraum mit Namen »%s« und URI »%s« nicht registrieren"
 
 #: utils/sort/logtape.c:213
 #, c-format
@@ -15970,27 +16178,18 @@ msgstr "konnte Unique Index »%s« nicht erstellen"
 msgid "Key %s is duplicated."
 msgstr "Schlüssel %s ist doppelt vorhanden."
 
-#: utils/cache/typcache.c:409
-#, c-format
-msgid "type %s is not composite"
-msgstr "Typ %s ist kein zusammengesetzter Typ"
-
-#: utils/cache/typcache.c:423
-msgid "record type has not been registered"
-msgstr "Record-Typ wurde nicht registriert"
-
-#: utils/cache/lsyscache.c:2396 utils/cache/lsyscache.c:2429
-#: utils/cache/lsyscache.c:2462 utils/cache/lsyscache.c:2495
+#: utils/cache/lsyscache.c:2414 utils/cache/lsyscache.c:2447
+#: utils/cache/lsyscache.c:2480 utils/cache/lsyscache.c:2513
 #, c-format
 msgid "type %s is only a shell"
 msgstr "Typ %s ist nur eine Hülle"
 
-#: utils/cache/lsyscache.c:2401
+#: utils/cache/lsyscache.c:2419
 #, c-format
 msgid "no input function available for type %s"
 msgstr "keine Eingabefunktion verfügbar für Typ %s"
 
-#: utils/cache/lsyscache.c:2434
+#: utils/cache/lsyscache.c:2452
 #, c-format
 msgid "no output function available for type %s"
 msgstr "keine Ausgabefunktion verfügbar für Typ %s"
@@ -15999,16 +16198,21 @@ msgstr "keine Ausgabefunktion verfügbar für Typ %s"
 msgid "cached plan must not change result type"
 msgstr "gecachter Plan darf den Ergebnistyp nicht ändern"
 
-#: utils/cache/relcache.c:4274
+#: utils/cache/relcache.c:4285
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr ""
 "konnte Initialisierungsdatei für Relationscache »%s« nicht erzeugen: %m"
 
-#: utils/cache/relcache.c:4276
+#: utils/cache/relcache.c:4287
 msgid "Continuing anyway, but there's something wrong."
 msgstr "Setze trotzdem fort, aber irgendwas stimmt nicht."
 
+#: utils/cache/relcache.c:4501
+#, c-format
+msgid "could not remove cache file \"%s\": %m"
+msgstr "konnte Cache-Datei »%s« nicht löschen: %m"
+
 #: utils/cache/relmapper.c:454
 msgid "cannot PREPARE a transaction that modified relation mapping"
 msgstr ""
@@ -16050,6 +16254,15 @@ msgstr "konnte Relation-Mapping-Datei »%s« nicht fsyncen: %m"
 msgid "could not close relation mapping file \"%s\": %m"
 msgstr "konnte Relation-Mapping-Datei »%s« nicht schließen: %m"
 
+#: utils/cache/typcache.c:629
+#, c-format
+msgid "type %s is not composite"
+msgstr "Typ %s ist kein zusammengesetzter Typ"
+
+#: utils/cache/typcache.c:643
+msgid "record type has not been registered"
+msgstr "Record-Typ wurde nicht registriert"
+
 #: utils/mmgr/aset.c:417
 #, c-format
 msgid "Failed while creating memory context \"%s\"."
@@ -16176,314 +16389,137 @@ msgstr "interne Funktion »%s« ist nicht in der internen Suchtabelle"
 #: utils/fmgr/fmgr.c:474
 #, c-format
 msgid "unrecognized API version %d reported by info function \"%s\""
-msgstr "Info-Funktion »%2$s« berichtete unbekannte API-Version %1$d"
-
-#: utils/fmgr/fmgr.c:845 utils/fmgr/fmgr.c:2106
-#, c-format
-msgid "function %u has too many arguments (%d, maximum is %d)"
-msgstr "Funktion %u hat zu viele Argumente (%d, Maximum ist %d)"
-
-#: utils/fmgr/funcapi.c:354
-#, c-format
-msgid ""
-"could not determine actual result type for function \"%s\" declared to "
-"return type %s"
-msgstr ""
-"konnte tatsächlichen Ergebnistyp von Funktion »%s« mit deklarierten "
-"Rückgabetyp %s nicht bestimmen"
-
-#: utils/fmgr/funcapi.c:1208 utils/fmgr/funcapi.c:1239
-msgid "number of aliases does not match number of columns"
-msgstr "Anzahl der Aliasnamen stimmt nicht mit der Anzahl der Spalten überein"
-
-#: utils/fmgr/funcapi.c:1233
-msgid "no column alias was provided"
-msgstr "Spaltenalias fehlt"
-
-#: utils/fmgr/funcapi.c:1257
-msgid "could not determine row description for function returning record"
-msgstr ""
-"konnte Zeilenbeschreibung für Funktion, die »record« zurückgibt, nicht "
-"ermitteln"
-
-#: utils/init/miscinit.c:115
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "konnte nicht in Verzeichnis »%s« wechseln: %m"
-
-#: utils/init/miscinit.c:381 utils/misc/guc.c:5255
-#, c-format
-msgid "cannot set parameter \"%s\" within security-restricted operation"
-msgstr ""
-"kann Parameter »%s« nicht in einer sicherheitsbeschränkten Operation setzen"
-
-#: utils/init/miscinit.c:460
-#, c-format
-msgid "role \"%s\" is not permitted to log in"
-msgstr "Rolle »%s« hat keine Berechtigung zum Einloggen"
-
-#: utils/init/miscinit.c:478
-#, c-format
-msgid "too many connections for role \"%s\""
-msgstr "zu viele Verbindungen von Rolle »%s«"
-
-#: utils/init/miscinit.c:538
-msgid "permission denied to set session authorization"
-msgstr "keine Berechtigung, um Sitzungsauthorisierung zu setzen"
-
-#: utils/init/miscinit.c:618
-#, c-format
-msgid "invalid role OID: %u"
-msgstr "ungültige Rollen-OID: %u"
-
-#: utils/init/miscinit.c:750
-#, c-format
-msgid "could not create lock file \"%s\": %m"
-msgstr "konnte Sperrdatei »%s« nicht erstellen: %m"
-
-#: utils/init/miscinit.c:764
-#, c-format
-msgid "could not open lock file \"%s\": %m"
-msgstr "konnte Sperrdatei »%s« nicht öffnen: %m"
-
-#: utils/init/miscinit.c:770
-#, c-format
-msgid "could not read lock file \"%s\": %m"
-msgstr "konnte Sperrdatei »%s« nicht lesen: %m"
-
-#: utils/init/miscinit.c:818
-#, c-format
-msgid "lock file \"%s\" already exists"
-msgstr "Sperrdatei »%s« existiert bereits"
-
-#: utils/init/miscinit.c:822
-#, c-format
-msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
-msgstr ""
-"Läuft bereits ein anderer postgres-Prozess (PID %d) im Datenverzeichnis »%s«?"
-
-#: utils/init/miscinit.c:824
-#, c-format
-msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
-msgstr ""
-"Läuft bereits ein anderer postmaster-Prozess (PID %d) im Datenverzeichnis "
-"»%s«?"
-
-#: utils/init/miscinit.c:827
-#, c-format
-msgid "Is another postgres (PID %d) using socket file \"%s\"?"
-msgstr ""
-"Verwendet bereits ein anderer postgres-Prozess (PID %d) die Socketdatei »%s«?"
-
-#: utils/init/miscinit.c:829
-#, c-format
-msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
-msgstr ""
-"Verwendet bereits ein anderer postmaster-Prozess (PID %d) die Socketdatei "
-"»%s«?"
-
-#: utils/init/miscinit.c:865
-#, c-format
-msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
-msgstr ""
-"bereits bestehender Shared-Memory-Block (Schlüssel %lu, ID %lu) wird noch "
-"benutzt"
-
-#: utils/init/miscinit.c:868
-#, 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 ""
-"Wenn Sie sich sicher sind, dass kein alter Serverprozess mehr läuft, "
-"entfernen Sie den Shared-Memory-Block oder löschen Sie einfach die Datei "
-"»%s«."
-
-#: utils/init/miscinit.c:884
-#, c-format
-msgid "could not remove old lock file \"%s\": %m"
-msgstr "konnte alte Sperrdatei »%s« nicht löschen: %m"
-
-#: utils/init/miscinit.c:886
-msgid ""
-"The file seems accidentally left over, but it could not be removed. Please "
-"remove the file by hand and try again."
-msgstr ""
-"Die Datei ist anscheinend aus Versehen übrig geblieben, konnte aber nicht "
-"gelöscht werden. Bitte entfernen Sie die Datei von Hand und versuchen Sie es "
-"erneut."
-
-#: utils/init/miscinit.c:920 utils/init/miscinit.c:931
-#: utils/init/miscinit.c:941
-#, c-format
-msgid "could not write lock file \"%s\": %m"
-msgstr "konnte Sperrdatei »%s« nicht schreiben: %m"
-
-#: utils/init/miscinit.c:1048 utils/misc/guc.c:7507
-#, c-format
-msgid "could not read from file \"%s\": %m"
-msgstr "konnte nicht aus Datei »%s« lesen: %m"
-
-#: utils/init/miscinit.c:1147 utils/init/miscinit.c:1160
-#, c-format
-msgid "\"%s\" is not a valid data directory"
-msgstr "»%s« ist kein gültiges Datenverzeichnis"
-
-#: utils/init/miscinit.c:1149
-#, c-format
-msgid "File \"%s\" is missing."
-msgstr "Die Datei »%s« fehlt."
-
-#: utils/init/miscinit.c:1162
-#, c-format
-msgid "File \"%s\" does not contain valid data."
-msgstr "Die Datei »%s« enthält keine gültigen Daten."
+msgstr "Info-Funktion »%2$s« berichtete unbekannte API-Version %1$d"
 
-#: utils/init/miscinit.c:1164
-msgid "You might need to initdb."
-msgstr "Sie müssen möglicherweise initdb ausführen."
+#: utils/fmgr/fmgr.c:845 utils/fmgr/fmgr.c:2106
+#, c-format
+msgid "function %u has too many arguments (%d, maximum is %d)"
+msgstr "Funktion %u hat zu viele Argumente (%d, Maximum ist %d)"
 
-#: utils/init/miscinit.c:1172
+#: utils/fmgr/funcapi.c:354
 #, c-format
 msgid ""
-"The data directory was initialized by PostgreSQL version %ld.%ld, which is "
-"not compatible with this version %s."
+"could not determine actual result type for function \"%s\" declared to "
+"return type %s"
 msgstr ""
-"Das Datenverzeichnis wurde von PostgreSQL Version %ld.%ld initialisiert, "
-"welche nicht mit dieser Version %s kompatibel ist."
+"konnte tatsächlichen Ergebnistyp von Funktion »%s« mit deklarierten "
+"Rückgabetyp %s nicht bestimmen"
 
-#: utils/init/miscinit.c:1220
-#, c-format
-msgid "invalid list syntax in parameter \"%s\""
-msgstr "ungültige Listensyntax für Parameter »%s«"
+#: utils/fmgr/funcapi.c:1208 utils/fmgr/funcapi.c:1239
+msgid "number of aliases does not match number of columns"
+msgstr "Anzahl der Aliasnamen stimmt nicht mit der Anzahl der Spalten überein"
 
-#: utils/init/miscinit.c:1257
-#, c-format
-msgid "loaded library \"%s\""
-msgstr "Bibliothek »%s« geladen"
+#: utils/fmgr/funcapi.c:1233
+msgid "no column alias was provided"
+msgstr "Spaltenalias fehlt"
 
-#: utils/init/postinit.c:225
-#, fuzzy, c-format
-msgid "replication connection authorized: user=%s"
-msgstr "Replikationsverbindung authorisiert: Benutzer=%s Host=%s"
+#: utils/fmgr/funcapi.c:1257
+msgid "could not determine row description for function returning record"
+msgstr ""
+"konnte Zeilenbeschreibung für Funktion, die »record« zurückgibt, nicht "
+"ermitteln"
 
-#: utils/init/postinit.c:229
-#, c-format
-msgid "connection authorized: user=%s database=%s"
-msgstr "Verbindung authorisiert: Benutzer=%s Datenbank=%s"
+#: utils/error/assert.c:37
+msgid "TRAP: ExceptionalCondition: bad arguments\n"
+msgstr "TRAP: ExceptionalCondition: fehlerhafte Argumente\n"
 
-#: utils/init/postinit.c:260
+#: utils/error/assert.c:40
 #, c-format
-msgid "database \"%s\" has disappeared from pg_database"
-msgstr "Datenbank »%s« ist aus pg_database verschwunden"
+msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
+msgstr "TRAP: %s(»%s«, Datei: »%s«, Zeile: %d)\n"
 
-#: utils/init/postinit.c:262
+#: utils/error/elog.c:1507
 #, c-format
-msgid "Database OID %u now seems to belong to \"%s\"."
-msgstr "Datenbank-OID %u gehört jetzt anscheinend zu »%s«."
+msgid "could not reopen file \"%s\" as stderr: %m"
+msgstr "konnte Datei »%s« nicht als stderr neu öffnen: %m"
 
-#: utils/init/postinit.c:282
+#: utils/error/elog.c:1520
 #, c-format
-msgid "database \"%s\" is not currently accepting connections"
-msgstr "Datenbank »%s« akzeptiert gegenwärtig keine Verbindungen"
+msgid "could not reopen file \"%s\" as stdout: %m"
+msgstr "konnte Datei »%s« nicht als stdou neu öffnen: %m"
 
-#: utils/init/postinit.c:295
-#, c-format
-msgid "permission denied for database \"%s\""
-msgstr "keine Berechtigung für Datenbank »%s«"
+#: utils/error/elog.c:1910 utils/error/elog.c:1920 utils/error/elog.c:1930
+msgid "[unknown]"
+msgstr "[unbekannt]"
 
-#: utils/init/postinit.c:296
-msgid "User does not have CONNECT privilege."
-msgstr "Benutzer hat das CONNECT-Privileg nicht."
+#: utils/error/elog.c:2281 utils/error/elog.c:2561 utils/error/elog.c:2639
+msgid "missing error text"
+msgstr "fehlender Fehlertext"
 
-#: utils/init/postinit.c:313
+#: utils/error/elog.c:2284 utils/error/elog.c:2287 utils/error/elog.c:2642
+#: utils/error/elog.c:2645
 #, c-format
-msgid "too many connections for database \"%s\""
-msgstr "zu viele Verbindungen für Datenbank »%s«"
+msgid " at character %d"
+msgstr " bei Zeichen %d"
 
-#: utils/init/postinit.c:335 utils/init/postinit.c:342
-msgid "database locale is incompatible with operating system"
-msgstr "Datenbank-Locale ist inkompatibel mit Betriebssystem"
+#: utils/error/elog.c:2297 utils/error/elog.c:2304
+msgid "DETAIL:  "
+msgstr "DETAIL:  "
 
-#: utils/init/postinit.c:336
-#, c-format
-msgid ""
-"The database was initialized with LC_COLLATE \"%s\",  which is not "
-"recognized by setlocale()."
-msgstr ""
-"Die Datenbank wurde mit LC_COLLATE »%s« initialisiert, was von setlocale() "
-"nicht erkannt wird."
+#: utils/error/elog.c:2311
+msgid "HINT:  "
+msgstr "TIPP:  "
 
-#: utils/init/postinit.c:338 utils/init/postinit.c:345
-msgid ""
-"Recreate the database with another locale or install the missing locale."
-msgstr ""
-"Erzeugen Sie die Datenbank neu mit einer anderen Locale oder installieren "
-"Sie die fehlende Locale."
+#: utils/error/elog.c:2318
+msgid "QUERY:  "
+msgstr "ANFRAGE:  "
 
-#: utils/init/postinit.c:343
-#, c-format
-msgid ""
-"The database was initialized with LC_CTYPE \"%s\",  which is not recognized "
-"by setlocale()."
-msgstr ""
-"Die Datenbank wurde mit LC_CTYPE »%s« initialisiert, was von setlocale() "
-"nicht erkannt wird."
+#: utils/error/elog.c:2325
+msgid "CONTEXT:  "
+msgstr "ZUSAMMENHANG:  "
 
-#: utils/init/postinit.c:597
-msgid "no roles are defined in this database system"
-msgstr "in diesem Datenbanksystem sind keine Rollen definiert"
+#: utils/error/elog.c:2335
+#, c-format
+msgid "LOCATION:  %s, %s:%d\n"
+msgstr "ORT:  %s, %s:%d\n"
 
-#: utils/init/postinit.c:598
+#: utils/error/elog.c:2342
 #, c-format
-msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
-msgstr "Sie sollten sofort CREATE USER \"%s\" SUPERUSER; ausführen."
+msgid "LOCATION:  %s:%d\n"
+msgstr "ORT:  %s:%d\n"
 
-#: utils/init/postinit.c:621
-msgid "new replication connections are not allowed during database shutdown"
-msgstr ""
-"während des Herunterfahrens der Datenbank sind keine neuen "
-"Replikationsverbindungen erlaubt"
+#: utils/error/elog.c:2356
+msgid "STATEMENT:  "
+msgstr "ANWEISUNG:  "
 
-#: utils/init/postinit.c:625
-msgid "must be superuser to connect during database shutdown"
-msgstr ""
-"nur Superuser können während des Herunterfahrens der Datenbank verbinden"
+#. translator: This string will be truncated at 47
+#. characters expanded.
+#: utils/error/elog.c:2754
+#, c-format
+msgid "operating system error %d"
+msgstr "Betriebssystemfehler %d"
 
-#: utils/init/postinit.c:635
-msgid "must be superuser to connect in binary upgrade mode"
-msgstr "nur Superuser können im Binary-Upgrade-Modus verbinden"
+#: utils/error/elog.c:2777
+msgid "DEBUG"
+msgstr "DEBUG"
 
-#: utils/init/postinit.c:649
-msgid ""
-"remaining connection slots are reserved for non-replication superuser "
-"connections"
-msgstr ""
-"die verbleibenden Verbindungen sind für Superuser auf Nicht-"
-"Replikationsverbindungen reserviert"
+#: utils/error/elog.c:2781
+msgid "LOG"
+msgstr "LOG"
 
-#: utils/init/postinit.c:664
-msgid "must be replication role to start walsender"
-msgstr "nur Replikationsrollen können WAL-Sender starten"
+#: utils/error/elog.c:2784
+msgid "INFO"
+msgstr "INFO"
 
-#: utils/init/postinit.c:724
-#, c-format
-msgid "database %u does not exist"
-msgstr "Datenbank %u existiert nicht"
+#: utils/error/elog.c:2787
+msgid "NOTICE"
+msgstr "HINWEIS"
 
-#: utils/init/postinit.c:776
-msgid "It seems to have just been dropped or renamed."
-msgstr "Sie wurde anscheinend gerade gelöscht oder umbenannt."
+#: utils/error/elog.c:2790
+msgid "WARNING"
+msgstr "WARNUNG"
 
-#: utils/init/postinit.c:794
-#, c-format
-msgid "The database subdirectory \"%s\" is missing."
-msgstr "Das Datenbankunterverzeichnis »%s« fehlt."
+#: utils/error/elog.c:2793
+msgid "ERROR"
+msgstr "FEHLER"
 
-#: utils/init/postinit.c:799
-#, c-format
-msgid "could not access directory \"%s\": %m"
-msgstr "konnte nicht auf Verzeichnis »%s« zugreifen: %m"
+#: utils/error/elog.c:2796
+msgid "FATAL"
+msgstr "FATAL"
+
+#: utils/error/elog.c:2799
+msgid "PANIC"
+msgstr "PANIK"
 
 #: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:136
 #: utils/mb/conversion_procs/utf8_and_iso8859/utf8_and_iso8859.c:163
@@ -16497,139 +16533,55 @@ msgstr "unerwartete Kodierungs-ID %d für ISO-8859-Zeichensatz"
 msgid "unexpected encoding ID %d for WIN character sets"
 msgstr "unerwartete Kodierungs-ID %d für WIN-Zeichensatz"
 
-#: utils/mb/conv.c:509
-#, c-format
-msgid "invalid encoding number: %d"
-msgstr "ungültige Kodierungsnummer: %d"
-
 #: utils/mb/encnames.c:485
 msgid "encoding name too long"
 msgstr "Kodierungsname zu lang"
 
 #: utils/mb/mbutils.c:281
-#, c-format
-msgid "conversion between %s and %s is not supported"
-msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt"
-
-#: utils/mb/mbutils.c:351
-#, c-format
-msgid ""
-"default conversion function for encoding \"%s\" to \"%s\" does not exist"
-msgstr "Standardumwandlung von Kodierung »%s« nach »%s« existiert nicht"
-
-#: utils/mb/mbutils.c:375 utils/mb/mbutils.c:676
-#, c-format
-msgid "String of %d bytes is too long for encoding conversion."
-msgstr "Zeichenkette mit %d Bytes ist zu lang für Kodierungsumwandlung."
-
-#: utils/mb/mbutils.c:462
-#, c-format
-msgid "invalid source encoding name \"%s\""
-msgstr "ungültiger Quellkodierungsname »%s«"
-
-#: utils/mb/mbutils.c:467
-#, c-format
-msgid "invalid destination encoding name \"%s\""
-msgstr "ungültiger Zielkodierungsname »%s«"
-
-#: utils/mb/mbutils.c:589
-#, c-format
-msgid "invalid byte value for encoding \"%s\": 0x%02x"
-msgstr "ungültiger Byte-Wert für Kodierung »%s«: 0x%02x"
-
-#: utils/mb/wchar.c:1611
-#, c-format
-msgid "invalid byte sequence for encoding \"%s\": 0x%s"
-msgstr "ungültige Byte-Sequenz für Kodierung »%s«: 0x%s"
-
-#: utils/mb/wchar.c:1640
-#, c-format
-msgid "character 0x%s of encoding \"%s\" has no equivalent in \"%s\""
-msgstr "Zeichen 0x%s in Kodierung »%s« hat keine Entsprechung in »%s«"
-
-#: utils/misc/tzparser.c:61
-#, c-format
-msgid ""
-"time zone abbreviation \"%s\" is too long (maximum %d characters) in time "
-"zone file \"%s\", line %d"
-msgstr ""
-"Zeitzonenabkürzung »%s« ist zu lang (maximal %d Zeichen) in Zeitzonendatei "
-"»%s«, Zeile %d"
-
-#: utils/misc/tzparser.c:68
-#, c-format
-msgid ""
-"time zone offset %d is not a multiple of 900 sec (15 min) in time zone file "
-"\"%s\", line %d"
-msgstr ""
-"Zeitzonenabstand %d ist kein Vielfaches von 900 s (15 min) in Zeitzonendatei "
-"»%s«, Zeile %d"
-
-#: utils/misc/tzparser.c:80
-#, c-format
-msgid "time zone offset %d is out of range in time zone file \"%s\", line %d"
-msgstr ""
-"Zeitzonenabstand %d ist außerhalb des gültigen Bereichs in Zeitzonendatei "
-"»%s«, Zeile %d"
-
-#: utils/misc/tzparser.c:115
-#, c-format
-msgid "missing time zone abbreviation in time zone file \"%s\", line %d"
-msgstr "fehlende Zeitzonenabkürzung in Zeitzonendatei »%s«, Zeile %d"
-
-#: utils/misc/tzparser.c:124
-#, c-format
-msgid "missing time zone offset in time zone file \"%s\", line %d"
-msgstr "fehlender Zeitzonenabstand in Zeitzonendatei »%s«, Zeile %d"
-
-#: utils/misc/tzparser.c:131
-#, c-format
-msgid "invalid number for time zone offset in time zone file \"%s\", line %d"
-msgstr "ungültige Zahl für Zeitzonenabstand in Zeitzonendatei »%s«, Zeile %d"
+#, c-format
+msgid "conversion between %s and %s is not supported"
+msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt"
 
-#: utils/misc/tzparser.c:154
+#: utils/mb/mbutils.c:351
 #, c-format
-msgid "invalid syntax in time zone file \"%s\", line %d"
-msgstr "ungültige Syntax in Zeitzonendatei »%s«, Zeile %d"
+msgid ""
+"default conversion function for encoding \"%s\" to \"%s\" does not exist"
+msgstr "Standardumwandlung von Kodierung »%s« nach »%s« existiert nicht"
 
-#: utils/misc/tzparser.c:218
+#: utils/mb/mbutils.c:375 utils/mb/mbutils.c:676
 #, c-format
-msgid "time zone abbreviation \"%s\" is multiply defined"
-msgstr "Zeitzonenabkürzung »%s« ist mehrfach definiert"
+msgid "String of %d bytes is too long for encoding conversion."
+msgstr "Zeichenkette mit %d Bytes ist zu lang für Kodierungsumwandlung."
 
-#: utils/misc/tzparser.c:220
+#: utils/mb/mbutils.c:462
 #, c-format
-msgid ""
-"Entry in time zone file \"%s\", line %d, conflicts with entry in file \"%s"
-"\", line %d."
-msgstr ""
-"Eintrag in Zeitzonendatei »%s«, Zeile %d, steht im Konflikt mit Eintrag in "
-"Datei »%s«, Zeile %d."
+msgid "invalid source encoding name \"%s\""
+msgstr "ungültiger Quellkodierungsname »%s«"
 
-#: utils/misc/tzparser.c:285
+#: utils/mb/mbutils.c:467
 #, c-format
-msgid "invalid time zone file name \"%s\""
-msgstr "ungültiger Zeitzonen-Dateiname »%s«"
+msgid "invalid destination encoding name \"%s\""
+msgstr "ungültiger Zielkodierungsname »%s«"
 
-#: utils/misc/tzparser.c:298
+#: utils/mb/mbutils.c:589
 #, c-format
-msgid "time zone file recursion limit exceeded in file \"%s\""
-msgstr "Rekursionsbeschränkung für Zeitzonendatei überschritten in Datei »%s«"
+msgid "invalid byte value for encoding \"%s\": 0x%02x"
+msgstr "ungültiger Byte-Wert für Kodierung »%s«: 0x%02x"
 
-#: utils/misc/tzparser.c:337 utils/misc/tzparser.c:350
+#: utils/mb/wchar.c:1611
 #, c-format
-msgid "could not read time zone file \"%s\": %m"
-msgstr "konnte Zeitzonendatei »%s« nicht lesen: %m"
+msgid "invalid byte sequence for encoding \"%s\": 0x%s"
+msgstr "ungültige Byte-Sequenz für Kodierung »%s«: 0x%s"
 
-#: utils/misc/tzparser.c:360
+#: utils/mb/wchar.c:1640
 #, c-format
-msgid "line is too long in time zone file \"%s\", line %d"
-msgstr "Zeile ist zu lang in Zeitzonendatei »%s«, Zeile %d"
+msgid "character 0x%s of encoding \"%s\" has no equivalent in \"%s\""
+msgstr "Zeichen 0x%s in Kodierung »%s« hat keine Entsprechung in »%s«"
 
-#: utils/misc/tzparser.c:383
+#: utils/mb/conv.c:509
 #, c-format
-msgid "@INCLUDE without file name in time zone file \"%s\", line %d"
-msgstr "@INCLUDE ohne Dateiname in Zeitzonendatei »%s«, Zeile %d"
+msgid "invalid encoding number: %d"
+msgstr "ungültige Kodierungsnummer: %d"
 
 #: utils/misc/guc.c:525
 msgid "Ungrouped"
@@ -16692,179 +16644,183 @@ msgid "Write-Ahead Log / Archiving"
 msgstr "Write-Ahead-Log / Archivierung"
 
 #: utils/misc/guc.c:555
-msgid "Write-Ahead Log / Streaming Replication"
-msgstr "Write-Ahead-Log / Streaming-Replikation"
+msgid "Replication"
+msgstr "Replikation"
 
 #: utils/misc/guc.c:557
-msgid "Write-Ahead Log / Standby Servers"
-msgstr "Write-Ahead-Log / Standby-Server"
+msgid "Replication / Master Server"
+msgstr "Replikation / Master-Server"
 
 #: utils/misc/guc.c:559
+msgid "Replication / Standby Servers"
+msgstr "Replikation / Standby-Server"
+
+#: utils/misc/guc.c:561
 msgid "Query Tuning"
 msgstr "Anfragetuning"
 
-#: utils/misc/guc.c:561
+#: utils/misc/guc.c:563
 msgid "Query Tuning / Planner Method Configuration"
 msgstr "Anfragetuning / Planermethoden"
 
-#: utils/misc/guc.c:563
+#: utils/misc/guc.c:565
 msgid "Query Tuning / Planner Cost Constants"
 msgstr "Anfragetuning / Planerkosten"
 
-#: utils/misc/guc.c:565
+#: utils/misc/guc.c:567
 msgid "Query Tuning / Genetic Query Optimizer"
 msgstr "Anfragetuning / Genetischer Anfrageoptimierer"
 
-#: utils/misc/guc.c:567
+#: utils/misc/guc.c:569
 msgid "Query Tuning / Other Planner Options"
 msgstr "Anfragetuning / Andere Planeroptionen"
 
-#: utils/misc/guc.c:569
+#: utils/misc/guc.c:571
 msgid "Reporting and Logging"
 msgstr "Berichte und Logging"
 
-#: utils/misc/guc.c:571
+#: utils/misc/guc.c:573
 msgid "Reporting and Logging / Where to Log"
 msgstr "Berichte und Logging / Wohin geloggt wird"
 
-#: utils/misc/guc.c:573
+#: utils/misc/guc.c:575
 msgid "Reporting and Logging / When to Log"
 msgstr "Berichte und Logging / Wann geloggt wird"
 
-#: utils/misc/guc.c:575
+#: utils/misc/guc.c:577
 msgid "Reporting and Logging / What to Log"
 msgstr "Berichte und Logging / Was geloggt wird"
 
-#: utils/misc/guc.c:577
+#: utils/misc/guc.c:579
 msgid "Statistics"
 msgstr "Statistiken"
 
-#: utils/misc/guc.c:579
+#: utils/misc/guc.c:581
 msgid "Statistics / Monitoring"
 msgstr "Statistiken / Überwachung"
 
-#: utils/misc/guc.c:581
+#: utils/misc/guc.c:583
 msgid "Statistics / Query and Index Statistics Collector"
 msgstr "Statistiken / Statistiksammler für Anfragen und Indexe"
 
-#: utils/misc/guc.c:583
+#: utils/misc/guc.c:585
 msgid "Autovacuum"
 msgstr "Autovacuum"
 
-#: utils/misc/guc.c:585
+#: utils/misc/guc.c:587
 msgid "Client Connection Defaults"
 msgstr "Standardeinstellungen für Clientverbindungen"
 
-#: utils/misc/guc.c:587
+#: utils/misc/guc.c:589
 msgid "Client Connection Defaults / Statement Behavior"
 msgstr "Standardeinstellungen für Clientverbindungen / Anweisungsverhalten"
 
-#: utils/misc/guc.c:589
+#: utils/misc/guc.c:591
 msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "Standardeinstellungen für Clientverbindungen / Locale und Formatierung"
 
-#: utils/misc/guc.c:591
+#: utils/misc/guc.c:593
 msgid "Client Connection Defaults / Other Defaults"
 msgstr "Standardeinstellungen für Clientverbindungen / Andere"
 
-#: utils/misc/guc.c:593
+#: utils/misc/guc.c:595
 msgid "Lock Management"
 msgstr "Sperrenverwaltung"
 
-#: utils/misc/guc.c:595
+#: utils/misc/guc.c:597
 msgid "Version and Platform Compatibility"
 msgstr "Versions- und Plattformkompatibilität"
 
-#: utils/misc/guc.c:597
+#: utils/misc/guc.c:599
 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
 msgstr "Versions- und Plattformkompatibilität / Frühere PostgreSQL-Versionen"
 
-#: utils/misc/guc.c:599
+#: utils/misc/guc.c:601
 msgid "Version and Platform Compatibility / Other Platforms and Clients"
 msgstr "Versions- und Plattformkompatibilität / Andere Plattformen und Clients"
 
-#: utils/misc/guc.c:601
+#: utils/misc/guc.c:603
 msgid "Error Handling"
 msgstr "Fehlerbehandlung"
 
-#: utils/misc/guc.c:603
+#: utils/misc/guc.c:605
 msgid "Preset Options"
 msgstr "Voreingestellte Optionen"
 
-#: utils/misc/guc.c:605
+#: utils/misc/guc.c:607
 msgid "Customized Options"
 msgstr "Angepasste Optionen"
 
-#: utils/misc/guc.c:607
+#: utils/misc/guc.c:609
 msgid "Developer Options"
 msgstr "Entwickleroptionen"
 
-#: utils/misc/guc.c:661
+#: utils/misc/guc.c:663
 msgid "Enables the planner's use of sequential-scan plans."
 msgstr "Ermöglicht sequenzielle Scans in Planer."
 
-#: utils/misc/guc.c:670
+#: utils/misc/guc.c:672
 msgid "Enables the planner's use of index-scan plans."
 msgstr "Ermöglicht Index-Scans im Planer."
 
-#: utils/misc/guc.c:679
+#: utils/misc/guc.c:681
 msgid "Enables the planner's use of bitmap-scan plans."
 msgstr "Ermöglicht Bitmap-Scans im Planer."
 
-#: utils/misc/guc.c:688
+#: utils/misc/guc.c:690
 msgid "Enables the planner's use of TID scan plans."
 msgstr "Ermöglicht TID-Scans im Planer."
 
-#: utils/misc/guc.c:697
+#: utils/misc/guc.c:699
 msgid "Enables the planner's use of explicit sort steps."
 msgstr "Ermöglicht Sortierschritte im Planer."
 
-#: utils/misc/guc.c:706
+#: utils/misc/guc.c:708
 msgid "Enables the planner's use of hashed aggregation plans."
 msgstr "Ermöglicht Hash-Aggregierung im Planer."
 
-#: utils/misc/guc.c:715
+#: utils/misc/guc.c:717
 msgid "Enables the planner's use of materialization."
 msgstr "Ermöglicht Materialisierung im Planer."
 
-#: utils/misc/guc.c:724
+#: utils/misc/guc.c:726
 msgid "Enables the planner's use of nested-loop join plans."
 msgstr "Ermöglicht Nested-Loop-Verbunde im Planer."
 
-#: utils/misc/guc.c:733
+#: utils/misc/guc.c:735
 msgid "Enables the planner's use of merge join plans."
 msgstr "Ermöglicht Merge-Verbunde im Planer."
 
-#: utils/misc/guc.c:742
+#: utils/misc/guc.c:744
 msgid "Enables the planner's use of hash join plans."
 msgstr "Ermöglicht Hash-Verbunde im Planer."
 
-#: utils/misc/guc.c:751
+#: utils/misc/guc.c:753
 msgid "Enables genetic query optimization."
 msgstr "Ermöglicht genetische Anfrageoptimierung."
 
-#: utils/misc/guc.c:752
+#: utils/misc/guc.c:754
 msgid "This algorithm attempts to do planning without exhaustive searching."
 msgstr ""
 "Dieser Algorithmus versucht das Planen ohne erschöpfende Suche durchzuführen."
 
-#: utils/misc/guc.c:762
+#: utils/misc/guc.c:764
 msgid "Shows whether the current user is a superuser."
 msgstr "Zeigt, ob der aktuelle Benutzer ein Superuser ist."
 
-#: utils/misc/guc.c:772
+#: utils/misc/guc.c:774
 msgid "Enables advertising the server via Bonjour."
 msgstr "Ermöglicht die Bekanntgabe des Servers mit Bonjour."
 
-#: utils/misc/guc.c:781
+#: utils/misc/guc.c:783
 msgid "Enables SSL connections."
 msgstr "Ermöglicht SSL-Verbindungen."
 
-#: utils/misc/guc.c:790
+#: utils/misc/guc.c:792
 msgid "Forces synchronization of updates to disk."
 msgstr "Erzwingt die Synchronisierung von Aktualisierungen auf Festplatte."
 
-#: utils/misc/guc.c:791
+#: utils/misc/guc.c:793
 msgid ""
 "The server will use the fsync() system call in several places to make sure "
 "that updates are physically written to disk. This insures that a database "
@@ -16877,11 +16833,11 @@ msgstr ""
 "Betriebssystemabsturz oder Hardwarefehler in einem korrekten Zustand "
 "wiederhergestellt werden kann."
 
-#: utils/misc/guc.c:802
+#: utils/misc/guc.c:804
 msgid "Continues processing past damaged page headers."
 msgstr "Setzt die Verarbeitung trotz kaputter Seitenköpfe fort."
 
-#: utils/misc/guc.c:803
+#: utils/misc/guc.c:805
 msgid ""
 "Detection of a damaged page header normally causes PostgreSQL to report an "
 "error, aborting the current transaction. Setting zero_damaged_pages to true "
@@ -16895,13 +16851,13 @@ msgstr ""
 "Seiten mit Nullen gefüllt und die Verarbeitung geht weiter. Dieses Verhalten "
 "zerstört Daten, nämlich alle Zeilen in der kaputten Seite."
 
-#: utils/misc/guc.c:816
+#: utils/misc/guc.c:818
 msgid "Writes full pages to WAL when first modified after a checkpoint."
 msgstr ""
 "Schreibt volle Seiten in den WAL, sobald sie nach einem Checkpoint geändert "
 "werden."
 
-#: utils/misc/guc.c:817
+#: utils/misc/guc.c:819
 msgid ""
 "A page write in process during an operating system crash might be only "
 "partially written to disk.  During recovery, the row changes stored in WAL "
@@ -16914,11 +16870,11 @@ msgstr ""
 "Option schreibt Seiten, sobald sie nach einem Checkpoint geändert worden "
 "sind, damit eine volle Wiederherstellung möglich ist."
 
-#: utils/misc/guc.c:829
+#: utils/misc/guc.c:831
 msgid "Runs the server silently."
 msgstr "Startet den Server ohne Ausgabe."
 
-#: utils/misc/guc.c:830
+#: utils/misc/guc.c:832
 msgid ""
 "If this parameter is set, the server will automatically run in the "
 "background and any controlling terminals are dissociated."
@@ -16926,81 +16882,81 @@ msgstr ""
 "Wenn dieser Parameter gesetzt ist, dann wird der Server automatisch im "
 "Hintergrund gestartet und alle kontrollierenden Terminals werden abgetrennt."
 
-#: utils/misc/guc.c:839
+#: utils/misc/guc.c:841
 msgid "Logs each checkpoint."
 msgstr "Schreibt jeden Checkpoint in den Log."
 
-#: utils/misc/guc.c:848
+#: utils/misc/guc.c:850
 msgid "Logs each successful connection."
 msgstr "Schreibt jede erfolgreiche Verbindung in den Log."
 
-#: utils/misc/guc.c:857
+#: utils/misc/guc.c:859
 msgid "Logs end of a session, including duration."
 msgstr "Schreibt jedes Verbindungsende mit Sitzungszeit in den Log."
 
-#: utils/misc/guc.c:866
+#: utils/misc/guc.c:868
 msgid "Turns on various assertion checks."
 msgstr "Schaltet diverse Assertion-Prüfungen ein."
 
-#: utils/misc/guc.c:867
+#: utils/misc/guc.c:869
 msgid "This is a debugging aid."
 msgstr "Das ist eine Debug-Hilfe."
 
-#: utils/misc/guc.c:881
+#: utils/misc/guc.c:883
 msgid "Terminate session on any error."
-msgstr ""
+msgstr "Sitzung bei jedem Fehler abbrechen."
 
-#: utils/misc/guc.c:890
-msgid "Reinitialize after backend crash."
-msgstr ""
+#: utils/misc/guc.c:892
+msgid "Reinitialize server after backend crash."
+msgstr "Server nach Absturz eines Serverprozesses reinitialisieren."
 
-#: utils/misc/guc.c:900
+#: utils/misc/guc.c:902
 msgid "Logs the duration of each completed SQL statement."
 msgstr "Loggt die Dauer jeder abgeschlossenen SQL-Anweisung."
 
-#: utils/misc/guc.c:909
+#: utils/misc/guc.c:911
 msgid "Logs each query's parse tree."
 msgstr "Scheibt den Parsebaum jeder Anfrage in den Log."
 
-#: utils/misc/guc.c:918
+#: utils/misc/guc.c:920
 msgid "Logs each query's rewritten parse tree."
 msgstr "Schreibt den umgeschriebenen Parsebaum jeder Anfrage in den Log."
 
-#: utils/misc/guc.c:927
+#: utils/misc/guc.c:929
 msgid "Logs each query's execution plan."
 msgstr "Schreibt der Ausführungsplan jeder Anfrage in den Log."
 
-#: utils/misc/guc.c:936
+#: utils/misc/guc.c:938
 msgid "Indents parse and plan tree displays."
 msgstr "Rückt die Anzeige von Parse- und Planbäumen ein."
 
-#: utils/misc/guc.c:945
+#: utils/misc/guc.c:947
 msgid "Writes parser performance statistics to the server log."
 msgstr "Schreibt Parser-Leistungsstatistiken in den Serverlog."
 
-#: utils/misc/guc.c:954
+#: utils/misc/guc.c:956
 msgid "Writes planner performance statistics to the server log."
 msgstr "Schreibt Planer-Leistungsstatistiken in den Serverlog."
 
-#: utils/misc/guc.c:963
+#: utils/misc/guc.c:965
 msgid "Writes executor performance statistics to the server log."
 msgstr "Schreibt Executor-Leistungsstatistiken in den Serverlog."
 
-#: utils/misc/guc.c:972
+#: utils/misc/guc.c:974
 msgid "Writes cumulative performance statistics to the server log."
 msgstr "Schreibt Gesamtleistungsstatistiken in den Serverlog."
 
-#: utils/misc/guc.c:982 utils/misc/guc.c:1047 utils/misc/guc.c:1057
-#: utils/misc/guc.c:1067 utils/misc/guc.c:1077 utils/misc/guc.c:1802
-#: utils/misc/guc.c:1812
+#: utils/misc/guc.c:984 utils/misc/guc.c:1049 utils/misc/guc.c:1059
+#: utils/misc/guc.c:1069 utils/misc/guc.c:1079 utils/misc/guc.c:1804
+#: utils/misc/guc.c:1814
 msgid "No description available."
 msgstr "Keine Beschreibung verfügbar."
 
-#: utils/misc/guc.c:994
+#: utils/misc/guc.c:996
 msgid "Collects information about executing commands."
 msgstr "Sammelt Informationen über ausgeführte Befehle."
 
-#: utils/misc/guc.c:995
+#: utils/misc/guc.c:997
 msgid ""
 "Enables the collection of information on the currently executing command of "
 "each session, along with the time at which that command began execution."
@@ -17009,16 +16965,16 @@ msgstr ""
 "jeder Sitzung ein, einschließlich der Zeit, and dem die Befehlsausführung "
 "begann."
 
-#: utils/misc/guc.c:1005
+#: utils/misc/guc.c:1007
 msgid "Collects statistics on database activity."
 msgstr "Sammelt Statistiken über Datenbankaktivität."
 
-#: utils/misc/guc.c:1015
+#: utils/misc/guc.c:1017
 msgid "Updates the process title to show the active SQL command."
 msgstr ""
 "Der Prozesstitel wird aktualisiert, um den aktuellen SQL-Befehl anzuzeigen."
 
-#: utils/misc/guc.c:1016
+#: utils/misc/guc.c:1018
 msgid ""
 "Enables updating of the process title every time a new SQL command is "
 "received by the server."
@@ -17026,23 +16982,23 @@ msgstr ""
 "Ermöglicht das Aktualisieren des Prozesstitels bei jedem von Server "
 "empfangenen neuen SQL-Befehl."
 
-#: utils/misc/guc.c:1025
+#: utils/misc/guc.c:1027
 msgid "Starts the autovacuum subprocess."
 msgstr "Startet den Autovacuum-Prozess."
 
-#: utils/misc/guc.c:1035
+#: utils/misc/guc.c:1037
 msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Erzeugt Debug-Ausgabe für LISTEN und NOTIFY."
 
-#: utils/misc/guc.c:1089
+#: utils/misc/guc.c:1091
 msgid "Logs long lock waits."
 msgstr "Schreibt Meldungen über langes Warten auf Sperren in den Log."
 
-#: utils/misc/guc.c:1099
+#: utils/misc/guc.c:1101
 msgid "Logs the host name in the connection logs."
 msgstr "Schreibt den Hostnamen jeder Verbindung in den Log."
 
-#: utils/misc/guc.c:1100
+#: utils/misc/guc.c:1102
 msgid ""
 "By default, connection logs only show the IP address of the connecting host. "
 "If you want them to show the host name you can turn this on, but depending "
@@ -17054,15 +17010,15 @@ msgstr ""
 "diese Option anschalten, aber je nachdem, wie Ihr DNS eingerichtet ist, kann "
 "das die Leistung nicht unerheblich beeinträchtigen."
 
-#: utils/misc/guc.c:1111
+#: utils/misc/guc.c:1113
 msgid "Causes subtables to be included by default in various commands."
 msgstr "Schließt abgeleitete Tabellen in diverse Befehle automatisch ein."
 
-#: utils/misc/guc.c:1120
+#: utils/misc/guc.c:1122
 msgid "Encrypt passwords."
 msgstr "Verschlüsselt Passwörter."
 
-#: utils/misc/guc.c:1121
+#: utils/misc/guc.c:1123
 msgid ""
 "When a password is specified in CREATE USER or ALTER USER without writing "
 "either ENCRYPTED or UNENCRYPTED, this parameter determines whether the "
@@ -17072,11 +17028,11 @@ msgstr ""
 "UNENCRYPTED angegeben ist, bestimmt dieser Parameter, ob das Passwort "
 "verschlüsselt wird."
 
-#: utils/misc/guc.c:1131
+#: utils/misc/guc.c:1133
 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
 msgstr "Behandelt »ausdruck=NULL« als »ausdruck IS NULL«."
 
-#: utils/misc/guc.c:1132
+#: utils/misc/guc.c:1134
 msgid ""
 "When turned on, expressions of the form expr = NULL (or NULL = expr) are "
 "treated as expr IS NULL, that is, they return true if expr evaluates to the "
@@ -17089,15 +17045,15 @@ msgstr ""
 "korrekte Verhalten von ausdruck = NULL ist immer den NULL-Wert (für "
 "unbekannt) zurückzugeben."
 
-#: utils/misc/guc.c:1144
+#: utils/misc/guc.c:1146
 msgid "Enables per-database user names."
 msgstr "Ermöglicht Datenbank-lokale Benutzernamen."
 
-#: utils/misc/guc.c:1154
+#: utils/misc/guc.c:1156
 msgid "This parameter doesn't do anything."
 msgstr "Dieser Parameter macht nichts."
 
-#: utils/misc/guc.c:1155
+#: utils/misc/guc.c:1157
 msgid ""
 "It's just here so that we won't choke on SET AUTOCOMMIT TO ON from 7.3-"
 "vintage clients."
@@ -17105,36 +17061,38 @@ msgstr ""
 "Er ist nur hier, damit es keine Probleme mit 7.3-Clients gibt, die SET "
 "AUTOCOMMIT TO ON ausführen."
 
-#: utils/misc/guc.c:1164
+#: utils/misc/guc.c:1166
 msgid "Sets the default read-only status of new transactions."
 msgstr ""
 "Setzt den Standardwert für die Read-Only-Einstellung einer neuen Transaktion."
 
-#: utils/misc/guc.c:1173
+#: utils/misc/guc.c:1175
 msgid "Sets the current transaction's read-only status."
 msgstr "Setzt die Read-Only-Einstellung der aktuellen Transaktion."
 
-#: utils/misc/guc.c:1183
-#, fuzzy
+#: utils/misc/guc.c:1185
 msgid "Sets the default deferrable status of new transactions."
 msgstr ""
-"Setzt den Standardwert für die Read-Only-Einstellung einer neuen Transaktion."
+"Setzt den Standardwert für die Deferrable-Einstellung einer neuen "
+"Transaktion."
 
-#: utils/misc/guc.c:1192
+#: utils/misc/guc.c:1194
 msgid ""
 "Whether to defer a read-only serializable transaction until it can be "
 "executed with no possible serialization failures."
 msgstr ""
+"Ob eine serialisierbare Read-Only-Transaktion aufgeschoben werden soll, bis "
+"sie ohne mögliche Serialisierungsfehler ausgeführt werden kann."
 
-#: utils/misc/guc.c:1202
+#: utils/misc/guc.c:1204
 msgid "Check function bodies during CREATE FUNCTION."
 msgstr "Prüft Funktionskörper bei der Ausführung von CREATE FUNCTION."
 
-#: utils/misc/guc.c:1211
+#: utils/misc/guc.c:1213
 msgid "Enable input of NULL elements in arrays."
 msgstr "Ermöglicht die Eingabe von NULL-Elementen in Arrays."
 
-#: utils/misc/guc.c:1212
+#: utils/misc/guc.c:1214
 msgid ""
 "When turned on, unquoted NULL in an array input value means a null value; "
 "otherwise it is taken literally."
@@ -17142,42 +17100,42 @@ msgstr ""
 "Wenn dies eingeschaltet ist, wird ein nicht gequotetes NULL in einem Array-"
 "Eingabewert als NULL-Wert interpretiert, ansonsten als Zeichenkette."
 
-#: utils/misc/guc.c:1222
+#: utils/misc/guc.c:1224
 msgid "Create new tables with OIDs by default."
 msgstr "Erzeugt neue Tabellen standardmäßig mit OIDs."
 
-#: utils/misc/guc.c:1231
+#: utils/misc/guc.c:1233
 msgid ""
 "Start a subprocess to capture stderr output and/or csvlogs into log files."
 msgstr ""
 "Startet einen Subprozess, um die Stderr-Ausgabe und/oder CSV-Logs in "
 "Logdateien auszugeben."
 
-#: utils/misc/guc.c:1240
+#: utils/misc/guc.c:1242
 msgid "Truncate existing log files of same name during log rotation."
 msgstr "Kürzt existierende Logdateien mit dem selben Namen beim Rotieren."
 
-#: utils/misc/guc.c:1251
+#: utils/misc/guc.c:1253
 msgid "Emit information about resource usage in sorting."
 msgstr "Gibt Informationen über die Ressourcenverwendung beim Sortieren aus."
 
-#: utils/misc/guc.c:1265
+#: utils/misc/guc.c:1267
 msgid "Generate debugging output for synchronized scanning."
 msgstr "Erzeugt Debug-Ausgabe für synchronisiertes Scannen."
 
-#: utils/misc/guc.c:1280
+#: utils/misc/guc.c:1282
 msgid "Enable bounded sorting using heap sort."
 msgstr "Ermöglicht Bounded Sorting mittels Heap-Sort."
 
-#: utils/misc/guc.c:1293
+#: utils/misc/guc.c:1295
 msgid "Emit WAL-related debugging output."
 msgstr "Gibt diverse Debug-Meldungen über WAL aus."
 
-#: utils/misc/guc.c:1305
+#: utils/misc/guc.c:1307
 msgid "Datetimes are integer based."
 msgstr "Datum/Zeit verwendet intern ganze Zahlen."
 
-#: utils/misc/guc.c:1320
+#: utils/misc/guc.c:1322
 msgid ""
 "Sets whether Kerberos and GSSAPI user names should be treated as case-"
 "insensitive."
@@ -17185,42 +17143,45 @@ msgstr ""
 "Bestimmt, ob Groß-/Kleinschreibung bei Kerberos- und GSSAPI-Benutzernamen "
 "ignoriert werden soll."
 
-#: utils/misc/guc.c:1330
+#: utils/misc/guc.c:1332
 msgid "Warn about backslash escapes in ordinary string literals."
 msgstr "Warnt bei Backslash-Escapes in normalen Zeichenkettenkonstanten."
 
-#: utils/misc/guc.c:1340
+#: utils/misc/guc.c:1342
 msgid "Causes '...' strings to treat backslashes literally."
 msgstr ""
 "Bewirkt, dass Zeichenketten der Art '...' Backslashes als normales Zeichen "
 "behandeln."
 
-#: utils/misc/guc.c:1351
+#: utils/misc/guc.c:1353
 msgid "Enable synchronized sequential scans."
 msgstr "Ermöglicht synchronisierte sequenzielle Scans."
 
-#: utils/misc/guc.c:1361
+#: utils/misc/guc.c:1363
 msgid "Allows archiving of WAL files using archive_command."
 msgstr "Erlaubt die Archivierung von WAL-Dateien mittels archive_command."
 
-#: utils/misc/guc.c:1371
+#: utils/misc/guc.c:1373
 msgid "Allows connections and queries during recovery."
 msgstr "Erlaubt Verbindungen und Anfragen während der Wiederherstellung."
 
-#: utils/misc/guc.c:1381
+#: utils/misc/guc.c:1383
 msgid ""
-"Allows feedback from a hot standby primary that will avoid query conflicts."
+"Allows feedback from a hot standby to the primary that will avoid query "
+"conflicts."
 msgstr ""
+"Erlaubt Rückmeldungen von einem Hot Standby an den Primärserver, um "
+"Anfragekonflikte zu vermeiden."
 
-#: utils/misc/guc.c:1391
+#: utils/misc/guc.c:1393
 msgid "Allows modifications of the structure of system tables."
 msgstr "Erlaubt Änderungen an der Struktur von Systemtabellen."
 
-#: utils/misc/guc.c:1402
+#: utils/misc/guc.c:1404
 msgid "Disables reading from system indexes."
 msgstr "Schaltet das Lesen aus Systemindexen ab."
 
-#: utils/misc/guc.c:1403
+#: utils/misc/guc.c:1405
 msgid ""
 "It does not prevent updating the indexes, so it is safe to use.  The worst "
 "consequence is slowness."
@@ -17228,14 +17189,14 @@ msgstr ""
 "Das Aktualisieren der Indexe wird nicht verhindert, also ist die Verwendung "
 "unbedenklich. Schlimmstenfalls wird alles langsamer."
 
-#: utils/misc/guc.c:1414
+#: utils/misc/guc.c:1416
 msgid ""
 "Enables backward compatibility mode for privilege checks on large objects."
 msgstr ""
 "Schaltet den rückwärtskompatiblen Modus für Privilegienprüfungen bei Large "
 "Objects ein."
 
-#: utils/misc/guc.c:1415
+#: utils/misc/guc.c:1417
 msgid ""
 "Skips privilege checks when reading or modifying large objects, for "
 "compatibility with PostgreSQL releases prior to 9.0."
@@ -17243,11 +17204,11 @@ msgstr ""
 "Überspringt Privilegienprüfungen beim Lesen oder Ändern von Large Objects, "
 "zur Kompatibilität mit PostgreSQL-Versionen vor 9.0."
 
-#: utils/misc/guc.c:1425
+#: utils/misc/guc.c:1427
 msgid "When generating SQL fragments, quote all identifiers."
-msgstr ""
+msgstr "Wenn SQL-Fragmente erzeugt werden, alle Bezeichner quoten."
 
-#: utils/misc/guc.c:1444
+#: utils/misc/guc.c:1446
 msgid ""
 "Forces a switch to the next xlog file if a new file has not been started "
 "within N seconds."
@@ -17255,20 +17216,20 @@ msgstr ""
 "Erzwingt das Umschalten zur nächsten Transaktionslogdatei, wenn seit N "
 "Sekunden keine neue Datei begonnen worden ist."
 
-#: utils/misc/guc.c:1455
+#: utils/misc/guc.c:1457
 msgid "Waits N seconds on connection startup after authentication."
 msgstr ""
 "Wartet beim Starten einer Verbindung N Sekunden nach der Authentifizierung."
 
-#: utils/misc/guc.c:1456 utils/misc/guc.c:1905
+#: utils/misc/guc.c:1458 utils/misc/guc.c:1907
 msgid "This allows attaching a debugger to the process."
 msgstr "Das ermöglicht es, einen Debugger in den Prozess einzuhängen."
 
-#: utils/misc/guc.c:1465
+#: utils/misc/guc.c:1467
 msgid "Sets the default statistics target."
 msgstr "Setzt das voreingestellte Statistikziel."
 
-#: utils/misc/guc.c:1466
+#: utils/misc/guc.c:1468
 msgid ""
 "This applies to table columns that have not had a column-specific target set "
 "via ALTER TABLE SET STATISTICS."
@@ -17276,12 +17237,12 @@ msgstr ""
 "Diese Einstellung gilt für Tabellenspalten, für die kein spaltenspezifisches "
 "Ziel mit ALTER TABLE SET STATISTICS gesetzt worden ist."
 
-#: utils/misc/guc.c:1475
+#: utils/misc/guc.c:1477
 msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
 msgstr ""
 "Setzt die Größe der FROM-Liste, ab der Unteranfragen nicht kollabiert werden."
 
-#: utils/misc/guc.c:1477
+#: utils/misc/guc.c:1479
 msgid ""
 "The planner will merge subqueries into upper queries if the resulting FROM "
 "list would have no more than this many items."
@@ -17289,13 +17250,13 @@ msgstr ""
 "Der Planer bindet Unteranfragen in die übergeordneten Anfragen ein, wenn die "
 "daraus resultierende FROM-Liste nicht mehr als so viele Elemente haben würde."
 
-#: utils/misc/guc.c:1487
+#: utils/misc/guc.c:1489
 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
 msgstr ""
 "Setzt die Größe der FROM-Liste, ab der JOIN-Konstrukte nicht aufgelöst "
 "werden."
 
-#: utils/misc/guc.c:1489
+#: utils/misc/guc.c:1491
 msgid ""
 "The planner will flatten explicit JOIN constructs into lists of FROM items "
 "whenever a list of no more than this many items would result."
@@ -17303,34 +17264,34 @@ msgstr ""
 "Der Planer löst ausdrückliche JOIN-Konstrukte in FROM-Listen auf, wenn die "
 "daraus resultierende FROM-Liste nicht mehr als so viele Elemente haben würde."
 
-#: utils/misc/guc.c:1499
+#: utils/misc/guc.c:1501
 msgid "Sets the threshold of FROM items beyond which GEQO is used."
 msgstr ""
 "Setzt die Anzahl der Elemente in der FROM-Liste, ab der GEQO verwendet wird."
 
-#: utils/misc/guc.c:1508
+#: utils/misc/guc.c:1510
 msgid "GEQO: effort is used to set the default for other GEQO parameters."
 msgstr ""
 "GEQO: wird für die Berechnung der Vorgabewerte anderer GEQO-Parameter "
 "verwendet."
 
-#: utils/misc/guc.c:1517
+#: utils/misc/guc.c:1519
 msgid "GEQO: number of individuals in the population."
 msgstr "GEQO: Anzahl der Individien in der Bevölkerung."
 
-#: utils/misc/guc.c:1518 utils/misc/guc.c:1527
+#: utils/misc/guc.c:1520 utils/misc/guc.c:1529
 msgid "Zero selects a suitable default value."
 msgstr "Null wählt einen passenden Vorgabewert."
 
-#: utils/misc/guc.c:1526
+#: utils/misc/guc.c:1528
 msgid "GEQO: number of iterations of the algorithm."
 msgstr "GEQO: Anzahl der Iterationen im Algorithmus."
 
-#: utils/misc/guc.c:1537
+#: utils/misc/guc.c:1539
 msgid "Sets the time to wait on a lock before checking for deadlock."
 msgstr "Setzt die Zeit, die gewartet wird, bis auf Verklemmung geprüft wird."
 
-#: utils/misc/guc.c:1548
+#: utils/misc/guc.c:1550
 msgid ""
 "Sets the maximum delay before canceling queries when a hot standby server is "
 "processing archived WAL data."
@@ -17338,7 +17299,7 @@ msgstr ""
 "Setzt die maximale Verzögerung bevor Anfragen storniert werden, wenn ein Hot-"
 "Standby-Server archivierte WAL-Daten verarbeitet."
 
-#: utils/misc/guc.c:1559
+#: utils/misc/guc.c:1561
 msgid ""
 "Sets the maximum delay before canceling queries when a hot standby server is "
 "processing streamed WAL data."
@@ -17346,38 +17307,40 @@ msgstr ""
 "Setzt die maximale Verzögerung bevor Anfragen storniert werden, wenn ein Hot-"
 "Standby-Server gestreamte WAL-Daten verarbeitet."
 
-#: utils/misc/guc.c:1570
+#: utils/misc/guc.c:1572
 msgid ""
-"Sets the maximum interval between WAL receiver status reports to the master."
+"Sets the maximum interval between WAL receiver status reports to the primary."
 msgstr ""
+"Setzt das maximale Intervall zwischen Statusberichten des WAL-Receivers an "
+"den Primärserver."
 
-#: utils/misc/guc.c:1581
+#: utils/misc/guc.c:1583
 msgid "Sets the maximum number of concurrent connections."
 msgstr "Setzt die maximale Anzahl gleichzeitiger Verbindungen."
 
-#: utils/misc/guc.c:1591
+#: utils/misc/guc.c:1593
 msgid "Sets the number of connection slots reserved for superusers."
 msgstr "Setzt die Anzahl der für Superuser reservierten Verbindungen."
 
-#: utils/misc/guc.c:1605
+#: utils/misc/guc.c:1607
 msgid "Sets the number of shared memory buffers used by the server."
 msgstr "Setzt die Anzahl der vom Server verwendeten Shared-Memory-Puffer."
 
-#: utils/misc/guc.c:1616
+#: utils/misc/guc.c:1618
 msgid "Sets the maximum number of temporary buffers used by each session."
 msgstr ""
 "Setzt die maximale Anzahl der von jeder Sitzung verwendeten temporären "
 "Puffer."
 
-#: utils/misc/guc.c:1627
+#: utils/misc/guc.c:1629
 msgid "Sets the TCP port the server listens on."
 msgstr "Setzt den TCP-Port, auf dem der Server auf Verbindungen wartet."
 
-#: utils/misc/guc.c:1637
+#: utils/misc/guc.c:1639
 msgid "Sets the access permissions of the Unix-domain socket."
 msgstr "Setzt die Zugriffsrechte für die Unix-Domain-Socket."
 
-#: utils/misc/guc.c:1638
+#: utils/misc/guc.c:1640
 msgid ""
 "Unix-domain sockets use the usual Unix file system permission set. The "
 "parameter value is expected to be a numeric mode specification in the form "
@@ -17390,29 +17353,25 @@ msgstr ""
 "gebräuchliche Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) "
 "anfangen.)"
 
-#: utils/misc/guc.c:1652
-#, fuzzy
+#: utils/misc/guc.c:1654
 msgid "Sets the file permissions for log files."
-msgstr "Bestimmt das Dateinamenmuster für Logdateien."
+msgstr "Setzt die Dateizugriffsrechte für Logdateien."
 
-#: utils/misc/guc.c:1653
-#, fuzzy
+#: utils/misc/guc.c:1655
 msgid ""
 "The parameter value is expected to be a numeric mode specification in the "
 "form accepted by the chmod and umask system calls. (To use the customary "
 "octal format the number must start with a 0 (zero).)"
 msgstr ""
-"Unix-Domain-Sockets verwenden die üblichen Zugriffsrechte für Unix-"
-"Dateisysteme. Der Wert dieser Option muss ein numerischer Wert in der von "
-"den Systemaufrufen chmod und umask verwendeten Form sein. (Um das "
-"gebräuchliche Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) "
-"anfangen.)"
+"Der Wert dieser Option muss ein numerischer Wert in der von den "
+"Systemaufrufen chmod und umask verwendeten Form sein. (Um das gebräuchliche "
+"Oktalformat zu verwenden, muss die Zahl mit 0 (einer Null) anfangen.)"
 
-#: utils/misc/guc.c:1666
+#: utils/misc/guc.c:1668
 msgid "Sets the maximum memory to be used for query workspaces."
 msgstr "Setzt die maximale Speichergröße für Anfrage-Arbeitsbereiche."
 
-#: utils/misc/guc.c:1667
+#: utils/misc/guc.c:1669
 msgid ""
 "This much memory can be used by each internal sort operation and hash table "
 "before switching to temporary disk files."
@@ -17420,77 +17379,77 @@ msgstr ""
 "Gibt die Speichermenge an, die für interne Sortiervorgänge und Hashtabellen "
 "verwendet werden kann, bevor auf temporäre Dateien umgeschaltet wird."
 
-#: utils/misc/guc.c:1679
+#: utils/misc/guc.c:1681
 msgid "Sets the maximum memory to be used for maintenance operations."
 msgstr "Setzt die maximale Speichergröße für Wartungsoperationen."
 
-#: utils/misc/guc.c:1680
+#: utils/misc/guc.c:1682
 msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr "Das schließt Operationen wie VACUUM und CREATE INDEX ein."
 
-#: utils/misc/guc.c:1695
+#: utils/misc/guc.c:1697
 msgid "Sets the maximum stack depth, in kilobytes."
 msgstr "Setzt die maximale Stackgröße, in Kilobytes."
 
-#: utils/misc/guc.c:1706
+#: utils/misc/guc.c:1708
 msgid "Vacuum cost for a page found in the buffer cache."
 msgstr "Vacuum-Kosten für eine im Puffer-Cache gefundene Seite."
 
-#: utils/misc/guc.c:1716
+#: utils/misc/guc.c:1718
 msgid "Vacuum cost for a page not found in the buffer cache."
 msgstr "Vacuum-Kosten für eine nicht im Puffer-Cache gefundene Seite."
 
-#: utils/misc/guc.c:1726
+#: utils/misc/guc.c:1728
 msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr "Vacuum-Kosten für eine durch Vacuum schmutzig gemachte Seite."
 
-#: utils/misc/guc.c:1736
+#: utils/misc/guc.c:1738
 msgid "Vacuum cost amount available before napping."
 msgstr "Verfügbare Vacuum-Kosten vor Nickerchen."
 
-#: utils/misc/guc.c:1746
+#: utils/misc/guc.c:1748
 msgid "Vacuum cost delay in milliseconds."
 msgstr "Vacuum-Kosten-Verzögerung in Millisekunden."
 
-#: utils/misc/guc.c:1757
+#: utils/misc/guc.c:1759
 msgid "Vacuum cost delay in milliseconds, for autovacuum."
 msgstr "Vacuum-Kosten-Verzögerung in Millisekunden, für Autovacuum."
 
-#: utils/misc/guc.c:1768
+#: utils/misc/guc.c:1770
 msgid "Vacuum cost amount available before napping, for autovacuum."
 msgstr "Verfügbare Vacuum-Kosten vor Nickerchen, für Autovacuum."
 
-#: utils/misc/guc.c:1778
+#: utils/misc/guc.c:1780
 msgid ""
 "Sets the maximum number of simultaneously open files for each server process."
 msgstr ""
 "Setzt die maximale Zahl gleichzeitig geöffneter Dateien für jeden "
 "Serverprozess."
 
-#: utils/misc/guc.c:1791
+#: utils/misc/guc.c:1793
 msgid "Sets the maximum number of simultaneously prepared transactions."
 msgstr ""
 "Setzt die maximale Anzahl von gleichzeitig vorbereiteten Transaktionen."
 
-#: utils/misc/guc.c:1824
+#: utils/misc/guc.c:1826
 msgid "Sets the maximum allowed duration of any statement."
 msgstr "Setzt die maximal erlaubte Dauer jeder Anweisung."
 
-#: utils/misc/guc.c:1825
+#: utils/misc/guc.c:1827
 msgid "A value of 0 turns off the timeout."
 msgstr "Der Wert 0 schaltet die Zeitprüfung aus."
 
-#: utils/misc/guc.c:1835
+#: utils/misc/guc.c:1837
 msgid "Minimum age at which VACUUM should freeze a table row."
 msgstr "Mindestalter, bei dem VACUUM eine Tabellenzeile einfrieren soll."
 
-#: utils/misc/guc.c:1845
+#: utils/misc/guc.c:1847
 msgid "Age at which VACUUM should scan whole table to freeze tuples."
 msgstr ""
 "Alter, bei dem VACUUM die ganze Tabelle durchsuchen soll, um Zeilen "
 "einzufrieren."
 
-#: utils/misc/guc.c:1855
+#: utils/misc/guc.c:1857
 msgid ""
 "Number of transactions by which VACUUM and HOT cleanup should be deferred, "
 "if any."
@@ -17498,11 +17457,11 @@ msgstr ""
 "Anzahl Transaktionen, um die VACUUM- und HOT-Aufräumen aufgeschoben werden "
 "soll."
 
-#: utils/misc/guc.c:1868
+#: utils/misc/guc.c:1870
 msgid "Sets the maximum number of locks per transaction."
 msgstr "Setzt die maximale Anzahl Sperren pro Transaktion."
 
-#: utils/misc/guc.c:1869
+#: utils/misc/guc.c:1871
 msgid ""
 "The shared lock table is sized on the assumption that at most "
 "max_locks_per_transaction * max_connections distinct objects will need to be "
@@ -17512,54 +17471,52 @@ msgstr ""
 "max_locks_per_transaction * max_connections verschiedene Objekte "
 "gleichzeitig gesperrt werden müssen."
 
-#: utils/misc/guc.c:1880
-#, fuzzy
+#: utils/misc/guc.c:1882
 msgid "Sets the maximum number of predicate locks per transaction."
-msgstr "Setzt die maximale Anzahl Sperren pro Transaktion."
+msgstr "Setzt die maximale Anzahl Prädikatsperren pro Transaktion."
 
-#: utils/misc/guc.c:1881
-#, fuzzy
+#: utils/misc/guc.c:1883
 msgid ""
 "The shared predicate lock table is sized on the assumption that at most "
 "max_pred_locks_per_transaction * max_connections distinct objects will need "
 "to be locked at any one time."
 msgstr ""
-"Die globale Sperrentabelle wird mit der Annahme angelegt, das höchstens "
-"max_locks_per_transaction * max_connections verschiedene Objekte "
-"gleichzeitig gesperrt werden müssen."
+"Die globale Prädikatsperrentabelle wird mit der Annahme angelegt, das "
+"höchstens max_pred_locks_per_transaction * max_connections verschiedene "
+"Objekte gleichzeitig gesperrt werden müssen."
 
-#: utils/misc/guc.c:1892
+#: utils/misc/guc.c:1894
 msgid "Sets the maximum allowed time to complete client authentication."
 msgstr "Setzt die maximale Zeit, um die Client-Authentifizierung zu beenden."
 
-#: utils/misc/guc.c:1904
+#: utils/misc/guc.c:1906
 msgid "Waits N seconds on connection startup before authentication."
 msgstr ""
 "Wartet beim Starten einer Verbindung N Sekunden vor der Authentifizierung."
 
-#: utils/misc/guc.c:1915
+#: utils/misc/guc.c:1917
 msgid "Sets the number of WAL files held for standby servers."
 msgstr ""
 "Setzt die maximale Anzahl der für Standby-Server vorgehaltenen WAL-Dateien."
 
-#: utils/misc/guc.c:1925
+#: utils/misc/guc.c:1927
 msgid ""
 "Sets the maximum distance in log segments between automatic WAL checkpoints."
 msgstr ""
 "Setzt die maximale Anzahl Logsegmente zwischen automatischen WAL-Checkpoints."
 
-#: utils/misc/guc.c:1935
+#: utils/misc/guc.c:1937
 msgid "Sets the maximum time between automatic WAL checkpoints."
 msgstr "Setzt die maximale Zeit zwischen automatischen WAL-Checkpoints."
 
-#: utils/misc/guc.c:1946
+#: utils/misc/guc.c:1948
 msgid ""
 "Enables warnings if checkpoint segments are filled more frequently than this."
 msgstr ""
 "Schreibt eine Logmeldung, wenn Checkpoint-Segmente häufiger als dieser Wert "
 "gefüllt werden."
 
-#: utils/misc/guc.c:1948
+#: utils/misc/guc.c:1950
 msgid ""
 "Write a message to the server log if checkpoints caused by the filling of "
 "checkpoint segment files happens more frequently than this number of "
@@ -17569,28 +17526,27 @@ msgstr ""
 "Checkpoint-Segmente ausgelöst werden, häufiger als dieser Wert in Sekunden "
 "passieren. Null schaltet die Warnung ab."
 
-#: utils/misc/guc.c:1960
+#: utils/misc/guc.c:1962
 msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgstr "Setzt die Anzahl Diskseitenpuffer für WAL im Shared Memory."
 
-#: utils/misc/guc.c:1971
+#: utils/misc/guc.c:1973
 msgid "WAL writer sleep time between WAL flushes."
 msgstr "Schlafzeit zwischen WAL-Flush-Operationen des WAL-Writers."
 
-#: utils/misc/guc.c:1983
+#: utils/misc/guc.c:1985
 msgid "Sets the maximum number of simultaneously running WAL sender processes."
 msgstr "Setzt die maximale Anzahl gleichzeitig laufender WAL-Sender-Prozesse."
 
-#: utils/misc/guc.c:1993
+#: utils/misc/guc.c:1995
 msgid "WAL sender sleep time between WAL replications."
 msgstr "WAL-Sender-Schlafzeit zwischen WAL-Replikationen."
 
-#: utils/misc/guc.c:2004
-#, fuzzy
+#: utils/misc/guc.c:2006
 msgid "Sets the maximum time to wait for WAL replication."
-msgstr "Setzt die maximale Zeit zwischen automatischen WAL-Checkpoints."
+msgstr "Setzt die maximale Zeit, um auf WAL-Replikation zu warten."
 
-#: utils/misc/guc.c:2015
+#: utils/misc/guc.c:2017
 msgid ""
 "Sets the delay in microseconds between transaction commit and flushing WAL "
 "to disk."
@@ -17598,18 +17554,18 @@ msgstr ""
 "Setzt die Verzögerung in Millisekunden zwischen Transaktionsabschluss und "
 "dem Schreiben von WAL auf die Festplatte."
 
-#: utils/misc/guc.c:2026
+#: utils/misc/guc.c:2028
 msgid ""
 "Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr ""
 "Setzt die minimale Anzahl gleichzeitig offener Transaktionen bevor "
 "»commit_delay« angewendet wird."
 
-#: utils/misc/guc.c:2037
+#: utils/misc/guc.c:2039
 msgid "Sets the number of digits displayed for floating-point values."
 msgstr "Setzt die Anzahl ausgegebener Ziffern für Fließkommawerte."
 
-#: utils/misc/guc.c:2038
+#: utils/misc/guc.c:2040
 msgid ""
 "This affects real, double precision, and geometric data types. The parameter "
 "value is added to the standard number of digits (FLT_DIG or DBL_DIG as "
@@ -17619,16 +17575,16 @@ msgstr ""
 "Datentypen. Der Parameterwert wird zur Standardziffernanzahl (FLT_DIG bzw. "
 "DBL_DIG) hinzuaddiert."
 
-#: utils/misc/guc.c:2049
+#: utils/misc/guc.c:2051
 msgid "Sets the minimum execution time above which statements will be logged."
 msgstr ""
 "Setzt die minimale Ausführungszeit, über der Anweisungen geloggt werden."
 
-#: utils/misc/guc.c:2051
+#: utils/misc/guc.c:2053
 msgid "Zero prints all queries. -1 turns this feature off."
 msgstr "Null zeigt alle Anfragen. -1 schaltet dieses Feature aus."
 
-#: utils/misc/guc.c:2061
+#: utils/misc/guc.c:2063
 msgid ""
 "Sets the minimum execution time above which autovacuum actions will be "
 "logged."
@@ -17636,23 +17592,23 @@ msgstr ""
 "Setzt die minimale Ausführungszeit, über der Autovacuum-Aktionen geloggt "
 "werden."
 
-#: utils/misc/guc.c:2063
+#: utils/misc/guc.c:2065
 msgid "Zero prints all actions. -1 turns autovacuum logging off."
 msgstr ""
 "Null gibt alls Aktionen aus. -1 schaltet die Log-Aufzeichnung über "
 "Autovacuum aus."
 
-#: utils/misc/guc.c:2073
+#: utils/misc/guc.c:2075
 msgid "Background writer sleep time between rounds."
 msgstr "Schlafzeit zwischen Durchläufen des Background-Writers."
 
-#: utils/misc/guc.c:2084
+#: utils/misc/guc.c:2086
 msgid "Background writer maximum number of LRU pages to flush per round."
 msgstr ""
 "Maximale Anzahl der vom Background-Writer pro Durchlauf zu flushenden LRU-"
 "Seiten."
 
-#: utils/misc/guc.c:2100
+#: utils/misc/guc.c:2102
 msgid ""
 "Number of simultaneous requests that can be handled efficiently by the disk "
 "subsystem."
@@ -17660,90 +17616,90 @@ msgstr ""
 "Anzahl simultaner Anfragen, die das Festplattensubsystem effizient "
 "bearbeiten kann."
 
-#: utils/misc/guc.c:2101
+#: utils/misc/guc.c:2103
 msgid ""
 "For RAID arrays, this should be approximately the number of drive spindles "
 "in the array."
 msgstr ""
 "Für RAID-Arrays sollte dies ungefähr die Anzahl Spindeln im Array sein."
 
-#: utils/misc/guc.c:2114
+#: utils/misc/guc.c:2116
 msgid "Automatic log file rotation will occur after N minutes."
 msgstr "Automatische Rotation der Logdateien geschieht nach N Minuten."
 
-#: utils/misc/guc.c:2125
+#: utils/misc/guc.c:2127
 msgid "Automatic log file rotation will occur after N kilobytes."
 msgstr "Automatische Rotation der Logdateien geschieht nach N Kilobytes."
 
-#: utils/misc/guc.c:2136
+#: utils/misc/guc.c:2138
 msgid "Shows the maximum number of function arguments."
 msgstr "Setzt die maximale Anzahl von Funktionsargumenten."
 
-#: utils/misc/guc.c:2147
+#: utils/misc/guc.c:2149
 msgid "Shows the maximum number of index keys."
 msgstr "Zeigt die maximale Anzahl von Indexschlüsseln."
 
-#: utils/misc/guc.c:2158
+#: utils/misc/guc.c:2160
 msgid "Shows the maximum identifier length."
 msgstr "Zeigt die maximale Länge von Bezeichnern."
 
-#: utils/misc/guc.c:2169
+#: utils/misc/guc.c:2171
 msgid "Shows the size of a disk block."
 msgstr "Zeigt die Größe eines Diskblocks."
 
-#: utils/misc/guc.c:2180
+#: utils/misc/guc.c:2182
 msgid "Shows the number of pages per disk file."
 msgstr "Zeigt die Anzahl Seiten pro Diskdatei."
 
-#: utils/misc/guc.c:2191
+#: utils/misc/guc.c:2193
 msgid "Shows the block size in the write ahead log."
 msgstr "Zeigt die Blockgröße im Write-Ahead-Log."
 
-#: utils/misc/guc.c:2202
+#: utils/misc/guc.c:2204
 msgid "Shows the number of pages per write ahead log segment."
 msgstr "Zeit die Anzahl Seiten pro Write-Ahead-Log-Segment."
 
-#: utils/misc/guc.c:2215
+#: utils/misc/guc.c:2217
 msgid "Time to sleep between autovacuum runs."
 msgstr "Wartezeit zwischen Autovacuum-Durchläufen."
 
-#: utils/misc/guc.c:2225
+#: utils/misc/guc.c:2227
 msgid "Minimum number of tuple updates or deletes prior to vacuum."
 msgstr "Mindestanzahl an geänderten oder gelöschten Tupeln vor einem Vacuum."
 
-#: utils/misc/guc.c:2234
+#: utils/misc/guc.c:2236
 msgid "Minimum number of tuple inserts, updates or deletes prior to analyze."
 msgstr ""
 "Mindestanzahl an Einfüge-, Änderungs- oder Löschoperationen von einem "
 "Analyze."
 
-#: utils/misc/guc.c:2244
+#: utils/misc/guc.c:2246
 msgid ""
 "Age at which to autovacuum a table to prevent transaction ID wraparound."
 msgstr ""
 "Alter, nach dem eine Tabelle automatisch gevacuumt wird, um "
 "Transaktionsnummernüberlauf zu verhindern."
 
-#: utils/misc/guc.c:2255
+#: utils/misc/guc.c:2257
 msgid ""
 "Sets the maximum number of simultaneously running autovacuum worker "
 "processes."
 msgstr ""
 "Setzt die maximale Anzahl gleichzeitig laufender Autovacuum-Worker-Prozesse."
 
-#: utils/misc/guc.c:2265
+#: utils/misc/guc.c:2267
 msgid "Time between issuing TCP keepalives."
 msgstr "Zeit zwischen TCP-Keepalive-Sendungen."
 
-#: utils/misc/guc.c:2266 utils/misc/guc.c:2277
+#: utils/misc/guc.c:2268 utils/misc/guc.c:2279
 msgid "A value of 0 uses the system default."
 msgstr "Der Wert 0 verwendet die Systemvoreinstellung."
 
-#: utils/misc/guc.c:2276
+#: utils/misc/guc.c:2278
 msgid "Time between TCP keepalive retransmits."
 msgstr "Zeit zwischen TCP-Keepalive-Neuübertragungen."
 
-#: utils/misc/guc.c:2287
+#: utils/misc/guc.c:2289
 msgid ""
 "Set the amount of traffic to send and receive before renegotiating the "
 "encryption keys."
@@ -17751,11 +17707,11 @@ msgstr ""
 "Setzt die Traffic-Menge, die gesendet oder empfangen wird, bevor der "
 "Verschlüsselungsschlüssel neu ausgehandelt wird."
 
-#: utils/misc/guc.c:2298
+#: utils/misc/guc.c:2300
 msgid "Maximum number of TCP keepalive retransmits."
 msgstr "Maximale Anzahl an TCP-Keepalive-Neuübertragungen."
 
-#: utils/misc/guc.c:2299
+#: utils/misc/guc.c:2301
 msgid ""
 "This controls the number of consecutive keepalive retransmits that can be "
 "lost before a connection is considered dead. A value of 0 uses the system "
@@ -17765,16 +17721,16 @@ msgstr ""
 "Neuübertragungen, die verloren gehen dürfen, bis die Verbindung als tot "
 "betrachtet wird. Der Wert 0 verwendet die Betriebssystemvoreinstellung."
 
-#: utils/misc/guc.c:2310
+#: utils/misc/guc.c:2312
 msgid "Sets the maximum allowed result for exact search by GIN."
 msgstr ""
 "Setzt die maximal erlaubte Anzahl Ergebnisse für eine genaue Suche mit GIN."
 
-#: utils/misc/guc.c:2321
+#: utils/misc/guc.c:2323
 msgid "Sets the planner's assumption about the size of the disk cache."
 msgstr "Setzt die Annahme des Planers über die Größe des Festplatten-Caches."
 
-#: utils/misc/guc.c:2322
+#: utils/misc/guc.c:2324
 msgid ""
 "That is, the portion of the kernel's disk cache that will be used for "
 "PostgreSQL data files. This is measured in disk pages, which are normally 8 "
@@ -17785,35 +17741,35 @@ msgstr ""
 "PostgreSQL verwendet wird). Das wird in Diskseiten gemessen, welche "
 "normalerweise 8 kB groß sind."
 
-#: utils/misc/guc.c:2335
+#: utils/misc/guc.c:2337
 msgid "Shows the server version as an integer."
 msgstr "Zeigt die Serverversion als Zahl."
 
-#: utils/misc/guc.c:2346
+#: utils/misc/guc.c:2348
 msgid "Log the use of temporary files larger than this number of kilobytes."
 msgstr ""
 "Schreibt Meldungen über die Verwendung von temporären Dateien in den Log, "
 "wenn sie größer als diese Anzahl an Kilobytes sind."
 
-#: utils/misc/guc.c:2347
+#: utils/misc/guc.c:2349
 msgid "Zero logs all files. The default is -1 (turning this feature off)."
 msgstr ""
 "Null loggt alle Dateien. Die Standardeinstellung ist -1 (wodurch dieses "
 "Feature ausgeschaltet wird)."
 
-#: utils/misc/guc.c:2357
+#: utils/misc/guc.c:2359
 msgid "Sets the size reserved for pg_stat_activity.current_query, in bytes."
 msgstr ""
 "Setzt die für pg_stat_activity.current_query reservierte Größe, in Bytes."
 
-#: utils/misc/guc.c:2376
+#: utils/misc/guc.c:2378
 msgid ""
 "Sets the planner's estimate of the cost of a sequentially fetched disk page."
 msgstr ""
 "Setzt den vom Planer geschätzten Aufwand, um eine sequenzielle Diskseite zu "
 "lesen."
 
-#: utils/misc/guc.c:2386
+#: utils/misc/guc.c:2388
 msgid ""
 "Sets the planner's estimate of the cost of a nonsequentially fetched disk "
 "page."
@@ -17821,12 +17777,12 @@ msgstr ""
 "Setzt den vom Planer geschätzten Aufwand, um eine nichtsequenzielle "
 "Diskseite zu lesen."
 
-#: utils/misc/guc.c:2396
+#: utils/misc/guc.c:2398
 msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr ""
 "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung einer Zeile."
 
-#: utils/misc/guc.c:2406
+#: utils/misc/guc.c:2408
 msgid ""
 "Sets the planner's estimate of the cost of processing each index entry "
 "during an index scan."
@@ -17834,7 +17790,7 @@ msgstr ""
 "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines "
 "Indexeintrags während eines Index-Scans."
 
-#: utils/misc/guc.c:2416
+#: utils/misc/guc.c:2418
 msgid ""
 "Sets the planner's estimate of the cost of processing each operator or "
 "function call."
@@ -17842,7 +17798,7 @@ msgstr ""
 "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines "
 "Operators oder Funktionsaufrufs."
 
-#: utils/misc/guc.c:2427
+#: utils/misc/guc.c:2429
 msgid ""
 "Sets the planner's estimate of the fraction of a cursor's rows that will be "
 "retrieved."
@@ -17850,24 +17806,24 @@ msgstr ""
 "Setzt den vom Planer geschätzten Anteil der Cursor-Zeilen, die ausgelesen "
 "werden werden."
 
-#: utils/misc/guc.c:2438
+#: utils/misc/guc.c:2440
 msgid "GEQO: selective pressure within the population."
 msgstr "GEQO: selektiver Auswahldruck in der Bevölkerung."
 
-#: utils/misc/guc.c:2448
+#: utils/misc/guc.c:2450
 msgid "GEQO: seed for random path selection."
 msgstr "GEQO: Ausgangswert für die zufällige Pfadauswahl."
 
-#: utils/misc/guc.c:2458
+#: utils/misc/guc.c:2460
 msgid "Multiple of the average buffer usage to free per round."
 msgstr ""
 "Vielfaches der durchschnittlichen freizugebenden Pufferverwendung pro Runde."
 
-#: utils/misc/guc.c:2468
+#: utils/misc/guc.c:2470
 msgid "Sets the seed for random-number generation."
 msgstr "Setzt den Ausgangswert für die Zufallszahlenerzeugung."
 
-#: utils/misc/guc.c:2479
+#: utils/misc/guc.c:2481
 msgid ""
 "Number of tuple updates or deletes prior to vacuum as a fraction of "
 "reltuples."
@@ -17875,7 +17831,7 @@ msgstr ""
 "Anzahl geänderter oder gelöschter Tupel vor einem Vacuum, relativ zu "
 "reltuples."
 
-#: utils/misc/guc.c:2488
+#: utils/misc/guc.c:2490
 msgid ""
 "Number of tuple inserts, updates or deletes prior to analyze as a fraction "
 "of reltuples."
@@ -17883,7 +17839,7 @@ msgstr ""
 "Anzahl eingefügter, geänderter oder gelöschter Tupel vor einem Analyze, "
 "relativ zu reltuples."
 
-#: utils/misc/guc.c:2498
+#: utils/misc/guc.c:2500
 msgid ""
 "Time spent flushing dirty buffers during checkpoint, as fraction of "
 "checkpoint interval."
@@ -17891,54 +17847,54 @@ msgstr ""
 "Zeit, die damit verbracht wird, modifizierte Puffer während eines "
 "Checkpoints zurückzuschreiben, als Bruchteil des Checkpoint-Intervalls."
 
-#: utils/misc/guc.c:2517
+#: utils/misc/guc.c:2519
 msgid "Sets the shell command that will be called to archive a WAL file."
 msgstr ""
 "Setzt den Shell-Befehl, der aufgerufen wird, um eine WAL-Datei zu "
 "archivieren."
 
-#: utils/misc/guc.c:2527
+#: utils/misc/guc.c:2529
 msgid "Sets the client's character set encoding."
 msgstr "Setzt die Zeichensatzkodierung des Clients."
 
-#: utils/misc/guc.c:2538
+#: utils/misc/guc.c:2540
 msgid "Controls information prefixed to each log line."
 msgstr "Bestimmt die Informationen, die vor jede Logzeile geschrieben werden."
 
-#: utils/misc/guc.c:2539
+#: utils/misc/guc.c:2541
 msgid "If blank, no prefix is used."
 msgstr "Wenn leer, dann wird kein Präfix verwendet."
 
-#: utils/misc/guc.c:2548
+#: utils/misc/guc.c:2550
 msgid "Sets the time zone to use in log messages."
 msgstr "Setzt die in Logmeldungen verwendete Zeitzone."
 
-#: utils/misc/guc.c:2558
+#: utils/misc/guc.c:2560
 msgid "Sets the display format for date and time values."
 msgstr "Setzt das Ausgabeformat für Datums- und Zeitwerte."
 
-#: utils/misc/guc.c:2559
+#: utils/misc/guc.c:2561
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr "Kontrolliert auch die Interpretation von zweideutigen Datumseingaben."
 
-#: utils/misc/guc.c:2570
+#: utils/misc/guc.c:2572
 msgid "Sets the default tablespace to create tables and indexes in."
 msgstr "Setzt den Standard-Tablespace für Tabellen und Indexe."
 
-#: utils/misc/guc.c:2571
+#: utils/misc/guc.c:2573
 msgid "An empty string selects the database's default tablespace."
 msgstr "Eine leere Zeichenkette wählt den Standard-Tablespace der Datenbank."
 
-#: utils/misc/guc.c:2581
+#: utils/misc/guc.c:2583
 msgid "Sets the tablespace(s) to use for temporary tables and sort files."
 msgstr ""
 "Setzt den oder die Tablespaces für temporäre Tabellen und Sortierdateien."
 
-#: utils/misc/guc.c:2592
+#: utils/misc/guc.c:2594
 msgid "Sets the path for dynamically loadable modules."
 msgstr "Setzt den Pfad für ladbare dynamische Bibliotheken."
 
-#: utils/misc/guc.c:2593
+#: utils/misc/guc.c:2595
 msgid ""
 "If a dynamically loadable module needs to be opened and the specified name "
 "does not have a directory component (i.e., the name does not contain a "
@@ -17949,78 +17905,78 @@ msgstr ""
 "Schrägstrich), dann sucht das System in diesem Pfad nach der angegebenen "
 "Datei."
 
-#: utils/misc/guc.c:2606
+#: utils/misc/guc.c:2608
 msgid "Sets the location of the Kerberos server key file."
 msgstr "Setzt den Ort der Kerberos-Server-Schlüsseldatei."
 
-#: utils/misc/guc.c:2617
+#: utils/misc/guc.c:2619
 msgid "Sets the name of the Kerberos service."
 msgstr "Setzt den Namen des Kerberos-Service."
 
-#: utils/misc/guc.c:2627
+#: utils/misc/guc.c:2629
 msgid "Sets the Bonjour service name."
 msgstr "Setzt den Bonjour-Servicenamen."
 
-#: utils/misc/guc.c:2639
+#: utils/misc/guc.c:2641
 msgid "Shows the collation order locale."
 msgstr "Zeigt die Locale für die Sortierreihenfolge."
 
-#: utils/misc/guc.c:2650
+#: utils/misc/guc.c:2652
 msgid "Shows the character classification and case conversion locale."
 msgstr "Zeigt die Locale für Zeichenklassifizierung und Groß-/Kleinschreibung."
 
-#: utils/misc/guc.c:2661
+#: utils/misc/guc.c:2663
 msgid "Sets the language in which messages are displayed."
 msgstr "Setzt die Sprache, in der Mitteilungen ausgegeben werden."
 
-#: utils/misc/guc.c:2671
+#: utils/misc/guc.c:2673
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Setzt die Locale für die Formatierung von Geldbeträgen."
 
-#: utils/misc/guc.c:2681
+#: utils/misc/guc.c:2683
 msgid "Sets the locale for formatting numbers."
 msgstr "Setzt die Locale für die Formatierung von Zahlen."
 
-#: utils/misc/guc.c:2691
+#: utils/misc/guc.c:2693
 msgid "Sets the locale for formatting date and time values."
 msgstr "Setzt die Locale für die Formatierung von Datums- und Zeitwerten."
 
-#: utils/misc/guc.c:2701
+#: utils/misc/guc.c:2703
 msgid "Lists shared libraries to preload into server."
 msgstr ""
 "Listet dynamische Bibliotheken, die vorab in den Server geladen werden."
 
-#: utils/misc/guc.c:2712
+#: utils/misc/guc.c:2714
 msgid "Lists shared libraries to preload into each backend."
 msgstr ""
 "Listet dynamische Bibliotheken, die vorab in jeden Serverprozess geladen "
 "werden."
 
-#: utils/misc/guc.c:2723
+#: utils/misc/guc.c:2725
 msgid "Sets the schema search order for names that are not schema-qualified."
 msgstr "Setzt die Schemasuchreihenfolge für Namen ohne Schemaqualifikation."
 
-#: utils/misc/guc.c:2735
+#: utils/misc/guc.c:2737
 msgid "Sets the server (database) character set encoding."
 msgstr "Setzt die Zeichensatzkodierung des Servers (der Datenbank)."
 
-#: utils/misc/guc.c:2747
+#: utils/misc/guc.c:2749
 msgid "Shows the server version."
 msgstr "Zeigt die Serverversion."
 
-#: utils/misc/guc.c:2759
+#: utils/misc/guc.c:2761
 msgid "Sets the current role."
 msgstr "Setzt die aktuelle Rolle."
 
-#: utils/misc/guc.c:2771
+#: utils/misc/guc.c:2773
 msgid "Sets the session user name."
 msgstr "Setzt den Sitzungsbenutzernamen."
 
-#: utils/misc/guc.c:2782
+#: utils/misc/guc.c:2784
 msgid "Sets the destination for server log output."
 msgstr "Setzt das Ziel für die Serverlogausgabe."
 
-#: utils/misc/guc.c:2783
+#: utils/misc/guc.c:2785
 msgid ""
 "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and "
 "\"eventlog\", depending on the platform."
@@ -18028,117 +17984,117 @@ msgstr ""
 "Gültige Werte sind Kombinationen von »stderr«, »syslog«, »csvlog« und "
 "»eventlog«, je nach Plattform."
 
-#: utils/misc/guc.c:2794
+#: utils/misc/guc.c:2796
 msgid "Sets the destination directory for log files."
 msgstr "Bestimmt das Zielverzeichnis für Logdateien."
 
-#: utils/misc/guc.c:2795
+#: utils/misc/guc.c:2797
 msgid "Can be specified as relative to the data directory or as absolute path."
 msgstr ""
 "Kann relativ zum Datenverzeichnis oder als absoluter Pfad angegeben werden."
 
-#: utils/misc/guc.c:2805
+#: utils/misc/guc.c:2807
 msgid "Sets the file name pattern for log files."
 msgstr "Bestimmt das Dateinamenmuster für Logdateien."
 
-#: utils/misc/guc.c:2816
+#: utils/misc/guc.c:2818
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
 msgstr ""
 "Setzt den Programmnamen, mit dem PostgreSQL-Meldungen im Syslog "
 "identifiziert werden."
 
-#: utils/misc/guc.c:2827
+#: utils/misc/guc.c:2829
 msgid "Sets the time zone for displaying and interpreting time stamps."
 msgstr ""
 "Setzt die Zeitzone, in der Zeitangaben interpretiert und ausgegeben werden."
 
-#: utils/misc/guc.c:2837
+#: utils/misc/guc.c:2839
 msgid "Selects a file of time zone abbreviations."
 msgstr "Wählt eine Datei mit Zeitzonenabkürzungen."
 
-#: utils/misc/guc.c:2847
+#: utils/misc/guc.c:2849
 msgid "Sets the current transaction's isolation level."
 msgstr "Zeigt den Isolationsgrad der aktuellen Transaktion."
 
-#: utils/misc/guc.c:2858
+#: utils/misc/guc.c:2860
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "Setzt die Eigentümergruppe der Unix-Domain-Socket."
 
-#: utils/misc/guc.c:2859
+#: utils/misc/guc.c:2861
 msgid ""
 "The owning user of the socket is always the user that starts the server."
 msgstr "Der Eigentümer ist immer der Benutzer, der den Server startet."
 
-#: utils/misc/guc.c:2869
+#: utils/misc/guc.c:2871
 msgid "Sets the directory where the Unix-domain socket will be created."
 msgstr ""
 "Setzt das Verzeichnis, in dem die Unix-Domain-Socket erzeugt werden soll."
 
-#: utils/misc/guc.c:2880
+#: utils/misc/guc.c:2882
 msgid "Sets the host name or IP address(es) to listen to."
 msgstr ""
 "Setzt den Hostnamen oder die IP-Adresse(n), auf der auf Verbindungen "
 "gewartet wird."
 
-#: utils/misc/guc.c:2891
+#: utils/misc/guc.c:2893
 msgid "Sets the list of known custom variable classes."
 msgstr "Bestimmt die Liste der bekannten benutzerdefinierten Variablenklassen."
 
-#: utils/misc/guc.c:2902
+#: utils/misc/guc.c:2904
 msgid "Sets the server's data directory."
 msgstr "Setzt das Datenverzeichnis des Servers."
 
-#: utils/misc/guc.c:2913
+#: utils/misc/guc.c:2915
 msgid "Sets the server's main configuration file."
 msgstr "Setzt die Hauptkonfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:2924
+#: utils/misc/guc.c:2926
 msgid "Sets the server's \"hba\" configuration file."
 msgstr "Setzt die »hba«-Konfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:2935
+#: utils/misc/guc.c:2937
 msgid "Sets the server's \"ident\" configuration file."
 msgstr "Setzt die »ident«-Konfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:2946
+#: utils/misc/guc.c:2948
 msgid "Writes the postmaster PID to the specified file."
 msgstr "Schreibt die Postmaster-PID in die angegebene Datei."
 
-#: utils/misc/guc.c:2957
+#: utils/misc/guc.c:2959
 msgid "Writes temporary statistics files to the specified directory."
 msgstr "Schreibt temporäre Statistikdateien in das angegebene Verzeichnis."
 
-#: utils/misc/guc.c:2968
-msgid "List of potential standby names to synchronise with."
-msgstr ""
+#: utils/misc/guc.c:2970
+msgid "List of names of potential synchronous standbys."
+msgstr "Liste der Namen der möglichen synchronen Standbys."
 
-#: utils/misc/guc.c:2979
+#: utils/misc/guc.c:2981
 msgid "Sets default text search configuration."
 msgstr "Setzt die vorgegebene Textsuchekonfiguration."
 
-#: utils/misc/guc.c:2989
+#: utils/misc/guc.c:2991
 msgid "Sets the list of allowed SSL ciphers."
 msgstr "Setzt die Liste der erlaubten SSL-Verschlüsselungsalgorithmen."
 
-#: utils/misc/guc.c:3004
+#: utils/misc/guc.c:3006
 msgid "Sets the application name to be reported in statistics and logs."
 msgstr ""
 "Setzt den Anwendungsnamen, der in Statistiken und Logs verzeichnet wird."
 
-#: utils/misc/guc.c:3024
+#: utils/misc/guc.c:3026
 msgid "Sets whether \"\\'\" is allowed in string literals."
 msgstr "Bestimmt, ob »\\'« in Zeichenkettenkonstanten erlaubt ist."
 
-#: utils/misc/guc.c:3034
+#: utils/misc/guc.c:3036
 msgid "Sets the output format for bytea."
 msgstr "Setzt das Ausgabeformat für bytea."
 
-#: utils/misc/guc.c:3044
+#: utils/misc/guc.c:3046
 msgid "Sets the message levels that are sent to the client."
 msgstr "Setzt die Meldungstypen, die an den Client gesendet werden."
 
-#: utils/misc/guc.c:3045 utils/misc/guc.c:3098 utils/misc/guc.c:3109
-#: utils/misc/guc.c:3165
+#: utils/misc/guc.c:3047 utils/misc/guc.c:3100 utils/misc/guc.c:3111
+#: utils/misc/guc.c:3167
 msgid ""
 "Each level includes all the levels that follow it. The later the level, the "
 "fewer messages are sent."
@@ -18146,13 +18102,13 @@ msgstr ""
 "Jeder Wert schließt alle ihm folgenden Werte mit ein. Je weiter hinten der "
 "Wert steht, desto weniger Meldungen werden gesendet werden."
 
-#: utils/misc/guc.c:3055
+#: utils/misc/guc.c:3057
 msgid "Enables the planner to use constraints to optimize queries."
 msgstr ""
 "Ermöglicht dem Planer die Verwendung von Constraints, um Anfragen zu "
 "optimieren."
 
-#: utils/misc/guc.c:3056
+#: utils/misc/guc.c:3058
 msgid ""
 "Table scans will be skipped if their constraints guarantee that no rows "
 "match the query."
@@ -18160,71 +18116,70 @@ msgstr ""
 "Tabellen-Scans werden übersprungen, wenn deren Constraints garantieren, dass "
 "keine Zeile mit der Abfrage übereinstimmt."
 
-#: utils/misc/guc.c:3066
+#: utils/misc/guc.c:3068
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "Setzt den Transaktionsisolationsgrad neuer Transaktionen."
 
-#: utils/misc/guc.c:3076
+#: utils/misc/guc.c:3078
 msgid "Sets the display format for interval values."
 msgstr "Setzt das Ausgabeformat für Intervallwerte."
 
-#: utils/misc/guc.c:3087
+#: utils/misc/guc.c:3089
 msgid "Sets the verbosity of logged messages."
 msgstr "Setzt den Detailgrad von geloggten Meldungen."
 
-#: utils/misc/guc.c:3097
+#: utils/misc/guc.c:3099
 msgid "Sets the message levels that are logged."
 msgstr "Setzt die Meldungstypen, die geloggt werden."
 
-#: utils/misc/guc.c:3108
+#: utils/misc/guc.c:3110
 msgid ""
 "Causes all statements generating error at or above this level to be logged."
 msgstr ""
 "Schreibt alle Anweisungen, die einen Fehler auf dieser Stufe oder höher "
 "verursachen, in den Log."
 
-#: utils/misc/guc.c:3119
+#: utils/misc/guc.c:3121
 msgid "Sets the type of statements logged."
 msgstr "Setzt die Anweisungsarten, die geloggt werden."
 
-#: utils/misc/guc.c:3129
+#: utils/misc/guc.c:3131
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
 msgstr ""
 "Setzt die zu verwendende Syslog-»Facility«, wenn Syslog angeschaltet ist."
 
-#: utils/misc/guc.c:3144
+#: utils/misc/guc.c:3146
 msgid "Sets the session's behavior for triggers and rewrite rules."
 msgstr "Setzt das Sitzungsverhalten für Trigger und Regeln."
 
-#: utils/misc/guc.c:3154
-#, fuzzy
+#: utils/misc/guc.c:3156
 msgid "Sets the current transaction's synchronization level."
-msgstr "Zeigt den Isolationsgrad der aktuellen Transaktion."
+msgstr "Setzt den Synchronisationsgrad der aktuellen Transaktion."
 
-#: utils/misc/guc.c:3164
+#: utils/misc/guc.c:3166
 msgid "Enables logging of recovery-related debugging information."
 msgstr ""
 "Ermöglicht das Loggen von Debug-Informationen über die Wiederherstellung."
 
-#: utils/misc/guc.c:3180
+#: utils/misc/guc.c:3182
 msgid "Collects function-level statistics on database activity."
 msgstr "Sammelt Statistiken auf Funktionsebene über Datenbankaktivität."
 
-#: utils/misc/guc.c:3190
+#: utils/misc/guc.c:3192
 msgid "Set the level of information written to the WAL."
 msgstr "Setzt den Umfang der in den WAL geschriebenen Informationen."
 
-#: utils/misc/guc.c:3200
+#: utils/misc/guc.c:3202
 msgid "Selects the method used for forcing WAL updates to disk."
 msgstr ""
 "Wählt die Methode, um das Schreiben von WAL-Änderungen auf die Festplatte zu "
 "erzwingen."
 
-#: utils/misc/guc.c:3210
+#: utils/misc/guc.c:3212
 msgid "Sets how binary values are to be encoded in XML."
 msgstr "Setzt, wie binäre Werte in XML kodiert werden."
 
-#: utils/misc/guc.c:3220
+#: utils/misc/guc.c:3222
 msgid ""
 "Sets whether XML data in implicit parsing and serialization operations is to "
 "be considered as documents or content fragments."
@@ -18232,7 +18187,7 @@ msgstr ""
 "Setzt, ob XML-Daten in impliziten Parse- und Serialisierungsoperationen als "
 "Dokument oder Fragment betrachtet werden sollen."
 
-#: utils/misc/guc.c:4062
+#: utils/misc/guc.c:4064
 #, c-format
 msgid ""
 "%s does not know where to find the server configuration file.\n"
@@ -18243,12 +18198,12 @@ msgstr ""
 "Sie müssen die Kommandozeilenoption --config-file oder -D angegeben oder\n"
 "die Umgebungsvariable PGDATA setzen.\n"
 
-#: utils/misc/guc.c:4081
+#: utils/misc/guc.c:4083
 #, c-format
 msgid "%s cannot access the server configuration file \"%s\": %s\n"
 msgstr "%s kann nicht auf die Serverkonfigurationsdatei »%s« zugreifen: %s\n"
 
-#: utils/misc/guc.c:4101
+#: utils/misc/guc.c:4103
 #, c-format
 msgid ""
 "%s does not know where to find the database system data.\n"
@@ -18259,7 +18214,7 @@ msgstr ""
 "zu finden sind.  Sie können dies mit »data_directory« in »%s«, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:4132
+#: utils/misc/guc.c:4134
 #, c-format
 msgid ""
 "%s does not know where to find the \"hba\" configuration file.\n"
@@ -18270,7 +18225,7 @@ msgstr ""
 "Sie können dies mit »hba_file« in »%s«, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:4155
+#: utils/misc/guc.c:4157
 #, c-format
 msgid ""
 "%s does not know where to find the \"ident\" configuration file.\n"
@@ -18281,156 +18236,240 @@ msgstr ""
 "Sie können dies mit »ident_file« in »%s«, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:4735 utils/misc/guc.c:4899
+#: utils/misc/guc.c:4737 utils/misc/guc.c:4901
 msgid "Value exceeds integer range."
 msgstr "Wert überschreitet Bereich für ganze Zahlen."
 
-#: utils/misc/guc.c:4754
+#: utils/misc/guc.c:4756
 msgid "Valid units for this parameter are \"kB\", \"MB\", and \"GB\"."
 msgstr "Gültige Einheiten für diesen Parameter sind »kB«, »MB« und »GB«."
 
-#: utils/misc/guc.c:4813
+#: utils/misc/guc.c:4815
 msgid ""
 "Valid units for this parameter are \"ms\", \"s\", \"min\", \"h\", and \"d\"."
 msgstr ""
 "Gültige Einheiten für diesen Parameter sind »ms«, »s«, »min«, »h« und »d«."
 
-#: utils/misc/guc.c:5096 utils/misc/guc.c:5859 utils/misc/guc.c:5909
-#: utils/misc/guc.c:6582 utils/misc/guc.c:6741 utils/misc/guc.c:7902
+#: utils/misc/guc.c:5098 utils/misc/guc.c:5867 utils/misc/guc.c:5919
+#: utils/misc/guc.c:6592 utils/misc/guc.c:6751 utils/misc/guc.c:7912
 #: guc-file.l:203
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "unbekannter Konfigurationsparameter »%s«"
 
-#: utils/misc/guc.c:5129
+#: utils/misc/guc.c:5131
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "Parameter »%s« kann nicht geändert werden"
 
-#: utils/misc/guc.c:5158 utils/misc/guc.c:5332 utils/misc/guc.c:5429
-#: utils/misc/guc.c:5523 utils/misc/guc.c:5637 utils/misc/guc.c:5738
+#: utils/misc/guc.c:5160 utils/misc/guc.c:5334 utils/misc/guc.c:5431
+#: utils/misc/guc.c:5525 utils/misc/guc.c:5639 utils/misc/guc.c:5740
 #: guc-file.l:250
 #, c-format
 msgid "parameter \"%s\" cannot be changed without restarting the server"
 msgstr ""
 "Parameter »%s« kann nicht geändert werden, ohne den Server neu zu starten"
 
-#: utils/misc/guc.c:5168
+#: utils/misc/guc.c:5170
 #, c-format
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "Parameter »%s« kann jetzt nicht geändert werden"
 
-#: utils/misc/guc.c:5199
+#: utils/misc/guc.c:5201
 #, c-format
 msgid "parameter \"%s\" cannot be set after connection start"
 msgstr "Parameter »%s« kann nach Start der Verbindung nicht geändert werden"
 
-#: utils/misc/guc.c:5209 utils/misc/guc.c:7917
+#: utils/misc/guc.c:5211 utils/misc/guc.c:7927
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "keine Berechtigung, um Parameter »%s« zu setzen"
 
-#: utils/misc/guc.c:5247
+#: utils/misc/guc.c:5249
 #, c-format
 msgid "cannot set parameter \"%s\" within security-definer function"
 msgstr ""
 "Parameter »%s« kann nicht in einer Security-Definer-Funktion gesetzt werden"
 
-#: utils/misc/guc.c:5393 utils/misc/guc.c:5707 utils/misc/guc.c:8081
-#: utils/misc/guc.c:8115
+#: utils/misc/guc.c:5395 utils/misc/guc.c:5709 utils/misc/guc.c:8091
+#: utils/misc/guc.c:8125
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "ungültiger Wert für Parameter »%s«: »%s«"
 
-#: utils/misc/guc.c:5402
+#: utils/misc/guc.c:5404
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d ist außerhalb des gültigen Bereichs für Parameter »%s« (%d ... %d)"
 
-#: utils/misc/guc.c:5488
+#: utils/misc/guc.c:5490
 #, c-format
 msgid "parameter \"%s\" requires a numeric value"
 msgstr "Parameter »%s« erfordert einen numerischen Wert"
 
-#: utils/misc/guc.c:5496
+#: utils/misc/guc.c:5498
 #, c-format
 msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
 msgstr "%g ist außerhalb des gültigen Bereichs für Parameter »%s« (%g ... %g)"
 
-#: utils/misc/guc.c:5865 utils/misc/guc.c:5913 utils/misc/guc.c:6745
+#: utils/misc/guc.c:5875 utils/misc/guc.c:5923 utils/misc/guc.c:6755
 #, c-format
 msgid "must be superuser to examine \"%s\""
 msgstr "nur Superuser können »%s« ansehen"
 
-#: utils/misc/guc.c:5979
+#: utils/misc/guc.c:5989
 #, c-format
 msgid "SET %s takes only one argument"
 msgstr "SET %s darf nur ein Argument haben"
 
-#: utils/misc/guc.c:6212
+#: utils/misc/guc.c:6222
 msgid "SET requires parameter name"
 msgstr "SET benötigt Parameternamen"
 
-#: utils/misc/guc.c:6327
+#: utils/misc/guc.c:6337
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "Versuch, den Parameter »%s« zu redefinieren"
 
-#: utils/misc/guc.c:7618
+#: utils/misc/guc.c:7628
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "konnte Wert von Parameter »%s« nicht lesen"
 
-#: utils/misc/guc.c:7979 utils/misc/guc.c:8013
+#: utils/misc/guc.c:7989 utils/misc/guc.c:8023
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "ungültiger Wert für Parameter »%s«: %d"
 
-#: utils/misc/guc.c:8047
+#: utils/misc/guc.c:8057
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "ungültiger Wert für Parameter »%s«: %g"
 
-#: utils/misc/guc.c:8237
+#: utils/misc/guc.c:8247
 msgid ""
-"\"temp_buffers\" cannot be changed after any temp tables have been accessed "
-"in the session."
+"\"temp_buffers\" cannot be changed after any temporary tables have been "
+"accessed in the session."
 msgstr ""
+"»temp_buffers« kann nicht geändert werden, nachdem in der Sitzung auf "
+"temporäre Tabellen zugriffen wurde."
 
-#: utils/misc/guc.c:8249
+#: utils/misc/guc.c:8259
 msgid "SET AUTOCOMMIT TO OFF is no longer supported"
 msgstr "SET AUTOCOMMIT TO OFF wird nicht mehr unterstützt"
 
-#: utils/misc/guc.c:8324
+#: utils/misc/guc.c:8334
 msgid "assertion checking is not supported by this build"
 msgstr "Assert-Prüfungen werden von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:8337
+#: utils/misc/guc.c:8347
 msgid "Bonjour is not supported by this build"
 msgstr "Bonjour wird von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:8350
+#: utils/misc/guc.c:8360
 msgid "SSL is not supported by this build"
 msgstr "SSL wird von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:8362
-#, fuzzy
+#: utils/misc/guc.c:8372
 msgid "Cannot enable parameter when \"log_statement_stats\" is true."
-msgstr "kann Parameter nicht einschalten, wenn »log_statement_stats« an ist"
+msgstr "Kann Parameter nicht einschalten, wenn »log_statement_stats« an ist."
 
-#: utils/misc/guc.c:8374
-#, fuzzy
+#: utils/misc/guc.c:8384
 msgid ""
 "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", "
 "\"log_planner_stats\", or \"log_executor_stats\" is true."
 msgstr ""
-"kann »log_statement_stats« nicht einschalten, wenn »log_parser_stats«, "
-"»log_planner_stats« oder »log_executor_stats« an ist"
+"Kann »log_statement_stats« nicht einschalten, wenn »log_parser_stats«, "
+"»log_planner_stats« oder »log_executor_stats« an ist."
 
 #: utils/misc/help_config.c:131
 msgid "internal error: unrecognized run-time parameter type\n"
 msgstr "interner Fehler: unbekannter Parametertyp\n"
 
+#: utils/misc/tzparser.c:61
+#, c-format
+msgid ""
+"time zone abbreviation \"%s\" is too long (maximum %d characters) in time "
+"zone file \"%s\", line %d"
+msgstr ""
+"Zeitzonenabkürzung »%s« ist zu lang (maximal %d Zeichen) in Zeitzonendatei "
+"»%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:68
+#, c-format
+msgid ""
+"time zone offset %d is not a multiple of 900 sec (15 min) in time zone file "
+"\"%s\", line %d"
+msgstr ""
+"Zeitzonenabstand %d ist kein Vielfaches von 900 s (15 min) in Zeitzonendatei "
+"»%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:80
+#, c-format
+msgid "time zone offset %d is out of range in time zone file \"%s\", line %d"
+msgstr ""
+"Zeitzonenabstand %d ist außerhalb des gültigen Bereichs in Zeitzonendatei "
+"»%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:115
+#, c-format
+msgid "missing time zone abbreviation in time zone file \"%s\", line %d"
+msgstr "fehlende Zeitzonenabkürzung in Zeitzonendatei »%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:124
+#, c-format
+msgid "missing time zone offset in time zone file \"%s\", line %d"
+msgstr "fehlender Zeitzonenabstand in Zeitzonendatei »%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:131
+#, c-format
+msgid "invalid number for time zone offset in time zone file \"%s\", line %d"
+msgstr "ungültige Zahl für Zeitzonenabstand in Zeitzonendatei »%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:154
+#, c-format
+msgid "invalid syntax in time zone file \"%s\", line %d"
+msgstr "ungültige Syntax in Zeitzonendatei »%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:218
+#, c-format
+msgid "time zone abbreviation \"%s\" is multiply defined"
+msgstr "Zeitzonenabkürzung »%s« ist mehrfach definiert"
+
+#: utils/misc/tzparser.c:220
+#, c-format
+msgid ""
+"Entry in time zone file \"%s\", line %d, conflicts with entry in file \"%s"
+"\", line %d."
+msgstr ""
+"Eintrag in Zeitzonendatei »%s«, Zeile %d, steht im Konflikt mit Eintrag in "
+"Datei »%s«, Zeile %d."
+
+#: utils/misc/tzparser.c:285
+#, c-format
+msgid "invalid time zone file name \"%s\""
+msgstr "ungültiger Zeitzonen-Dateiname »%s«"
+
+#: utils/misc/tzparser.c:298
+#, c-format
+msgid "time zone file recursion limit exceeded in file \"%s\""
+msgstr "Rekursionsbeschränkung für Zeitzonendatei überschritten in Datei »%s«"
+
+#: utils/misc/tzparser.c:337 utils/misc/tzparser.c:350
+#, c-format
+msgid "could not read time zone file \"%s\": %m"
+msgstr "konnte Zeitzonendatei »%s« nicht lesen: %m"
+
+#: utils/misc/tzparser.c:360
+#, c-format
+msgid "line is too long in time zone file \"%s\", line %d"
+msgstr "Zeile ist zu lang in Zeitzonendatei »%s«, Zeile %d"
+
+#: utils/misc/tzparser.c:383
+#, c-format
+msgid "@INCLUDE without file name in time zone file \"%s\", line %d"
+msgstr "@INCLUDE ohne Dateiname in Zeitzonendatei »%s«, Zeile %d"
+
 #: guc-file.l:274
 #, c-format
 msgid "parameter \"%s\" removed from configuration file, reset to default"
@@ -18486,14 +18525,14 @@ msgid "could not set junction for \"%s\": %s\n"
 msgstr "konnte Junction für »%s« nicht erzeugen: %s\n"
 
 #: ../port/dirmod.c:358
-#, fuzzy, c-format
+#, c-format
 msgid "could not get junction for \"%s\": %s"
-msgstr "konnte Junction für »%s« nicht erzeugen: %s"
+msgstr "konnte Junction für »%s« nicht lesen: %s"
 
 #: ../port/dirmod.c:361
-#, fuzzy, c-format
+#, c-format
 msgid "could not get junction for \"%s\": %s\n"
-msgstr "konnte Junction für »%s« nicht erzeugen: %s\n"
+msgstr "konnte Junction für »%s« nicht lesen: %s\n"
 
 #: ../port/dirmod.c:443
 #, c-format
@@ -18609,144 +18648,3 @@ msgstr "win32-Fehlercode %lu nach %d abgebildet"
 #, c-format
 msgid "unrecognized win32 error code: %lu"
 msgstr "unbekannter win32-Fehlercode: %lu"
-
-#~ msgid "syntax error in recovery command file: %s"
-#~ msgstr "Syntaxfehler in Recovery-Kommandodatei: %s"
-
-#~ msgid "Lines should have the format parameter = 'value'."
-#~ msgstr "Die Zeilen müssen das Format parameter = 'wert' haben."
-
-#~ msgid "array must not contain null values"
-#~ msgstr "Array darf keine NULL-Werte enthalten"
-
-#~ msgid "index %u/%u/%u needs VACUUM FULL or REINDEX to finish crash recovery"
-#~ msgstr ""
-#~ "Index %u/%u/%u benötigt VACUUM FULL oder REINDEX, um Wiederherstellung "
-#~ "nach Absturz abzuschließen"
-
-#~ msgid "Incomplete insertion detected during crash replay."
-#~ msgstr "Unvollständige Einfügeoperation beim Crash-Replay entdeckt."
-
-#~ msgid "index \"%s\" needs VACUUM or REINDEX to finish crash recovery"
-#~ msgstr ""
-#~ "Index »%s« benötigt VACUUM oder REINDEX, um Wiederherstellung nach "
-#~ "Absturz abzuschließen"
-
-#~ msgid "index \"%s\" needs VACUUM FULL or REINDEX to finish crash recovery"
-#~ msgstr ""
-#~ "Index »%s« benötigt VACUUM FULL oder REINDEX, um Wiederherstellung nach "
-#~ "Absturz abzuschließen"
-
-#~ msgid "EnumValuesCreate() can only set a single OID"
-#~ msgstr "EnumValuesCreate() kann nur eine einzelne OID setzen"
-
-#~ msgid ""
-#~ "cannot cluster on index \"%s\" because access method does not handle null "
-#~ "values"
-#~ msgstr ""
-#~ "kann nicht anhand des Index »%s« clustern, weil die Indexmethode keine "
-#~ "NULL-Werte verarbeiten kann"
-
-#~ msgid ""
-#~ "You might be able to work around this by marking column \"%s\" NOT NULL, "
-#~ "or use ALTER TABLE ... SET WITHOUT CLUSTER to remove the cluster "
-#~ "specification from the table."
-#~ msgstr ""
-#~ "Sie können das möglicherweise umgehen, indem Sie die Spalte »%s« als NOT "
-#~ "NULL markieren oder mit ALTER TABLE ... SET WITHOUT CLUSTER die Cluster-"
-#~ "Markierung von der Tabelle entfernen."
-
-#~ msgid ""
-#~ "You might be able to work around this by marking column \"%s\" NOT NULL."
-#~ msgstr ""
-#~ "Sie können das möglicherweise umgehen, indem Sie die Spalte »%s« als NOT "
-#~ "NULL markieren."
-
-#~ msgid ""
-#~ "cannot cluster on expressional index \"%s\" because its index access "
-#~ "method does not handle null values"
-#~ msgstr ""
-#~ "kann nicht anhand des Ausdrucksindex »%s« clustern, weil die Indexmethode "
-#~ "keine NULL-Werte verarbeiten kann"
-
-#~ msgid "\"%s\" is not a table, view, or composite type"
-#~ msgstr ""
-#~ "»%s« ist keine Tabelle, Sicht oder Sequenz und kein zusammengesetzter Typ"
-
-#~ msgid "must be member of role \"%s\" to comment upon it"
-#~ msgstr ""
-#~ "nur für Mitglieder der Rolle »%s« können einen Kommentar für sie erstellen"
-
-#~ msgid "must be superuser to comment on procedural language"
-#~ msgstr "nur Superuser können Kommentare für prozedurale Sprachen erzeugen"
-
-#~ msgid "must be superuser to comment on text search parser"
-#~ msgstr "nur Superuser können Kommentare für Textsucheparser erzeugen"
-
-#~ msgid "must be superuser to comment on text search template"
-#~ msgstr "nur Superuser können Kommentare für Textsuchevorlagen erzeugen"
-
-#~ msgid "function \"%s\" is already in schema \"%s\""
-#~ msgstr "Funktion »%s« ist bereits in Schema »%s«"
-
-#~ msgid "cannot reference temporary table from permanent table constraint"
-#~ msgstr ""
-#~ "temporäre Tabelle kann nicht in permanentem Tabellen-Constraint benutzt "
-#~ "werden"
-
-#~ msgid "cannot reference permanent table from temporary table constraint"
-#~ msgstr ""
-#~ "permanente Tabelle kann nicht in temporären Tabellen-Constraint benutzt "
-#~ "werden"
-
-#~ msgid "composite type must have at least one attribute"
-#~ msgstr "zusammengesetzter Typ muss mindestens ein Attribut haben"
-
-#~ msgid "database \"%s\" not found"
-#~ msgstr "Datenbank »%s« nicht gefunden"
-
-#~ msgid "invalid list syntax for parameter \"datestyle\""
-#~ msgstr "ungültige Listensyntax für Parameter »datestyle«"
-
-#~ msgid "unrecognized \"datestyle\" key word: \"%s\""
-#~ msgstr "unbekanntes »datestyle«-Schlüsselwort: »%s«"
-
-#~ msgid "invalid interval value for time zone: month not allowed"
-#~ msgstr "ungültige Intervallangabe für Zeitzone: Monat nicht erlaubt"
-
-#~ msgid "invalid interval value for time zone: day not allowed"
-#~ msgstr "ungültige Intervallangabe für Zeitzone: Tag nicht erlaubt"
-
-#~ msgid "unrecognized time zone name: \"%s\""
-#~ msgstr "unbekannter Zeitzonenname: »%s«"
-
-#~ msgid "argument to pg_get_expr() must come from system catalogs"
-#~ msgstr "Argument von pg_get_expr() muss aus den Systemkatalogen kommen"
-
-#~ msgid "cannot change view \"%s\""
-#~ msgstr "kann Sicht »%s« nicht ändern"
-
-#~ msgid "hostssl not supported on this platform"
-#~ msgstr "hostssl wird auf dieser Plattform nicht unterstützt"
-
-#~ msgid "SELECT FOR UPDATE/SHARE cannot be applied to NEW or OLD"
-#~ msgstr ""
-#~ "SELECT FOR UPDATE/SHARE kann nicht auf NEW oder OLD angewendet werden"
-
-#~ msgid "could not create log file \"%s\": %m"
-#~ msgstr "konnte Logdatei »%s« nicht erstellen: %m"
-
-#~ msgid "could not open new log file \"%s\": %m"
-#~ msgstr "konnte neue Logdatei »%s« nicht öffnen: %m"
-
-#~ msgid "Sets immediate fsync at commit."
-#~ msgstr "Setzt sofortiges Fsync beim Committen."
-
-#~ msgid "invalid list syntax for parameter \"log_destination\""
-#~ msgstr "ungültige Listensyntax für Parameter »log_destination«"
-
-#~ msgid "unrecognized \"log_destination\" key word: \"%s\""
-#~ msgstr "unbekanntes »log_destination«-Schlüsselwort: »%s«"
-
-#~ msgid "replication connection authorized: user=%s host=%s port=%s"
-#~ msgstr "Replikationsverbindung authorisiert: Benutzer=%s Host=%s Port=%s"
index 9b9c06b25c38c6d78cec473fcaf8f025c921d28c..52c3071b6c976d1afd4eec10f3d06d621f4c1396 100644 (file)
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 8.4\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n"
-"POT-Creation-Date: 2011-04-11 21:00+0000\n"
-"PO-Revision-Date: 2011-04-12 08:57+0100\n"
+"POT-Creation-Date: 2011-07-08 06:58+0000\n"
+"PO-Revision-Date: 2011-07-08 15:34+0100\n"
 "Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n"
 "Language-Team: French <guillaume@lelarge.info>\n"
 "Language: fr\n"
@@ -20,814 +20,767 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: main/main.c:230
+#: nodes/nodeFuncs.c:114
+#: nodes/nodeFuncs.c:140
+#: parser/parse_coerce.c:1645
+#: parser/parse_coerce.c:1662
+#: parser/parse_coerce.c:1724
+#: parser/parse_expr.c:1633
+#: parser/parse_func.c:367
+#: parser/parse_oper.c:948
 #, c-format
-msgid "%s: setsysinfo failed: %s\n"
-msgstr "%s : setsysinfo a échoué : %s\n"
+msgid "could not find array type for data type %s"
+msgstr "n'a pas pu trouver le type array pour le type de données %s"
 
-#: main/main.c:249
+#: nodes/print.c:85
+#: catalog/dependency.c:928
+#: catalog/dependency.c:929
+#: catalog/dependency.c:935
+#: catalog/dependency.c:936
+#: catalog/dependency.c:947
+#: catalog/dependency.c:948
+#: catalog/objectaddress.c:315
+#: commands/user.c:956
+#: commands/user.c:957
+#: commands/tablecmds.c:689
+#: commands/trigger.c:892
+#: commands/trigger.c:908
+#: commands/trigger.c:920
+#: tcop/postgres.c:4297
+#: storage/lmgr/deadlock.c:942
+#: storage/lmgr/deadlock.c:943
+#: port/win32/security.c:51
+#: utils/adt/xml.c:1366
+#: utils/adt/xml.c:1367
+#: utils/adt/xml.c:1373
+#: utils/adt/xml.c:1444
+#: utils/fmgr/dfmgr.c:381
+#: utils/misc/guc.c:5397
+#: utils/misc/guc.c:5711
+#: utils/misc/guc.c:7980
+#: utils/misc/guc.c:7984
+#: utils/misc/guc.c:7986
+#: utils/misc/guc.c:8014
+#: utils/misc/guc.c:8018
+#: utils/misc/guc.c:8020
+#: utils/misc/guc.c:8048
+#: utils/misc/guc.c:8052
+#: utils/misc/guc.c:8054
+#: utils/misc/guc.c:8082
+#: utils/misc/guc.c:8086
+#: utils/misc/guc.c:8088
+#: utils/misc/guc.c:8116
+#: utils/misc/guc.c:8121
+#: utils/misc/guc.c:8123
 #, c-format
-msgid "%s: WSAStartup failed: %d\n"
-msgstr "%s : WSAStartup a échoué : %d\n"
+msgid "%s"
+msgstr "%s"
 
-#: main/main.c:268
-#, c-format
-msgid ""
-"%s is the PostgreSQL server.\n"
-"\n"
-msgstr ""
-"%s est le serveur PostgreSQL.\n"
-"\n"
+#: tsearch/dict_ispell.c:53
+#: tsearch/dict_thesaurus.c:615
+msgid "multiple DictFile parameters"
+msgstr "multiples paramètres DictFile"
 
-#: main/main.c:269
-#, c-format
-msgid ""
-"Usage:\n"
-"  %s [OPTION]...\n"
-"\n"
-msgstr ""
-"Usage :\n"
-"  %s [OPTION]...\n"
-"\n"
+#: tsearch/dict_ispell.c:64
+msgid "multiple AffFile parameters"
+msgstr "multiples paramètres AffFile"
 
-#: main/main.c:270
-#, c-format
-msgid "Options:\n"
-msgstr "Options :\n"
+#: tsearch/dict_ispell.c:75
+#: tsearch/dict_simple.c:50
+#: snowball/dict_snowball.c:206
+msgid "multiple StopWords parameters"
+msgstr "plusieurs paramètres StopWords"
 
-#: main/main.c:272
+#: tsearch/dict_ispell.c:83
 #, c-format
-msgid "  -A 1|0          enable/disable run-time assert checking\n"
-msgstr ""
-"  -A 1|0             active/désactive la vérification des limites (assert) à\n"
-"                     l'exécution\n"
+msgid "unrecognized Ispell parameter: \"%s\""
+msgstr "paramètre Ispell non reconnu : « %s »"
 
-#: main/main.c:274
-#, c-format
-msgid "  -B NBUFFERS     number of shared buffers\n"
-msgstr "  -B NBUFFERS        nombre de tampons partagés\n"
+#: tsearch/dict_ispell.c:97
+msgid "missing AffFile parameter"
+msgstr "paramètre AffFile manquant"
 
-#: main/main.c:275
-#, c-format
-msgid "  -c NAME=VALUE   set run-time parameter\n"
-msgstr "  -c NOM=VALEUR      configure un paramètre d'exécution\n"
+#: tsearch/dict_ispell.c:103
+#: tsearch/dict_thesaurus.c:639
+msgid "missing DictFile parameter"
+msgstr "paramètre DictFile manquant"
 
-#: main/main.c:276
-#, c-format
-msgid "  -d 1-5          debugging level\n"
-msgstr "  -d 1-5             niveau de débogage\n"
+#: tsearch/dict_simple.c:59
+msgid "multiple Accept parameters"
+msgstr "multiples paramètres Accept"
 
-#: main/main.c:277
+#: tsearch/dict_simple.c:67
 #, c-format
-msgid "  -D DATADIR      database directory\n"
-msgstr "  -D REPDONNEES      répertoire de la base de données\n"
+msgid "unrecognized simple dictionary parameter: \"%s\""
+msgstr "paramètre de dictionnaire simple non reconnu : « %s »"
 
-#: main/main.c:278
+#: tsearch/dict_synonym.c:119
 #, c-format
-msgid "  -e              use European date input format (DMY)\n"
-msgstr "  -e                 utilise le format de saisie européen des dates (DMY)\n"
+msgid "unrecognized synonym parameter: \"%s\""
+msgstr "paramètre synonyme non reconnu : « %s »"
 
-#: main/main.c:279
-#, c-format
-msgid "  -F              turn fsync off\n"
-msgstr "  -F                 désactive fsync\n"
+#: tsearch/dict_synonym.c:126
+msgid "missing Synonyms parameter"
+msgstr "paramètre Synonyms manquant"
 
-#: main/main.c:280
+#: tsearch/dict_synonym.c:133
 #, c-format
-msgid "  -h HOSTNAME     host name or IP address to listen on\n"
-msgstr "  -h NOMHOTE         nom d'hôte ou adresse IP à écouter\n"
+msgid "could not open synonym file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le fichier synonyme « %s » : %m"
 
-#: main/main.c:281
+#: tsearch/dict_thesaurus.c:180
 #, c-format
-msgid "  -i              enable TCP/IP connections\n"
-msgstr "  -i                 active les connexions TCP/IP\n"
+msgid "could not open thesaurus file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le thésaurus « %s » : %m"
 
-#: main/main.c:282
-#, c-format
-msgid "  -k DIRECTORY    Unix-domain socket location\n"
-msgstr "  -k REPERTOIRE      emplacement des sockets de domaine Unix\n"
+#: tsearch/dict_thesaurus.c:213
+msgid "unexpected delimiter"
+msgstr "délimiteur inattendu"
 
-#: main/main.c:284
-#, c-format
-msgid "  -l              enable SSL connections\n"
-msgstr "  -l                 active les connexions SSL\n"
+#: tsearch/dict_thesaurus.c:263
+#: tsearch/dict_thesaurus.c:279
+msgid "unexpected end of line or lexeme"
+msgstr "fin de ligne ou lexeme inattendu"
 
-#: main/main.c:286
-#, c-format
-msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
-msgstr "  -N MAX-CONNECT     nombre maximum de connexions simultanées\n"
+#: tsearch/dict_thesaurus.c:288
+msgid "unexpected end of line"
+msgstr "fin de ligne inattendue"
 
-#: main/main.c:287
+#: tsearch/dict_thesaurus.c:412
 #, c-format
-msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process (obsolete)\n"
-msgstr "  -o OPTIONS         passe « OPTIONS » à chaque processus serveur (obsolète)\n"
+msgid "thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgstr ""
+"le mot d'exemple « %s » du thésaurus n'est pas reconnu par le\n"
+"sous-dictionnaire (règle %d)"
 
-#: main/main.c:288
+#: tsearch/dict_thesaurus.c:418
 #, c-format
-msgid "  -p PORT         port number to listen on\n"
-msgstr "  -p PORT            numéro du port à écouter\n"
+msgid "thesaurus sample word \"%s\" is a stop word (rule %d)"
+msgstr "le mot d'exemple « %s » du thésaurus est un terme courant (règle %d)"
 
-#: main/main.c:289
-#, c-format
-msgid "  -s              show statistics after each query\n"
-msgstr "  -s                 affiche les statistiques après chaque requête\n"
+#: tsearch/dict_thesaurus.c:421
+msgid "Use \"?\" to represent a stop word within a sample phrase."
+msgstr "Utilisez « ? » pour représenter un terme courant dans une phrase."
 
-#: main/main.c:290
+#: tsearch/dict_thesaurus.c:567
 #, c-format
-msgid "  -S WORK-MEM     set amount of memory for sorts (in kB)\n"
-msgstr "  -S WORK-MEM        configure la mémoire pour les tris (en Ko)\n"
+msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
+msgstr "le mot substitut « %s » du thésaurus est un terme courant (règle %d)"
 
-#: main/main.c:291
+#: tsearch/dict_thesaurus.c:574
 #, c-format
-msgid "  --NAME=VALUE    set run-time parameter\n"
-msgstr "  -c NOM=VALEUR      configure un paramètre d'exécution\n"
+msgid "thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
+msgstr ""
+"le mot substitut « %s » du thésaurus n'est pas reconnu par le\n"
+"sous-dictionnaire (règle %d)"
 
-#: main/main.c:292
+#: tsearch/dict_thesaurus.c:586
 #, c-format
-msgid "  --describe-config  describe configuration parameters, then exit\n"
-msgstr "  --describe-config  décrit les paramètres de configuration, puis quitte\n"
+msgid "thesaurus substitute phrase is empty (rule %d)"
+msgstr "la phrase substitut du thésaurus est vide (règle %d)"
 
-#: main/main.c:293
-#, c-format
-msgid "  --help          show this help, then exit\n"
-msgstr "  --help             affiche cette aide, puis quitte\n"
+#: tsearch/dict_thesaurus.c:624
+msgid "multiple Dictionary parameters"
+msgstr "multiples paramètres Dictionary"
 
-#: main/main.c:294
+#: tsearch/dict_thesaurus.c:631
 #, c-format
-msgid "  --version       output version information, then exit\n"
-msgstr "  --version          affiche la version, puis quitte\n"
+msgid "unrecognized Thesaurus parameter: \"%s\""
+msgstr "paramètre Thesaurus non reconnu : « %s »"
 
-#: main/main.c:296
-#, c-format
-msgid ""
-"\n"
-"Developer options:\n"
-msgstr ""
-"\n"
-"Options pour le développeur :\n"
+#: tsearch/dict_thesaurus.c:643
+msgid "missing Dictionary parameter"
+msgstr "paramètre Dictionary manquant"
 
-#: main/main.c:297
+#: tsearch/spell.c:276
 #, c-format
-msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
-msgstr "  -f s|i|n|m|h       interdit l'utilisation de certains types de plan\n"
+msgid "could not open dictionary file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le fichier dictionnaire « %s » : %m"
 
-#: main/main.c:298
+#: tsearch/spell.c:439
+#: utils/adt/regexp.c:195
 #, c-format
-msgid "  -n              do not reinitialize shared memory after abnormal exit\n"
-msgstr ""
-"  -n                 ne réinitialise pas la mémoire partagée après un arrêt\n"
-"                     brutal\n"
+msgid "invalid regular expression: %s"
+msgstr "expression rationnelle invalide : %s"
 
-#: main/main.c:299
-#, c-format
-msgid "  -O              allow system table structure changes\n"
-msgstr ""
-"  -O                 autorise les modifications de structure des tables\n"
-"                     système\n"
+#: tsearch/spell.c:518
+#: tsearch/spell.c:535
+#: tsearch/spell.c:552
+#: tsearch/spell.c:569
+#: tsearch/spell.c:591
+#: gram.y:12477
+#: gram.y:12494
+msgid "syntax error"
+msgstr "erreur de syntaxe"
 
-#: main/main.c:300
-#, c-format
-msgid "  -P              disable system indexes\n"
-msgstr "  -P                 désactive les index système\n"
+#: tsearch/spell.c:596
+#: tsearch/spell.c:842
+#: tsearch/spell.c:862
+msgid "multibyte flag character is not allowed"
+msgstr "un caractère drapeau multi-octet n'est pas autorisé"
 
-#: main/main.c:301
+#: tsearch/spell.c:629
+#: tsearch/spell.c:687
+#: tsearch/spell.c:780
 #, c-format
-msgid "  -t pa|pl|ex     show timings after each query\n"
-msgstr "  -t pa|pl|ex     affiche les temps pour chaque requête\n"
+msgid "could not open affix file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le fichier affixe « %s » : %m"
 
-#: main/main.c:302
-#, c-format
-msgid "  -T              send SIGSTOP to all backend servers if one dies\n"
-msgstr ""
-"  -T                 envoie SIGSTOP à tous les processus serveur si l'un\n"
-"                     d'entre eux meurt\n"
+#: tsearch/spell.c:675
+msgid "Ispell dictionary supports only default flag value"
+msgstr "le dictionnaire Ispell supporte seulement la valeur par défaut du drapeau"
 
-#: main/main.c:303
-#, c-format
-msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
-msgstr ""
-"  -W NUM             attends NUM secondes pour permettre l'attache d'un\n"
-"                     débogueur\n"
+#: tsearch/spell.c:873
+msgid "wrong affix file format for flag"
+msgstr "mauvais format de fichier affixe pour le drapeau"
 
-#: main/main.c:305
+#: tsearch/to_tsany.c:165
+#: utils/adt/tsvector.c:272
+#: utils/adt/tsvector_op.c:514
 #, c-format
-msgid ""
-"\n"
-"Options for single-user mode:\n"
-msgstr ""
-"\n"
-"Options pour le mode mono-utilisateur :\n"
+msgid "string is too long for tsvector (%d bytes, max %d bytes)"
+msgstr "la chaîne est trop longue (%d octets, max %d octets)"
 
-#: main/main.c:306
+#: tsearch/ts_locale.c:177
 #, c-format
-msgid "  --single        selects single-user mode (must be first argument)\n"
-msgstr ""
-"  --single           sélectionne le mode mono-utilisateur (doit être le\n"
-"                     premier argument)\n"
+msgid "line %d of configuration file \"%s\": \"%s\""
+msgstr "ligne %d du fichier de configuration « %s » : « %s »"
 
-#: main/main.c:307
+#: tsearch/ts_locale.c:182
+#: libpq/hba.c:781
+#: libpq/hba.c:797
+#: libpq/hba.c:833
+#: libpq/hba.c:855
+#: libpq/hba.c:864
+#: libpq/hba.c:887
+#: libpq/hba.c:899
+#: libpq/hba.c:912
+#: libpq/hba.c:927
+#: libpq/hba.c:982
+#: libpq/hba.c:1002
+#: libpq/hba.c:1016
+#: libpq/hba.c:1033
+#: libpq/hba.c:1046
+#: libpq/hba.c:1062
+#: libpq/hba.c:1077
+#: libpq/hba.c:1119
+#: libpq/hba.c:1151
+#: libpq/hba.c:1162
+#: libpq/hba.c:1182
+#: libpq/hba.c:1193
+#: libpq/hba.c:1204
+#: libpq/hba.c:1221
+#: libpq/hba.c:1242
+#: libpq/hba.c:1272
+#: libpq/hba.c:1284
+#: libpq/hba.c:1297
+#: libpq/hba.c:1331
+#: libpq/hba.c:1405
+#: libpq/hba.c:1423
+#: libpq/hba.c:1444
+#: libpq/hba.c:1475
+#: libpq/hba.c:1485
 #, c-format
-msgid "  DBNAME          database name (defaults to user name)\n"
-msgstr "  NOMBASE            nom de la base (par défaut, celui de l'utilisateur)\n"
+msgid "line %d of configuration file \"%s\""
+msgstr "ligne %d du fichier de configuration « %s »"
 
-#: main/main.c:308
+#: tsearch/ts_locale.c:302
 #, c-format
-msgid "  -d 0-5          override debugging level\n"
-msgstr "  -d 0-5             surcharge le niveau de débogage\n"
+msgid "conversion from wchar_t to server encoding failed: %m"
+msgstr "échec de l'encodage de wchar_t vers l'encodage du serveur : %m"
 
-#: main/main.c:309
-#, c-format
-msgid "  -E              echo statement before execution\n"
-msgstr "  -E                 affiche la requête avant de l'exécuter\n"
-
-#: main/main.c:310
-#, c-format
-msgid "  -j              do not use newline as interactive query delimiter\n"
-msgstr ""
-"  -N                 n'utilise pas le retour à la ligne comme délimiteur de\n"
-"                     requête\n"
-
-#: main/main.c:311
-#: main/main.c:316
-#, c-format
-msgid "  -r FILENAME     send stdout and stderr to given file\n"
-msgstr "  -r FICHIER         envoie stdout et stderr dans le fichier indiqué\n"
-
-#: main/main.c:313
-#, c-format
-msgid ""
-"\n"
-"Options for bootstrapping mode:\n"
-msgstr ""
-"\n"
-"Options pour le mode « bootstrapping » :\n"
-
-#: main/main.c:314
-#, c-format
-msgid "  --boot          selects bootstrapping mode (must be first argument)\n"
-msgstr ""
-"  --boot             sélectionne le mode « bootstrapping » (doit être le\n"
-"                     premier argument)\n"
-
-#: main/main.c:315
-#, c-format
-msgid "  DBNAME          database name (mandatory argument in bootstrapping mode)\n"
-msgstr "  NOMBASE            nom de la base (argument obligatoire dans ce mode)\n"
-
-#: main/main.c:317
-#, c-format
-msgid "  -x NUM          internal use\n"
-msgstr "  -x NUM             utilisation interne\n"
+#: tsearch/ts_parse.c:391
+#: tsearch/ts_parse.c:398
+#: tsearch/ts_parse.c:561
+#: tsearch/ts_parse.c:568
+msgid "word is too long to be indexed"
+msgstr "le mot est trop long pour être indexé"
 
-#: main/main.c:319
+#: tsearch/ts_parse.c:392
+#: tsearch/ts_parse.c:399
+#: tsearch/ts_parse.c:562
+#: tsearch/ts_parse.c:569
 #, c-format
-msgid ""
-"\n"
-"Please read the documentation for the complete list of run-time\n"
-"configuration settings and how to set them on the command line or in\n"
-"the configuration file.\n"
-"\n"
-"Report bugs to <pgsql-bugs@postgresql.org>.\n"
-msgstr ""
-"\n"
-"Merci de lire la documentation pour la liste complète des paramètres de\n"
-"configuration à l'exécution et pour savoir comment les configurer à la\n"
-"ligne de commande ou dans le fichier de configuration.\n"
-"\n"
-"Rapportez les bogues à <pgsql-bugs@postgresql.org>.\n"
-
-#: main/main.c:333
-msgid ""
-"\"root\" execution of the PostgreSQL server is not permitted.\n"
-"The server must be started under an unprivileged user ID to prevent\n"
-"possible system security compromise.  See the documentation for\n"
-"more information on how to properly start the server.\n"
-msgstr ""
-"L'exécution du serveur PostgreSQL par l'utilisateur « root » n'est pas\n"
-"autorisée.\n"
-"Le serveur doit être lancé avec un utilisateur non privilégié pour empêcher\n"
-"tout problème possible de sécurité sur le serveur. Voir la documentation pour\n"
-"plus d'informations sur le lancement propre du serveur.\n"
+msgid "Words longer than %d characters are ignored."
+msgstr "Les mots de plus de %d caractères sont ignorés."
 
-#: main/main.c:350
+#: tsearch/ts_utils.c:53
 #, c-format
-msgid "%s: real and effective user IDs must match\n"
-msgstr "%s : les identifiants réel et effectif de l'utilisateur doivent correspondre\n"
-
-#: main/main.c:357
-msgid ""
-"Execution of PostgreSQL by a user with administrative permissions is not\n"
-"permitted.\n"
-"The server must be started under an unprivileged user ID to prevent\n"
-"possible system security compromises.  See the documentation for\n"
-"more information on how to properly start the server.\n"
-msgstr ""
-"L'exécution du serveur PostgreSQL par un utilisateur doté de droits d'administrateur n'est pas permise.\n"
-"Le serveur doit être lancé avec un utilisateur non privilégié pour empêcher\n"
-"tout problème de sécurité sur le serveur. Voir la documentation pour\n"
-"plus d'informations sur le lancement propre du serveur.\n"
+msgid "invalid text search configuration file name \"%s\""
+msgstr "nom du fichier de configuration de la recherche plein texte invalide : « %s »"
 
-#: main/main.c:378
+#: tsearch/ts_utils.c:91
 #, c-format
-msgid "%s: invalid effective UID: %d\n"
-msgstr "%s : UID effectif invalide : %d\n"
+msgid "could not open stop-word file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le fichier des termes courants « %s » : %m"
 
-#: main/main.c:391
-#, c-format
-msgid "%s: could not determine user name (GetUserName failed)\n"
-msgstr "%s : n'a pas pu déterminer le nom de l'utilisateur (GetUserName a échoué)\n"
+#: tsearch/wparser.c:314
+msgid "text search parser does not support headline creation"
+msgstr "l'analyseur de recherche plein texte ne supporte pas headline"
 
-#: tsearch/wparser_def.c:2533
+#: tsearch/wparser_def.c:2551
 #, c-format
 msgid "unrecognized headline parameter: \"%s\""
 msgstr "paramètre headline « %s » non reconnu"
 
-#: tsearch/wparser_def.c:2542
+#: tsearch/wparser_def.c:2560
 msgid "MinWords should be less than MaxWords"
 msgstr "MinWords doit avoir une valeur plus petite que celle de MaxWords"
 
-#: tsearch/wparser_def.c:2546
+#: tsearch/wparser_def.c:2564
 msgid "MinWords should be positive"
 msgstr "MinWords doit être positif"
 
-#: tsearch/wparser_def.c:2550
+#: tsearch/wparser_def.c:2568
 msgid "ShortWord should be >= 0"
 msgstr "ShortWord devrait être positif ou nul"
 
-#: tsearch/wparser_def.c:2554
+#: tsearch/wparser_def.c:2572
 msgid "MaxFragments should be >= 0"
 msgstr "MaxFragments devrait être positif ou nul"
 
-#: tsearch/dict_ispell.c:52
-#: tsearch/dict_thesaurus.c:615
-msgid "multiple DictFile parameters"
-msgstr "multiples paramètres DictFile"
-
-#: tsearch/dict_ispell.c:63
-msgid "multiple AffFile parameters"
-msgstr "multiples paramètres AffFile"
+#: access/hash/hashinsert.c:73
+#, c-format
+msgid "index row size %lu exceeds hash maximum %lu"
+msgstr "la taille de la ligne index, %lu, dépasse le hachage maximum, %lu"
 
-#: tsearch/dict_ispell.c:74
-#: tsearch/dict_simple.c:50
-#: snowball/dict_snowball.c:206
-msgid "multiple StopWords parameters"
-msgstr "plusieurs paramètres StopWords"
+#: access/hash/hashinsert.c:76
+msgid "Values larger than a buffer page cannot be indexed."
+msgstr "Les valeurs plus larges qu'une page de tampon ne peuvent pas être indexées."
 
-#: tsearch/dict_ispell.c:82
+#: access/hash/hashovfl.c:547
 #, c-format
-msgid "unrecognized Ispell parameter: \"%s\""
-msgstr "paramètre Ispell non reconnu : « %s »"
+msgid "out of overflow pages in hash index \"%s\""
+msgstr "en dehors des pages surchargées dans l'index haché « %s »"
 
-#: tsearch/dict_ispell.c:96
-msgid "missing AffFile parameter"
-msgstr "paramètre AffFile manquant"
+#: access/hash/hashsearch.c:152
+msgid "hash indexes do not support whole-index scans"
+msgstr "les index hâchés ne supportent pas les parcours complets d'index"
 
-#: tsearch/dict_ispell.c:102
-#: tsearch/dict_thesaurus.c:639
-msgid "missing DictFile parameter"
-msgstr "paramètre DictFile manquant"
+#: access/hash/hashutil.c:170
+#: access/gist/gistutil.c:589
+#: access/nbtree/nbtpage.c:433
+#, c-format
+msgid "index \"%s\" contains unexpected zero page at block %u"
+msgstr "l'index « %s » contient une page zéro inattendue au bloc %u"
 
-#: tsearch/dict_simple.c:59
-msgid "multiple Accept parameters"
-msgstr "multiples paramètres Accept"
+#: access/hash/hashutil.c:173
+#: access/hash/hashutil.c:184
+#: access/hash/hashutil.c:196
+#: access/hash/hashutil.c:217
+#: access/gist/gist.c:718
+#: access/gist/gistutil.c:592
+#: access/gist/gistutil.c:603
+#: access/gist/gistvacuum.c:274
+#: access/nbtree/nbtpage.c:436
+#: access/nbtree/nbtpage.c:447
+msgid "Please REINDEX it."
+msgstr "Merci d'exécuter REINDEX sur cet objet."
 
-#: tsearch/dict_simple.c:67
+#: access/hash/hashutil.c:181
+#: access/hash/hashutil.c:193
+#: access/gist/gistutil.c:600
+#: access/nbtree/nbtpage.c:444
 #, c-format
-msgid "unrecognized simple dictionary parameter: \"%s\""
-msgstr "paramètre de dictionnaire simple non reconnu : « %s »"
+msgid "index \"%s\" contains corrupted page at block %u"
+msgstr "l'index « %s » contient une page corrompue au bloc %u"
 
-#: tsearch/dict_synonym.c:119
+#: access/hash/hashutil.c:209
 #, c-format
-msgid "unrecognized synonym parameter: \"%s\""
-msgstr "paramètre synonyme non reconnu : « %s »"
+msgid "index \"%s\" is not a hash index"
+msgstr "l'index « %s » n'est pas un index haché"
 
-#: tsearch/dict_synonym.c:126
-msgid "missing Synonyms parameter"
-msgstr "paramètre Synonyms manquant"
+#: access/hash/hashutil.c:215
+#, c-format
+msgid "index \"%s\" has wrong hash version"
+msgstr "l'index « %s » a la mauvaise version de hachage"
 
-#: tsearch/dict_synonym.c:133
+#: access/common/heaptuple.c:646
+#: access/common/heaptuple.c:1398
 #, c-format
-msgid "could not open synonym file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le fichier synonyme « %s » : %m"
+msgid "number of columns (%d) exceeds limit (%d)"
+msgstr "le nombre de colonnes (%d) dépasse la limite (%d)"
 
-#: tsearch/dict_thesaurus.c:180
+#: access/common/indextuple.c:57
 #, c-format
-msgid "could not open thesaurus file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le thésaurus « %s » : %m"
+msgid "number of index columns (%d) exceeds limit (%d)"
+msgstr "le nombre de colonnes indexées (%d) dépasse la limite (%d)"
 
-#: tsearch/dict_thesaurus.c:213
-msgid "unexpected delimiter"
-msgstr "délimiteur inattendu"
+#: access/common/indextuple.c:168
+#, c-format
+msgid "index row requires %lu bytes, maximum size is %lu"
+msgstr "la ligne index requiert %lu octets, la taille maximum est %lu"
 
-#: tsearch/dict_thesaurus.c:263
-#: tsearch/dict_thesaurus.c:279
-msgid "unexpected end of line or lexeme"
-msgstr "fin de ligne ou lexeme inattendu"
+#: access/common/printtup.c:278
+#: tcop/fastpath.c:180
+#: tcop/fastpath.c:554
+#: tcop/postgres.c:1664
+#, c-format
+msgid "unsupported format code: %d"
+msgstr "code de format non supporté : %d"
 
-#: tsearch/dict_thesaurus.c:288
-msgid "unexpected end of line"
-msgstr "fin de ligne inattendue"
+#: access/common/reloptions.c:323
+msgid "user-defined relation parameter types limit exceeded"
+msgstr "limite dépassée des types de paramètres de la relation définie par l'utilisateur"
 
-#: tsearch/dict_thesaurus.c:412
-#, c-format
-msgid "thesaurus sample word \"%s\" isn't recognized by subdictionary (rule %d)"
-msgstr ""
-"le mot d'exemple « %s » du thésaurus n'est pas reconnu par le\n"
-"sous-dictionnaire (règle %d)"
+#: access/common/reloptions.c:622
+msgid "RESET must not include values for parameters"
+msgstr "RESET ne doit pas inclure de valeurs pour les paramètres"
 
-#: tsearch/dict_thesaurus.c:418
+#: access/common/reloptions.c:655
 #, c-format
-msgid "thesaurus sample word \"%s\" is a stop word (rule %d)"
-msgstr "le mot d'exemple « %s » du thésaurus est un terme courant (règle %d)"
-
-#: tsearch/dict_thesaurus.c:421
-msgid "Use \"?\" to represent a stop word within a sample phrase."
-msgstr "Utilisez « ? » pour représenter un terme courant dans une phrase."
+msgid "unrecognized parameter namespace \"%s\""
+msgstr "espace de nom du paramètre « %s » non reconnu"
 
-#: tsearch/dict_thesaurus.c:567
+#: access/common/reloptions.c:898
 #, c-format
-msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
-msgstr "le mot substitut « %s » du thésaurus est un terme courant (règle %d)"
+msgid "unrecognized parameter \"%s\""
+msgstr "paramètre « %s » non reconnu"
 
-#: tsearch/dict_thesaurus.c:574
+#: access/common/reloptions.c:923
 #, c-format
-msgid "thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
-msgstr ""
-"le mot substitut « %s » du thésaurus n'est pas reconnu par le\n"
-"sous-dictionnaire (règle %d)"
+msgid "parameter \"%s\" specified more than once"
+msgstr "le paramètre « %s » est spécifié plus d'une fois"
 
-#: tsearch/dict_thesaurus.c:586
+#: access/common/reloptions.c:938
 #, c-format
-msgid "thesaurus substitute phrase is empty (rule %d)"
-msgstr "la phrase substitut du thésaurus est vide (règle %d)"
+msgid "invalid value for boolean option \"%s\": %s"
+msgstr "valeur invalide pour l'option booléenne « %s » : %s"
 
-#: tsearch/dict_thesaurus.c:624
-msgid "multiple Dictionary parameters"
-msgstr "multiples paramètres Dictionary"
+#: access/common/reloptions.c:949
+#, c-format
+msgid "invalid value for integer option \"%s\": %s"
+msgstr "valeur invalide pour l'option de type integer « %s » : %s"
 
-#: tsearch/dict_thesaurus.c:631
+#: access/common/reloptions.c:954
+#: access/common/reloptions.c:972
 #, c-format
-msgid "unrecognized Thesaurus parameter: \"%s\""
-msgstr "paramètre Thesaurus non reconnu : « %s »"
+msgid "value %s out of bounds for option \"%s\""
+msgstr "valeur %s en dehors des limites pour l'option « %s »"
 
-#: tsearch/dict_thesaurus.c:643
-msgid "missing Dictionary parameter"
-msgstr "paramètre Dictionary manquant"
+#: access/common/reloptions.c:956
+#, c-format
+msgid "Valid values are between \"%d\" and \"%d\"."
+msgstr "Les valeurs valides sont entre « %d » et « %d »."
 
-#: tsearch/spell.c:204
+#: access/common/reloptions.c:967
 #, c-format
-msgid "could not open dictionary file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le fichier dictionnaire « %s » : %m"
+msgid "invalid value for floating point option \"%s\": %s"
+msgstr "valeur invalide pour l'option de type float « %s » : %s"
 
-#: tsearch/spell.c:365
-#: utils/adt/regexp.c:190
+#: access/common/reloptions.c:974
 #, c-format
-msgid "invalid regular expression: %s"
-msgstr "expression rationnelle invalide : %s"
+msgid "Valid values are between \"%f\" and \"%f\"."
+msgstr "Les valeurs valides sont entre « %f » et « %f »."
 
-#: tsearch/spell.c:444
-#: tsearch/spell.c:461
-#: tsearch/spell.c:478
-#: tsearch/spell.c:495
-#: tsearch/spell.c:517
-#: gram.y:11474
-#: gram.y:11491
-msgid "syntax error"
-msgstr "erreur de syntaxe"
-
-#: tsearch/spell.c:522
-#: tsearch/spell.c:772
-#: tsearch/spell.c:792
-msgid "multibyte flag character is not allowed"
-msgstr "un caractère drapeau multi-octet n'est pas autorisé"
-
-#: tsearch/spell.c:557
-#: tsearch/spell.c:615
-#: tsearch/spell.c:710
+#: access/common/tupconvert.c:107
 #, c-format
-msgid "could not open affix file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le fichier affixe « %s » : %m"
-
-#: tsearch/spell.c:603
-msgid "Ispell dictionary supports only default flag value"
-msgstr "le dictionnaire Ispell supporte seulement la valeur par défaut du drapeau"
+msgid "Returned type %s does not match expected type %s in column %d."
+msgstr "Le type %s renvoyé ne correspond pas au type %s attendu dans la colonne %d."
 
-#: tsearch/spell.c:803
-msgid "wrong affix file format for flag"
-msgstr "mauvais format de fichier affixe pour le drapeau"
+#: access/common/tupconvert.c:135
+#, c-format
+msgid "Number of returned columns (%d) does not match expected column count (%d)."
+msgstr ""
+"Le nombre de colonnes renvoyées (%d) ne correspond pas au nombre de colonnes\n"
+"attendues (%d)."
 
-#: tsearch/to_tsany.c:165
-#: utils/adt/tsvector.c:272
-#: utils/adt/tsvector_op.c:514
+#: access/common/tupconvert.c:240
 #, c-format
-msgid "string is too long for tsvector (%d bytes, max %d bytes)"
-msgstr "la chaîne est trop longue (%d octets, max %d octets)"
+msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
+msgstr "L'attribut « %s » du type %s ne correspond pas à l'attribut correspondant de type %s."
 
-#: tsearch/ts_locale.c:168
+#: access/common/tupconvert.c:252
 #, c-format
-msgid "line %d of configuration file \"%s\": \"%s\""
-msgstr "ligne %d du fichier de configuration « %s » : « %s »"
+msgid "Attribute \"%s\" of type %s does not exist in type %s."
+msgstr "L'attribut « %s » du type %s n'existe pas dans le type %s."
 
-#: tsearch/ts_locale.c:173
-#: libpq/hba.c:653
-#: libpq/hba.c:669
-#: libpq/hba.c:715
-#: libpq/hba.c:738
-#: libpq/hba.c:750
-#: libpq/hba.c:763
-#: libpq/hba.c:778
-#: libpq/hba.c:825
-#: libpq/hba.c:848
-#: libpq/hba.c:865
-#: libpq/hba.c:878
-#: libpq/hba.c:894
-#: libpq/hba.c:909
-#: libpq/hba.c:949
-#: libpq/hba.c:981
-#: libpq/hba.c:992
-#: libpq/hba.c:1004
-#: libpq/hba.c:1015
-#: libpq/hba.c:1032
-#: libpq/hba.c:1053
-#: libpq/hba.c:1082
-#: libpq/hba.c:1094
-#: libpq/hba.c:1107
-#: libpq/hba.c:1141
-#: libpq/hba.c:1215
-#: libpq/hba.c:1233
-#: libpq/hba.c:1254
-#: libpq/hba.c:1285
-#: libpq/hba.c:1295
+#: access/common/tupdesc.c:575
+#: parser/parse_relation.c:1169
 #, c-format
-msgid "line %d of configuration file \"%s\""
-msgstr "ligne %d du fichier de configuration « %s »"
+msgid "column \"%s\" cannot be declared SETOF"
+msgstr "la colonne « %s » ne peut pas être déclarée SETOF"
 
-#: tsearch/ts_locale.c:288
+#: access/gin/ginentrypage.c:101
+#: access/nbtree/nbtinsert.c:531
+#: access/nbtree/nbtsort.c:483
 #, c-format
-msgid "conversion from wchar_t to server encoding failed: %m"
-msgstr "échec de l'encodage de wchar_t vers l'encodage du serveur : %m"
+msgid "index row size %lu exceeds maximum %lu for index \"%s\""
+msgstr "la taille de la ligne index, %lu, dépasse le maximum, %lu, pour l'index « %s »"
 
-#: tsearch/ts_parse.c:391
-#: tsearch/ts_parse.c:398
-#: tsearch/ts_parse.c:561
-#: tsearch/ts_parse.c:568
-msgid "word is too long to be indexed"
-msgstr "le mot est trop long pour être indexé"
+#: access/gin/ginscan.c:401
+msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
+msgstr ""
+"les anciens index GIN ne supportent pas les parcours complets d'index et les\n"
+"recherches de valeurs NULL"
 
-#: tsearch/ts_parse.c:392
-#: tsearch/ts_parse.c:399
-#: tsearch/ts_parse.c:562
-#: tsearch/ts_parse.c:569
+#: access/gin/ginscan.c:402
 #, c-format
-msgid "Words longer than %d characters are ignored."
-msgstr "Les mots de plus de %d caractères sont ignorés."
+msgid "To fix this, do REINDEX INDEX \"%s\"."
+msgstr "Pour corriger ceci, faites un REINDEX INDEX « %s »."
 
-#: tsearch/ts_utils.c:53
+#: access/gist/gist.c:230
+msgid "unlogged GiST indexes are not supported"
+msgstr "les index GiST non tracés ne sont pas supportés"
+
+#: access/gist/gist.c:715
+#: access/gist/gistvacuum.c:271
 #, c-format
-msgid "invalid text search configuration file name \"%s\""
-msgstr "nom du fichier de configuration de la recherche plein texte invalide : « %s »"
+msgid "index \"%s\" contains an inner tuple marked as invalid"
+msgstr "l'index « %s » contient une ligne interne marquée comme invalide"
 
-#: tsearch/ts_utils.c:91
+#: access/gist/gist.c:717
+#: access/gist/gistvacuum.c:273
+#, fuzzy
+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/gistsplit.c:375
 #, c-format
-msgid "could not open stop-word file \"%s\": %m"
-msgstr "n'a pas pu ouvrir le fichier des termes courants « %s » : %m"
+msgid "picksplit method for column %d of index \"%s\" failed"
+msgstr "échec de la méthode picksplit pour la colonne %d de l'index « %s »"
 
-#: tsearch/wparser.c:314
-msgid "text search parser does not support headline creation"
-msgstr "l'analyseur de recherche plein texte ne supporte pas headline"
+#: access/gist/gistsplit.c:377
+msgid "The index is not optimal. To optimize it, contact a developer, or try to use the column as the second one in the CREATE INDEX command."
+msgstr ""
+"L'index n'est pas optimal. Pour l'optimiser, contactez un développeur\n"
+"ou essayez d'utiliser la colonne comme second dans la commande\n"
+"CREATE INDEX."
 
-#: access/transam/slru.c:595
+#: access/transam/slru.c:609
 #, c-format
 msgid "file \"%s\" doesn't exist, reading as zeroes"
 msgstr "le fichier « %s » n'existe pas, contenu lu comme des zéros"
 
-#: access/transam/slru.c:825
-#: access/transam/slru.c:831
-#: access/transam/slru.c:838
+#: access/transam/slru.c:839
 #: access/transam/slru.c:845
 #: access/transam/slru.c:852
 #: access/transam/slru.c:859
+#: access/transam/slru.c:866
+#: access/transam/slru.c:873
 #, c-format
 msgid "could not access status of transaction %u"
 msgstr "n'a pas pu accéder au statut de la transaction %u"
 
-#: access/transam/slru.c:826
+#: access/transam/slru.c:840
 #, c-format
 msgid "Could not open file \"%s\": %m."
 msgstr "N'a pas pu ouvrir le fichier « %s » : %m"
 
-#: access/transam/slru.c:832
+#: access/transam/slru.c:846
 #, c-format
 msgid "Could not seek in file \"%s\" to offset %u: %m."
 msgstr "N'a pas pu se déplacer dans le fichier « %s » au décalage %u : %m"
 
-#: access/transam/slru.c:839
+#: access/transam/slru.c:853
 #, c-format
 msgid "Could not read from file \"%s\" at offset %u: %m."
 msgstr "N'a pas pu lire le fichier « %s » au décalage %u : %m"
 
-#: access/transam/slru.c:846
+#: access/transam/slru.c:860
 #, c-format
 msgid "Could not write to file \"%s\" at offset %u: %m."
 msgstr "N'a pas pu écrire le fichier « %s » au décalage %u : %m"
 
-#: access/transam/slru.c:853
+#: access/transam/slru.c:867
 #, c-format
 msgid "Could not fsync file \"%s\": %m."
 msgstr "N'a pas pu synchroniser sur disque (fsync) le fichier « %s » : %m"
 
-#: access/transam/slru.c:860
+#: access/transam/slru.c:874
 #, c-format
 msgid "Could not close file \"%s\": %m."
 msgstr "N'a pas pu fermer le fichier « %s » : %m"
 
-#: access/transam/slru.c:1087
+#: access/transam/slru.c:1101
 #, c-format
 msgid "could not truncate directory \"%s\": apparent wraparound"
 msgstr "n'a pas pu tronquer le répertoire « %s » : contournement apparent"
 
-#: access/transam/slru.c:1168
+#: access/transam/slru.c:1182
 #, c-format
 msgid "removing file \"%s\""
 msgstr "suppression du fichier « %s »"
 
-#: access/transam/twophase.c:247
+#: access/transam/twophase.c:250
 #, c-format
 msgid "transaction identifier \"%s\" is too long"
 msgstr "l'identifiant de la transaction « %s » est trop long"
 
-#: access/transam/twophase.c:254
+#: access/transam/twophase.c:257
 msgid "prepared transactions are disabled"
 msgstr "les transactions préparées sont désactivées"
 
-#: access/transam/twophase.c:255
+#: access/transam/twophase.c:258
 msgid "Set max_prepared_transactions to a nonzero value."
 msgstr "Configure max_prepared_transactions à une valeur différente de zéro."
 
-#: access/transam/twophase.c:288
+#: access/transam/twophase.c:291
 #, c-format
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "l'identifiant de la transaction « %s » est déjà utilisé"
 
-#: access/transam/twophase.c:297
+#: access/transam/twophase.c:300
 msgid "maximum number of prepared transactions reached"
 msgstr "nombre maximum de transactions préparées obtenu"
 
-#: access/transam/twophase.c:298
+#: access/transam/twophase.c:301
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Augmentez max_prepared_transactions (actuellement %d)."
 
-#: access/transam/twophase.c:418
+#: access/transam/twophase.c:421
 #, c-format
 msgid "prepared transaction with identifier \"%s\" is busy"
 msgstr "la transaction préparée d'identifiant « %s » est occupée"
 
-#: access/transam/twophase.c:426
+#: access/transam/twophase.c:429
 msgid "permission denied to finish prepared transaction"
 msgstr "droit refusé pour terminer la transaction préparée"
 
-#: access/transam/twophase.c:427
+#: access/transam/twophase.c:430
 msgid "Must be superuser or the user that prepared the transaction."
 msgstr "Doit être super-utilisateur ou l'utilisateur qui a préparé la transaction."
 
-#: access/transam/twophase.c:438
+#: access/transam/twophase.c:441
 msgid "prepared transaction belongs to another database"
 msgstr "la transaction préparée appartient à une autre base de données"
 
-#: access/transam/twophase.c:439
+#: access/transam/twophase.c:442
 msgid "Connect to the database where the transaction was prepared to finish it."
 msgstr ""
 "Connectez-vous à la base de données où la transaction a été préparée pour\n"
 "la terminer."
 
-#: access/transam/twophase.c:453
+#: access/transam/twophase.c:456
 #, c-format
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "la transaction préparée d'identifiant « %s » n'existe pas"
 
-#: access/transam/twophase.c:936
+#: access/transam/twophase.c:939
 msgid "two-phase state file maximum length exceeded"
 msgstr ""
 "longueur maximale dépassée pour le fichier de statut de la validation en\n"
 "deux phase"
 
-#: access/transam/twophase.c:954
+#: access/transam/twophase.c:957
 #, c-format
 msgid "could not create two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu créer le fichier de statut de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:968
-#: access/transam/twophase.c:985
-#: access/transam/twophase.c:1034
-#: access/transam/twophase.c:1445
-#: access/transam/twophase.c:1452
+#: access/transam/twophase.c:971
+#: access/transam/twophase.c:988
+#: access/transam/twophase.c:1044
+#: access/transam/twophase.c:1465
+#: access/transam/twophase.c:1472
 #, 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:994
+#: access/transam/twophase.c:997
 #, c-format
 msgid "could not seek in two-phase state file: %m"
 msgstr ""
 "n'a pas pu se déplacer dans le fichier de statut de la validation en deux\n"
 "phases : %m"
 
-#: access/transam/twophase.c:1040
-#: access/transam/twophase.c:1470
+#: access/transam/twophase.c:1050
+#: access/transam/twophase.c:1490
 #, 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:1112
-#: access/transam/twophase.c:1550
+#: access/transam/twophase.c:1130
+#: access/transam/twophase.c:1570
 #, c-format
 msgid "could not open two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu ouvrir le fichier d'état de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1129
+#: access/transam/twophase.c:1147
 #, 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:1161
+#: access/transam/twophase.c:1179
 #, 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:1253
+#: access/transam/twophase.c:1271
 #, c-format
 msgid "two-phase state file for transaction %u is corrupt"
 msgstr ""
 "le fichier d'état de la validation en deux phases est corrompu pour la\n"
 "transaction %u"
 
-#: access/transam/twophase.c:1407
+#: access/transam/twophase.c:1427
 #, 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:1436
+#: access/transam/twophase.c:1456
 #, 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:1464
+#: access/transam/twophase.c:1484
 #, 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:1559
+#: access/transam/twophase.c:1579
 #, c-format
 msgid "could not fsync two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le fichier d'état de la\n"
 "validation en deux phases nommé « %s » : %m"
 
-#: access/transam/twophase.c:1566
+#: access/transam/twophase.c:1586
 #, c-format
 msgid "could not close two-phase state file \"%s\": %m"
 msgstr ""
 "n'a pas pu fermer le fichier d'état de la validation en deux phases nommé\n"
 "« %s » : %m"
 
-#: access/transam/twophase.c:1631
+#: access/transam/twophase.c:1651
 #, 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:1647
-#: access/transam/twophase.c:1658
-#: access/transam/twophase.c:1771
-#: access/transam/twophase.c:1782
-#: access/transam/twophase.c:1855
+#: access/transam/twophase.c:1667
+#: access/transam/twophase.c:1678
+#: access/transam/twophase.c:1791
+#: access/transam/twophase.c:1802
+#: access/transam/twophase.c:1875
 #, 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:1760
-#: access/transam/twophase.c:1844
+#: access/transam/twophase.c:1780
+#: access/transam/twophase.c:1864
 #, 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:1862
+#: access/transam/twophase.c:1882
 #, c-format
 msgid "recovering prepared transaction %u"
 msgstr "récupération de la transaction préparée %u"
@@ -893,35 +846,35 @@ 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:716
+#: access/transam/xact.c:729
 msgid "cannot have more than 2^32-1 commands in a transaction"
 msgstr "ne peux pas avoir plus de 2^32-1 commandes dans une transaction"
 
-#: access/transam/xact.c:1236
+#: access/transam/xact.c:1268
 #, 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:1993
+#: access/transam/xact.c:2044
 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"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2782
+#: access/transam/xact.c:2835
 #, 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:2792
+#: access/transam/xact.c:2845
 #, 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:2802
+#: access/transam/xact.c:2855
 #, c-format
 msgid "%s cannot be executed from a function or multi-command string"
 msgstr ""
@@ -929,495 +882,510 @@ msgstr ""
 "contenant plusieurs commandes"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2853
+#: access/transam/xact.c:2906
 #, 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:3035
+#: access/transam/xact.c:3088
 msgid "there is already a transaction in progress"
 msgstr "une transaction est déjà en cours"
 
-#: access/transam/xact.c:3202
-#: access/transam/xact.c:3294
+#: access/transam/xact.c:3255
+#: access/transam/xact.c:3347
 msgid "there is no transaction in progress"
 msgstr "aucune transaction en cours"
 
-#: access/transam/xact.c:3388
-#: access/transam/xact.c:3438
-#: access/transam/xact.c:3444
-#: access/transam/xact.c:3488
-#: access/transam/xact.c:3536
-#: access/transam/xact.c:3542
+#: access/transam/xact.c:3441
+#: access/transam/xact.c:3491
+#: access/transam/xact.c:3497
+#: access/transam/xact.c:3541
+#: access/transam/xact.c:3589
+#: access/transam/xact.c:3595
 msgid "no such savepoint"
 msgstr "aucun point de sauvegarde"
 
-#: access/transam/xact.c:4172
+#: access/transam/xact.c:4225
 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:1276
+#: access/transam/xlog.c:1328
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier de statut d'archivage « %s » : %m"
 
-#: access/transam/xlog.c:1284
+#: access/transam/xlog.c:1336
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "n'a pas pu écrire le fichier de statut d'archivage « %s » : %m"
 
-#: access/transam/xlog.c:1739
-#: access/transam/xlog.c:9602
-#: replication/walreceiver.c:482
-#: replication/walsender.c:596
+#: access/transam/xlog.c:1791
+#: access/transam/xlog.c:10348
+#: replication/walreceiver.c:506
+#: replication/walsender.c:1003
 #, c-format
 msgid "could not seek in log file %u, segment %u to offset %u: %m"
 msgstr ""
 "n'a pas pu se déplacer dans le journal de transactions %u, du segment %u au\n"
 "segment %u : %m"
 
-#: access/transam/xlog.c:1756
-#: replication/walreceiver.c:499
+#: access/transam/xlog.c:1808
+#: replication/walreceiver.c:523
 #, c-format
 msgid "could not write to log file %u, segment %u at offset %u, length %lu: %m"
 msgstr ""
 "n'a pas pu écrire le journal de transactions %u, segment %u au décalage %u,\n"
 "longueur %lu : %m"
 
-#: access/transam/xlog.c:1958
+#: access/transam/xlog.c:2010
 #, c-format
 msgid "updated min recovery point to %X/%X"
 msgstr "mise à jour du point minimum de restauration sur %X/%X"
 
-#: access/transam/xlog.c:2299
-#: access/transam/xlog.c:2403
-#: access/transam/xlog.c:2632
-#: access/transam/xlog.c:2703
-#: access/transam/xlog.c:2760
-#: replication/walsender.c:584
+#: access/transam/xlog.c:2351
+#: access/transam/xlog.c:2455
+#: access/transam/xlog.c:2684
+#: access/transam/xlog.c:2755
+#: access/transam/xlog.c:2812
+#: replication/walsender.c:991
 #, c-format
 msgid "could not open file \"%s\" (log file %u, segment %u): %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » (journal de transactions %u, segment %u) : %m"
 
-#: access/transam/xlog.c:2324
-#: access/transam/xlog.c:2457
-#: access/transam/xlog.c:4287
-#: access/transam/xlog.c:8464
-#: access/transam/xlog.c:8619
-#: storage/smgr/md.c:278
+#: access/transam/xlog.c:2376
+#: access/transam/xlog.c:2509
+#: access/transam/xlog.c:4408
+#: access/transam/xlog.c:9026
+#: access/transam/xlog.c:9266
 #: storage/file/copydir.c:172
-#: postmaster/postmaster.c:3645
+#: storage/smgr/md.c:285
+#: postmaster/postmaster.c:3690
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2356
-#: access/transam/xlog.c:2489
-#: access/transam/xlog.c:4339
-#: access/transam/xlog.c:4395
-#: commands/copy.c:1316
+#: access/transam/xlog.c:2408
+#: access/transam/xlog.c:2541
+#: access/transam/xlog.c:4460
+#: access/transam/xlog.c:4523
 #: storage/file/copydir.c:197
-#: postmaster/postmaster.c:3655
-#: postmaster/postmaster.c:3665
-#: utils/misc/guc.c:7008
-#: utils/misc/guc.c:7033
-#: utils/init/miscinit.c:1054
-#: utils/init/miscinit.c:1063
-#: utils/init/miscinit.c:1070
+#: postmaster/postmaster.c:3700
+#: postmaster/postmaster.c:3710
+#: utils/init/miscinit.c:1089
+#: utils/init/miscinit.c:1098
+#: utils/init/miscinit.c:1105
+#: utils/misc/guc.c:7416
+#: utils/misc/guc.c:7441
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "n'a pas pu écrire dans le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2364
-#: access/transam/xlog.c:2496
-#: access/transam/xlog.c:4401
-#: storage/smgr/md.c:909
-#: storage/smgr/md.c:1083
-#: storage/smgr/md.c:1226
+#: access/transam/xlog.c:2416
+#: access/transam/xlog.c:2548
+#: access/transam/xlog.c:4529
 #: storage/file/copydir.c:269
+#: storage/smgr/md.c:924
+#: storage/smgr/md.c:1130
+#: storage/smgr/md.c:1281
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "n'a pas pu synchroniser sur disque (fsync) le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2369
-#: access/transam/xlog.c:2501
-#: access/transam/xlog.c:4406
+#: access/transam/xlog.c:2421
+#: access/transam/xlog.c:2553
+#: access/transam/xlog.c:4534
+#: commands/copy.c:1329
 #: storage/file/copydir.c:211
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "n'a pas pu fermer le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2442
-#: access/transam/xlog.c:4114
-#: access/transam/xlog.c:4208
-#: access/transam/xlog.c:4306
-#: storage/smgr/md.c:532
-#: storage/smgr/md.c:785
+#: access/transam/xlog.c:2494
+#: access/transam/xlog.c:4177
+#: access/transam/xlog.c:4271
+#: access/transam/xlog.c:4427
 #: storage/file/copydir.c:165
 #: storage/file/copydir.c:255
-#: utils/error/elog.c:1403
-#: utils/init/miscinit.c:1005
-#: utils/init/miscinit.c:1118
+#: storage/smgr/md.c:542
+#: storage/smgr/md.c:802
+#: replication/basebackup.c:725
+#: utils/init/miscinit.c:1039
+#: utils/init/miscinit.c:1153
+#: utils/error/elog.c:1469
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2470
-#: access/transam/xlog.c:4318
-#: access/transam/xlog.c:8567
-#: access/transam/xlog.c:8641
-#: access/transam/xlog.c:9024
-#: access/transam/xlog.c:9049
+#: access/transam/xlog.c:2522
+#: access/transam/xlog.c:4439
+#: access/transam/xlog.c:9198
+#: access/transam/xlog.c:9211
+#: access/transam/xlog.c:9741
+#: access/transam/xlog.c:9766
 #: storage/file/copydir.c:186
-#: utils/adt/genfile.c:133
+#: utils/adt/genfile.c:138
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "n'a pas pu lire le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2473
+#: access/transam/xlog.c:2525
 #, c-format
 msgid "not enough data in file \"%s\""
 msgstr "données insuffisantes dans le fichier « %s »"
 
-#: access/transam/xlog.c:2592
+#: access/transam/xlog.c:2644
 #, c-format
 msgid "could not link file \"%s\" to \"%s\" (initialization of log file %u, segment %u): %m"
 msgstr ""
 "n'a pas pu lier le fichier « %s » à « %s » (initialisation du journal de\n"
 "transactions %u, segment %u) : %m"
 
-#: access/transam/xlog.c:2604
+#: access/transam/xlog.c:2656
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\" (initialization of log file %u, segment %u): %m"
 msgstr ""
 "n'a pas pu renommer le fichier « %s » en « %s » (initialisation du journal\n"
 "de transactions %u, segment %u) : %m"
 
-#: access/transam/xlog.c:2787
-#: replication/walreceiver.c:456
+#: access/transam/xlog.c:2839
+#: replication/walreceiver.c:480
 #, c-format
 msgid "could not close log file %u, segment %u: %m"
 msgstr "n'a pas pu fermer le journal de transactions %u, segment %u : %m"
 
-#: access/transam/xlog.c:2859
-#: access/transam/xlog.c:3024
-#: access/transam/xlog.c:8447
+#: access/transam/xlog.c:2911
+#: access/transam/xlog.c:3076
+#: access/transam/xlog.c:9011
+#: access/transam/xlog.c:9186
 #: storage/file/copydir.c:86
 #: storage/file/copydir.c:125
 #: utils/adt/dbsize.c:65
-#: utils/adt/dbsize.c:217
-#: utils/adt/dbsize.c:288
-#: utils/adt/genfile.c:170
+#: utils/adt/dbsize.c:211
+#: utils/adt/dbsize.c:276
+#: utils/adt/genfile.c:107
+#: utils/adt/genfile.c:279
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "n'a pas pu tester le fichier « %s » : %m"
 
-#: access/transam/xlog.c:2867
-#: access/transam/xlog.c:8646
-#: storage/smgr/md.c:348
-#: storage/smgr/md.c:395
-#: storage/smgr/md.c:1192
+#: access/transam/xlog.c:2919
+#: access/transam/xlog.c:9216
+#: storage/smgr/md.c:358
+#: storage/smgr/md.c:405
+#: storage/smgr/md.c:1244
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "n'a pas pu supprimer le fichier « %s » : %m"
 
-#: access/transam/xlog.c:3003
+#: access/transam/xlog.c:3055
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
 msgstr "le fichier d'archive « %s » a la mauvaise taille : %lu au lieu de %lu"
 
-#: access/transam/xlog.c:3012
+#: access/transam/xlog.c:3064
 #, c-format
 msgid "restored log file \"%s\" from archive"
 msgstr "restauration du journal de transactions « %s » à partir de l'archive"
 
-#: access/transam/xlog.c:3062
+#: access/transam/xlog.c:3114
 #, c-format
 msgid "could not restore file \"%s\" from archive: return code %d"
 msgstr "n'a pas pu restaurer le fichier « %s » à partir de l'archive : code de retour %d"
 
-#: access/transam/xlog.c:3177
+#: access/transam/xlog.c:3229
 #, c-format
 msgid "%s \"%s\": return code %d"
 msgstr "%s « %s » : code de retour %d"
 
-#: access/transam/xlog.c:3287
-#: access/transam/xlog.c:3470
+#: access/transam/xlog.c:3339
+#: access/transam/xlog.c:3522
 #, 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:3341
+#: access/transam/xlog.c:3393
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "recyclage du journal de transactions « %s »"
 
-#: access/transam/xlog.c:3357
+#: access/transam/xlog.c:3409
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "suppression du journal de transactions « %s »"
 
-#: access/transam/xlog.c:3380
+#: access/transam/xlog.c:3432
 #, 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:3392
+#: access/transam/xlog.c:3444
 #, 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:3430
-#: access/transam/xlog.c:3440
+#: access/transam/xlog.c:3482
+#: access/transam/xlog.c:3492
 #, 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:3446
+#: access/transam/xlog.c:3498
 #, 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:3449
+#: access/transam/xlog.c:3501
 #, 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:3483
+#: access/transam/xlog.c:3535
 #, c-format
 msgid "removing transaction log backup history file \"%s\""
 msgstr "suppression du fichier historique des journaux de transaction « %s »"
 
-#: access/transam/xlog.c:3603
+#: access/transam/xlog.c:3655
 #, c-format
 msgid "incorrect hole size in record at %X/%X"
 msgstr "taille du trou incorrect à l'enregistrement %X/%X"
 
-#: access/transam/xlog.c:3616
+#: access/transam/xlog.c:3668
 #, c-format
 msgid "incorrect total length in record at %X/%X"
 msgstr "longueur totale incorrecte à l'enregistrement %X/%X"
 
-#: access/transam/xlog.c:3629
+#: access/transam/xlog.c:3681
 #, 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/xlog.c:3698
-#: access/transam/xlog.c:3734
+#: access/transam/xlog.c:3759
+#: access/transam/xlog.c:3797
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "décalage invalide de l'enregistrement %X/%X"
 
-#: access/transam/xlog.c:3742
+#: access/transam/xlog.c:3805
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "« contrecord » est requis par %X/%X"
 
-#: access/transam/xlog.c:3757
+#: access/transam/xlog.c:3820
 #, c-format
 msgid "invalid xlog switch record at %X/%X"
 msgstr "enregistrement de basculement du journal de transaction invalide à %X/%X"
 
-#: access/transam/xlog.c:3765
+#: access/transam/xlog.c:3828
 #, c-format
 msgid "record with zero length at %X/%X"
 msgstr "enregistrement de longueur nulle à %X/%X"
 
-#: access/transam/xlog.c:3774
+#: access/transam/xlog.c:3837
 #, c-format
 msgid "invalid record length at %X/%X"
 msgstr "longueur invalide de l'enregistrement à %X/%X"
 
-#: access/transam/xlog.c:3781
+#: access/transam/xlog.c:3844
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "identifiant du gestionnaire de ressources invalide %u à %X/%X"
 
-#: access/transam/xlog.c:3794
-#: access/transam/xlog.c:3810
+#: access/transam/xlog.c:3857
+#: access/transam/xlog.c:3873
 #, 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/xlog.c:3839
+#: access/transam/xlog.c:3902
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "longueur trop importante de l'enregistrement %u à %X/%X"
 
-#: access/transam/xlog.c:3879
+#: access/transam/xlog.c:3942
 #, c-format
 msgid "there is no contrecord flag in log file %u, segment %u, offset %u"
 msgstr ""
 "il n'y a pas de drapeaux « contrecord » dans le journal de transactions %u,\n"
 "segment %u, décalage %u"
 
-#: access/transam/xlog.c:3889
+#: access/transam/xlog.c:3952
 #, c-format
 msgid "invalid contrecord length %u in log file %u, segment %u, offset %u"
 msgstr ""
 "longueur invalide du « contrecord » %u dans le journal de tranasctions %u,\n"
 "segment %u, décalage %u"
 
-#: access/transam/xlog.c:3979
+#: access/transam/xlog.c:4042
 #, c-format
 msgid "invalid magic number %04X in log file %u, segment %u, offset %u"
 msgstr ""
 "numéro magique invalide %04X dans le journal de transactions %u, segment %u,\n"
 "décalage %u"
 
-#: access/transam/xlog.c:3986
-#: access/transam/xlog.c:4032
+#: access/transam/xlog.c:4049
+#: access/transam/xlog.c:4095
 #, c-format
 msgid "invalid info bits %04X in log file %u, segment %u, offset %u"
 msgstr ""
 "bits info %04X invalides dans le journal de transactions %u, segment %u,\n"
 "décalage %u"
 
-#: access/transam/xlog.c:4008
-#: access/transam/xlog.c:4016
-#: access/transam/xlog.c:4023
+#: access/transam/xlog.c:4071
+#: access/transam/xlog.c:4079
+#: access/transam/xlog.c:4086
 msgid "WAL file is from different database system"
 msgstr "le journal de transactions provient d'un système de bases de données différent"
 
-#: access/transam/xlog.c:4009
+#: access/transam/xlog.c:4072
 #, c-format
 msgid "WAL file database system identifier is %s, pg_control database system identifier is %s."
 msgstr ""
 "L'identifiant du journal de transactions du système de base de données est %s,\n"
 "l'identifiant de pg_control du système de base de données est %s."
 
-#: access/transam/xlog.c:4017
+#: access/transam/xlog.c:4080
 msgid "Incorrect XLOG_SEG_SIZE in page header."
 msgstr "XLOG_SEG_SIZE incorrecte dans l'en-tête de page."
 
-#: access/transam/xlog.c:4024
+#: access/transam/xlog.c:4087
 msgid "Incorrect XLOG_BLCKSZ in page header."
 msgstr "XLOG_BLCKSZ incorrect dans l'en-tête de page."
 
-#: access/transam/xlog.c:4040
+#: access/transam/xlog.c:4103
 #, c-format
 msgid "unexpected pageaddr %X/%X in log file %u, segment %u, offset %u"
 msgstr ""
 "pageaddr %X/%X inattendue dans le journal de transactions %u, segment %u,\n"
 "décalage %u"
 
-#: access/transam/xlog.c:4052
+#: access/transam/xlog.c:4115
 #, c-format
 msgid "unexpected timeline ID %u in log file %u, segment %u, offset %u"
 msgstr ""
 "identifiant timeline %u inattendu dans le journal de transactions %u,\n"
 "segment %u, décalage %u"
 
-#: access/transam/xlog.c:4070
+#: access/transam/xlog.c:4133
 #, c-format
 msgid "out-of-sequence timeline ID %u (after %u) in log file %u, segment %u, offset %u"
 msgstr ""
 "identifiant timeline %u hors de la séquence (après %u) dans le journal de\n"
 "transactions %u, segment %u, décalage %u"
 
-#: access/transam/xlog.c:4143
+#: access/transam/xlog.c:4206
 #, c-format
 msgid "syntax error in history file: %s"
 msgstr "erreur de syntaxe dans le fichier historique : %s"
 
-#: access/transam/xlog.c:4144
+#: access/transam/xlog.c:4207
 msgid "Expected a numeric timeline ID."
 msgstr "Identifiant timeline numérique attendue"
 
-#: access/transam/xlog.c:4149
+#: access/transam/xlog.c:4212
 #, c-format
 msgid "invalid data in history file: %s"
 msgstr "données invalides dans le fichier historique : « %s »"
 
-#: access/transam/xlog.c:4150
+#: access/transam/xlog.c:4213
 msgid "Timeline IDs must be in increasing sequence."
 msgstr "Les identifiants timeline doivent être en ordre croissant."
 
-#: access/transam/xlog.c:4163
+#: access/transam/xlog.c:4226
 #, c-format
 msgid "invalid data in history file \"%s\""
 msgstr "données invalides dans le fichier historique « %s »"
 
-#: access/transam/xlog.c:4164
+#: access/transam/xlog.c:4227
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr ""
 "Les identifiants timeline doivent être plus petits que les enfants des\n"
 "identifiants timeline."
 
-#: access/transam/xlog.c:4423
+#: access/transam/xlog.c:4313
+#, 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:4326
+#, c-format
+msgid "new target timeline is %u"
+msgstr "la nouvelle timeline cible est %u"
+
+#: access/transam/xlog.c:4551
 #, c-format
 msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "n'a pas pu lier le fichier « %s » à « %s » : %m"
 
-#: access/transam/xlog.c:4430
-#: access/transam/xlog.c:5385
-#: access/transam/xlog.c:5438
-#: access/transam/xlog.c:6030
+#: access/transam/xlog.c:4558
+#: access/transam/xlog.c:5513
+#: access/transam/xlog.c:5566
+#: access/transam/xlog.c:6337
 #: postmaster/pgarch.c:715
 #, 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:4512
+#: access/transam/xlog.c:4640
 #, 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:4523
-#: access/transam/xlog.c:4748
+#: access/transam/xlog.c:4651
+#: access/transam/xlog.c:4876
 #, 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:4529
-#: access/transam/xlog.c:4754
+#: access/transam/xlog.c:4657
+#: access/transam/xlog.c:4882
 #, 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:4534
-#: access/transam/xlog.c:4759
+#: access/transam/xlog.c:4662
+#: access/transam/xlog.c:4887
 #, 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:4552
-#: access/transam/xlog.c:4737
+#: access/transam/xlog.c:4680
+#: access/transam/xlog.c:4865
 #, 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:4558
+#: access/transam/xlog.c:4686
 #, 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:4571
-#: access/transam/xlog.c:4580
-#: access/transam/xlog.c:4604
-#: access/transam/xlog.c:4611
-#: access/transam/xlog.c:4618
-#: access/transam/xlog.c:4623
-#: access/transam/xlog.c:4630
-#: access/transam/xlog.c:4637
-#: access/transam/xlog.c:4644
-#: access/transam/xlog.c:4651
-#: access/transam/xlog.c:4658
-#: access/transam/xlog.c:4665
-#: access/transam/xlog.c:4674
-#: access/transam/xlog.c:4681
-#: access/transam/xlog.c:4690
-#: access/transam/xlog.c:4697
-#: access/transam/xlog.c:4706
-#: access/transam/xlog.c:4713
-#: utils/init/miscinit.c:1136
+#: access/transam/xlog.c:4699
+#: access/transam/xlog.c:4708
+#: access/transam/xlog.c:4732
+#: access/transam/xlog.c:4739
+#: access/transam/xlog.c:4746
+#: access/transam/xlog.c:4751
+#: access/transam/xlog.c:4758
+#: access/transam/xlog.c:4765
+#: access/transam/xlog.c:4772
+#: access/transam/xlog.c:4779
+#: access/transam/xlog.c:4786
+#: access/transam/xlog.c:4793
+#: access/transam/xlog.c:4802
+#: access/transam/xlog.c:4809
+#: access/transam/xlog.c:4818
+#: access/transam/xlog.c:4825
+#: access/transam/xlog.c:4834
+#: access/transam/xlog.c:4841
+#: utils/init/miscinit.c:1171
 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:4572
+#: access/transam/xlog.c:4700
 #, 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 ""
@@ -1425,304 +1393,346 @@ msgstr ""
 "%d (0x%08x) alors que le serveur a été compilé avec un PG_CONTROL_VERSION à\n"
 "%d (0x%08x)."
 
-#: access/transam/xlog.c:4576
+#: access/transam/xlog.c:4704
 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:4581
+#: access/transam/xlog.c:4709
 #, 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:4584
-#: access/transam/xlog.c:4608
-#: access/transam/xlog.c:4615
-#: access/transam/xlog.c:4620
+#: access/transam/xlog.c:4712
+#: access/transam/xlog.c:4736
+#: access/transam/xlog.c:4743
+#: access/transam/xlog.c:4748
 msgid "It looks like you need to initdb."
 msgstr "Il semble que vous avez besoin d'initdb."
 
-#: access/transam/xlog.c:4595
+#: access/transam/xlog.c:4723
 msgid "incorrect checksum in control file"
 msgstr "somme de contrôle incorrecte dans le fichier de contrôle"
 
-#: access/transam/xlog.c:4605
+#: access/transam/xlog.c:4733
 #, 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:4612
+#: access/transam/xlog.c:4740
 #, 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:4619
+#: access/transam/xlog.c:4747
 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:4624
+#: access/transam/xlog.c:4752
 #, 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:4627
-#: access/transam/xlog.c:4634
-#: access/transam/xlog.c:4641
-#: access/transam/xlog.c:4648
-#: access/transam/xlog.c:4655
-#: access/transam/xlog.c:4662
-#: access/transam/xlog.c:4669
-#: access/transam/xlog.c:4677
-#: access/transam/xlog.c:4684
-#: access/transam/xlog.c:4693
-#: access/transam/xlog.c:4700
-#: access/transam/xlog.c:4709
-#: access/transam/xlog.c:4716
+#: access/transam/xlog.c:4755
+#: access/transam/xlog.c:4762
+#: access/transam/xlog.c:4769
+#: access/transam/xlog.c:4776
+#: access/transam/xlog.c:4783
+#: access/transam/xlog.c:4790
+#: access/transam/xlog.c:4797
+#: access/transam/xlog.c:4805
+#: access/transam/xlog.c:4812
+#: access/transam/xlog.c:4821
+#: access/transam/xlog.c:4828
+#: access/transam/xlog.c:4837
+#: access/transam/xlog.c:4844
 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:4631
+#: access/transam/xlog.c:4759
 #, 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:4638
+#: access/transam/xlog.c:4766
 #, 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:4645
+#: access/transam/xlog.c:4773
 #, 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:4652
+#: access/transam/xlog.c:4780
 #, 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:4659
+#: access/transam/xlog.c:4787
 #, 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:4666
+#: access/transam/xlog.c:4794
 #, 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:4675
+#: access/transam/xlog.c:4803
 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:4682
+#: access/transam/xlog.c:4810
 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:4691
+#: access/transam/xlog.c:4819
 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:4698
+#: access/transam/xlog.c:4826
 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:4707
+#: access/transam/xlog.c:4835
 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:4714
+#: access/transam/xlog.c:4842
 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:4963
+#: access/transam/xlog.c:5167
 #, 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:4969
+#: access/transam/xlog.c:5173
 #, 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:4974
+#: access/transam/xlog.c:5178
 #, 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:5136
+#: access/transam/xlog.c:5245
 #, 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:5160
+#: access/transam/xlog.c:5261
 #, c-format
 msgid "restore_command = '%s'"
 msgstr "restore_command = '%s'"
 
-#: access/transam/xlog.c:5167
+#: access/transam/xlog.c:5268
 #, c-format
 msgid "recovery_end_command = '%s'"
 msgstr "recovery_end_command = '%s'"
 
-#: access/transam/xlog.c:5174
+#: access/transam/xlog.c:5275
 #, c-format
 msgid "archive_cleanup_command = '%s'"
 msgstr "archive_cleanup_command = '%s'"
 
-#: access/transam/xlog.c:5188
+#: access/transam/xlog.c:5283
+#: access/transam/xlog.c:5372
+#: access/transam/xlog.c:5381
+#: commands/extension.c:525
+#: commands/extension.c:533
+#: utils/misc/guc.c:5307
+#, c-format
+msgid "parameter \"%s\" requires a Boolean value"
+msgstr "le paramètre « %s » requiert une valeur booléenne"
+
+#: access/transam/xlog.c:5285
+#, c-format
+msgid "pause_at_recovery_target = '%s'"
+msgstr "pause_at_recovery_target = '%s'"
+
+#: access/transam/xlog.c:5298
 #, 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:5193
+#: access/transam/xlog.c:5303
 #, c-format
 msgid "recovery_target_timeline = %u"
 msgstr "recovery_target_timeline = %u"
 
-#: access/transam/xlog.c:5196
+#: access/transam/xlog.c:5306
 msgid "recovery_target_timeline = latest"
 msgstr "recovery_target_timeline = latest"
 
-#: access/transam/xlog.c:5204
+#: access/transam/xlog.c:5314
 #, 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:5207
+#: access/transam/xlog.c:5317
 #, c-format
 msgid "recovery_target_xid = %u"
 msgstr "recovery_target_xid = %u"
 
-#: access/transam/xlog.c:5230
+#: access/transam/xlog.c:5341
 #, c-format
 msgid "recovery_target_time = '%s'"
 msgstr "recovery_target_time = '%s'"
 
-#: access/transam/xlog.c:5241
-#: access/transam/xlog.c:5250
-#: utils/misc/guc.c:4895
+#: access/transam/xlog.c:5358
 #, c-format
-msgid "parameter \"%s\" requires a Boolean value"
-msgstr "le paramètre « %s » requiert une valeur booléenne"
+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:5361
+#, c-format
+msgid "recovery_target_name = '%s'"
+msgstr "recovery_target_name = '%s'"
 
-#: access/transam/xlog.c:5243
+#: access/transam/xlog.c:5374
 #, c-format
 msgid "recovery_target_inclusive = %s"
 msgstr "recovery_target_inclusive = %s"
 
-#: access/transam/xlog.c:5252
+#: access/transam/xlog.c:5383
 #, c-format
 msgid "standby_mode = '%s'"
 msgstr "standby_mode = '%s'"
 
-#: access/transam/xlog.c:5258
+#: access/transam/xlog.c:5389
 #, c-format
 msgid "primary_conninfo = '%s'"
 msgstr "primary_conninfo = '%s'"
 
-#: access/transam/xlog.c:5265
+#: access/transam/xlog.c:5396
 #, c-format
 msgid "trigger_file = '%s'"
 msgstr "trigger_file = '%s'"
 
-#: access/transam/xlog.c:5270
+#: access/transam/xlog.c:5401
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "paramètre de restauration « %s » non reconnu"
 
-#: access/transam/xlog.c:5278
-#, c-format
-msgid "syntax error in recovery command file: %s"
-msgstr "erreur de syntaxe dans le fichier de restauration : %s"
-
-#: access/transam/xlog.c:5280
-msgid "Lines should have the format parameter = 'value'."
-msgstr "Les lignes devraient avoir le format paramètre = 'valeur'"
-
-#: access/transam/xlog.c:5289
+#: access/transam/xlog.c:5412
 #, 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:5291
+#: access/transam/xlog.c:5414
 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:5297
+#: access/transam/xlog.c:5420
 #, 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:5317
+#: access/transam/xlog.c:5440
 #, 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:5442
+#: access/transam/xlog.c:5570
 msgid "archive recovery complete"
 msgstr "restauration terminée de l'archive"
 
-#: access/transam/xlog.c:5532
+#: access/transam/xlog.c:5688
 #, 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:5537
+#: access/transam/xlog.c:5693
 #, 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:5545
+#: access/transam/xlog.c:5701
 #, 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:5550
+#: access/transam/xlog.c:5706
 #, 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:5633
+#: access/transam/xlog.c:5715
+#, 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:5743
+msgid "recovery has paused"
+msgstr "restauration en pause"
+
+#: access/transam/xlog.c:5744
+msgid "Execute pg_xlog_replay_resume() to continue."
+msgstr "Exécuter pg_xlog_replay_resume() pour continuer."
+
+#: access/transam/xlog.c:5787
+#: access/transam/xlog.c:5809
+#: access/transam/xlog.c:5831
+msgid "must be superuser to control recovery"
+msgstr "doit être super-utilisateur pour contrôler la restauration"
+
+#: access/transam/xlog.c:5792
+#: access/transam/xlog.c:5814
+#: access/transam/xlog.c:5836
+msgid "recovery is not in progress"
+msgstr "la restauration n'est pas en cours"
+
+#: access/transam/xlog.c:5793
+#: access/transam/xlog.c:5815
+#: access/transam/xlog.c:5837
+msgid "Recovery control functions can only be executed during recovery."
+msgstr ""
+"Les fonctions de contrôle de la restauration peuvent seulement être exécutées\n"
+"lors de la restauration."
+
+#: access/transam/xlog.c:5929
 #, 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 ""
@@ -1730,1038 +1740,785 @@ msgstr ""
 "paramètrage plus bas que celui du serveur maître des journaux de transactions\n"
 "(la valeur était %d)"
 
-#: access/transam/xlog.c:5655
+#: access/transam/xlog.c:5951
 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:5656
+#: access/transam/xlog.c:5952
 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:5667
+#: access/transam/xlog.c:5963
 msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" on the master server"
 msgstr ""
 "les connexions en restauration ne sont pas possibles parce que le paramètre\n"
 "wal_level n'a pas été configuré à « hot_standby » sur le serveur maître"
 
-#: access/transam/xlog.c:5668
+#: access/transam/xlog.c:5964
 msgid "Either set wal_level to \"hot_standby\" on the master, or turn off hot_standby here."
 msgstr ""
 "Soit vous initialisez wal_level à « hot_standby » sur le maître, soit vous\n"
 "désactivez hot_standby ici."
 
-#: access/transam/xlog.c:5715
+#: access/transam/xlog.c:6011
 msgid "control file contains invalid data"
 msgstr "le fichier de contrôle contient des données invalides"
 
-#: access/transam/xlog.c:5719
+#: access/transam/xlog.c:6015
 #, 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:5723
+#: access/transam/xlog.c:6019
 #, 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:5727
+#: access/transam/xlog.c:6023
 #, 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:5731
+#: access/transam/xlog.c:6027
 #, 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:5733
+#: access/transam/xlog.c:6029
 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:5737
+#: access/transam/xlog.c:6033
 #, 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:5739
+#: access/transam/xlog.c:6035
 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:5743
+#: access/transam/xlog.c:6039
 #, 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:5792
+#: access/transam/xlog.c:6088
 #, c-format
 msgid "requested timeline %u is not a child of database system timeline %u"
 msgstr ""
 "le timeline requis %u n'est pas un fils du timeline %u du système de bases\n"
 "de données"
 
-#: access/transam/xlog.c:5810
+#: access/transam/xlog.c:6106
 msgid "entering standby mode"
 msgstr "entre en mode standby"
 
-#: access/transam/xlog.c:5813
+#: access/transam/xlog.c:6109
 #, 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:5817
+#: access/transam/xlog.c:6113
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "début de la restauration de l'archive à %s"
 
-#: access/transam/xlog.c:5821
+#: access/transam/xlog.c:6117
+#, c-format
+msgid "starting point-in-time recovery to \"%s\""
+msgstr "début de la restauration PITR à « %s »"
+
+#: access/transam/xlog.c:6121
 msgid "starting archive recovery"
 msgstr "début de la restauration de l'archive"
 
-#: access/transam/xlog.c:5836
-#: access/transam/xlog.c:5876
+#: access/transam/xlog.c:6143
+#: access/transam/xlog.c:6183
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "l'enregistrement du point de vérification est à %X/%X"
 
-#: access/transam/xlog.c:5850
+#: access/transam/xlog.c:6157
 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:5851
-#: access/transam/xlog.c:5858
+#: access/transam/xlog.c:6158
+#: access/transam/xlog.c:6165
 #, 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:5857
+#: access/transam/xlog.c:6164
 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:5886
-#: access/transam/xlog.c:5901
+#: access/transam/xlog.c:6193
+#: access/transam/xlog.c:6208
 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:5895
+#: access/transam/xlog.c:6202
 #, 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:5910
+#: access/transam/xlog.c:6217
 #, c-format
 msgid "redo record is at %X/%X; shutdown %s"
 msgstr "l'enregistrement à ré-exécuter se trouve à %X/%X ; arrêt %s"
 
-#: access/transam/xlog.c:5914
+#: access/transam/xlog.c:6221
 #, c-format
 msgid "next transaction ID: %u/%u; next OID: %u"
 msgstr "prochain identifiant de transaction : %u/%u ; prochain OID : %u"
 
-#: access/transam/xlog.c:5918
+#: access/transam/xlog.c:6225
 #, c-format
 msgid "next MultiXactId: %u; next MultiXactOffset: %u"
 msgstr "prochain MultiXactId : %u ; prochain MultiXactOffset : %u"
 
-#: access/transam/xlog.c:5921
+#: access/transam/xlog.c:6228
 #, c-format
 msgid "oldest unfrozen transaction ID: %u, in database %u"
 msgstr ""
 "identifiant de transaction non gelé le plus ancien : %u, dans la base de\n"
 "données %u"
 
-#: access/transam/xlog.c:5925
+#: access/transam/xlog.c:6232
 msgid "invalid next transaction ID"
 msgstr "prochain ID de transaction invalide"
 
-#: access/transam/xlog.c:5944
+#: access/transam/xlog.c:6251
 msgid "invalid redo in checkpoint record"
 msgstr "ré-exécution invalide dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:5955
+#: access/transam/xlog.c:6262
 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:5985
+#: access/transam/xlog.c:6292
 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:6049
+#: access/transam/xlog.c:6364
 msgid "initializing for hot standby"
 msgstr "initialisation pour « Hot Standby »"
 
-#: access/transam/xlog.c:6175
+#: access/transam/xlog.c:6492
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "la ré-exécution commence à %X/%X"
 
-#: access/transam/xlog.c:6274
+#: access/transam/xlog.c:6607
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "ré-exécution faite à %X/%X"
 
-#: access/transam/xlog.c:6279
-#: access/transam/xlog.c:7748
+#: access/transam/xlog.c:6612
+#: access/transam/xlog.c:8189
 #, 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:6287
+#: access/transam/xlog.c:6620
 msgid "redo is not required"
 msgstr "la ré-exécution n'est pas nécessaire"
 
-#: access/transam/xlog.c:6327
+#: access/transam/xlog.c:6668
 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:6330
+#: access/transam/xlog.c:6684
+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:6685
+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 ""
+"Une sauvegarde en ligne commencée avec pg_start_backup() doit se terminer avec\n"
+"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:6688
 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:6351
+#: access/transam/xlog.c:6710
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "identifiant d'un timeline nouvellement sélectionné : %u"
 
-#: access/transam/xlog.c:6587
+#: access/transam/xlog.c:6952
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "état de restauration cohérent atteint à %X/%X"
 
-#: access/transam/xlog.c:6713
+#: access/transam/xlog.c:7118
 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:6717
+#: access/transam/xlog.c:7122
 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:6721
+#: access/transam/xlog.c:7126
 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:6735
+#: access/transam/xlog.c:7140
 msgid "invalid primary checkpoint record"
 msgstr "enregistrement du point de vérification primaire invalide"
 
-#: access/transam/xlog.c:6739
+#: access/transam/xlog.c:7144
 msgid "invalid secondary checkpoint record"
 msgstr "enregistrement du point de vérification secondaire invalide"
 
-#: access/transam/xlog.c:6743
+#: access/transam/xlog.c:7148
 msgid "invalid checkpoint record"
 msgstr "enregistrement du point de vérification invalide"
 
-#: access/transam/xlog.c:6754
+#: access/transam/xlog.c:7159
 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:6758
+#: access/transam/xlog.c:7163
 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:6762
+#: access/transam/xlog.c:7167
 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:6774
+#: access/transam/xlog.c:7179
 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:6778
+#: access/transam/xlog.c:7183
 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:6782
+#: access/transam/xlog.c:7187
 msgid "invalid xl_info in checkpoint record"
 msgstr "xl_info invalide dans l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:6794
+#: access/transam/xlog.c:7199
 msgid "invalid length of primary checkpoint record"
 msgstr "longueur invalide de l'enregistrement primaire du point de vérification"
 
-#: access/transam/xlog.c:6798
+#: access/transam/xlog.c:7203
 msgid "invalid length of secondary checkpoint record"
 msgstr "longueur invalide de l'enregistrement secondaire du point de vérification"
 
-#: access/transam/xlog.c:6802
+#: access/transam/xlog.c:7207
 msgid "invalid length of checkpoint record"
 msgstr "longueur invalide de l'enregistrement du point de vérification"
 
-#: access/transam/xlog.c:6964
+#: access/transam/xlog.c:7369
 msgid "shutting down"
 msgstr "arrêt en cours"
 
-#: access/transam/xlog.c:6986
+#: access/transam/xlog.c:7391
 msgid "database system is shut down"
 msgstr "le système de base de données est arrêté"
 
-#: access/transam/xlog.c:7379
+#: access/transam/xlog.c:7817
 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:7611
+#: access/transam/xlog.c:8050
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "restartpoint ignoré, la récupération est déjà terminée"
 
-#: access/transam/xlog.c:7636
+#: access/transam/xlog.c:8075
 #, 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:7746
+#: access/transam/xlog.c:8187
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "la ré-exécution en restauration commence à %X/%X"
 
-#: access/transam/xlog.c:7915
-msgid "online backup was cancelled, recovery cannot continue"
-msgstr "le mode de sauvegarde en ligne a été annulé, la restauration ne peut pas continuer"
+#: access/transam/xlog.c:8287
+#, c-format
+msgid "restore point \"%s\" created at %X/%X"
+msgstr "point de restauration « %s » créé à %X/%X"
+
+#: access/transam/xlog.c:8384
+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:7967
+#: access/transam/xlog.c:8436
 #, 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:8003
+#: access/transam/xlog.c:8472
 #, 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:8259
-#: access/transam/xlog.c:8285
+#: access/transam/xlog.c:8736
+#: access/transam/xlog.c:8760
 #, c-format
 msgid "could not fsync log file %u, segment %u: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le journal des transactions %u,\n"
 "segment %u : %m"
 
-#: access/transam/xlog.c:8293
+#: access/transam/xlog.c:8768
 #, c-format
 msgid "could not fsync write-through log file %u, segment %u: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fsync) le journal des transactions %u,\n"
 "segment %u : %m"
 
-#: access/transam/xlog.c:8302
+#: access/transam/xlog.c:8777
 #, c-format
 msgid "could not fdatasync log file %u, segment %u: %m"
 msgstr ""
 "n'a pas pu synchroniser sur disque (fdatasync) le journal de transactions\n"
 "%u, segment %u : %m"
 
-#: access/transam/xlog.c:8345
-#: access/transam/xlog.c:8537
-msgid "must be superuser to run a backup"
-msgstr "doit être super-utilisateur pour exécuter une sauvegarde"
-
-#: access/transam/xlog.c:8350
-#: access/transam/xlog.c:8542
-#: access/transam/xlog.c:8745
-#: access/transam/xlog.c:8773
-#: access/transam/xlog.c:8806
-#: access/transam/xlog.c:8898
-#: access/transam/xlog.c:8973
+#: access/transam/xlog.c:8858
+#: access/transam/xlog.c:9134
+msgid "must be superuser or replication role to run a backup"
+msgstr "doit être super-utilisateur ou avoir l'attribut de réplication pour exécuter une sauvegarde"
+
+#: access/transam/xlog.c:8863
+#: access/transam/xlog.c:9139
+#: access/transam/xlog.c:9402
+#: access/transam/xlog.c:9434
+#: access/transam/xlog.c:9475
+#: access/transam/xlog.c:9508
+#: access/transam/xlog.c:9615
+#: access/transam/xlog.c:9690
 msgid "recovery is in progress"
 msgstr "restauration en cours"
 
-#: access/transam/xlog.c:8351
-#: access/transam/xlog.c:8543
-#: access/transam/xlog.c:8746
-#: access/transam/xlog.c:8774
-#: access/transam/xlog.c:8807
+#: access/transam/xlog.c:8864
+#: access/transam/xlog.c:9140
+#: access/transam/xlog.c:9403
+#: access/transam/xlog.c:9435
+#: access/transam/xlog.c:9476
+#: access/transam/xlog.c:9509
 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:8356
-#: access/transam/xlog.c:8548
+#: access/transam/xlog.c:8869
+#: access/transam/xlog.c:9145
 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:8357
-#: access/transam/xlog.c:8549
+#: access/transam/xlog.c:8870
+#: access/transam/xlog.c:9146
+#: access/transam/xlog.c:9441
 msgid "wal_level must be set to \"archive\" or \"hot_standby\" at server start."
 msgstr ""
 "wal_level doit être configuré à « archive » ou « hot_standby » au démarrage\n"
 "du serveur."
 
-#: access/transam/xlog.c:8384
-#: access/transam/xlog.c:8453
+#: access/transam/xlog.c:8875
+#, c-format
+msgid "backup label too long (max %d bytes)"
+msgstr "label de sauvegarde trop long (%d octets maximum)"
+
+#: access/transam/xlog.c:8916
+#: access/transam/xlog.c:9017
 msgid "a backup is already in progress"
 msgstr "une sauvegarde est déjà en cours"
 
-#: access/transam/xlog.c:8385
+#: access/transam/xlog.c:8917
 msgid "Run pg_stop_backup() and try again."
 msgstr "Exécutez pg_stop_backup() et tentez de nouveau."
 
-#: access/transam/xlog.c:8454
+#: access/transam/xlog.c:9018
 #, 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:8475
-#: access/transam/xlog.c:8632
+#: access/transam/xlog.c:9032
+#: access/transam/xlog.c:9278
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "impossible d'écrire le fichier « %s » : %m"
 
-#: access/transam/xlog.c:8571
+#: access/transam/xlog.c:9190
 msgid "a backup is not in progress"
 msgstr "une sauvegarde n'est pas en cours"
 
-#: access/transam/xlog.c:8583
-#: access/transam/xlog.c:9039
-#: access/transam/xlog.c:9045
+#: access/transam/xlog.c:9229
+#: access/transam/xlog.c:9756
+#: access/transam/xlog.c:9762
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "données invalides dans le fichier « %s »"
 
-#: access/transam/xlog.c:8695
+#: access/transam/xlog.c:9327
 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:8705
+#: access/transam/xlog.c:9337
 #, 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:8707
-msgid "Check that your archive_command is executing properly.  pg_stop_backup can be cancelled safely, but the database backup will not be usable without all the WAL segments."
+#: access/transam/xlog.c:9339
+#, fuzzy
+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 ""
 "Vérifiez que votre archive_command s'exécute correctement. pg_stop_backup\n"
 "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:8714
+#: access/transam/xlog.c:9346
 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:8718
+#: access/transam/xlog.c:9350
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr ""
 "L'archivage des journaux de transactions n'est pas activé ;\n"
 "vous devez vous assurer que tous les fichiers requis des journaux de\n"
 "transactions sont copiés par d'autre moyens pour terminer la sauvegarde."
 
-#: access/transam/xlog.c:8740
+#: access/transam/xlog.c:9397
 msgid "must be superuser to switch transaction log files"
 msgstr "doit être super-utilisateur pour changer de journal de transactions"
 
-#: access/transam/xlog.c:8899
+#: access/transam/xlog.c:9429
+msgid "must be superuser to create a restore point"
+msgstr "doit être super-utilisateur pour créer un point de restauration"
+
+#: access/transam/xlog.c:9440
+msgid "WAL level not sufficient for creating a restore point"
+msgstr ""
+"le niveau de journalisation (configuré par wal_level) n'est pas suffisant pour\n"
+"créer un point de restauration"
+
+#: access/transam/xlog.c:9448
+#, c-format
+msgid "value too long for restore point (maximum %d characters)"
+msgstr "valeur trop longue pour le point de restauration (%d caractères maximum)"
+
+#: access/transam/xlog.c:9616
 msgid "pg_xlogfile_name_offset() cannot be executed during recovery."
 msgstr "pg_xlogfile_name_offset() ne peut pas être exécuté lors de la restauration."
 
-#: access/transam/xlog.c:8909
-#: access/transam/xlog.c:8981
+#: access/transam/xlog.c:9626
+#: access/transam/xlog.c:9698
 #, c-format
 msgid "could not parse transaction log location \"%s\""
 msgstr ""
 "n'a pas pu analyser l'emplacement du journal des transactions nommé « %s » :\n"
 "%m"
 
-#: access/transam/xlog.c:8974
+#: access/transam/xlog.c:9691
 msgid "pg_xlogfile_name() cannot be executed during recovery."
 msgstr "pg_xlogfile_name() ne peut pas être exécuté lors de la restauration."
 
-#: access/transam/xlog.c:9071
+#: access/transam/xlog.c:9788
 #, c-format
 msgid "xlog redo %s"
 msgstr "xlog redo %s"
 
-#: access/transam/xlog.c:9111
-msgid "online backup mode cancelled"
+#: access/transam/xlog.c:9828
+msgid "online backup mode canceled"
 msgstr "mode de sauvegarde en ligne annulé"
 
-#: access/transam/xlog.c:9112
+#: access/transam/xlog.c:9829
 #, c-format
 msgid "\"%s\" was renamed to \"%s\"."
 msgstr "« %s » a été renommé en « %s »."
 
-#: access/transam/xlog.c:9119
-msgid "online backup mode was not cancelled"
+#: access/transam/xlog.c:9836
+msgid "online backup mode was not canceled"
 msgstr "le mode de sauvegarde en ligne n'a pas été annulé"
 
-#: access/transam/xlog.c:9120
+#: access/transam/xlog.c:9837
 #, c-format
 msgid "Could not rename \"%s\" to \"%s\": %m."
 msgstr "N'a pas pu renommer « %s » en « %s » : %m"
 
-#: access/transam/xlog.c:9588
-#: access/transam/xlog.c:9610
+#: access/transam/xlog.c:10334
+#: access/transam/xlog.c:10356
 #, c-format
 msgid "could not read from log file %u, segment %u, offset %u: %m"
 msgstr "n'a pas pu lire le journal de transactions %u, segment %u, décalage %u : %m"
 
-#: access/transam/xlog.c:9698
+#: access/transam/xlog.c:10445
+msgid "received promote request"
+msgstr "a reçu une demande de promotion"
+
+#: access/transam/xlog.c:10458
 #, c-format
 msgid "trigger file found: %s"
 msgstr "fichier trigger trouvé : %s"
 
-#: access/common/tupdesc.c:545
-#: parser/parse_relation.c:1165
+#: access/heap/heapam.c:1082
+#: access/heap/heapam.c:1110
+#: access/heap/heapam.c:1140
+#: catalog/aclchk.c:1678
 #, c-format
-msgid "column \"%s\" cannot be declared SETOF"
-msgstr "la colonne « %s » ne peut pas être déclarée SETOF"
+msgid "\"%s\" is an index"
+msgstr "« %s » est un index"
 
-#: access/common/heaptuple.c:646
-#: access/common/heaptuple.c:1398
+#: access/heap/heapam.c:1087
+#: access/heap/heapam.c:1115
+#: access/heap/heapam.c:1145
+#: catalog/aclchk.c:1685
+#: commands/tablecmds.c:2269
+#: commands/tablecmds.c:7436
+#: commands/tablecmds.c:9018
 #, c-format
-msgid "number of columns (%d) exceeds limit (%d)"
-msgstr "le nombre de colonnes (%d) dépasse la limite (%d)"
+msgid "\"%s\" is a composite type"
+msgstr "« %s » est un type composite"
 
-#: access/common/indextuple.c:57
+#: access/heap/heapam.c:3211
+#: access/heap/heapam.c:3242
+#: access/heap/heapam.c:3277
 #, c-format
-msgid "number of index columns (%d) exceeds limit (%d)"
-msgstr "le nombre de colonnes indexées (%d) dépasse la limite (%d)"
+msgid "could not obtain lock on row in relation \"%s\""
+msgstr "n'a pas pu obtenir un verrou sur la relation « %s »"
 
-#: access/common/indextuple.c:168
+#: access/heap/hio.c:175
+#: access/heap/rewriteheap.c:597
 #, c-format
-msgid "index row requires %lu bytes, maximum size is %lu"
-msgstr "la ligne index requiert %lu octets, la taille maximum est %lu"
+msgid "row is too big: size %lu, maximum size %lu"
+msgstr "la ligne est trop grande : taille %lu, taille maximale %lu"
 
-#: access/common/printtup.c:278
-#: tcop/fastpath.c:181
-#: tcop/fastpath.c:561
-#: tcop/postgres.c:1704
+#: access/index/indexam.c:161
+#: catalog/objectaddress.c:391
+#: commands/indexcmds.c:1542
+#: commands/tablecmds.c:220
+#: commands/tablecmds.c:2486
 #, c-format
-msgid "unsupported format code: %d"
-msgstr "code de format non supporté : %d"
-
-#: access/common/reloptions.c:323
-msgid "user-defined relation parameter types limit exceeded"
-msgstr "limite dépassée des types de paramètres de la relation définie par l'utilisateur"
-
-#: access/common/reloptions.c:622
-msgid "RESET must not include values for parameters"
-msgstr "RESET ne doit pas inclure de valeurs pour les paramètres"
+msgid "\"%s\" is not an index"
+msgstr "« %s » n'est pas un index"
 
-#: access/common/reloptions.c:655
+#: access/nbtree/nbtinsert.c:393
 #, c-format
-msgid "unrecognized parameter namespace \"%s\""
-msgstr "espace de nom du paramètre « %s » non reconnu"
+msgid "duplicate key value violates unique constraint \"%s\""
+msgstr "la valeur d'une clé dupliquée rompt la contrainte unique « %s »"
 
-#: access/common/reloptions.c:895
+#: access/nbtree/nbtinsert.c:395
 #, c-format
-msgid "unrecognized parameter \"%s\""
-msgstr "paramètre « %s » non reconnu"
+msgid "Key %s already exists."
+msgstr "La clé « %s » existe déjà."
 
-#: access/common/reloptions.c:920
+#: access/nbtree/nbtinsert.c:457
 #, c-format
-msgid "parameter \"%s\" specified more than once"
-msgstr "le paramètre « %s » est spécifié plus d'une fois"
+msgid "failed to re-find tuple within index \"%s\""
+msgstr "échec pour retrouver la ligne dans l'index « %s »"
 
-#: access/common/reloptions.c:935
-#, c-format
-msgid "invalid value for boolean option \"%s\": %s"
-msgstr "valeur invalide pour l'option booléenne « %s » : %s"
+#: access/nbtree/nbtinsert.c:459
+msgid "This may be because of a non-immutable index expression."
+msgstr "Ceci peut être dû à une expression d'index immutable."
+
+#: access/nbtree/nbtinsert.c:535
+#: access/nbtree/nbtsort.c:487
+msgid ""
+"Values larger than 1/3 of a buffer page cannot be indexed.\n"
+"Consider a function index of an MD5 hash of the value, or use full text indexing."
+msgstr ""
+"Les valeurs plus larges qu'un tiers d'une page de tampon ne peuvent pas être\n"
+"indexées.\n"
+"Utilisez un index sur le hachage MD5 de la valeur ou passez à l'indexation\n"
+"de la recherche plein texte."
 
-#: access/common/reloptions.c:946
+#: access/nbtree/nbtpage.c:161
+#: access/nbtree/nbtpage.c:365
+#: parser/parse_utilcmd.c:1527
 #, c-format
-msgid "invalid value for integer option \"%s\": %s"
-msgstr "valeur invalide pour l'option de type integer « %s » : %s"
+msgid "index \"%s\" is not a btree"
+msgstr "l'index « %s » n'est pas un btree"
 
-#: access/common/reloptions.c:951
-#: access/common/reloptions.c:969
+#: access/nbtree/nbtpage.c:167
+#: access/nbtree/nbtpage.c:371
 #, c-format
-msgid "value %s out of bounds for option \"%s\""
-msgstr "valeur %s en dehors des limites pour l'option « %s »"
+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/common/reloptions.c:953
+#: bootstrap/bootstrap.c:277
+#: tcop/postgres.c:3386
+#: postmaster/postmaster.c:681
 #, c-format
-msgid "Valid values are between \"%d\" and \"%d\"."
-msgstr "Les valeurs valides sont entre « %d » et « %d »."
+msgid "--%s requires a value"
+msgstr "--%s requiert une valeur"
 
-#: access/common/reloptions.c:964
+#: bootstrap/bootstrap.c:282
+#: tcop/postgres.c:3391
+#: postmaster/postmaster.c:686
 #, c-format
-msgid "invalid value for floating point option \"%s\": %s"
-msgstr "valeur invalide pour l'option de type float « %s » : %s"
+msgid "-c %s requires a value"
+msgstr "-c %s requiert une valeur"
 
-#: access/common/reloptions.c:971
+#: bootstrap/bootstrap.c:293
+#: postmaster/postmaster.c:698
+#: postmaster/postmaster.c:711
 #, c-format
-msgid "Valid values are between \"%f\" and \"%f\"."
-msgstr "Les valeurs valides sont entre « %f » et « %f »."
+msgid "Try \"%s --help\" for more information.\n"
+msgstr "Essayez « %s --help » pour plus d'informations.\n"
 
-#: access/common/tupconvert.c:107
+#: bootstrap/bootstrap.c:302
 #, c-format
-msgid "Returned type %s does not match expected type %s in column %d."
-msgstr "Le type %s renvoyé ne correspond pas au type %s attendu dans la colonne %d."
+msgid "%s: invalid command-line arguments\n"
+msgstr "%s : arguments invalides en ligne de commande\n"
 
-#: access/common/tupconvert.c:135
-#, c-format
-msgid "Number of returned columns (%d) does not match expected column count (%d)."
-msgstr ""
-"Le nombre de colonnes renvoyées (%d) ne correspond pas au nombre de colonnes\n"
-"attendues (%d)."
-
-#: access/common/tupconvert.c:240
-#, c-format
-msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
-msgstr "L'attribut « %s » du type %s ne correspond pas à l'attribut correspondant de type %s."
-
-#: access/common/tupconvert.c:252
-#, c-format
-msgid "Attribute \"%s\" of type %s does not exist in type %s."
-msgstr "L'attribut « %s » du type %s n'existe pas dans le type %s."
-
-#: access/gin/ginarrayproc.c:30
-msgid "array must not contain null values"
-msgstr "le tableau ne doit pas contenir de valeurs NULL"
-
-#: access/gin/ginentrypage.c:83
-#: access/gin/ginentrypage.c:118
-#: access/nbtree/nbtinsert.c:522
-#: access/nbtree/nbtsort.c:483
-#, c-format
-msgid "index row size %lu exceeds maximum %lu for index \"%s\""
-msgstr "la taille de la ligne index, %lu, dépasse le maximum, %lu, pour l'index « %s »"
-
-#: access/gin/ginscan.c:168
-#: access/gin/ginscan.c:231
-msgid "GIN indexes do not support whole-index scans"
-msgstr "les index GIN ne supportent pas les parcours complets d'index"
-
-#: access/gist/gistxlog.c:803
-#, c-format
-msgid "index %u/%u/%u needs VACUUM FULL or REINDEX to finish crash recovery"
-msgstr ""
-"l'index  %u/%u/%u a besoin d'un VACUUM FULL ou d'un REINDEX pour terminer la\n"
-"récupération suite à un arrêt brutal"
-
-#: access/gist/gistxlog.c:805
-msgid "Incomplete insertion detected during crash replay."
-msgstr ""
-"Insertion incomplète détectée lors de la ré-exécution des requêtes suite à\n"
-"l'arrêt brutal."
-
-#: access/gist/gistsplit.c:372
-#, c-format
-msgid "picksplit method for column %d of index \"%s\" failed"
-msgstr "échec de la méthode picksplit pour la colonne %d de l'index « %s »"
-
-#: access/gist/gistsplit.c:374
-msgid "The index is not optimal. To optimize it, contact a developer, or try to use the column as the second one in the CREATE INDEX command."
-msgstr ""
-"L'index n'est pas optimal. Pour l'optimiser, contactez un développeur\n"
-"ou essayez d'utiliser la colonne comme second dans la commande\n"
-"CREATE INDEX."
-
-#: access/gist/gistutil.c:407
-#, c-format
-msgid "index \"%s\" needs VACUUM or REINDEX to finish crash recovery"
-msgstr ""
-"l'index  « %s » a besoin d'un VACUUM ou d'un REINDEX pour terminer la\n"
-"récupération suite à un arrêt brutal"
-
-#: access/gist/gistutil.c:588
-#: access/hash/hashutil.c:165
-#: access/nbtree/nbtpage.c:432
-#, c-format
-msgid "index \"%s\" contains unexpected zero page at block %u"
-msgstr "l'index « %s » contient une page zéro inattendue au bloc %u"
-
-#: access/gist/gistutil.c:591
-#: access/gist/gistutil.c:602
-#: access/hash/hashutil.c:168
-#: access/hash/hashutil.c:179
-#: access/hash/hashutil.c:191
-#: access/hash/hashutil.c:212
-#: access/nbtree/nbtpage.c:435
-#: access/nbtree/nbtpage.c:446
-msgid "Please REINDEX it."
-msgstr "Merci d'exécuter REINDEX sur cet objet."
-
-#: access/gist/gistutil.c:599
-#: access/hash/hashutil.c:176
-#: access/hash/hashutil.c:188
-#: access/nbtree/nbtpage.c:443
-#, c-format
-msgid "index \"%s\" contains corrupted page at block %u"
-msgstr "l'index « %s » contient une page corrompue au bloc %u"
-
-#: access/gist/gistvacuum.c:72
-#, c-format
-msgid "index \"%s\" needs VACUUM FULL or REINDEX to finish crash recovery"
-msgstr ""
-"l'index  « %s » a besoin d'un VACUUM FULL ou d'un REINDEX pour terminer la\n"
-"récupération suite à un arrêt brutal"
-
-#: access/hash/hashutil.c:204
-#, c-format
-msgid "index \"%s\" is not a hash index"
-msgstr "l'index « %s » n'est pas un index haché"
-
-#: access/hash/hashutil.c:210
-#, c-format
-msgid "index \"%s\" has wrong hash version"
-msgstr "l'index « %s » a la mauvaise version de hachage"
-
-#: access/hash/hashinsert.c:73
-#, c-format
-msgid "index row size %lu exceeds hash maximum %lu"
-msgstr "la taille de la ligne index, %lu, dépasse le hachage maximum, %lu"
-
-#: access/hash/hashinsert.c:76
-msgid "Values larger than a buffer page cannot be indexed."
-msgstr "Les valeurs plus larges qu'une page de tampon ne peuvent pas être indexées."
-
-#: access/hash/hashovfl.c:546
-#, c-format
-msgid "out of overflow pages in hash index \"%s\""
-msgstr "en dehors des pages surchargées dans l'index haché « %s »"
-
-#: access/hash/hashsearch.c:152
-msgid "hash indexes do not support whole-index scans"
-msgstr "les index hâchés ne supportent pas les parcours complets d'index"
-
-#: access/heap/heapam.c:1076
-#: access/heap/heapam.c:1104
-#: access/heap/heapam.c:1134
-#: catalog/aclchk.c:1720
-#, c-format
-msgid "\"%s\" is an index"
-msgstr "« %s » est un index"
-
-#: access/heap/heapam.c:1081
-#: access/heap/heapam.c:1109
-#: access/heap/heapam.c:1139
-#: catalog/aclchk.c:1727
-#: commands/tablecmds.c:2162
-#: commands/tablecmds.c:6550
-#: commands/tablecmds.c:7856
-#, c-format
-msgid "\"%s\" is a composite type"
-msgstr "« %s » est un type composite"
-
-#: access/heap/heapam.c:3149
-#: access/heap/heapam.c:3180
-#: access/heap/heapam.c:3215
-#, 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:175
-#: access/heap/rewriteheap.c:592
-#, c-format
-msgid "row is too big: size %lu, maximum size %lu"
-msgstr "la ligne est trop grande : taille %lu, taille maximale %lu"
-
-#: access/index/indexam.c:149
-#: commands/comment.c:559
-#: commands/indexcmds.c:1595
-#: commands/tablecmds.c:212
-#: commands/tablecmds.c:2357
-#, c-format
-msgid "\"%s\" is not an index"
-msgstr "« %s » n'est pas un index"
-
-#: access/nbtree/nbtinsert.c:384
-#, c-format
-msgid "duplicate key value violates unique constraint \"%s\""
-msgstr "la valeur d'une clé dupliquée rompt la contrainte unique « %s »"
-
-#: access/nbtree/nbtinsert.c:386
-#, c-format
-msgid "Key %s already exists."
-msgstr "La clé « %s » existe déjà."
-
-#: access/nbtree/nbtinsert.c:448
-#: executor/execUtils.c:1319
-#, c-format
-msgid "failed to re-find tuple within index \"%s\""
-msgstr "échec pour retrouver la ligne dans l'index « %s »"
-
-#: access/nbtree/nbtinsert.c:450
-#: executor/execUtils.c:1321
-msgid "This may be because of a non-immutable index expression."
-msgstr "Ceci peut être dû à une expression d'index immutable."
-
-#: access/nbtree/nbtinsert.c:526
-#: access/nbtree/nbtsort.c:487
-msgid ""
-"Values larger than 1/3 of a buffer page cannot be indexed.\n"
-"Consider a function index of an MD5 hash of the value, or use full text indexing."
-msgstr ""
-"Les valeurs plus larges qu'un tiers d'une page de tampon ne peuvent pas être\n"
-"indexées.\n"
-"Utilisez un index sur le hachage MD5 de la valeur ou passez à l'indexation\n"
-"de la recherche plein texte."
-
-#: access/nbtree/nbtpage.c:160
-#: access/nbtree/nbtpage.c:364
-#, c-format
-msgid "index \"%s\" is not a btree"
-msgstr "l'index « %s » n'est pas un btree"
-
-#: access/nbtree/nbtpage.c:166
-#: access/nbtree/nbtpage.c:370
-#, c-format
-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"
-
-#: bootstrap/bootstrap.c:272
-#: tcop/postgres.c:3393
-#: postmaster/postmaster.c:675
-#, c-format
-msgid "--%s requires a value"
-msgstr "--%s requiert une valeur"
-
-#: bootstrap/bootstrap.c:277
-#: tcop/postgres.c:3398
-#: postmaster/postmaster.c:680
-#, c-format
-msgid "-c %s requires a value"
-msgstr "-c %s requiert une valeur"
-
-#: bootstrap/bootstrap.c:288
-#: postmaster/postmaster.c:692
-#: postmaster/postmaster.c:705
-#, c-format
-msgid "Try \"%s --help\" for more information.\n"
-msgstr "Essayez « %s --help » pour plus d'informations.\n"
-
-#: bootstrap/bootstrap.c:297
-#, c-format
-msgid "%s: invalid command-line arguments\n"
-msgstr "%s : arguments invalides en ligne de commande\n"
-
-#: catalog/toasting.c:91
-#: commands/comment.c:573
-#: commands/indexcmds.c:187
-#: commands/indexcmds.c:1627
-#: commands/lockcmds.c:149
-#: commands/tablecmds.c:194
-#: commands/tablecmds.c:1096
-#: commands/tablecmds.c:3355
-#: commands/trigger.c:149
-#: commands/trigger.c:1063
-#, c-format
-msgid "\"%s\" is not a table"
-msgstr "« %s » n'est pas une table"
-
-#: catalog/toasting.c:141
-msgid "shared tables cannot be toasted after initdb"
-msgstr ""
-"les tables partagées ne peuvent pas avoir une table TOAST après la commande\n"
-"initdb"
-
-#: catalog/aclchk.c:196
-msgid "grant options can only be granted to roles"
-msgstr "les options grant peuvent seulement être données aux rôles"
-
-#: catalog/aclchk.c:312
+#: catalog/aclchk.c:200
+msgid "grant options can only be granted to roles"
+msgstr "les options grant peuvent seulement être données aux rôles"
+
+#: catalog/aclchk.c:316
 #, c-format
 msgid "no privileges were granted for column \"%s\" of relation \"%s\""
 msgstr "aucun droit n'a pu être accordé pour la colonne « %s » de la relation « %s »"
 
-#: catalog/aclchk.c:317
+#: catalog/aclchk.c:321
 #, c-format
 msgid "no privileges were granted for \"%s\""
 msgstr "aucun droit n'a été accordé pour « %s »"
 
-#: catalog/aclchk.c:325
+#: catalog/aclchk.c:329
 #, c-format
 msgid "not all privileges were granted for column \"%s\" of relation \"%s\""
 msgstr "certains droits n'ont pu être accordé pour la colonne « %s » de la relation « %s »"
 
-#: catalog/aclchk.c:330
+#: catalog/aclchk.c:334
 #, c-format
 msgid "not all privileges were granted for \"%s\""
 msgstr "tous les droits n'ont pas été accordés pour « %s »"
 
-#: catalog/aclchk.c:341
+#: catalog/aclchk.c:345
 #, c-format
 msgid "no privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "aucun droit n'a pu être révoqué pour la colonne « %s » de la relation « %s »"
 
-#: catalog/aclchk.c:346
+#: catalog/aclchk.c:350
 #, c-format
 msgid "no privileges could be revoked for \"%s\""
 msgstr "aucun droit n'a pu être révoqué pour « %s »"
 
-#: catalog/aclchk.c:354
+#: catalog/aclchk.c:358
 #, c-format
 msgid "not all privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "certains droits n'ont pu être révoqué pour la colonne « %s » de la relation « %s »"
 
-#: catalog/aclchk.c:359
+#: catalog/aclchk.c:363
 #, c-format
 msgid "not all privileges could be revoked for \"%s\""
 msgstr "certains droits n'ont pu être révoqué pour « %s »"
 
-#: catalog/aclchk.c:438
-#: catalog/aclchk.c:927
+#: catalog/aclchk.c:442
+#: catalog/aclchk.c:891
 #, c-format
 msgid "invalid privilege type %s for relation"
 msgstr "droit %s invalide pour la relation"
 
-#: catalog/aclchk.c:442
-#: catalog/aclchk.c:931
+#: catalog/aclchk.c:446
+#: catalog/aclchk.c:895
 #, c-format
 msgid "invalid privilege type %s for sequence"
 msgstr "droit %s invalide pour la séquence"
 
-#: catalog/aclchk.c:446
+#: catalog/aclchk.c:450
 #, c-format
 msgid "invalid privilege type %s for database"
 msgstr "droit %s invalide pour la base de données"
 
-#: catalog/aclchk.c:450
-#: catalog/aclchk.c:935
+#: catalog/aclchk.c:454
+#: catalog/aclchk.c:899
 #, c-format
 msgid "invalid privilege type %s for function"
 msgstr "droit %s invalide pour la fonction"
 
-#: catalog/aclchk.c:454
+#: catalog/aclchk.c:458
 #, c-format
 msgid "invalid privilege type %s for language"
 msgstr "droit %s invalide pour le langage"
 
-#: catalog/aclchk.c:458
+#: catalog/aclchk.c:462
 #, c-format
 msgid "invalid privilege type %s for large object"
 msgstr "type de droit invalide, %s, pour le Large Object"
 
-#: catalog/aclchk.c:462
+#: catalog/aclchk.c:466
 #, c-format
 msgid "invalid privilege type %s for schema"
 msgstr "droit %s invalide pour le schéma"
 
-#: catalog/aclchk.c:466
+#: catalog/aclchk.c:470
 #, c-format
 msgid "invalid privilege type %s for tablespace"
 msgstr "droit %s invalide pour le tablespace"
 
-#: catalog/aclchk.c:470
+#: catalog/aclchk.c:474
 #, c-format
 msgid "invalid privilege type %s for foreign-data wrapper"
 msgstr "type de droit %s invalide pour le wrapper de données distantes"
 
-#: catalog/aclchk.c:474
+#: catalog/aclchk.c:478
 #, c-format
 msgid "invalid privilege type %s for foreign server"
 msgstr "type de droit %s invalide pour le serveur distant"
 
-#: catalog/aclchk.c:513
+#: catalog/aclchk.c:517
 msgid "column privileges are only valid for relations"
 msgstr "les droits sur la colonne sont seulement valides pour les relations"
 
-#: catalog/aclchk.c:614
-#: commands/comment.c:698
-#: commands/dbcommands.c:760
-#: commands/dbcommands.c:905
-#: commands/dbcommands.c:1004
-#: commands/dbcommands.c:1181
-#: commands/dbcommands.c:1366
-#: commands/dbcommands.c:1410
-#: commands/dbcommands.c:1456
-#: utils/adt/acl.c:2975
-#: utils/adt/dbsize.c:149
-#: utils/init/postinit.c:708
-#: utils/init/postinit.c:776
-#: utils/init/postinit.c:793
-#, c-format
-msgid "database \"%s\" does not exist"
-msgstr "la base de données « %s » n'existe pas"
-
-#: catalog/aclchk.c:640
-#: commands/comment.c:1220
-#: commands/functioncmds.c:836
-#: commands/functioncmds.c:1990
-#: commands/proclang.c:531
-#: commands/proclang.c:600
-#: commands/proclang.c:640
-#: utils/adt/acl.c:3562
-#, c-format
-msgid "language \"%s\" does not exist"
-msgstr "le langage « %s » n'existe pas"
-
-#: catalog/aclchk.c:656
-#: catalog/aclchk.c:3690
-#: catalog/aclchk.c:4381
+#: catalog/aclchk.c:647
+#: catalog/aclchk.c:3677
+#: catalog/aclchk.c:4368
+#: catalog/objectaddress.c:199
 #: catalog/pg_largeobject.c:116
 #: catalog/pg_largeobject.c:176
-#: commands/comment.c:1415
-#: storage/large_object/inv_api.c:272
+#: storage/large_object/inv_api.c:277
 #, c-format
 msgid "large object %u does not exist"
 msgstr "le « Large Object » %u n'existe pas"
 
-#: catalog/aclchk.c:673
-#: catalog/aclchk.c:1051
-#: catalog/namespace.c:340
-#: catalog/namespace.c:2307
-#: catalog/namespace.c:2346
-#: catalog/namespace.c:2393
-#: catalog/namespace.c:3320
-#: commands/comment.c:806
-#: commands/schemacmds.c:190
-#: commands/schemacmds.c:264
-#: commands/schemacmds.c:335
-#: utils/adt/acl.c:3760
-#, c-format
-msgid "schema \"%s\" does not exist"
-msgstr "le schéma « %s » n'existe pas"
-
-#: catalog/aclchk.c:702
-#: commands/comment.c:737
-#: commands/dbcommands.c:436
-#: commands/dbcommands.c:1037
-#: commands/indexcmds.c:225
-#: commands/tablecmds.c:430
-#: commands/tablecmds.c:6809
-#: commands/tablespace.c:410
-#: commands/tablespace.c:808
-#: commands/tablespace.c:875
-#: commands/tablespace.c:980
-#: commands/tablespace.c:1036
-#: commands/tablespace.c:1160
-#: executor/execMain.c:2189
-#: utils/adt/acl.c:4134
-#: utils/adt/dbsize.c:248
-#, c-format
-msgid "tablespace \"%s\" does not exist"
-msgstr "le tablespace « %s » n'existe pas"
-
-#: catalog/aclchk.c:869
-#: catalog/aclchk.c:877
-#: commands/copy.c:751
-#: commands/copy.c:769
-#: commands/copy.c:777
-#: commands/copy.c:785
-#: commands/copy.c:793
-#: commands/copy.c:801
-#: commands/copy.c:809
-#: commands/copy.c:817
-#: commands/copy.c:833
+#: catalog/aclchk.c:833
+#: catalog/aclchk.c:841
+#: commands/copy.c:863
+#: commands/copy.c:881
+#: commands/copy.c:889
+#: commands/copy.c:897
+#: commands/copy.c:905
+#: commands/copy.c:913
+#: commands/copy.c:921
+#: commands/copy.c:929
+#: commands/copy.c:945
+#: commands/copy.c:959
 #: commands/dbcommands.c:146
 #: commands/dbcommands.c:154
 #: commands/dbcommands.c:162
@@ -2771,449 +2528,490 @@ msgstr "le tablespace 
 #: commands/dbcommands.c:194
 #: commands/dbcommands.c:1315
 #: commands/dbcommands.c:1323
-#: commands/functioncmds.c:485
-#: commands/functioncmds.c:575
-#: commands/functioncmds.c:583
-#: commands/functioncmds.c:591
-#: commands/functioncmds.c:1953
-#: commands/functioncmds.c:1961
-#: commands/sequence.c:1025
-#: commands/sequence.c:1033
-#: commands/sequence.c:1041
-#: commands/sequence.c:1049
-#: commands/sequence.c:1057
-#: commands/sequence.c:1065
-#: commands/sequence.c:1073
-#: commands/sequence.c:1081
-#: commands/typecmds.c:274
-#: commands/user.c:140
-#: commands/user.c:157
-#: commands/user.c:165
-#: commands/user.c:173
-#: commands/user.c:181
-#: commands/user.c:189
-#: commands/user.c:197
-#: commands/user.c:205
-#: commands/user.c:213
-#: commands/user.c:221
-#: commands/user.c:229
-#: commands/user.c:467
-#: commands/user.c:479
-#: commands/user.c:487
-#: commands/user.c:495
-#: commands/user.c:503
-#: commands/user.c:511
-#: commands/user.c:519
-#: commands/user.c:528
-#: commands/user.c:536
+#: commands/foreigncmds.c:396
+#: commands/foreigncmds.c:405
+#: commands/functioncmds.c:488
+#: commands/functioncmds.c:578
+#: commands/functioncmds.c:586
+#: commands/functioncmds.c:594
+#: commands/functioncmds.c:1982
+#: commands/functioncmds.c:1990
+#: commands/user.c:133
+#: commands/user.c:150
+#: commands/user.c:158
+#: commands/user.c:166
+#: commands/user.c:174
+#: commands/user.c:182
+#: commands/user.c:190
+#: commands/user.c:198
+#: commands/user.c:206
+#: commands/user.c:214
+#: commands/user.c:222
+#: commands/user.c:230
+#: commands/user.c:501
+#: commands/user.c:513
+#: commands/user.c:521
+#: commands/user.c:529
+#: commands/user.c:537
+#: commands/user.c:545
+#: commands/user.c:553
+#: commands/user.c:561
+#: commands/user.c:570
+#: commands/user.c:578
+#: commands/sequence.c:1135
+#: commands/sequence.c:1143
+#: commands/sequence.c:1151
+#: commands/sequence.c:1159
+#: commands/sequence.c:1167
+#: commands/sequence.c:1175
+#: commands/sequence.c:1183
+#: commands/sequence.c:1191
+#: commands/typecmds.c:282
+#: commands/extension.c:1248
+#: commands/extension.c:1256
+#: commands/extension.c:1264
+#: commands/extension.c:2473
+#: commands/collationcmds.c:93
 msgid "conflicting or redundant options"
 msgstr "options en conflit ou redondantes"
 
-#: catalog/aclchk.c:968
+#: catalog/aclchk.c:932
 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:1470
-#: commands/analyze.c:341
-#: commands/comment.c:651
-#: commands/copy.c:3441
-#: commands/sequence.c:1309
-#: commands/tablecmds.c:3952
-#: commands/tablecmds.c:4042
-#: commands/tablecmds.c:4089
-#: commands/tablecmds.c:4185
-#: commands/tablecmds.c:4229
-#: commands/tablecmds.c:4308
-#: commands/tablecmds.c:4389
-#: commands/tablecmds.c:5840
-#: commands/tablecmds.c:5980
-#: commands/trigger.c:527
-#: parser/analyze.c:1823
-#: parser/parse_relation.c:1996
-#: parser/parse_relation.c:2051
-#: parser/parse_target.c:808
+#: catalog/aclchk.c:1428
+#: catalog/objectaddress.c:536
+#: commands/analyze.c:343
+#: commands/copy.c:3774
+#: commands/sequence.c:1419
+#: commands/tablecmds.c:4591
+#: commands/tablecmds.c:4681
+#: commands/tablecmds.c:4728
+#: commands/tablecmds.c:4824
+#: commands/tablecmds.c:4868
+#: commands/tablecmds.c:4947
+#: commands/tablecmds.c:5031
+#: commands/tablecmds.c:6647
+#: commands/tablecmds.c:6856
+#: commands/trigger.c:583
+#: parser/analyze.c:2039
+#: parser/parse_relation.c:2043
+#: parser/parse_relation.c:2100
+#: parser/parse_target.c:895
 #: parser/parse_type.c:117
-#: utils/adt/acl.c:2770
-#: utils/adt/ruleutils.c:1524
+#: utils/adt/acl.c:2772
+#: utils/adt/ruleutils.c:1580
 #, 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:1735
-#: commands/comment.c:566
-#: commands/sequence.c:953
-#: commands/tablecmds.c:200
-#: commands/tablecmds.c:2146
-#: commands/tablecmds.c:2365
-#: commands/tablecmds.c:7815
-#: utils/adt/acl.c:2006
-#: utils/adt/acl.c:2036
-#: utils/adt/acl.c:2068
-#: utils/adt/acl.c:2100
-#: utils/adt/acl.c:2128
-#: utils/adt/acl.c:2158
+#: catalog/aclchk.c:1693
+#: catalog/objectaddress.c:398
+#: commands/sequence.c:1035
+#: commands/tablecmds.c:208
+#: commands/tablecmds.c:2247
+#: commands/tablecmds.c:2494
+#: commands/tablecmds.c:8968
+#: utils/adt/acl.c:2008
+#: utils/adt/acl.c:2038
+#: utils/adt/acl.c:2070
+#: utils/adt/acl.c:2102
+#: utils/adt/acl.c:2130
+#: utils/adt/acl.c:2160
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "« %s » n'est pas une séquence"
 
-#: catalog/aclchk.c:1773
+#: catalog/aclchk.c:1731
 #, c-format
 msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges"
 msgstr "la séquence « %s » accepte seulement les droits USAGE, SELECT et UPDATE"
 
-#: catalog/aclchk.c:1790
+#: catalog/aclchk.c:1748
 msgid "invalid privilege type USAGE for table"
 msgstr "droit USAGE invalide pour la table"
 
-#: catalog/aclchk.c:1940
+#: catalog/aclchk.c:1913
 #, c-format
 msgid "invalid privilege type %s for column"
 msgstr "type de droit %s invalide pour la colonne"
 
-#: catalog/aclchk.c:1953
+#: catalog/aclchk.c:1926
 #, c-format
 msgid "sequence \"%s\" only supports SELECT column privileges"
 msgstr "la séquence « %s » accepte seulement le droit SELECT pour les colonnes"
 
-#: catalog/aclchk.c:2537
+#: catalog/aclchk.c:2510
 #, c-format
 msgid "language \"%s\" is not trusted"
 msgstr "le langage « %s » n'est pas de confiance"
 
-#: catalog/aclchk.c:2539
+#: catalog/aclchk.c:2512
 msgid "Only superusers can use untrusted languages."
 msgstr ""
 "Seuls les super-utilisateurs peuvent utiliser des langages qui ne sont pas\n"
 "de confiance."
 
-#: catalog/aclchk.c:3046
+#: catalog/aclchk.c:3019
 #, c-format
 msgid "unrecognized privilege type \"%s\""
 msgstr "droit « %s » non reconnu"
 
-#: catalog/aclchk.c:3095
+#: catalog/aclchk.c:3068
 #, c-format
 msgid "permission denied for column %s"
 msgstr "droit refusé pour la colonne %s"
 
-#: catalog/aclchk.c:3097
+#: catalog/aclchk.c:3070
 #, c-format
 msgid "permission denied for relation %s"
 msgstr "droit refusé pour la relation %s"
 
-#: catalog/aclchk.c:3099
-#: commands/sequence.c:469
-#: commands/sequence.c:668
-#: commands/sequence.c:710
-#: commands/sequence.c:746
+#: catalog/aclchk.c:3072
+#: commands/sequence.c:550
+#: commands/sequence.c:749
+#: commands/sequence.c:791
+#: commands/sequence.c:827
+#: commands/sequence.c:1470
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "droit refusé pour la séquence %s"
 
-#: catalog/aclchk.c:3101
+#: catalog/aclchk.c:3074
 #, c-format
 msgid "permission denied for database %s"
 msgstr "droit refusé pour la base de données %s"
 
-#: catalog/aclchk.c:3103
+#: catalog/aclchk.c:3076
 #, c-format
 msgid "permission denied for function %s"
 msgstr "droit refusé pour la fonction %s"
 
-#: catalog/aclchk.c:3105
+#: catalog/aclchk.c:3078
 #, c-format
 msgid "permission denied for operator %s"
 msgstr "droit refusé pour l'opérateur %s"
 
-#: catalog/aclchk.c:3107
+#: catalog/aclchk.c:3080
 #, c-format
 msgid "permission denied for type %s"
 msgstr "droit refusé pour le type %s"
 
-#: catalog/aclchk.c:3109
+#: catalog/aclchk.c:3082
 #, c-format
 msgid "permission denied for language %s"
 msgstr "droit refusé pour le langage %s"
 
-#: catalog/aclchk.c:3111
+#: catalog/aclchk.c:3084
 #, c-format
 msgid "permission denied for large object %s"
 msgstr "droit refusé pour le Large Object %s"
 
-#: catalog/aclchk.c:3113
+#: catalog/aclchk.c:3086
 #, c-format
 msgid "permission denied for schema %s"
 msgstr "droit refusé pour le schéma %s"
 
-#: catalog/aclchk.c:3115
+#: catalog/aclchk.c:3088
 #, c-format
 msgid "permission denied for operator class %s"
 msgstr "droit refusé pour la classe d'opérateur %s"
 
-#: catalog/aclchk.c:3117
+#: catalog/aclchk.c:3090
 #, c-format
 msgid "permission denied for operator family %s"
 msgstr "droit refusé pour la famille d'opérateur %s"
 
-#: catalog/aclchk.c:3119
+#: catalog/aclchk.c:3092
+#, c-format
+msgid "permission denied for collation %s"
+msgstr "droit refusé pour le collationnement %s"
+
+#: catalog/aclchk.c:3094
 #, c-format
 msgid "permission denied for conversion %s"
 msgstr "droit refusé pour la conversion %s"
 
-#: catalog/aclchk.c:3121
+#: catalog/aclchk.c:3096
 #, c-format
 msgid "permission denied for tablespace %s"
 msgstr "droit refusé pour le tablespace %s"
 
-#: catalog/aclchk.c:3123
+#: catalog/aclchk.c:3098
 #, c-format
 msgid "permission denied for text search dictionary %s"
 msgstr "droit refusé pour le dictionnaire de recherche plein texte %s"
 
-#: catalog/aclchk.c:3125
+#: catalog/aclchk.c:3100
 #, c-format
 msgid "permission denied for text search configuration %s"
 msgstr "droit refusé pour la configuration de recherche plein texte %s"
 
-#: catalog/aclchk.c:3127
+#: catalog/aclchk.c:3102
 #, c-format
 msgid "permission denied for foreign-data wrapper %s"
 msgstr "droit refusé pour le wrapper de données distantes %s"
 
-#: catalog/aclchk.c:3129
+#: catalog/aclchk.c:3104
 #, c-format
 msgid "permission denied for foreign server %s"
 msgstr "droit refusé pour le serveur distant %s"
 
-#: catalog/aclchk.c:3135
-#: catalog/aclchk.c:3137
+#: catalog/aclchk.c:3106
+#, c-format
+msgid "permission denied for extension %s"
+msgstr "droit refusé pour l'extension %s"
+
+#: catalog/aclchk.c:3112
+#: catalog/aclchk.c:3114
 #, c-format
 msgid "must be owner of relation %s"
 msgstr "doit être le propriétaire de la relation %s"
 
-#: catalog/aclchk.c:3139
+#: catalog/aclchk.c:3116
 #, c-format
 msgid "must be owner of sequence %s"
 msgstr "doit être le propriétaire de la séquence %s"
 
-#: catalog/aclchk.c:3141
+#: catalog/aclchk.c:3118
 #, c-format
 msgid "must be owner of database %s"
 msgstr "doit être le propriétaire de la base de données %s"
 
-#: catalog/aclchk.c:3143
+#: catalog/aclchk.c:3120
 #, c-format
 msgid "must be owner of function %s"
 msgstr "doit être le propriétaire de la fonction %s"
 
-#: catalog/aclchk.c:3145
+#: catalog/aclchk.c:3122
 #, c-format
 msgid "must be owner of operator %s"
 msgstr "doit être le prorpriétaire de l'opérateur %s"
 
-#: catalog/aclchk.c:3147
+#: catalog/aclchk.c:3124
 #, c-format
 msgid "must be owner of type %s"
 msgstr "doit être le propriétaire du type %s"
 
-#: catalog/aclchk.c:3149
+#: catalog/aclchk.c:3126
 #, c-format
 msgid "must be owner of language %s"
 msgstr "doit être le propriétaire du langage %s"
 
-#: catalog/aclchk.c:3151
+#: catalog/aclchk.c:3128
 #, c-format
 msgid "must be owner of large object %s"
 msgstr "doit être le propriétaire du Large Object %s"
 
-#: catalog/aclchk.c:3153
+#: catalog/aclchk.c:3130
 #, c-format
 msgid "must be owner of schema %s"
 msgstr "doit être le propriétaire du schéma %s"
 
-#: catalog/aclchk.c:3155
+#: catalog/aclchk.c:3132
 #, c-format
 msgid "must be owner of operator class %s"
 msgstr "doit être le propriétaire de la classe d'opérateur %s"
 
-#: catalog/aclchk.c:3157
+#: catalog/aclchk.c:3134
 #, c-format
 msgid "must be owner of operator family %s"
 msgstr "doit être le prorpriétaire de la famille d'opérateur %s"
 
-#: catalog/aclchk.c:3159
+#: catalog/aclchk.c:3136
+#, c-format
+msgid "must be owner of collation %s"
+msgstr "doit être le propriétaire du collationnement %s"
+
+#: catalog/aclchk.c:3138
 #, c-format
 msgid "must be owner of conversion %s"
 msgstr "doit être le propriétaire de la conversion %s"
 
-#: catalog/aclchk.c:3161
+#: catalog/aclchk.c:3140
 #, c-format
 msgid "must be owner of tablespace %s"
 msgstr "doit être le propriétaire du tablespace %s"
 
-#: catalog/aclchk.c:3163
+#: catalog/aclchk.c:3142
 #, c-format
 msgid "must be owner of text search dictionary %s"
 msgstr "doit être le propriétaire du dictionnaire de recherche plein texte %s"
 
-#: catalog/aclchk.c:3165
+#: catalog/aclchk.c:3144
 #, c-format
 msgid "must be owner of text search configuration %s"
 msgstr "doit être le propriétaire de la configuration de recherche plein texte %s"
 
-#: catalog/aclchk.c:3167
+#: catalog/aclchk.c:3146
 #, c-format
 msgid "must be owner of foreign-data wrapper %s"
 msgstr "doit être le propriétaire du wrapper de données distantes %s"
 
-#: catalog/aclchk.c:3169
+#: catalog/aclchk.c:3148
 #, c-format
 msgid "must be owner of foreign server %s"
 msgstr "doit être le propriétaire de serveur distant %s"
 
-#: catalog/aclchk.c:3211
+#: catalog/aclchk.c:3150
+#, c-format
+msgid "must be owner of extension %s"
+msgstr "doit être le propriétaire de l'extension %s"
+
+#: catalog/aclchk.c:3192
 #, c-format
 msgid "permission denied for column \"%s\" of relation \"%s\""
 msgstr "droit refusé pour la colonne « %s » de la relation « %s »"
 
-#: catalog/aclchk.c:3238
+#: catalog/aclchk.c:3219
 #, c-format
 msgid "role with OID %u does not exist"
 msgstr "le rôle d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3331
-#: catalog/aclchk.c:3339
+#: catalog/aclchk.c:3312
+#: catalog/aclchk.c:3320
 #, c-format
 msgid "attribute %d of relation with OID %u does not exist"
 msgstr "l'attribut %d de la relation d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3412
-#: catalog/aclchk.c:4232
+#: catalog/aclchk.c:3393
+#: catalog/aclchk.c:4219
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "la relation d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3506
-#: catalog/aclchk.c:4596
+#: catalog/aclchk.c:3493
+#: catalog/aclchk.c:4610
 #: utils/adt/dbsize.c:127
 #, c-format
 msgid "database with OID %u does not exist"
 msgstr "la base de données d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3560
-#: catalog/aclchk.c:4310
-#: tcop/fastpath.c:222
+#: catalog/aclchk.c:3547
+#: catalog/aclchk.c:4297
+#: tcop/fastpath.c:221
 #, c-format
 msgid "function with OID %u does not exist"
 msgstr "la fonction d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3614
-#: catalog/aclchk.c:4336
+#: catalog/aclchk.c:3601
+#: catalog/aclchk.c:4323
 #, c-format
 msgid "language with OID %u does not exist"
 msgstr "le langage d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3775
-#: catalog/aclchk.c:4408
+#: catalog/aclchk.c:3762
+#: catalog/aclchk.c:4395
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "le schéma d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3829
-#: catalog/aclchk.c:4435
+#: catalog/aclchk.c:3816
+#: catalog/aclchk.c:4422
 #, c-format
 msgid "tablespace with OID %u does not exist"
 msgstr "le tablespace d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3887
+#: catalog/aclchk.c:3874
+#: catalog/aclchk.c:4556
 #, c-format
 msgid "foreign-data wrapper with OID %u does not exist"
 msgstr "le wrapper de données distantes d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:3948
-#: catalog/aclchk.c:4569
+#: catalog/aclchk.c:3935
+#: catalog/aclchk.c:4583
 #, c-format
 msgid "foreign server with OID %u does not exist"
 msgstr "le serveur distant d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4258
+#: catalog/aclchk.c:4245
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "le type d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4284
+#: catalog/aclchk.c:4271
 #, c-format
 msgid "operator with OID %u does not exist"
 msgstr "l'opérateur d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4461
+#: catalog/aclchk.c:4448
 #, c-format
 msgid "operator class with OID %u does not exist"
 msgstr "la classe d'opérateur d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4488
+#: catalog/aclchk.c:4475
 #, c-format
 msgid "operator family with OID %u does not exist"
 msgstr "la famille d'opérateur d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4515
+#: catalog/aclchk.c:4502
 #, c-format
 msgid "text search dictionary with OID %u does not exist"
 msgstr "le dictionnaire de recherche plein texte d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4542
+#: catalog/aclchk.c:4529
 #, c-format
 msgid "text search configuration with OID %u does not exist"
 msgstr "la configuration de recherche plein texte d'OID %u n'existe pas"
 
-#: catalog/aclchk.c:4622
+#: catalog/aclchk.c:4636
+#, c-format
+msgid "collation with OID %u does not exist"
+msgstr "le collationnement d'OID %u n'existe pas"
+
+#: catalog/aclchk.c:4662
 #, c-format
 msgid "conversion with OID %u does not exist"
 msgstr "la conversion d'OID %u n'existe pas"
 
-#: catalog/catalog.c:75
+#: catalog/aclchk.c:4703
+#, c-format
+msgid "extension with OID %u does not exist"
+msgstr "l'extension d'OID %u n'existe pas"
+
+#: catalog/catalog.c:76
 msgid "invalid fork name"
 msgstr "nom du fork invalide"
 
-#: catalog/catalog.c:76
+#: catalog/catalog.c:77
 msgid "Valid fork names are \"main\", \"fsm\", and \"vm\"."
 msgstr "Les noms de fork valides sont « main », « fsm » et « vm »."
 
-#: catalog/dependency.c:578
+#: catalog/dependency.c:589
 #, c-format
 msgid "cannot drop %s because %s requires it"
 msgstr "n'a pas pu supprimer %s car il est requis par %s"
 
-#: catalog/dependency.c:581
+#: catalog/dependency.c:592
 #, c-format
 msgid "You can drop %s instead."
 msgstr "Vous pouvez supprimer %s à la place."
 
-#: catalog/dependency.c:734
-#: catalog/pg_shdepend.c:560
+#: catalog/dependency.c:748
+#: catalog/pg_shdepend.c:562
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "n'a pas pu supprimer %s car il est requis par le système de bases de données"
 
-#: catalog/dependency.c:848
+#: catalog/dependency.c:864
 #, c-format
 msgid "drop auto-cascades to %s"
 msgstr "DROP cascade automatiquement sur %s"
 
-#: catalog/dependency.c:860
-#: catalog/dependency.c:869
+#: catalog/dependency.c:876
+#: catalog/dependency.c:885
 #, c-format
 msgid "%s depends on %s"
 msgstr "%s dépend de %s"
 
-#: catalog/dependency.c:881
-#: catalog/dependency.c:890
+#: catalog/dependency.c:897
+#: catalog/dependency.c:906
 #, c-format
 msgid "drop cascades to %s"
 msgstr "DROP cascade sur %s"
 
-#: catalog/dependency.c:898
-#: catalog/pg_shdepend.c:671
+#: catalog/dependency.c:914
+#: catalog/pg_shdepend.c:673
 #, c-format
 msgid ""
 "\n"
@@ -3228,466 +3026,492 @@ msgstr[1] ""
 "\n"
 "et %d autres objets (voir le journal applicatif du serveur pour une liste)"
 
-#: catalog/dependency.c:910
+#: catalog/dependency.c:926
 #, c-format
 msgid "cannot drop %s because other objects depend on it"
 msgstr "n'a pas pu supprimer %s car d'autres objets en dépendent"
 
-#: catalog/dependency.c:912
-#: catalog/dependency.c:913
-#: catalog/dependency.c:919
-#: catalog/dependency.c:920
-#: catalog/dependency.c:931
-#: catalog/dependency.c:932
-#: commands/tablecmds.c:658
-#: commands/trigger.c:832
-#: commands/trigger.c:848
-#: commands/trigger.c:860
-#: commands/user.c:902
-#: commands/user.c:903
-#: tcop/postgres.c:4300
-#: storage/lmgr/deadlock.c:942
-#: storage/lmgr/deadlock.c:943
-#: nodes/print.c:85
-#: utils/adt/xml.c:1363
-#: utils/adt/xml.c:1364
-#: utils/adt/xml.c:1370
-#: utils/adt/xml.c:1441
-#: utils/misc/guc.c:4963
-#: utils/misc/guc.c:5231
-#: utils/fmgr/dfmgr.c:381
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: catalog/dependency.c:914
-#: catalog/dependency.c:921
+#: catalog/dependency.c:930
+#: catalog/dependency.c:937
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
 msgstr "Utilisez DROP ... CASCADE pour supprimer aussi les objets dépendants."
 
-#: catalog/dependency.c:918
+#: catalog/dependency.c:934
 msgid "cannot drop desired object(s) because other objects depend on them"
 msgstr "ne peut pas supprimer les objets désirés car d'autres objets en dépendent"
 
 #. translator: %d always has a value larger than 1
-#: catalog/dependency.c:927
+#: catalog/dependency.c:943
 #, c-format
 msgid "drop cascades to %d other object"
 msgid_plural "drop cascades to %d other objects"
 msgstr[0] "DROP cascade sur %d autre objet"
 msgstr[1] "DROP cascade sur %d autres objets"
 
-#: catalog/dependency.c:2110
+#: catalog/dependency.c:2177
 #, c-format
 msgid " column %s"
 msgstr " colonne %s"
 
-#: catalog/dependency.c:2116
+#: catalog/dependency.c:2183
 #, c-format
 msgid "function %s"
 msgstr "fonction %s"
 
-#: catalog/dependency.c:2121
+#: catalog/dependency.c:2188
 #, c-format
 msgid "type %s"
 msgstr "type %s"
 
-#: catalog/dependency.c:2151
+#: catalog/dependency.c:2218
 #, c-format
 msgid "cast from %s to %s"
 msgstr "conversion de %s en %s"
 
-#: catalog/dependency.c:2178
+#: catalog/dependency.c:2238
+#, c-format
+msgid "collation %s"
+msgstr "collationnement %s"
+
+#: catalog/dependency.c:2262
 #, c-format
 msgid "constraint %s on %s"
 msgstr "contrainte %s sur %s"
 
-#: catalog/dependency.c:2184
+#: catalog/dependency.c:2268
 #, c-format
 msgid "constraint %s"
 msgstr "contrainte %s"
 
-#: catalog/dependency.c:2201
+#: catalog/dependency.c:2285
 #, c-format
 msgid "conversion %s"
 msgstr "conversion %s"
 
-#: catalog/dependency.c:2238
+#: catalog/dependency.c:2322
 #, c-format
 msgid "default for %s"
 msgstr "valeur par défaut pour %s"
 
-#: catalog/dependency.c:2255
+#: catalog/dependency.c:2339
 #, c-format
 msgid "language %s"
 msgstr "langage %s"
 
-#: catalog/dependency.c:2261
+#: catalog/dependency.c:2345
 #, c-format
 msgid "large object %u"
 msgstr "« Large Object » %u"
 
-#: catalog/dependency.c:2266
+#: catalog/dependency.c:2350
 #, c-format
 msgid "operator %s"
 msgstr "opérateur %s"
 
-#: catalog/dependency.c:2298
+#: catalog/dependency.c:2382
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "classe d'opérateur %s pour la méthode d'accès %s"
 
-#: catalog/dependency.c:2348
+#: catalog/dependency.c:2433
 #, c-format
-msgid "operator %d %s of %s"
-msgstr "opérateur %d %s de %s"
+msgid "operator %d (%s, %s) of %s: %s"
+msgstr "opérateur %d (%s, %s) de %s : %s"
 
-#: catalog/dependency.c:2395
+#: catalog/dependency.c:2484
 #, c-format
-msgid "function %d %s of %s"
-msgstr "fonction %d %s de %s"
+msgid "function %d (%s, %s) of %s: %s"
+msgstr "fonction %d (%s, %s) de %s : %s"
 
-#: catalog/dependency.c:2432
+#: catalog/dependency.c:2524
 #, c-format
 msgid "rule %s on "
 msgstr "règle %s active"
 
-#: catalog/dependency.c:2467
+#: catalog/dependency.c:2559
 #, c-format
 msgid "trigger %s on "
 msgstr "trigger %s actif "
 
-#: catalog/dependency.c:2484
+#: catalog/dependency.c:2576
 #, c-format
 msgid "schema %s"
 msgstr "schéma %s"
 
-#: catalog/dependency.c:2497
+#: catalog/dependency.c:2589
 #, c-format
 msgid "text search parser %s"
 msgstr "analyseur %s de la recherche plein texte"
 
-#: catalog/dependency.c:2512
+#: catalog/dependency.c:2604
 #, c-format
 msgid "text search dictionary %s"
 msgstr "dictionnaire %s de la recherche plein texte"
 
-#: catalog/dependency.c:2527
+#: catalog/dependency.c:2619
 #, c-format
 msgid "text search template %s"
 msgstr "modèle %s de la recherche plein texte"
 
-#: catalog/dependency.c:2542
+#: catalog/dependency.c:2634
 #, c-format
 msgid "text search configuration %s"
 msgstr "configuration %s de recherche plein texte"
 
-#: catalog/dependency.c:2550
+#: catalog/dependency.c:2642
 #, c-format
 msgid "role %s"
 msgstr "rôle %s"
 
-#: catalog/dependency.c:2563
+#: catalog/dependency.c:2655
 #, c-format
 msgid "database %s"
 msgstr "base de données %s"
 
-#: catalog/dependency.c:2575
+#: catalog/dependency.c:2667
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/dependency.c:2584
+#: catalog/dependency.c:2676
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "wrapper de données distantes %s"
 
-#: catalog/dependency.c:2593
+#: catalog/dependency.c:2685
 #, c-format
 msgid "server %s"
 msgstr "serveur %s"
 
-#: catalog/dependency.c:2618
+#: catalog/dependency.c:2710
 #, c-format
 msgid "user mapping for %s"
 msgstr "correspondance utilisateur pour %s"
 
-#: catalog/dependency.c:2652
+#: catalog/dependency.c:2744
 #, 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/dependency.c:2657
+#: catalog/dependency.c:2749
 #, 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/dependency.c:2662
+#: catalog/dependency.c:2754
 #, 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/dependency.c:2668
+#: catalog/dependency.c:2760
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "droits par défaut appartenant au rôle %s"
 
-#: catalog/dependency.c:2676
+#: catalog/dependency.c:2768
 #, c-format
 msgid " in schema %s"
 msgstr " dans le schéma %s"
 
-#: catalog/dependency.c:2724
+#: catalog/dependency.c:2785
+#, c-format
+msgid "extension %s"
+msgstr "extension %s"
+
+#: catalog/dependency.c:2843
 #, c-format
 msgid "table %s"
 msgstr "table %s"
 
-#: catalog/dependency.c:2728
+#: catalog/dependency.c:2847
 #, c-format
 msgid "index %s"
 msgstr "index %s"
 
-#: catalog/dependency.c:2732
+#: catalog/dependency.c:2851
 #, c-format
 msgid "sequence %s"
 msgstr "séquence %s"
 
-#: catalog/dependency.c:2736
+#: catalog/dependency.c:2855
 #, c-format
 msgid "uncataloged table %s"
 msgstr "table %s sans catalogue"
 
-#: catalog/dependency.c:2740
+#: catalog/dependency.c:2859
 #, c-format
 msgid "toast table %s"
 msgstr "table TOAST %s"
 
-#: catalog/dependency.c:2744
+#: catalog/dependency.c:2863
 #, c-format
 msgid "view %s"
 msgstr "vue %s"
 
-#: catalog/dependency.c:2748
+#: catalog/dependency.c:2867
 #, c-format
 msgid "composite type %s"
 msgstr "type composite %s"
 
-#: catalog/dependency.c:2753
+#: catalog/dependency.c:2871
+#, c-format
+msgid "foreign table %s"
+msgstr "table distante %s"
+
+#: catalog/dependency.c:2876
 #, c-format
 msgid "relation %s"
 msgstr "relation %s"
 
-#: catalog/dependency.c:2790
+#: catalog/dependency.c:2913
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "famille d'opérateur %s pour la méthode d'accès %s"
 
-#: catalog/heap.c:257
+#: catalog/heap.c:264
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "droit refusé pour créer « %s.%s »"
 
-#: catalog/heap.c:259
+#: catalog/heap.c:266
 msgid "System catalog modifications are currently disallowed."
 msgstr "Les modifications du catalogue système sont actuellement interdites."
 
-#: catalog/heap.c:380
-#: commands/tablecmds.c:1235
-#: commands/tablecmds.c:1619
-#: commands/tablecmds.c:3723
+#: catalog/heap.c:389
+#: commands/tablecmds.c:1268
+#: commands/tablecmds.c:1685
+#: commands/tablecmds.c:4276
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "les tables peuvent avoir au plus %d colonnes"
 
-#: catalog/heap.c:397
+#: catalog/heap.c:406
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "le nom de la colonne « %s » entre en conflit avec le nom d'une colonne système"
 
-#: catalog/heap.c:413
+#: catalog/heap.c:422
 #, c-format
 msgid "column name \"%s\" specified more than once"
 msgstr "colonne « %s » spécifiée plus d'une fois"
 
-#: catalog/heap.c:461
+#: catalog/heap.c:472
 #, c-format
 msgid "column \"%s\" has type \"unknown\""
 msgstr "la colonne « %s » est de type « unknown »"
 
-#: catalog/heap.c:462
+#: catalog/heap.c:473
 msgid "Proceeding with relation creation anyway."
 msgstr "Poursuit malgré tout la création de la relation."
 
-#: catalog/heap.c:475
+#: catalog/heap.c:486
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "la colonne « %s » a le pseudo type %s"
 
-#: catalog/heap.c:498
+#: catalog/heap.c:516
 #, c-format
 msgid "composite type %s cannot be made a member of itself"
 msgstr "le type composite %s ne peut pas être membre de lui-même"
 
-#: catalog/heap.c:963
-#: catalog/index.c:621
-#: commands/tablecmds.c:2211
+#: catalog/heap.c:558
+#, c-format
+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:560
+#: commands/indexcmds.c:931
+#: commands/view.c:145
+#: regex/regc_pg_locale.c:259
+#: utils/adt/formatting.c:1520
+#: utils/adt/formatting.c:1570
+#: utils/adt/formatting.c:1641
+#: utils/adt/formatting.c:1691
+#: utils/adt/formatting.c:1774
+#: utils/adt/formatting.c:1836
+#: utils/adt/like.c:212
+#: utils/adt/selfuncs.c:4853
+#: utils/adt/selfuncs.c:4970
+#: utils/adt/varlena.c:1315
+msgid "Use the COLLATE clause to set the collation explicitly."
+msgstr "Utilisez la clause COLLARE pour configurer explicitement le collationnement."
+
+#: catalog/heap.c:1011
+#: catalog/index.c:769
+#: commands/tablecmds.c:2318
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "la relation « %s » existe déjà"
 
-#: catalog/heap.c:979
-#: catalog/pg_type.c:385
-#: catalog/pg_type.c:665
-#: commands/typecmds.c:218
-#: commands/typecmds.c:795
-#: commands/typecmds.c:1120
-#: commands/typecmds.c:1543
+#: catalog/heap.c:1027
+#: catalog/pg_type.c:396
+#: catalog/pg_type.c:696
+#: commands/typecmds.c:224
+#: commands/typecmds.c:806
+#: commands/typecmds.c:1145
+#: commands/typecmds.c:1622
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "le type « %s » existe déjà"
 
-#: catalog/heap.c:980
+#: catalog/heap.c:1028
 msgid "A relation has an associated type of the same name, so you must use a name that doesn't conflict with any existing type."
 msgstr ""
 "Une relation a un type associé du même nom, donc vous devez utiliser un nom\n"
 "qui n'entre pas en conflit avec un type existant."
 
-#: catalog/heap.c:2023
+#: catalog/heap.c:2139
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "la contrainte de vérification « %s » existe déjà"
 
-#: catalog/heap.c:2167
-#: catalog/pg_constraint.c:639
-#: commands/tablecmds.c:4636
+#: catalog/heap.c:2283
+#: catalog/pg_constraint.c:645
+#: commands/tablecmds.c:5350
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "la contrainte « %s » de la relation « %s » existe déjà"
 
-#: catalog/heap.c:2171
+#: catalog/heap.c:2287
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "assemblage de la contrainte « %s » avec une définition héritée"
 
-#: catalog/heap.c:2269
+#: catalog/heap.c:2385
 msgid "cannot use column references in default expression"
 msgstr "ne peut pas utiliser les références de colonnes dans l'expression par défaut"
 
-#: catalog/heap.c:2277
+#: catalog/heap.c:2393
 msgid "default expression must not return a set"
 msgstr "l'expression par défaut ne doit pas renvoyer un ensemble"
 
-#: catalog/heap.c:2285
+#: catalog/heap.c:2401
 msgid "cannot use subquery in default expression"
 msgstr "ne peut pas utiliser une sous-requête dans l'expression par défaut"
 
-#: catalog/heap.c:2289
+#: catalog/heap.c:2405
 msgid "cannot use aggregate function in default expression"
 msgstr "ne peut pas utiliser une fonction d'agrégat dans une expression par défaut"
 
-#: catalog/heap.c:2293
+#: catalog/heap.c:2409
 msgid "cannot use window function in default expression"
 msgstr "ne peut pas utiliser une fonction window dans une expression par défaut"
 
-#: catalog/heap.c:2312
-#: rewrite/rewriteHandler.c:952
+#: catalog/heap.c:2428
+#: rewrite/rewriteHandler.c:1030
 #, 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:2317
-#: commands/prepare.c:369
-#: parser/parse_node.c:370
-#: parser/parse_target.c:475
-#: parser/parse_target.c:734
-#: parser/parse_target.c:744
-#: rewrite/rewriteHandler.c:957
+#: catalog/heap.c:2433
+#: commands/prepare.c:370
+#: parser/parse_node.c:397
+#: parser/parse_target.c:489
+#: parser/parse_target.c:735
+#: parser/parse_target.c:745
+#: rewrite/rewriteHandler.c:1035
 msgid "You will need to rewrite or cast the expression."
 msgstr "Vous devez réécrire l'expression ou lui appliquer une transformation de type."
 
-#: catalog/heap.c:2353
+#: catalog/heap.c:2479
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "seule la table « %s » peut être référencée dans la contrainte de vérification"
 
-#: catalog/heap.c:2362
-#: commands/typecmds.c:2298
+#: catalog/heap.c:2488
+#: commands/typecmds.c:2386
 msgid "cannot use subquery in check constraint"
 msgstr "ne peut pas utiliser une sous-requête dans la contrainte de vérification"
 
-#: catalog/heap.c:2366
-#: commands/typecmds.c:2302
+#: catalog/heap.c:2492
+#: commands/typecmds.c:2390
 msgid "cannot use aggregate function in check constraint"
 msgstr "ne peut pas utiliser une fonction d'aggrégat dans une contrainte de vérification"
 
-#: catalog/heap.c:2370
-#: commands/typecmds.c:2306
+#: catalog/heap.c:2496
+#: commands/typecmds.c:2394
 msgid "cannot use window function in check constraint"
 msgstr "ne peut pas utiliser une fonction window dans une contrainte de vérification"
 
-#: catalog/heap.c:2609
+#: catalog/heap.c:2735
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "combinaison ON COMMIT et clé étrangère non supportée"
 
-#: catalog/heap.c:2610
+#: catalog/heap.c:2736
 #, c-format
 msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting."
 msgstr ""
 "La table « %s » référence « %s » mais elles n'ont pas la même valeur pour le\n"
 "paramètre ON COMMIT."
 
-#: catalog/heap.c:2615
+#: catalog/heap.c:2741
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "ne peut pas tronquer une table référencée dans une contrainte de clé étrangère"
 
-#: catalog/heap.c:2616
+#: catalog/heap.c:2742
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "La table « %s » référence « %s »."
 
-#: catalog/heap.c:2618
+#: catalog/heap.c:2744
 #, c-format
 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:582
+#: catalog/index.c:202
+#: parser/parse_utilcmd.c:1296
+#: parser/parse_utilcmd.c:1382
+#, 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:220
+msgid "primary keys cannot be expressions"
+msgstr "les clés primaires ne peuvent pas être des expressions"
+
+#: catalog/index.c:730
+#: catalog/index.c:1124
 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:592
+#: catalog/index.c:740
 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:610
+#: catalog/index.c:758
 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:2432
+#: catalog/index.c:1727
+#, c-format
+msgid "building index \"%s\" on table \"%s\""
+msgstr "construction de l'index « %s » sur la table « %s »"
+
+#: catalog/index.c:2800
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "ne peut pas ré-indexer les tables temporaires des autres sessions"
 
-#: catalog/namespace.c:232
-#: catalog/namespace.c:306
-#: commands/trigger.c:3961
+#: catalog/namespace.c:235
+#: catalog/namespace.c:309
+#: commands/trigger.c:4145
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "les références entre bases de données ne sont pas implémentées : « %s.%s.%s »"
 
-#: catalog/namespace.c:250
-#: catalog/namespace.c:317
+#: catalog/namespace.c:253
 msgid "temporary tables cannot specify a schema name"
 msgstr "les tables temporaires ne peuvent pas spécifier un nom de schéma"
 
-#: catalog/namespace.c:273
+#: catalog/namespace.c:276
 #: commands/lockcmds.c:122
 #: parser/parse_relation.c:835
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "la relation « %s.%s » n'existe pas"
 
-#: catalog/namespace.c:278
+#: catalog/namespace.c:281
 #: commands/lockcmds.c:127
 #: parser/parse_relation.c:848
 #: parser/parse_relation.c:856
@@ -3696,66 +3520,212 @@ msgstr "la relation 
 msgid "relation \"%s\" does not exist"
 msgstr "la relation « %s » n'existe pas"
 
-#: catalog/namespace.c:358
-#: catalog/namespace.c:2410
+#: catalog/namespace.c:349
+#: catalog/namespace.c:2579
 msgid "no schema has been selected to create in"
 msgstr "aucun schéma n'a été sélectionné pour cette création"
 
-#: catalog/namespace.c:1748
-#: commands/tsearchcmds.c:306
+#: catalog/namespace.c:401
+#: catalog/namespace.c:414
+msgid "cannot create relations in temporary schemas of other sessions"
+msgstr "ne peut pas créer les relations dans les schémas temporaires d'autres sessions"
+
+#: catalog/namespace.c:405
+msgid "cannot create temporary relation in non-temporary schema"
+msgstr "ne peut pas créer une relation temporaire dans un schéma non temporaire"
+
+#: catalog/namespace.c:419
+msgid "only temporary relations may be created in temporary schemas"
+msgstr "seules les relations temporaires peuvent être créées dans des schémas temporaires"
+
+#: catalog/namespace.c:1896
+#: commands/tsearchcmds.c:320
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "l'analyseur de recherche plein texte « %s » n'existe pas"
 
-#: catalog/namespace.c:1871
-#: commands/tsearchcmds.c:654
+#: catalog/namespace.c:2019
+#: commands/tsearchcmds.c:769
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "le dictionnaire de recherche plein texte « %s » n'existe pas"
 
-#: catalog/namespace.c:1995
-#: commands/tsearchcmds.c:1137
+#: catalog/namespace.c:2143
+#: commands/tsearchcmds.c:1304
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "le modèle de recherche plein texte « %s » n'existe pas"
 
-#: catalog/namespace.c:2118
-#: commands/tsearchcmds.c:1532
-#: commands/tsearchcmds.c:1688
+#: catalog/namespace.c:2266
+#: commands/tsearchcmds.c:1754
+#: commands/tsearchcmds.c:1910
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "la configuration de recherche plein texte « %s » n'existe pas"
 
-#: catalog/namespace.c:2231
-#: parser/parse_expr.c:769
-#: parser/parse_target.c:998
+#: catalog/namespace.c:2379
+#: parser/parse_expr.c:775
+#: parser/parse_target.c:1085
 #, c-format
 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:2237
-#: parser/parse_expr.c:776
-#: parser/parse_target.c:1005
-#: gram.y:3673
-#: gram.y:10605
+#: catalog/namespace.c:2385
+#: parser/parse_expr.c:782
+#: parser/parse_target.c:1092
+#: gram.y:11611
+#: gram.y:12810
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "mauvaise qualification du nom (trop de points entre les noms) : %s"
 
-#: catalog/namespace.c:2442
+#: catalog/namespace.c:2513
+#, c-format
+msgid "%s is already in schema \"%s\""
+msgstr "%s existe déjà dans le schéma « %s »"
+
+#: catalog/namespace.c:2521
+msgid "cannot move objects into or out of temporary schemas"
+msgstr "ne peut pas déplacer les objets dans ou à partir des schémas temporaires"
+
+#: catalog/namespace.c:2527
+msgid "cannot move objects into or out of TOAST schema"
+msgstr "ne peut pas déplacer les objets dans ou à partir des schémas TOAST"
+
+#: catalog/namespace.c:2600
+#: catalog/namespace.c:3585
+#: catalog/namespace.c:3588
+#: commands/schemacmds.c:253
+#: commands/schemacmds.c:322
+#, c-format
+msgid "schema \"%s\" does not exist"
+msgstr "le schéma « %s » n'existe pas"
+
+#: catalog/namespace.c:2631
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "nom de relation incorrecte (trop de points entre les noms) : %s"
 
-#: catalog/namespace.c:3024
+#: catalog/namespace.c:3030
+#, c-format
+msgid "collation \"%s\" for encoding \"%s\" does not exist"
+msgstr "le collationnement « %s » pour l'encodage « %s » n'existe pas"
+
+#: catalog/namespace.c:3082
+#, c-format
+msgid "conversion \"%s\" does not exist"
+msgstr "la conversion « %s » n'existe pas"
+
+#: catalog/namespace.c:3287
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "droit refusé pour la création de tables temporaires dans la base de données « %s »"
 
-#: catalog/namespace.c:3040
+#: catalog/namespace.c:3303
 msgid "cannot create temporary tables during recovery"
 msgstr "ne peut pas créer des tables temporaires lors de la restauration"
 
+#: catalog/namespace.c:3547
+#: commands/tablespace.c:1121
+#: commands/variable.c:59
+#: replication/syncrep.c:657
+#: utils/misc/guc.c:8153
+msgid "List syntax is invalid."
+msgstr "La syntaxe de la liste est invalide."
+
+#: catalog/objectaddress.c:286
+msgid "database name cannot be qualified"
+msgstr "le nom de la base de donnée ne peut être qualifié"
+
+#: catalog/objectaddress.c:289
+#: commands/extension.c:1585
+#: commands/extension.c:2245
+msgid "extension name cannot be qualified"
+msgstr "le nom de l'extension ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:292
+msgid "tablespace name cannot be qualified"
+msgstr "le nom du tablespace ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:295
+msgid "role name cannot be qualified"
+msgstr "le nom du rôle ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:298
+#: commands/schemacmds.c:178
+msgid "schema name cannot be qualified"
+msgstr "le nom du schéma ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:301
+msgid "language name cannot be qualified"
+msgstr "le nom du langage ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:304
+msgid "foreign-data wrapper name cannot be qualified"
+msgstr "le nom du wrapper de données distantes ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:307
+msgid "server name cannot be qualified"
+msgstr "le nom du serveur ne peut pas être qualifié"
+
+#: catalog/objectaddress.c:405
+#: catalog/toasting.c:91
+#: commands/indexcmds.c:200
+#: commands/indexcmds.c:1574
+#: commands/lockcmds.c:149
+#: commands/tablecmds.c:202
+#: commands/tablecmds.c:1129
+#: commands/tablecmds.c:2478
+#: commands/tablecmds.c:3825
+#: commands/tablecmds.c:6759
+#, c-format
+msgid "\"%s\" is not a table"
+msgstr "« %s » n'est pas une table"
+
+#: catalog/objectaddress.c:412
+#: commands/tablecmds.c:214
+#: commands/tablecmds.c:2253
+#: commands/tablecmds.c:2510
+#: commands/tablecmds.c:3840
+#: commands/tablecmds.c:8976
+#: commands/view.c:181
+#, c-format
+msgid "\"%s\" is not a view"
+msgstr "« %s » n'est pas une vue"
+
+#: catalog/objectaddress.c:419
+#: commands/tablecmds.c:232
+#: commands/tablecmds.c:2259
+#: commands/tablecmds.c:2518
+#: commands/tablecmds.c:3843
+#: commands/tablecmds.c:8984
+#, c-format
+msgid "\"%s\" is not a foreign table"
+msgstr "« %s » n'est pas une table distante"
+
+#: catalog/objectaddress.c:819
+#: catalog/pg_largeobject.c:200
+#: libpq/be-fsstubs.c:287
+#, c-format
+msgid "must be owner of large object %u"
+msgstr "doit être le propriétaire du Large Object %u"
+
+#: catalog/objectaddress.c:834
+#: commands/functioncmds.c:1525
+#: commands/functioncmds.c:1814
+#, c-format
+msgid "must be owner of type %s or type %s"
+msgstr "doit être le propriétaire du type %s ou du type %s"
+
+#: catalog/objectaddress.c:865
+#: catalog/objectaddress.c:881
+msgid "must be superuser"
+msgstr "doit être super-utilisateur"
+
+#: catalog/objectaddress.c:872
+msgid "must have CREATEROLE privilege"
+msgstr "doit avoir l'attribut CREATEROLE"
+
 #: catalog/pg_aggregate.c:100
 msgid "cannot determine transition data type"
 msgstr "n'a pas pu déterminer le type de données de transition"
@@ -3779,7 +3749,7 @@ msgstr ""
 "entrée"
 
 #: catalog/pg_aggregate.c:175
-#: catalog/pg_proc.c:204
+#: catalog/pg_proc.c:205
 msgid "cannot determine result data type"
 msgstr "n'a pas pu déterminer le type de données en résultat"
 
@@ -3790,12 +3760,12 @@ msgstr ""
 "de type polymorphique."
 
 #: catalog/pg_aggregate.c:188
-#: catalog/pg_proc.c:210
+#: catalog/pg_proc.c:211
 msgid "unsafe use of pseudo-type \"internal\""
 msgstr "utilisation non sûre des pseudo-types « INTERNAL »"
 
 #: catalog/pg_aggregate.c:189
-#: catalog/pg_proc.c:211
+#: catalog/pg_proc.c:212
 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"
@@ -3806,16 +3776,16 @@ 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:331
-#: commands/typecmds.c:1269
-#: commands/typecmds.c:1320
-#: commands/typecmds.c:1351
-#: commands/typecmds.c:1374
-#: commands/typecmds.c:1395
-#: commands/typecmds.c:1422
-#: commands/typecmds.c:1449
-#: parser/parse_func.c:294
-#: parser/parse_func.c:305
-#: parser/parse_func.c:1464
+#: commands/typecmds.c:1350
+#: commands/typecmds.c:1401
+#: commands/typecmds.c:1432
+#: commands/typecmds.c:1455
+#: commands/typecmds.c:1476
+#: commands/typecmds.c:1503
+#: commands/typecmds.c:1530
+#: parser/parse_func.c:288
+#: parser/parse_func.c:299
+#: parser/parse_func.c:1481
 #, c-format
 msgid "function %s does not exist"
 msgstr "la fonction %s n'existe pas"
@@ -3830,216 +3800,216 @@ msgstr "la fonction %s renvoie un ensemble"
 msgid "function %s requires run-time type coercion"
 msgstr "la fonction %s requiert une coercion sur le type à l'exécution"
 
-#: catalog/pg_constraint.c:648
-#: commands/typecmds.c:2239
+#: catalog/pg_constraint.c:654
+#: commands/typecmds.c:2321
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "la contrainte « %s » du domaine « %s » existe déjà"
 
-#: catalog/pg_constraint.c:767
+#: catalog/pg_constraint.c:773
 #, c-format
 msgid "table \"%s\" has multiple constraints named \"%s\""
 msgstr "la table « %s » a de nombreuses contraintes nommées « %s »"
 
-#: catalog/pg_constraint.c:779
+#: catalog/pg_constraint.c:785
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "la contrainte « %s » de la table « %s » n'existe pas"
 
-#: catalog/pg_conversion.c:66
+#: catalog/pg_conversion.c:67
 #, c-format
 msgid "conversion \"%s\" already exists"
 msgstr "la conversion « %s » existe déjà"
 
-#: catalog/pg_conversion.c:79
+#: catalog/pg_conversion.c:80
 #, c-format
 msgid "default conversion for %s to %s already exists"
 msgstr "la conversion par défaut de %s vers %s existe déjà"
 
-#: catalog/pg_depend.c:209
+#: catalog/pg_depend.c:293
 #, c-format
 msgid "cannot remove dependency on %s because it is a system object"
 msgstr "ne peut pas supprimer la dépendance sur %s car il s'agit d'un objet système"
 
-#: catalog/pg_enum.c:70
-msgid "EnumValuesCreate() can only set a single OID"
-msgstr "EnumValuesCreate() peut seulement initialiser un seul OID"
-
-#: catalog/pg_enum.c:110
+#: catalog/pg_enum.c:113
+#: catalog/pg_enum.c:199
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "nom du label enum « %s » invalide"
 
-#: catalog/pg_enum.c:111
+#: catalog/pg_enum.c:114
+#: catalog/pg_enum.c:200
 #, c-format
 msgid "Labels must be %d characters or less."
 msgstr "Les labels doivent avoir au plus %d caractères"
 
-#: catalog/pg_largeobject.c:200
-#: commands/comment.c:1422
-#: libpq/be-fsstubs.c:287
+#: catalog/pg_enum.c:264
 #, c-format
-msgid "must be owner of large object %u"
-msgstr "doit être le propriétaire du Large Object %u"
+msgid "\"%s\" is not an existing enum label"
+msgstr "« %s » n'est pas un label enum existant"
+
+#: catalog/pg_enum.c:325
+msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
+msgstr "ALTER TYPE ADD BEFORE/AFTER est incompatible avec la mise à jour binaire"
 
-#: catalog/pg_namespace.c:50
-#: commands/schemacmds.c:272
+#: catalog/pg_namespace.c:52
+#: commands/schemacmds.c:259
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "le schéma « %s » existe déjà"
 
-#: catalog/pg_operator.c:220
-#: catalog/pg_operator.c:358
+#: catalog/pg_operator.c:221
+#: catalog/pg_operator.c:363
 #, c-format
 msgid "\"%s\" is not a valid operator name"
 msgstr "« %s » n'est pas un nom d'opérateur valide"
 
-#: catalog/pg_operator.c:367
+#: catalog/pg_operator.c:372
 msgid "only binary operators can have commutators"
 msgstr "seuls les opérateurs binaires peuvent avoir des commutateurs"
 
-#: catalog/pg_operator.c:371
+#: catalog/pg_operator.c:376
 msgid "only binary operators can have join selectivity"
 msgstr "seuls les opérateurs binaires peuvent avoir une sélectivité des jointures"
 
-#: catalog/pg_operator.c:375
+#: catalog/pg_operator.c:380
 msgid "only binary operators can merge join"
 msgstr "seuls les opérateurs binaires peuvent exécuter des jointures MERGE"
 
-#: catalog/pg_operator.c:379
+#: catalog/pg_operator.c:384
 msgid "only binary operators can hash"
 msgstr "seuls les opérateurs binaires ont du hachage"
 
-#: catalog/pg_operator.c:390
+#: catalog/pg_operator.c:395
 msgid "only boolean operators can have negators"
 msgstr "seuls les opérateurs booléens peuvent avoir des négations"
 
-#: catalog/pg_operator.c:394
+#: catalog/pg_operator.c:399
 msgid "only boolean operators can have restriction selectivity"
 msgstr "seuls les opérateurs booléens peuvent avoir une sélectivité des restrictions"
 
-#: catalog/pg_operator.c:398
+#: catalog/pg_operator.c:403
 msgid "only boolean operators can have join selectivity"
 msgstr "seuls les opérateurs booléens peuvent avoir une sélectivité des jointures"
 
-#: catalog/pg_operator.c:402
+#: catalog/pg_operator.c:407
 msgid "only boolean operators can merge join"
 msgstr "seuls les opérateurs booléens peuvent exécuter des jointures MERGE"
 
-#: catalog/pg_operator.c:406
+#: catalog/pg_operator.c:411
 msgid "only boolean operators can hash"
 msgstr "seuls les opérateurs booléens peuvent hacher"
 
-#: catalog/pg_operator.c:418
+#: catalog/pg_operator.c:423
 #, c-format
 msgid "operator %s already exists"
 msgstr "l'opérateur %s existe déjà"
 
-#: catalog/pg_operator.c:607
+#: catalog/pg_operator.c:616
 msgid "operator cannot be its own negator or sort operator"
 msgstr "l'opérateur ne peut pas être son propre opérateur de négation ou de tri"
 
-#: catalog/pg_proc.c:123
-#: parser/parse_func.c:1509
-#: parser/parse_func.c:1549
+#: catalog/pg_proc.c:124
+#: parser/parse_func.c:1526
+#: parser/parse_func.c:1566
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
 msgstr[0] "les fonctions ne peuvent avoir plus de %d argument"
 msgstr[1] "les fonctions ne peuvent avoir plus de %d arguments"
 
-#: catalog/pg_proc.c:205
+#: catalog/pg_proc.c:206
 msgid "A function returning a polymorphic type must have at least one polymorphic argument."
 msgstr ""
 "Une fonction renvoyant un type polymorphique doit avoir au moins un argument\n"
 "de type polymorphique."
 
-#: catalog/pg_proc.c:223
+#: catalog/pg_proc.c:224
 #, c-format
 msgid "\"%s\" is already an attribute of type %s"
 msgstr "« %s » est déjà un attribut du type %s"
 
-#: catalog/pg_proc.c:362
+#: catalog/pg_proc.c:363
 #, c-format
 msgid "function \"%s\" already exists with same argument types"
 msgstr "la fonction « %s » existe déjà avec des types d'arguments identiques"
 
-#: catalog/pg_proc.c:376
-#: catalog/pg_proc.c:398
+#: catalog/pg_proc.c:377
+#: catalog/pg_proc.c:399
 msgid "cannot change return type of existing function"
 msgstr "ne peut pas modifier le type de retour d'une fonction existante"
 
-#: catalog/pg_proc.c:377
-#: catalog/pg_proc.c:400
-#: catalog/pg_proc.c:442
-#: catalog/pg_proc.c:465
-#: catalog/pg_proc.c:491
+#: catalog/pg_proc.c:378
+#: catalog/pg_proc.c:401
+#: catalog/pg_proc.c:443
+#: catalog/pg_proc.c:466
+#: catalog/pg_proc.c:492
 msgid "Use DROP FUNCTION first."
 msgstr "Utilisez tout d'abord DROP FUNCTION."
 
-#: catalog/pg_proc.c:399
+#: catalog/pg_proc.c:400
 msgid "Row type defined by OUT parameters is different."
 msgstr "Le type de ligne défini par les paramètres OUT est différent."
 
-#: catalog/pg_proc.c:440
+#: catalog/pg_proc.c:441
 #, c-format
 msgid "cannot change name of input parameter \"%s\""
 msgstr "ne peut pas modifier le nom du paramètre en entrée « %s »"
 
-#: catalog/pg_proc.c:464
+#: catalog/pg_proc.c:465
 msgid "cannot remove parameter defaults from existing function"
 msgstr ""
 "ne peut pas supprimer les valeurs par défaut des paramètres de la\n"
 "fonction existante"
 
-#: catalog/pg_proc.c:490
+#: catalog/pg_proc.c:491
 msgid "cannot change data type of existing parameter default value"
 msgstr ""
 "ne peut pas modifier le type de données d'un paramètre avec une valeur\n"
 "par défaut"
 
-#: catalog/pg_proc.c:502
+#: catalog/pg_proc.c:503
 #, c-format
 msgid "function \"%s\" is an aggregate function"
 msgstr "la fonction « %s » est une fonction d'agrégat"
 
-#: catalog/pg_proc.c:507
+#: catalog/pg_proc.c:508
 #, c-format
 msgid "function \"%s\" is not an aggregate function"
 msgstr "la fonction « %s » n'est pas une fonction d'agrégat"
 
-#: catalog/pg_proc.c:515
+#: catalog/pg_proc.c:516
 #, c-format
 msgid "function \"%s\" is a window function"
 msgstr "la fonction « %s » est une fonction window"
 
-#: catalog/pg_proc.c:520
+#: catalog/pg_proc.c:521
 #, c-format
 msgid "function \"%s\" is not a window function"
 msgstr "la fonction « %s » n'est pas une fonction window"
 
-#: catalog/pg_proc.c:688
+#: catalog/pg_proc.c:695
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "il n'existe pas de fonction intégrée nommée « %s »"
 
-#: catalog/pg_proc.c:780
+#: catalog/pg_proc.c:787
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "les fonctions SQL ne peuvent pas renvoyer un type %s"
 
-#: catalog/pg_proc.c:795
+#: catalog/pg_proc.c:802
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "les fonctions SQL ne peuvent avoir d'arguments du type %s"
 
-#: catalog/pg_proc.c:861
-#: executor/functions.c:936
+#: catalog/pg_proc.c:888
+#: executor/functions.c:1162
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "Fonction SQL « %s »"
 
-#: catalog/pg_shdepend.c:678
+#: catalog/pg_shdepend.c:680
 #, c-format
 msgid ""
 "\n"
@@ -4056,117 +4026,101 @@ msgstr[1] ""
 "et des objets dans %d autres bases de données (voir le journal applicatif du\n"
 "serveur pour une liste)"
 
-#: catalog/pg_shdepend.c:990
+#: catalog/pg_shdepend.c:992
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "le rôle %u a été supprimé simultanément"
 
-#: catalog/pg_shdepend.c:1009
+#: catalog/pg_shdepend.c:1011
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "le tablespace %u a été supprimé simultanément"
 
-#: catalog/pg_shdepend.c:1024
+#: catalog/pg_shdepend.c:1026
 #, c-format
 msgid "database %u was concurrently dropped"
 msgstr "la base de données %u a été supprimé simultanément"
 
-#: catalog/pg_shdepend.c:1068
+#: catalog/pg_shdepend.c:1070
 #, c-format
 msgid "owner of %s"
 msgstr "propriétaire de %s"
 
-#: catalog/pg_shdepend.c:1070
+#: catalog/pg_shdepend.c:1072
 #, c-format
 msgid "privileges for %s"
 msgstr "droits pour « %s »"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1078
+#: catalog/pg_shdepend.c:1080
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
 msgstr[0] "%d objet dans %s"
 msgstr[1] "%d objets dans %s"
 
-#: catalog/pg_shdepend.c:1189
-#: catalog/pg_shdepend.c:1285
+#: catalog/pg_shdepend.c:1191
 #, c-format
 msgid "cannot drop objects owned by %s because they are required by the database system"
 msgstr ""
 "n'a pas pu supprimer les objets appartenant à %s car ils sont nécessaires au\n"
 "système de bases de données"
 
-#: catalog/pg_type.c:231
+#: catalog/pg_shdepend.c:1287
+#, c-format
+msgid "cannot reassign ownership of objects owned by %s because they are required by the database system"
+msgstr ""
+"ne peut pas réaffecter les objets appartenant à %s car ils sont nécessaires au\n"
+"système de bases de données"
+
+#: catalog/pg_type.c:241
 #, c-format
 msgid "invalid type internal size %d"
 msgstr "taille interne de type invalide %d"
 
-#: catalog/pg_type.c:247
-#: catalog/pg_type.c:255
-#: catalog/pg_type.c:263
-#: catalog/pg_type.c:272
+#: catalog/pg_type.c:257
+#: catalog/pg_type.c:265
+#: catalog/pg_type.c:273
+#: catalog/pg_type.c:282
 #, c-format
 msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
 msgstr "l'alignement « %c » est invalide pour le type passé par valeur de taille %d"
 
-#: catalog/pg_type.c:279
+#: catalog/pg_type.c:289
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "la taille interne %d est invalide pour le type passé par valeur"
 
-#: catalog/pg_type.c:288
-#: catalog/pg_type.c:294
+#: catalog/pg_type.c:298
+#: catalog/pg_type.c:304
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "l'alignement « %c » est invalide pour le type de longueur variable"
 
-#: catalog/pg_type.c:302
+#: catalog/pg_type.c:312
 msgid "fixed-size types must have storage PLAIN"
 msgstr "les types de taille fixe doivent avoir un stockage de base"
 
-#: catalog/pg_type.c:730
+#: catalog/pg_type.c:761
 #, c-format
 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"
 
-#: commands/view.c:139
-msgid "view must have at least one column"
-msgstr "la vue doit avoir au moins une colonne"
-
-#: commands/view.c:163
-#: commands/comment.c:580
-#: commands/tablecmds.c:206
-#: commands/tablecmds.c:2152
-#: commands/tablecmds.c:2373
-#: commands/tablecmds.c:7823
-#, c-format
-msgid "\"%s\" is not a view"
-msgstr "« %s » n'est pas une vue"
-
-#: commands/view.c:260
-#: commands/view.c:272
-msgid "cannot drop columns from view"
-msgstr "ne peut pas supprimer les colonnes d'une vue"
-
-#: commands/view.c:277
-#, 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 »"
+#: catalog/toasting.c:142
+msgid "shared tables cannot be toasted after initdb"
+msgstr ""
+"les tables partagées ne peuvent pas avoir une table TOAST après la commande\n"
+"initdb"
 
-#: commands/view.c:285
+#: catalog/pg_collation.c:75
 #, 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:441
-msgid "CREATE VIEW specifies more column names than columns"
-msgstr "CREATE VIEW spécifie plus de noms de colonnes que de colonnes"
+msgid "collation \"%s\" for encoding \"%s\" already exists"
+msgstr "le collationnement « %s » pour l'encodage « %s » existe déjà"
 
-#: commands/view.c:457
+#: catalog/pg_collation.c:89
 #, c-format
-msgid "view \"%s\" will be a temporary view"
-msgstr "la vue « %s » sera une vue temporaire"
+msgid "collation \"%s\" already exists"
+msgstr "le collationnement « %s » existe déjà"
 
 #: commands/aggregatecmds.c:103
 #, c-format
@@ -4200,51 +4154,66 @@ msgid "aggregate %s(%s) does not exist, skipping"
 msgstr "L'agrégat %s(%s) n'existe pas, poursuite du traitement"
 
 #: commands/aggregatecmds.c:292
-#: commands/functioncmds.c:1119
+#: commands/functioncmds.c:1122
 #, c-format
 msgid "function %s already exists in schema \"%s\""
 msgstr "la fonction %s existe déjà dans le schéma « %s »"
 
-#: commands/analyze.c:166
+#: commands/alter.c:423
+#, c-format
+msgid "must be superuser to set schema of %s"
+msgstr "doit être super-utilisateur pour configurer le schéma de %s"
+
+#: commands/alter.c:451
+#, c-format
+msgid "%s already exists in schema \"%s\""
+msgstr "%s existe déjà dans le schéma « %s »"
+
+#: commands/analyze.c:153
+#, c-format
+msgid "skipping analyze of \"%s\" --- lock not available"
+msgstr "ignore l'analyse de « %s » --- verrou non disponible"
+
+#: commands/analyze.c:170
 #, c-format
 msgid "skipping \"%s\" --- only superuser can analyze it"
 msgstr "ignore « %s » --- seul le super-utilisateur peut l'analyser"
 
-#: commands/analyze.c:170
+#: commands/analyze.c:174
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
 msgstr ""
 "ignore « %s » --- seul le super-utilisateur ou le propriétaire de la base de\n"
 "données peut l'analyser"
 
-#: commands/analyze.c:174
+#: commands/analyze.c:178
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can analyze it"
 msgstr ""
 "ignore « %s » --- seul le propriétaire de la table ou de la base de données\n"
 "peut l'analyser"
 
-#: commands/analyze.c:190
+#: commands/analyze.c:194
 #, c-format
-msgid "skipping \"%s\" --- cannot analyze indexes, views, or special system tables"
-msgstr "ignore « %s » --- ne peut pas analyser les index, vues ou tables système"
+msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
+msgstr "ignore « %s » --- ne peut pas analyser les objets autres que les tables et les tables système"
 
-#: commands/analyze.c:283
+#: commands/analyze.c:285
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analyse l'arbre d'héritage « %s.%s »"
 
-#: commands/analyze.c:288
+#: commands/analyze.c:290
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analyse « %s.%s »"
 
-#: commands/analyze.c:609
+#: commands/analyze.c:598
 #, c-format
 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:1249
+#: commands/analyze.c:1239
 #, 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 ""
@@ -4253,8 +4222,8 @@ msgstr ""
 "  %d lignes dans l'échantillon,\n"
 "  %.0f lignes totales estimées"
 
-#: commands/analyze.c:1510
-#: executor/execQual.c:2735
+#: commands/analyze.c:1500
+#: executor/execQual.c:2734
 msgid "could not convert row type"
 msgstr "n'a pas pu convertir le type de ligne"
 
@@ -4280,617 +4249,507 @@ msgstr ""
 msgid "too many notifications in the NOTIFY queue"
 msgstr "trop de notifications dans la queue NOTIFY"
 
-#: commands/async.c:1421
+#: commands/async.c:1430
 #, c-format
 msgid "NOTIFY queue is %.0f%% full"
 msgstr "la queue NOTIFY est pleine à %.0f%%"
 
-#: commands/async.c:1423
+#: commands/async.c:1432
 #, c-format
 msgid "The server process with PID %d is among those with the oldest transactions."
 msgstr "Le processus serveur de PID %d est parmi ceux qui ont les transactions les plus anciennes."
 
-#: commands/async.c:1426
+#: commands/async.c:1435
 msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction."
 msgstr ""
 "La queue NOTIFY ne peut pas être vidée jusqu'à ce que le processus finisse\n"
 "sa transaction en cours."
 
-#: commands/cluster.c:126
-#: commands/cluster.c:364
+#: commands/cluster.c:134
+#: commands/cluster.c:372
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "ne peut pas exécuter CLUSTER sur les tables temporaires des autres sessions"
 
-#: commands/cluster.c:156
+#: commands/cluster.c:164
 #, c-format
 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:170
-#: commands/tablecmds.c:6773
+#: commands/cluster.c:178
+#: commands/tablecmds.c:7659
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "l'index « %s » pour la table « %s » n'existe pas"
 
-#: commands/cluster.c:353
+#: commands/cluster.c:361
 msgid "cannot cluster a shared catalog"
 msgstr "ne peut pas exécuter CLUSTER sur un catalogue partagé"
 
-#: commands/cluster.c:368
+#: commands/cluster.c:376
 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:384
-#, c-format
-msgid "clustering \"%s.%s\""
-msgstr "exécution de CLUSTER sur « %s.%s »"
-
-#: commands/cluster.c:389
-#: commands/vacuumlazy.c:320
-#, c-format
-msgid "vacuuming \"%s.%s\""
-msgstr "exécution du VACUUM sur « %s.%s »"
-
-#: commands/cluster.c:421
+#: commands/cluster.c:426
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "« %s » n'est pas un index de la table « %s »"
 
-#: commands/cluster.c:429
+#: commands/cluster.c:434
 #, c-format
 msgid "cannot cluster on index \"%s\" because access method does not support clustering"
 msgstr ""
 "ne peut pas exécuter CLUSTER sur l'index « %s » car la méthode d'accès de\n"
 "l'index ne gère pas cette commande"
 
-#: commands/cluster.c:441
+#: commands/cluster.c:446
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "ne peut pas exécuter CLUSTER sur l'index partiel « %s »"
 
-#: commands/cluster.c:461
-#, c-format
-msgid "cannot cluster on index \"%s\" because access method does not handle null values"
-msgstr ""
-"ne peut pas créer un cluster sur l'index « %s » car la méthode d'accès de\n"
-"l'index ne gère pas les valeurs NULL"
-
-#: commands/cluster.c:464
-#, c-format
-msgid "You might be able to work around this by marking column \"%s\" NOT NULL, or use ALTER TABLE ... SET WITHOUT CLUSTER to remove the cluster specification from the table."
-msgstr ""
-"Vous pourriez contourner ceci en marquant la colonne « %s » avec la\n"
-"contrainte NOT NULL ou en utilisant ALTER TABLE ... SET WITHOUT CLUSTER pour\n"
-"supprimer la spécification CLUSTER de la table."
-
-#: commands/cluster.c:466
-#, c-format
-msgid "You might be able to work around this by marking column \"%s\" NOT NULL."
-msgstr "Vous pouvez contourner ceci en marquant la colonne « %s » comme NOT NULL."
-
-#: commands/cluster.c:477
-#, c-format
-msgid "cannot cluster on expressional index \"%s\" because its index access method does not handle null values"
-msgstr ""
-"ne peut pas exécuter CLUSTER sur l'index à expression « %s » car sa méthode\n"
-"d'accès ne gère pas les valeurs NULL"
-
-#: commands/cluster.c:492
+#: commands/cluster.c:460
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "ne peut pas exécuter la commande CLUSTER sur l'index invalide « %s »"
 
-#: commands/comment.c:642
-#, c-format
-msgid "\"%s\" is not a table, view, or composite type"
-msgstr "« %s » n'est pas une table, une vue ou un type composite"
-
-#: commands/comment.c:681
-msgid "database name cannot be qualified"
-msgstr "le nom de la base de donnée ne peut être qualifié"
-
-#: commands/comment.c:729
-msgid "tablespace name cannot be qualified"
-msgstr "le nom du tablespace ne peut pas être qualifié"
-
-#: commands/comment.c:766
-msgid "role name cannot be qualified"
-msgstr "le nom du rôle ne peut pas être qualifié"
-
-#: commands/comment.c:775
-#, c-format
-msgid "must be member of role \"%s\" to comment upon it"
-msgstr "doit être un membre du rôle « %s » pour le commenter"
-
-#: commands/comment.c:799
-#: commands/schemacmds.c:178
-msgid "schema name cannot be qualified"
-msgstr "le nom du schéma ne peut pas être qualifié"
-
-#: commands/comment.c:874
-#, c-format
-msgid "rule \"%s\" does not exist"
-msgstr "la règle « %s » n'existe pas"
-
-#: commands/comment.c:882
-#, c-format
-msgid "there are multiple rules named \"%s\""
-msgstr "il existe de nombreuses règles nommées « %s »"
-
-#: commands/comment.c:883
-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."
-
-#: commands/comment.c:910
-#: rewrite/rewriteDefine.c:687
-#: rewrite/rewriteDefine.c:749
-#: rewrite/rewriteRemove.c:62
+#: commands/cluster.c:879
 #, c-format
-msgid "rule \"%s\" for relation \"%s\" does not exist"
-msgstr "la règle « %s » de la relation « %s » n'existe pas"
-
-#: commands/comment.c:1105
-#: commands/trigger.c:994
-#: commands/trigger.c:1194
-#: commands/trigger.c:1305
-#, c-format
-msgid "trigger \"%s\" for table \"%s\" does not exist"
-msgstr "le trigger « %s » de la table « %s » n'existe pas"
+msgid "clustering \"%s.%s\" using index scan on \"%s\""
+msgstr "cluster sur « %s.%s » en utilisant un parcours d'index sur « %s »"
 
-#: commands/comment.c:1183
-#: commands/conversioncmds.c:153
-#: commands/conversioncmds.c:209
-#: commands/conversioncmds.c:262
+#: commands/cluster.c:885
 #, c-format
-msgid "conversion \"%s\" does not exist"
-msgstr "la conversion « %s » n'existe pas"
+msgid "clustering \"%s.%s\" using sequential scan and sort"
+msgstr "cluster sur « %s.%s » en utilisant un parcours séquentiel puis un tri"
 
-#: commands/comment.c:1213
-msgid "language name cannot be qualified"
-msgstr "le nom du langage ne peut pas être qualifié"
-
-#: commands/comment.c:1226
-msgid "must be superuser to comment on procedural language"
-msgstr ""
-"doit être super-utilisateur pour ajouter un commentaire sur un langage de\n"
-"procédures"
-
-#: commands/comment.c:1261
-#: commands/comment.c:1342
-#: commands/indexcmds.c:295
-#: commands/opclasscmds.c:281
-#: commands/opclasscmds.c:669
-#: commands/opclasscmds.c:769
-#: commands/opclasscmds.c:1495
-#: commands/opclasscmds.c:1556
-#: commands/opclasscmds.c:1718
-#: commands/opclasscmds.c:1812
-#: commands/opclasscmds.c:1903
-#: commands/opclasscmds.c:2046
+#: commands/cluster.c:890
+#: commands/vacuumlazy.c:315
 #, c-format
-msgid "access method \"%s\" does not exist"
-msgstr "la méthode d'accès « %s » n'existe pas"
+msgid "vacuuming \"%s.%s\""
+msgstr "exécution du VACUUM sur « %s.%s »"
 
-#: commands/comment.c:1289
-#: commands/comment.c:1297
-#: commands/indexcmds.c:1149
-#: commands/indexcmds.c:1157
-#: commands/opclasscmds.c:1507
-#: commands/opclasscmds.c:1511
-#: commands/opclasscmds.c:1739
-#: commands/opclasscmds.c:1750
-#: commands/opclasscmds.c:1926
-#: commands/opclasscmds.c:1937
+#: commands/cluster.c:1050
 #, 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 »"
+msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
+msgstr ""
+"« %s » : %.0f versions de ligne supprimables, %.0f non supprimables\n"
+"parmi %u pages"
 
-#: commands/comment.c:1370
-#: commands/comment.c:1378
-#: commands/opclasscmds.c:343
-#: commands/opclasscmds.c:789
-#: commands/opclasscmds.c:1568
-#: commands/opclasscmds.c:1572
-#: commands/opclasscmds.c:1833
-#: commands/opclasscmds.c:1844
-#: commands/opclasscmds.c:2069
-#: commands/opclasscmds.c:2080
+#: commands/cluster.c:1054
 #, c-format
-msgid "operator family \"%s\" does not exist for access method \"%s\""
-msgstr "la famille d'opérateur « %s » n'existe pas pour la méthode d'accès « %s »"
+msgid ""
+"%.0f dead row versions cannot be removed yet.\n"
+"%s."
+msgstr ""
+"%.0f versions de lignes ne peuvent pas encore être supprimées.\n"
+"%s."
 
-#: commands/comment.c:1469
-#: commands/functioncmds.c:1777
+#: commands/comment.c:60
+#: commands/dbcommands.c:764
+#: commands/dbcommands.c:909
+#: commands/dbcommands.c:1008
+#: commands/dbcommands.c:1181
+#: commands/dbcommands.c:1366
+#: commands/dbcommands.c:1451
+#: commands/dbcommands.c:1854
+#: utils/init/postinit.c:707
+#: utils/init/postinit.c:775
+#: utils/init/postinit.c:792
 #, c-format
-msgid "cast from type %s to type %s does not exist"
-msgstr "la conversion du type %s vers le type %s n'existe pas"
+msgid "database \"%s\" does not exist"
+msgstr "la base de données « %s » n'existe pas"
 
-#: commands/comment.c:1481
-#: commands/functioncmds.c:1522
-#: commands/functioncmds.c:1794
+#: commands/comment.c:97
+#: commands/seclabel.c:113
 #, c-format
-msgid "must be owner of type %s or type %s"
-msgstr "doit être le propriétaire du type %s ou du type %s"
-
-#: commands/comment.c:1501
-msgid "must be superuser to comment on text search parser"
-msgstr ""
-"doit être super-utilisateur pour ajouter un commentaire sur l'analyseur de\n"
-"recherche plein texte"
-
-#: commands/comment.c:1530
-msgid "must be superuser to comment on text search template"
-msgstr ""
-"doit être super-utilisateur pour ajouter un commentaire sur un modèle de\n"
-"recherche plein texte"
+msgid "\"%s\" is not a table, view, composite type, or foreign table"
+msgstr "« %s » n'est ni une table, ni une vue, ni un type composite, ni une table distante"
 
 #: commands/constraint.c:59
-#: utils/adt/ri_triggers.c:2999
+#: utils/adt/ri_triggers.c:3082
 #, 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:66
-#: utils/adt/ri_triggers.c:3008
+#: utils/adt/ri_triggers.c:3091
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr "la fonction « %s » doit être exécutée pour l'instruction AFTER ROW"
 
 #: commands/constraint.c:80
-#: utils/adt/ri_triggers.c:3029
+#: utils/adt/ri_triggers.c:3112
 #, c-format
 msgid "function \"%s\" must be fired for INSERT or UPDATE"
 msgstr "la fonction « %s » doit être exécutée pour les instructions INSERT ou UPDATE"
 
-#: commands/conversioncmds.c:69
+#: commands/conversioncmds.c:71
 #, c-format
 msgid "source encoding \"%s\" does not exist"
 msgstr "le codage source « %s » n'existe pas"
 
-#: commands/conversioncmds.c:76
+#: commands/conversioncmds.c:78
 #, c-format
 msgid "destination encoding \"%s\" does not exist"
 msgstr "l'encodage de destination « %s » n'existe pas"
 
-#: commands/conversioncmds.c:90
+#: commands/conversioncmds.c:92
 #, c-format
 msgid "encoding conversion function %s must return type \"void\""
 msgstr "la fonction de conversion d'encodage %s doit renvoyer le type « void »"
 
-#: commands/conversioncmds.c:159
+#: commands/conversioncmds.c:152
 #, c-format
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "la conversion « %s » n'existe pas, poursuite du traitement"
 
-#: commands/conversioncmds.c:224
+#: commands/conversioncmds.c:211
 #, c-format
 msgid "conversion \"%s\" already exists in schema \"%s\""
 msgstr "la conversion « %s » existe déjà dans le schéma « %s »"
 
-#: commands/copy.c:312
-#: commands/copy.c:324
-#: commands/copy.c:358
-#: commands/copy.c:368
+#: commands/copy.c:339
+#: commands/copy.c:351
+#: commands/copy.c:385
+#: commands/copy.c:395
 msgid "COPY BINARY is not supported to stdout or from stdin"
 msgstr "COPY BINARY n'est pas supporté vers stdout ou à partir de stdin"
 
-#: commands/copy.c:446
+#: commands/copy.c:473
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "n'a pas pu écrire dans le fichier COPY : %m"
 
-#: commands/copy.c:458
+#: commands/copy.c:485
 msgid "connection lost during COPY to stdout"
 msgstr "connexion perdue lors de l'opération COPY vers stdout"
 
-#: commands/copy.c:499
+#: commands/copy.c:526
 #, c-format
 msgid "could not read from COPY file: %m"
 msgstr "n'a pas pu lire le fichier COPY : %m"
 
-#: commands/copy.c:515
-#: commands/copy.c:534
-#: commands/copy.c:538
-#: tcop/fastpath.c:291
-#: tcop/postgres.c:348
-#: tcop/postgres.c:371
+#: commands/copy.c:542
+#: commands/copy.c:561
+#: commands/copy.c:565
+#: tcop/fastpath.c:290
+#: tcop/postgres.c:349
+#: tcop/postgres.c:372
 msgid "unexpected EOF on client connection"
 msgstr "fin de fichier (EOF) inattendue de la connexion du client"
 
-#: commands/copy.c:550
+#: commands/copy.c:577
 #, c-format
 msgid "COPY from stdin failed: %s"
 msgstr "échec de la commande COPY à partir de stdin : %s"
 
-#: commands/copy.c:566
+#: commands/copy.c:593
 #, c-format
 msgid "unexpected message type 0x%02X during COPY from stdin"
 msgstr "type 0x%02X du message, inattendu, lors d'une opération COPY à partir de stdin"
 
-#: commands/copy.c:762
+#: commands/copy.c:745
+msgid "must be superuser to COPY to or from a file"
+msgstr "doit être super-utilisateur pour utiliser COPY à partir ou vers un fichier"
+
+#: commands/copy.c:746
+msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
+msgstr ""
+"Tout le monde peut utiliser COPY vers stdout ou à partir de stdin.\n"
+"La commande \\copy de psql fonctionne aussi pour tout le monde."
+
+#: commands/copy.c:874
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "format COPY « %s » non reconnu"
 
-#: commands/copy.c:825
-#: commands/copy.c:839
+#: commands/copy.c:937
+#: commands/copy.c:951
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "l'argument de l'option « %s » doit être une liste de noms de colonnes"
 
-#: commands/copy.c:845
+#: commands/copy.c:964
+#, c-format
+msgid "argument to option \"%s\" must be a valid encoding name"
+msgstr "l'argument de l'option « %s » doit être un nom d'encodage valide"
+
+#: commands/copy.c:970
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "option « %s » non reconnu"
 
-#: commands/copy.c:856
+#: commands/copy.c:981
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "ne peut pas spécifier le délimiteur (DELIMITER) en mode binaire (BINARY)"
 
-#: commands/copy.c:861
+#: commands/copy.c:986
 msgid "cannot specify NULL in BINARY mode"
 msgstr "ne peut pas spécifier NULL en mode binaire (BINARY)"
 
-#: commands/copy.c:883
+#: commands/copy.c:1008
 msgid "COPY delimiter must be a single one-byte character"
 msgstr "le délimiteur COPY doit être sur un seul caractère sur un octet"
 
-#: commands/copy.c:890
+#: commands/copy.c:1015
 msgid "COPY delimiter cannot be newline or carriage return"
 msgstr "le délimiteur de COPY ne peut pas être un retour à la ligne ou un retour chariot"
 
-#: commands/copy.c:896
+#: commands/copy.c:1021
 msgid "COPY null representation cannot use newline or carriage return"
 msgstr ""
 "la représentation du NULL dans COPY ne peut pas utiliser le caractère du\n"
 "retour à la ligne ou du retour chariot"
 
-#: commands/copy.c:913
+#: commands/copy.c:1038
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "le délimiteur de COPY ne peut pas être « %s »"
 
-#: commands/copy.c:919
+#: commands/copy.c:1044
 msgid "COPY HEADER available only in CSV mode"
 msgstr "COPY HEADER disponible uniquement en mode CSV"
 
-#: commands/copy.c:925
+#: commands/copy.c:1050
 msgid "COPY quote available only in CSV mode"
 msgstr "le guillemet COPY n'est disponible que dans le mode CSV"
 
-#: commands/copy.c:930
+#: commands/copy.c:1055
 msgid "COPY quote must be a single one-byte character"
 msgstr "le guillemet COPY doit être sur un seul caractère sur un octet"
 
-#: commands/copy.c:935
+#: commands/copy.c:1060
 msgid "COPY delimiter and quote must be different"
 msgstr "le délimiteur de COPY ne doit pas être un guillemet"
 
-#: commands/copy.c:941
+#: commands/copy.c:1066
 msgid "COPY escape available only in CSV mode"
 msgstr "le caractère d'échappement COPY n'est disponible que dans le mode CSV"
 
-#: commands/copy.c:946
+#: commands/copy.c:1071
 msgid "COPY escape must be a single one-byte character"
 msgstr "le caractère d'échappement COPY doit être sur un seul caractère sur un octet"
 
-#: commands/copy.c:952
+#: commands/copy.c:1077
 msgid "COPY force quote available only in CSV mode"
 msgstr "le guillemet forcé COPY n'est disponible que dans le mode CSV"
 
-#: commands/copy.c:956
+#: commands/copy.c:1081
 msgid "COPY force quote only available using COPY TO"
 msgstr "le guillemet forcé COPY n'est disponible qu'en utilisant COPY TO"
 
-#: commands/copy.c:962
+#: commands/copy.c:1087
 msgid "COPY force not null available only in CSV mode"
 msgstr "« COPY force not null » n'est disponible que dans la version CSV"
 
-#: commands/copy.c:966
+#: commands/copy.c:1091
 msgid "COPY force not null only available using COPY FROM"
 msgstr "« COPY force not null » n'est disponible qu'en utilisant COPY FROM"
 
-#: commands/copy.c:972
+#: commands/copy.c:1097
 msgid "COPY delimiter must not appear in the NULL specification"
 msgstr "le délimiteur COPY ne doit pas apparaître dans la spécification de NULL"
 
-#: commands/copy.c:979
+#: commands/copy.c:1104
 msgid "CSV quote character must not appear in the NULL specification"
 msgstr "le caractère guillemet de CSV ne doit pas apparaître dans la spécification de NULL"
 
-#: commands/copy.c:985
-msgid "must be superuser to COPY to or from a file"
-msgstr "doit être super-utilisateur pour utiliser COPY à partir ou vers un fichier"
-
-#: commands/copy.c:986
-msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
-msgstr ""
-"Tout le monde peut utiliser COPY vers stdout ou à partir de stdin.\n"
-"La commande \\copy de psql fonctionne aussi pour tout le monde."
-
-#: commands/copy.c:1032
+#: commands/copy.c:1166
 #, c-format
 msgid "table \"%s\" does not have OIDs"
 msgstr "la table « %s » n'a pas d'OID"
 
-#: commands/copy.c:1049
+#: commands/copy.c:1183
 msgid "COPY (SELECT) WITH OIDS is not supported"
 msgstr "COPY (SELECT) WITH OIDS n'est pas supporté"
 
-#: commands/copy.c:1076
+#: commands/copy.c:1210
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) n'est pas supporté"
 
-#: commands/copy.c:1135
+#: commands/copy.c:1270
 #, c-format
 msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
 msgstr "la colonne « %s » FORCE QUOTE n'est pas référencée par COPY"
 
-#: commands/copy.c:1157
+#: commands/copy.c:1292
 #, c-format
 msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
 msgstr "la colonne « %s » FORCE NOT NULL n'est pas référencée par COPY"
 
-#: commands/copy.c:1235
+#: commands/copy.c:1356
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "ne peut pas copier à partir de la vue « %s »"
 
-#: commands/copy.c:1237
+#: commands/copy.c:1358
+#: commands/copy.c:1364
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Tentez la variante COPY (SELECT ...) TO."
 
-#: commands/copy.c:1241
+#: commands/copy.c:1362
+#, c-format
+msgid "cannot copy from foreign table \"%s\""
+msgstr "ne peut pas copier à partir de la table distante « %s »"
+
+#: commands/copy.c:1368
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "ne peut pas copier à partir de la séquence « %s »"
 
-#: commands/copy.c:1246
+#: commands/copy.c:1373
 #, c-format
 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:1270
+#: commands/copy.c:1397
 msgid "relative path not allowed for COPY to file"
 msgstr "un chemin relatif n'est pas autorisé à utiliser COPY vers un fichier"
 
-#: commands/copy.c:1279
+#: commands/copy.c:1407
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » en écriture : %m"
 
-#: commands/copy.c:1286
-#: commands/copy.c:1781
+#: commands/copy.c:1414
+#: commands/copy.c:2200
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "« %s » est un répertoire"
 
-#: commands/copy.c:1572
+#: commands/copy.c:1738
 #, c-format
 msgid "COPY %s, line %d, column %s"
 msgstr "COPY %s, ligne %d, colonne %s"
 
-#: commands/copy.c:1576
-#: commands/copy.c:1621
+#: commands/copy.c:1742
+#: commands/copy.c:1787
 #, c-format
 msgid "COPY %s, line %d"
 msgstr "COPY %s, ligne %d"
 
-#: commands/copy.c:1587
+#: commands/copy.c:1753
 #, c-format
 msgid "COPY %s, line %d, column %s: \"%s\""
 msgstr "COPY %s, ligne %d, colonne %s : « %s »"
 
-#: commands/copy.c:1595
+#: commands/copy.c:1761
 #, c-format
 msgid "COPY %s, line %d, column %s: null input"
 msgstr "COPY %s, ligne %d, colonne %s : NULL en entrée"
 
-#: commands/copy.c:1607
+#: commands/copy.c:1773
 #, c-format
 msgid "COPY %s, line %d: \"%s\""
 msgstr "COPY %s, ligne %d : « %s »"
 
-#: commands/copy.c:1709
+#: commands/copy.c:1857
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "ne peut pas copier vers la vue « %s »"
 
-#: commands/copy.c:1714
+#: commands/copy.c:1862
+#, c-format
+msgid "cannot copy to foreign table \"%s\""
+msgstr "ne peut pas copier vers la table distante « %s »"
+
+#: commands/copy.c:1867
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "ne peut pas copier vers la séquence « %s »"
 
-#: commands/copy.c:1719
+#: commands/copy.c:1872
 #, 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:1774
-#: utils/adt/genfile.c:106
+#: commands/copy.c:2193
+#: utils/adt/genfile.c:122
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "n'a pas pu ouvrir le fichier « %s » pour une lecture : %m"
 
-#: commands/copy.c:1887
+#: commands/copy.c:2219
 msgid "COPY file signature not recognized"
 msgstr "la signature du fichier COPY n'est pas reconnue"
 
-#: commands/copy.c:1892
+#: commands/copy.c:2224
 msgid "invalid COPY file header (missing flags)"
 msgstr "en-tête du fichier COPY invalide (options manquantes)"
 
-#: commands/copy.c:1898
+#: commands/copy.c:2230
 msgid "unrecognized critical flags in COPY file header"
 msgstr "options critiques non reconnues dans l'en-tête du fichier COPY"
 
-#: commands/copy.c:1904
+#: commands/copy.c:2236
 msgid "invalid COPY file header (missing length)"
 msgstr "en-tête du fichier COPY invalide (longueur manquante)"
 
-#: commands/copy.c:1911
+#: commands/copy.c:2243
 msgid "invalid COPY file header (wrong length)"
 msgstr "en-tête du fichier COPY invalide (mauvaise longueur)"
 
-#: commands/copy.c:2002
+#: commands/copy.c:2376
+#: commands/copy.c:3058
+#: commands/copy.c:3275
+msgid "extra data after last expected column"
+msgstr "données supplémentaires après la dernière colonne attendue"
+
+#: commands/copy.c:2386
 msgid "missing data for OID column"
 msgstr "données manquantes pour la colonne OID"
 
-#: commands/copy.c:2008
+#: commands/copy.c:2392
 msgid "null OID in COPY data"
 msgstr "OID NULL dans les données du COPY"
 
-#: commands/copy.c:2018
-#: commands/copy.c:2090
+#: commands/copy.c:2402
+#: commands/copy.c:2501
 msgid "invalid OID in COPY data"
 msgstr "OID invalide dans les données du COPY"
 
-#: commands/copy.c:2033
+#: commands/copy.c:2417
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "données manquantes pour la colonne « %s »"
 
-#: commands/copy.c:2074
+#: commands/copy.c:2476
+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:2483
 #, 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:2217
-#: utils/misc/guc.c:7101
-#: utils/init/miscinit.c:1014
-#, c-format
-msgid "could not read from file \"%s\": %m"
-msgstr "n'a pas pu lire à partir du fichier « %s » : %m"
-
-#: commands/copy.c:2494
-#: commands/copy.c:2511
+#: commands/copy.c:2822
+#: commands/copy.c:2839
 msgid "literal carriage return found in data"
 msgstr "retour chariot trouvé dans les données"
 
-#: commands/copy.c:2495
-#: commands/copy.c:2512
+#: commands/copy.c:2823
+#: commands/copy.c:2840
 msgid "unquoted carriage return found in data"
 msgstr "retour chariot sans guillemet trouvé dans les données"
 
-#: commands/copy.c:2497
-#: commands/copy.c:2514
+#: commands/copy.c:2825
+#: commands/copy.c:2842
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Utilisez « \\r » pour représenter un retour chariot."
 
-#: commands/copy.c:2498
-#: commands/copy.c:2515
+#: commands/copy.c:2826
+#: commands/copy.c:2843
 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:2527
+#: commands/copy.c:2855
 msgid "literal newline found in data"
 msgstr "retour à la ligne trouvé dans les données"
 
-#: commands/copy.c:2528
+#: commands/copy.c:2856
 msgid "unquoted newline found in data"
 msgstr "retour à la ligne trouvé dans les données"
 
-#: commands/copy.c:2530
+#: commands/copy.c:2858
 msgid ""
 "Use \"\\n"
 "\" to represent newline."
@@ -4898,59 +4757,52 @@ msgstr ""
 "Utilisez « \\n"
 " » pour représenter un retour à la ligne."
 
-#: commands/copy.c:2531
+#: commands/copy.c:2859
 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:2577
-#: commands/copy.c:2613
+#: commands/copy.c:2905
+#: commands/copy.c:2941
 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:2586
-#: commands/copy.c:2602
+#: commands/copy.c:2914
+#: commands/copy.c:2930
 msgid "end-of-copy marker corrupt"
 msgstr "marqueur fin-de-copie corrompu"
 
-#: commands/copy.c:2729
-#: commands/copy.c:2764
-#: commands/copy.c:2944
-#: commands/copy.c:2979
-msgid "extra data after last expected column"
-msgstr "données supplémentaires après la dernière colonne attendue"
-
-#: commands/copy.c:3026
+#: commands/copy.c:3359
 msgid "unterminated CSV quoted field"
 msgstr "champ CSV entre guillemets non terminé"
 
-#: commands/copy.c:3103
-#: commands/copy.c:3122
+#: commands/copy.c:3436
+#: commands/copy.c:3455
 msgid "unexpected EOF in COPY data"
 msgstr "fin de fichier (EOF) inattendu dans les données du COPY"
 
-#: commands/copy.c:3112
+#: commands/copy.c:3445
 msgid "invalid field size"
 msgstr "taille du champ invalide"
 
-#: commands/copy.c:3135
+#: commands/copy.c:3468
 msgid "incorrect binary data format"
 msgstr "format de données binaires incorrect"
 
-#: commands/copy.c:3446
-#: commands/indexcmds.c:908
-#: commands/tablecmds.c:1260
-#: commands/tablecmds.c:2065
-#: parser/parse_expr.c:758
-#: utils/adt/tsvector_op.c:1347
+#: commands/copy.c:3779
+#: commands/indexcmds.c:846
+#: commands/tablecmds.c:1293
+#: commands/tablecmds.c:2148
+#: parser/parse_expr.c:764
+#: utils/adt/tsvector_op.c:1393
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "la colonne « %s » n'existe pas"
 
-#: commands/copy.c:3453
-#: commands/tablecmds.c:1286
-#: commands/trigger.c:536
-#: parser/parse_target.c:824
-#: parser/parse_target.c:835
+#: commands/copy.c:3786
+#: commands/tablecmds.c:1319
+#: commands/trigger.c:592
+#: parser/parse_target.c:911
+#: parser/parse_target.c:922
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "la colonne « %s » est spécifiée plus d'une fois"
@@ -4977,8 +4829,8 @@ msgstr "%s n'est pas un nom d'encodage valide"
 
 #: commands/dbcommands.c:253
 #: commands/dbcommands.c:1347
-#: commands/user.c:255
-#: commands/user.c:562
+#: commands/user.c:267
+#: commands/user.c:606
 #, c-format
 msgid "invalid connection limit: %d"
 msgstr "limite de connexion invalide : %d"
@@ -5008,118 +4860,118 @@ msgstr "encodage serveur %d invalide"
 msgid "invalid locale name %s"
 msgstr "nom de locale « %s » invalide"
 
-#: commands/dbcommands.c:369
-#: commands/dbcommands.c:384
-#, c-format
-msgid "encoding %s does not match locale %s"
-msgstr "l'encodage %s ne correspond pas à la locale %s"
-
-#: commands/dbcommands.c:372
-#, c-format
-msgid "The chosen LC_CTYPE setting requires encoding %s."
-msgstr "Le paramètre LC_CTYPE choisi nécessite l'encodage %s."
-
-#: commands/dbcommands.c:387
-#, c-format
-msgid "The chosen LC_COLLATE setting requires encoding %s."
-msgstr "Le paramètre LC_COLLATE choisi nécessite l'encodage %s."
-
-#: commands/dbcommands.c:405
+#: commands/dbcommands.c:352
 #, c-format
 msgid "new encoding (%s) is incompatible with the encoding of the template database (%s)"
 msgstr ""
 "le nouvel encodage (%sà est incompatible avec l'encodage de la base de\n"
 "données modèle (%s)"
 
-#: commands/dbcommands.c:408
+#: commands/dbcommands.c:355
 msgid "Use the same encoding as in the template database, or use template0 as template."
 msgstr ""
 "Utilisez le même encodage que celui de la base de données modèle,\n"
 "ou utilisez template0 comme modèle."
 
-#: commands/dbcommands.c:413
+#: commands/dbcommands.c:360
 #, c-format
 msgid "new collation (%s) is incompatible with the collation of the template database (%s)"
 msgstr ""
 "le nouveau tri (%s) est incompatible avec le tri de la base de\n"
 "données modèle (%s)"
 
-#: commands/dbcommands.c:415
+#: commands/dbcommands.c:362
 msgid "Use the same collation as in the template database, or use template0 as template."
 msgstr ""
 "Utilisez le même tri que celui de la base de données modèle,\n"
 "ou utilisez template0 comme modèle."
 
-#: commands/dbcommands.c:420
+#: commands/dbcommands.c:367
 #, c-format
 msgid "new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database (%s)"
 msgstr ""
 "le nouveau LC_CTYPE (%s) est incompatible avec le LC_CTYPE de la base de\n"
 "données modèle (%s)"
 
-#: commands/dbcommands.c:422
+#: commands/dbcommands.c:369
 msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
 msgstr ""
 "Utilisez le même LC_CTYPE que celui de la base de données modèle,\n"
 "ou utilisez template0 comme modèle."
 
-#: commands/dbcommands.c:449
+#: commands/dbcommands.c:391
 #: commands/dbcommands.c:1054
 msgid "pg_global cannot be used as default tablespace"
 msgstr "pg_global ne peut pas être utilisé comme tablespace par défaut"
 
-#: commands/dbcommands.c:475
+#: commands/dbcommands.c:417
 #, c-format
 msgid "cannot assign new default tablespace \"%s\""
 msgstr "ne peut pas affecter un nouveau tablespace par défaut « %s »"
 
-#: commands/dbcommands.c:477
+#: commands/dbcommands.c:419
 #, c-format
 msgid "There is a conflict because database \"%s\" already has some tables in this tablespace."
 msgstr ""
 "Il existe un conflit car la base de données « %s » a déjà quelques tables\n"
 "dans son tablespace."
 
-#: commands/dbcommands.c:497
-#: commands/dbcommands.c:925
+#: commands/dbcommands.c:439
+#: commands/dbcommands.c:929
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "la base de données « %s » existe déjà"
 
-#: commands/dbcommands.c:511
+#: commands/dbcommands.c:453
 #, c-format
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "la base de données source « %s » est accédée par d'autres utilisateurs"
 
-#: commands/dbcommands.c:767
+#: commands/dbcommands.c:695
+#: commands/dbcommands.c:710
+#, c-format
+msgid "encoding %s does not match locale %s"
+msgstr "l'encodage %s ne correspond pas à la locale %s"
+
+#: commands/dbcommands.c:698
+#, c-format
+msgid "The chosen LC_CTYPE setting requires encoding %s."
+msgstr "Le paramètre LC_CTYPE choisi nécessite l'encodage %s."
+
+#: commands/dbcommands.c:713
+#, c-format
+msgid "The chosen LC_COLLATE setting requires encoding %s."
+msgstr "Le paramètre LC_COLLATE choisi nécessite l'encodage %s."
+
+#: commands/dbcommands.c:771
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "la base de données « %s » n'existe pas, poursuite du traitement"
 
-#: commands/dbcommands.c:788
+#: commands/dbcommands.c:792
 msgid "cannot drop a template database"
 msgstr "ne peut pas supprimer une base de données modèle"
 
-#: commands/dbcommands.c:794
+#: commands/dbcommands.c:798
 msgid "cannot drop the currently open database"
 msgstr "ne peut pas supprimer la base de données actuellement ouverte"
 
-#: commands/dbcommands.c:805
-#: commands/dbcommands.c:947
+#: commands/dbcommands.c:809
+#: commands/dbcommands.c:951
 #: commands/dbcommands.c:1076
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "la base de données « %s » est en cours d'utilisation par d'autres utilisateurs"
 
-#: commands/dbcommands.c:916
+#: commands/dbcommands.c:920
 msgid "permission denied to rename database"
 msgstr "droit refusé pour le renommage de la base de données"
 
-#: commands/dbcommands.c:936
+#: commands/dbcommands.c:940
 msgid "current database cannot be renamed"
 msgstr "la base de données actuelle ne peut pas être renommée"
 
-#: commands/dbcommands.c:1028
+#: commands/dbcommands.c:1032
 msgid "cannot change the tablespace of the currently open database"
 msgstr "ne peut pas modifier le tablespace de la base de données actuellement ouverte"
 
@@ -5137,31 +4989,31 @@ msgstr ""
 "de données avant d'utiliser cette commande."
 
 #: commands/dbcommands.c:1246
-#: commands/dbcommands.c:1719
-#: commands/dbcommands.c:1913
-#: commands/dbcommands.c:1961
-#: commands/tablespace.c:579
+#: commands/dbcommands.c:1714
+#: commands/dbcommands.c:1915
+#: commands/dbcommands.c:1963
+#: commands/tablespace.c:584
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr ""
 "certains fichiers inutiles pourraient se trouver dans l'ancien répertoire\n"
 "de la base de données « %s »"
 
-#: commands/dbcommands.c:1495
+#: commands/dbcommands.c:1490
 msgid "permission denied to change owner of database"
 msgstr "droit refusé pour modifier le propriétaire de la base de données"
 
-#: commands/dbcommands.c:1807
+#: commands/dbcommands.c:1802
 #, c-format
 msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
 msgstr "%d autres sessions et %d transactions préparées utilisent la base de données."
 
-#: commands/dbcommands.c:1810
+#: commands/dbcommands.c:1805
 #, c-format
 msgid "There are %d other session(s) using the database."
 msgstr "%d autres sessions utilisent la base de données."
 
-#: commands/dbcommands.c:1813
+#: commands/dbcommands.c:1808
 #, c-format
 msgid "There are %d prepared transaction(s) using the database."
 msgstr "%d transaction(s) préparée(s) utilisent la base de données"
@@ -5207,580 +5059,614 @@ msgstr "%s requiert une valeur enti
 msgid "invalid argument for %s: \"%s\""
 msgstr "argument invalide pour %s : « %s »"
 
-#: commands/explain.c:149
+#: commands/explain.c:153
 #, c-format
 msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgstr "valeur non reconnue pour l'option EXPLAIN « %s » : %s"
 
-#: commands/explain.c:155
+#: commands/explain.c:159
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "option EXPLAIN « %s » non reconnu"
 
-#: commands/explain.c:162
+#: commands/explain.c:166
 msgid "EXPLAIN option BUFFERS requires ANALYZE"
 msgstr "l'option BUFFERS d'EXPLAIN nécessite ANALYZE"
 
-#: commands/foreigncmds.c:132
-#: commands/foreigncmds.c:141
+#: commands/foreigncmds.c:135
+#: commands/foreigncmds.c:144
 #, c-format
 msgid "option \"%s\" not found"
 msgstr "option « %s » non trouvé"
 
-#: commands/foreigncmds.c:151
+#: commands/foreigncmds.c:154
 #, c-format
 msgid "option \"%s\" provided more than once"
 msgstr "option « %s » fournie plus d'une fois"
 
-#: commands/foreigncmds.c:209
-#: commands/foreigncmds.c:217
+#: commands/foreigncmds.c:222
+#: commands/foreigncmds.c:230
 #, c-format
 msgid "permission denied to change owner of foreign-data wrapper \"%s\""
 msgstr "droit refusé pour modifier le propriétaire du wrapper de données distantes « %s »"
 
-#: commands/foreigncmds.c:211
+#: commands/foreigncmds.c:224
 msgid "Must be superuser to change owner of a foreign-data wrapper."
 msgstr ""
 "Doit être super-utilisateur pour modifier le propriétaire du wrapper de\n"
 "données distantes."
 
-#: commands/foreigncmds.c:219
+#: commands/foreigncmds.c:232
 msgid "The owner of a foreign-data wrapper must be a superuser."
 msgstr "Le propriétaire du wrapper de données distantes doit être un super-utilisateur."
 
-#: commands/foreigncmds.c:228
-#: commands/foreigncmds.c:452
-#: commands/foreigncmds.c:553
-#: foreign/foreign.c:90
+#: commands/foreigncmds.c:241
+#: commands/foreigncmds.c:562
+#: commands/foreigncmds.c:713
+#: foreign/foreign.c:515
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist"
 msgstr "le wrapper de données distantes « %s » n'existe pas"
 
-#: commands/foreigncmds.c:270
-#: commands/foreigncmds.c:723
-#: commands/foreigncmds.c:813
-#: commands/foreigncmds.c:1089
-#: foreign/foreign.c:179
+#: commands/foreigncmds.c:284
+#: commands/foreigncmds.c:889
+#: commands/foreigncmds.c:980
+#: commands/foreigncmds.c:1265
+#: foreign/foreign.c:535
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "le serveur « %s » n'existe pas"
 
-#: commands/foreigncmds.c:347
+#: commands/foreigncmds.c:346
+#, c-format
+msgid "function %s must return type \"fdw_handler\""
+msgstr "la fonction %s doit renvoyer le type « fdw_handler »"
+
+#: commands/foreigncmds.c:439
 #, c-format
 msgid "permission denied to create foreign-data wrapper \"%s\""
 msgstr "droit refusé pour la création du wrapper de données distantes « %s »"
 
-#: commands/foreigncmds.c:349
+#: commands/foreigncmds.c:441
 msgid "Must be superuser to create a foreign-data wrapper."
 msgstr "Doit être super-utilisateur pour créer un wrapper de données distantes."
 
-#: commands/foreigncmds.c:360
+#: commands/foreigncmds.c:452
 #, c-format
 msgid "foreign-data wrapper \"%s\" already exists"
 msgstr "le wrapper de données distantes « %s » existe déjà"
 
-#: commands/foreigncmds.c:442
+#: commands/foreigncmds.c:552
 #, c-format
 msgid "permission denied to alter foreign-data wrapper \"%s\""
 msgstr "droit refusé pour modifier le wrapper de données distantes « %s »"
 
-#: commands/foreigncmds.c:444
+#: commands/foreigncmds.c:554
 msgid "Must be superuser to alter a foreign-data wrapper."
 msgstr "Doit être super-utilisateur pour modifier un wrapper de données distantes"
 
-#: commands/foreigncmds.c:472
+#: commands/foreigncmds.c:585
+msgid "changing the foreign-data wrapper handler can change behavior of existing foreign tables"
+msgstr ""
+"la modification du validateur de wrapper de données distantes peut modifier\n"
+"le comportement des tables distantes existantes"
+
+#: commands/foreigncmds.c:599
 msgid "changing the foreign-data wrapper validator can cause the options for dependent objects to become invalid"
 msgstr ""
 "la modification du validateur du wrapper de données distantes peut faire en\n"
 "sorte que les options des objets dépendants deviennent invalides"
 
-#: commands/foreigncmds.c:544
+#: commands/foreigncmds.c:704
 #, c-format
 msgid "permission denied to drop foreign-data wrapper \"%s\""
 msgstr "droit refusé pour supprimer le wrapper de données distantes « %s »"
 
-#: commands/foreigncmds.c:546
+#: commands/foreigncmds.c:706
 msgid "Must be superuser to drop a foreign-data wrapper."
 msgstr "Doit être super-utilisateur pour supprimer un wrapper de données distantes."
 
-#: commands/foreigncmds.c:558
+#: commands/foreigncmds.c:718
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist, skipping"
 msgstr "le wrapper de données distantes « %s » n'existe pas, poursuite du traitement"
 
-#: commands/foreigncmds.c:625
+#: commands/foreigncmds.c:785
 #, c-format
 msgid "server \"%s\" already exists"
 msgstr "le serveur « %s » existe déjà"
 
-#: commands/foreigncmds.c:817
+#: commands/foreigncmds.c:984
 #, c-format
 msgid "server \"%s\" does not exist, skipping"
 msgstr "le serveur « %s » n'existe pas, poursuite du traitement"
 
-#: commands/foreigncmds.c:920
+#: commands/foreigncmds.c:1087
 #, c-format
 msgid "user mapping \"%s\" already exists for server %s"
 msgstr "la correspondance utilisateur « %s » existe déjà dans le serveur « %s »"
 
-#: commands/foreigncmds.c:998
-#: commands/foreigncmds.c:1105
+#: commands/foreigncmds.c:1173
+#: commands/foreigncmds.c:1281
 #, 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:1092
+#: commands/foreigncmds.c:1268
 msgid "server does not exist, skipping"
 msgstr "le serveur n'existe pas, poursuite du traitement"
 
-#: commands/foreigncmds.c:1110
+#: commands/foreigncmds.c:1286
 #, 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/functioncmds.c:98
+#: commands/functioncmds.c:100
 #, c-format
 msgid "SQL function cannot return shell type %s"
 msgstr "la fonction SQL ne peut pas retourner le type shell %s"
 
-#: commands/functioncmds.c:103
+#: commands/functioncmds.c:105
 #, c-format
 msgid "return type %s is only a shell"
 msgstr "le type de retour %s est seulement un shell"
 
-#: commands/functioncmds.c:126
-#: commands/tablecmds.c:216
-#: commands/typecmds.c:650
-#: commands/typecmds.c:2572
-#: parser/parse_func.c:1485
+#: commands/functioncmds.c:128
+#: commands/tablecmds.c:224
+#: commands/typecmds.c:660
+#: commands/typecmds.c:2661
+#: parser/parse_func.c:1502
 #: parser/parse_type.c:196
 #: utils/adt/regproc.c:973
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "le type « %s » n'existe pas"
 
-#: commands/functioncmds.c:132
-#: parser/parse_type.c:261
+#: commands/functioncmds.c:134
+#: parser/parse_type.c:278
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "le modificateur de type ne peut pas être précisé pour le type shell « %s »"
 
-#: commands/functioncmds.c:138
+#: commands/functioncmds.c:140
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "le type « %s » n'est pas encore défini"
 
-#: commands/functioncmds.c:139
+#: commands/functioncmds.c:141
 msgid "Creating a shell type definition."
 msgstr "Création d'une définition d'un type shell."
 
-#: commands/functioncmds.c:218
+#: commands/functioncmds.c:220
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "la fonction SQL ne peut pas accepter le type shell %s"
 
-#: commands/functioncmds.c:223
+#: commands/functioncmds.c:225
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "le type d'argument %s est seulement un shell"
 
-#: commands/functioncmds.c:233
+#: commands/functioncmds.c:235
 #, c-format
 msgid "type %s does not exist"
 msgstr "le type %s n'existe pas"
 
-#: commands/functioncmds.c:241
+#: commands/functioncmds.c:243
 msgid "functions cannot accept set arguments"
 msgstr "les fonctions ne peuvent pas accepter des arguments d'ensemble"
 
-#: commands/functioncmds.c:250
+#: commands/functioncmds.c:252
 msgid "VARIADIC parameter must be the last input parameter"
 msgstr "le paramètre VARIADIC doit être le dernier paramètre en entrée"
 
-#: commands/functioncmds.c:277
+#: commands/functioncmds.c:279
 msgid "VARIADIC parameter must be an array"
 msgstr "le paramètre VARIADIC doit être un tableau"
 
-#: commands/functioncmds.c:317
+#: commands/functioncmds.c:319
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "le nom du paramètre « %s » est utilisé plus d'une fois"
 
-#: commands/functioncmds.c:332
+#: commands/functioncmds.c:334
 msgid "only input parameters can have default values"
 msgstr "seuls les paramètres en entrée peuvent avoir des valeurs par défaut"
 
-#: commands/functioncmds.c:344
+#: commands/functioncmds.c:347
 msgid "cannot use table references in parameter default value"
 msgstr ""
 "ne peut pas utiliser les références de tables dans la valeur par défaut des\n"
 "paramètres"
 
-#: commands/functioncmds.c:360
+#: commands/functioncmds.c:363
 msgid "cannot use subquery in parameter default value"
 msgstr "ne peut pas utiliser une sous-requête dans une valeur par défaut d'un paramètre"
 
-#: commands/functioncmds.c:364
+#: commands/functioncmds.c:367
 msgid "cannot use aggregate function in parameter default value"
 msgstr ""
 "ne peut pas utiliser une fonction d'agrégat dans la valeur par défaut d'un\n"
 "paramètre"
 
-#: commands/functioncmds.c:368
+#: commands/functioncmds.c:371
 msgid "cannot use window function in parameter default value"
 msgstr "ne peut pas utiliser la fonction window dans la valeur par défaut d'un paramètre"
 
-#: commands/functioncmds.c:378
+#: commands/functioncmds.c:381
 msgid "input parameters after one with a default value must also have defaults"
 msgstr "les paramètres en entrée suivant un paramètre avec valeur par défaut doivent aussi avoir des valeurs par défaut"
 
-#: commands/functioncmds.c:617
+#: commands/functioncmds.c:620
 msgid "no function body specified"
 msgstr "aucun corps de fonction spécifié"
 
-#: commands/functioncmds.c:627
+#: commands/functioncmds.c:630
 msgid "no language specified"
 msgstr "aucun langage spécifié"
 
-#: commands/functioncmds.c:648
-#: commands/functioncmds.c:1349
+#: commands/functioncmds.c:651
+#: commands/functioncmds.c:1352
 msgid "COST must be positive"
 msgstr "COST doit être positif"
 
-#: commands/functioncmds.c:656
-#: commands/functioncmds.c:1357
+#: commands/functioncmds.c:659
+#: commands/functioncmds.c:1360
 msgid "ROWS must be positive"
 msgstr "ROWS doit être positif"
 
-#: commands/functioncmds.c:695
+#: commands/functioncmds.c:698
 #, c-format
 msgid "unrecognized function attribute \"%s\" ignored"
 msgstr "l'attribut « %s » non reconnu de la fonction a été ignoré"
 
-#: commands/functioncmds.c:746
+#: commands/functioncmds.c:749
 #, c-format
 msgid "only one AS item needed for language \"%s\""
 msgstr "seul un élément AS est nécessaire pour le langage « %s »"
 
-#: commands/functioncmds.c:838
-#: commands/functioncmds.c:1992
+#: commands/functioncmds.c:839
+#: commands/functioncmds.c:2019
+#: commands/proclang.c:602
+#: commands/proclang.c:642
+#: commands/proclang.c:756
+#, c-format
+msgid "language \"%s\" does not exist"
+msgstr "le langage « %s » n'existe pas"
+
+#: commands/functioncmds.c:841
+#: commands/functioncmds.c:2021
 msgid "Use CREATE LANGUAGE to load the language into the database."
 msgstr "Utiliser CREATE LANGUAGE pour charger le langage dans la base de données."
 
-#: commands/functioncmds.c:885
+#: commands/functioncmds.c:888
 #, c-format
 msgid "function result type must be %s because of OUT parameters"
 msgstr "le type de résultat de la fonction doit être %s à cause des paramètres OUT"
 
-#: commands/functioncmds.c:898
+#: commands/functioncmds.c:901
 msgid "function result type must be specified"
 msgstr "le type de résultat de la fonction doit être spécifié"
 
-#: commands/functioncmds.c:933
-#: commands/functioncmds.c:1361
+#: commands/functioncmds.c:936
+#: commands/functioncmds.c:1364
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "ROWS n'est pas applicable quand la fonction ne renvoie pas un ensemble"
 
-#: commands/functioncmds.c:985
+#: commands/functioncmds.c:988
 #, c-format
 msgid "function %s(%s) does not exist, skipping"
 msgstr "la fonction %s(%s) n'existe pas, poursuite du traitement"
 
-#: commands/functioncmds.c:1005
-#: commands/functioncmds.c:1105
-#: commands/functioncmds.c:1168
-#: commands/functioncmds.c:1319
-#: utils/adt/ruleutils.c:1635
+#: commands/functioncmds.c:1008
+#: commands/functioncmds.c:1108
+#: commands/functioncmds.c:1171
+#: commands/functioncmds.c:1322
+#: utils/adt/ruleutils.c:1696
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "« %s » est une fonction d'agrégat"
 
-#: commands/functioncmds.c:1007
+#: commands/functioncmds.c:1010
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Utiliser DROP AGGREGATE pour supprimer les fonctions d'agrégat."
 
-#: commands/functioncmds.c:1014
+#: commands/functioncmds.c:1017
 #, c-format
 msgid "removing built-in function \"%s\""
 msgstr "suppression de la fonction interne « %s »"
 
-#: commands/functioncmds.c:1107
+#: commands/functioncmds.c:1110
 msgid "Use ALTER AGGREGATE to rename aggregate functions."
 msgstr "Utiliser ALTER AGGREGATE pour renommer les fonctions d'agrégat."
 
-#: commands/functioncmds.c:1170
+#: commands/functioncmds.c:1173
 msgid "Use ALTER AGGREGATE to change owner of aggregate functions."
 msgstr "Utiliser ALTER AGGREGATE pour changer le propriétaire des fonctions d'agrégat."
 
-#: commands/functioncmds.c:1508
+#: commands/functioncmds.c:1511
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "le type de données source %s est un pseudo-type"
 
-#: commands/functioncmds.c:1514
+#: commands/functioncmds.c:1517
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "le type de données cible %s est un pseudo-type"
 
-#: commands/functioncmds.c:1551
+#: commands/functioncmds.c:1554
 msgid "cast function must take one to three arguments"
 msgstr "la fonction de conversion doit prendre de un à trois arguments"
 
-#: commands/functioncmds.c:1555
+#: commands/functioncmds.c:1558
 msgid "argument of cast function must match or be binary-coercible from source data type"
 msgstr ""
 "l'argument de la fonction de conversion doit correspondre ou être binary-coercible\n"
 "à partir du type de la donnée source"
 
-#: commands/functioncmds.c:1559
+#: commands/functioncmds.c:1562
 msgid "second argument of cast function must be type integer"
 msgstr "le second argument de la fonction de conversion doit être de type entier"
 
-#: commands/functioncmds.c:1563
+#: commands/functioncmds.c:1566
 msgid "third argument of cast function must be type boolean"
 msgstr "le troisième argument de la fonction de conversion doit être de type booléen"
 
-#: commands/functioncmds.c:1567
+#: commands/functioncmds.c:1570
 msgid "return data type of cast function must match or be binary-coercible to target data type"
 msgstr ""
 "le type de donnée en retour de la fonction de conversion doit correspondre\n"
 "ou être coercible binairement au type de données cible"
 
-#: commands/functioncmds.c:1578
+#: commands/functioncmds.c:1581
 msgid "cast function must not be volatile"
 msgstr "la fonction de conversion ne doit pas être volatile"
 
-#: commands/functioncmds.c:1583
+#: commands/functioncmds.c:1586
 msgid "cast function must not be an aggregate function"
 msgstr "la fonction de conversion ne doit pas être une fonction d'agrégat"
 
-#: commands/functioncmds.c:1587
+#: commands/functioncmds.c:1590
 msgid "cast function must not be a window function"
 msgstr "la fonction de conversion ne doit pas être une fonction window"
 
-#: commands/functioncmds.c:1591
+#: commands/functioncmds.c:1594
 msgid "cast function must not return a set"
 msgstr "la fonction de conversion ne doit pas renvoyer un ensemble"
 
-#: commands/functioncmds.c:1617
+#: commands/functioncmds.c:1620
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "doit être super-utilisateur pour créer une fonction de conversion SANS FONCTION"
 
-#: commands/functioncmds.c:1632
+#: commands/functioncmds.c:1635
 msgid "source and target data types are not physically compatible"
 msgstr "les types de données source et cible ne sont pas physiquement compatibles"
 
-#: commands/functioncmds.c:1647
+#: commands/functioncmds.c:1650
 msgid "composite data types are not binary-compatible"
 msgstr "les types de données composites ne sont pas compatibles binairement"
 
-#: commands/functioncmds.c:1653
+#: commands/functioncmds.c:1656
 msgid "enum data types are not binary-compatible"
 msgstr "les types de données enum ne sont pas compatibles binairement"
 
-#: commands/functioncmds.c:1659
+#: commands/functioncmds.c:1662
 msgid "array data types are not binary-compatible"
 msgstr "les types de données tableau ne sont pas compatibles binairement"
 
-#: commands/functioncmds.c:1669
+#: commands/functioncmds.c:1679
+msgid "domain data types must not be marked binary-compatible"
+msgstr "les types de données domaines ne sont pas compatibles binairement"
+
+#: commands/functioncmds.c:1689
 msgid "source data type and target data type are the same"
 msgstr "les types de données source et cible sont identiques"
 
-#: commands/functioncmds.c:1702
+#: commands/functioncmds.c:1722
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "la conversion du type %s vers le type %s existe déjà"
 
-#: commands/functioncmds.c:1782
+#: commands/functioncmds.c:1803
 #, c-format
 msgid "cast from type %s to type %s does not exist, skipping"
 msgstr "la conversion du type %s vers le type %s n'existe pas, poursuite du traitement"
 
-#: commands/functioncmds.c:1879
+#: commands/functioncmds.c:1841
 #, c-format
-msgid "function \"%s\" is already in schema \"%s\""
-msgstr "la fonction « %s » existe déjà dans le schéma « %s »"
-
-#: commands/functioncmds.c:1887
-#: commands/tablecmds.c:7884
-#: commands/typecmds.c:2794
-msgid "cannot move objects into or out of temporary schemas"
-msgstr "ne peut pas déplacer les objets dans ou à partir des schémas temporaires"
-
-#: commands/functioncmds.c:1893
-#: commands/tablecmds.c:7890
-#: commands/typecmds.c:2800
-msgid "cannot move objects into or out of TOAST schema"
-msgstr "ne peut pas déplacer les objets dans ou à partir des schémas TOAST"
+msgid "cast from type %s to type %s does not exist"
+msgstr "la conversion du type %s vers le type %s n'existe pas"
 
-#: commands/functioncmds.c:1902
+#: commands/functioncmds.c:1929
 #, c-format
 msgid "function \"%s\" already exists in schema \"%s\""
 msgstr "la fonction « %s » existe déjà dans le schéma « %s »"
 
-#: commands/functioncmds.c:1974
+#: commands/functioncmds.c:2003
 msgid "no inline code specified"
 msgstr "aucun code en ligne spécifié"
 
-#: commands/functioncmds.c:2022
+#: commands/functioncmds.c:2051
 #, c-format
 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:162
+#: commands/indexcmds.c:163
 msgid "must specify at least one column"
 msgstr "doit spécifier au moins une colonne"
 
-#: commands/indexcmds.c:166
+#: commands/indexcmds.c:167
 #, 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:196
+#: commands/indexcmds.c:195
+#, 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:210
 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:256
-#: commands/tablecmds.c:455
-#: commands/tablecmds.c:7000
+#: commands/indexcmds.c:265
+#: commands/tablecmds.c:479
+#: commands/tablecmds.c:7882
 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:287
+#: commands/indexcmds.c:296
 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:304
+#: commands/opclasscmds.c:369
+#: commands/opclasscmds.c:790
+#: commands/opclasscmds.c:2203
+#, c-format
+msgid "access method \"%s\" does not exist"
+msgstr "la méthode d'accès « %s » n'existe pas"
+
+#: commands/indexcmds.c:313
 #, 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:309
+#: commands/indexcmds.c:318
 #, 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:314
+#: commands/indexcmds.c:323
 #, 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:347
-#: parser/parse_utilcmd.c:1212
-#: parser/parse_utilcmd.c:1298
-#, 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 »"
-
-#: commands/indexcmds.c:364
-msgid "primary keys cannot be expressions"
-msgstr "les clés primaires ne peuvent pas être des expressions"
-
-#: commands/indexcmds.c:394
-#: commands/indexcmds.c:903
-#: parser/parse_utilcmd.c:1445
-#, 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:468
+#: commands/indexcmds.c:399
 #, 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:827
+#: commands/indexcmds.c:763
 msgid "cannot use subquery in index predicate"
 msgstr "ne peut pas utiliser une sous-requête dans un prédicat d'index"
 
-#: commands/indexcmds.c:831
+#: commands/indexcmds.c:767
 msgid "cannot use aggregate in index predicate"
 msgstr "ne peut pas utiliser un agrégat dans un prédicat d'index"
 
-#: commands/indexcmds.c:840
+#: commands/indexcmds.c:776
 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:942
+#: commands/indexcmds.c:841
+#: parser/parse_utilcmd.c:1704
+#, 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:894
 msgid "cannot use subquery in index expression"
 msgstr "ne peut pas utiliser la sous-requête dans l'expression de l'index"
 
-#: commands/indexcmds.c:946
+#: commands/indexcmds.c:898
 msgid "cannot use aggregate function in index expression"
 msgstr "ne peut pas utiliser la fonction d'agrégat dans l'expression de l'index"
 
-#: commands/indexcmds.c:956
+#: commands/indexcmds.c:909
 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:991
+#: commands/indexcmds.c:930
+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:938
+#: commands/typecmds.c:843
+#: parser/parse_expr.c:2140
+#: parser/parse_type.c:492
+#: parser/parse_utilcmd.c:2556
+#, 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:976
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "l'opérateur %s n'est pas commutatif"
 
-#: commands/indexcmds.c:993
+#: commands/indexcmds.c:978
 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:1019
+#: commands/indexcmds.c:1004
 #, 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:1022
+#: commands/indexcmds.c:1007
 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:1057
+#: commands/indexcmds.c:1042
 #, 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:1062
+#: commands/indexcmds.c:1047
 #, 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:1118
+#: commands/indexcmds.c:1103
 #, 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:1120
+#: commands/indexcmds.c:1105
 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:1170
+#: commands/indexcmds.c:1134
+#: commands/indexcmds.c:1142
+#: commands/opclasscmds.c:212
+#: commands/opclasscmds.c:1568
+#, 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:1155
 #, 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:1260
+#: commands/indexcmds.c:1245
 #, 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:1639
+#: commands/indexcmds.c:1586
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "la table « %s » n'a pas d'index"
 
-#: commands/indexcmds.c:1667
+#: commands/indexcmds.c:1614
 msgid "can only reindex the currently open database"
 msgstr "peut seulement réindexer la base de données en cours"
 
-#: commands/indexcmds.c:1752
+#: commands/indexcmds.c:1699
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "la table « %s.%s » a été réindexée"
@@ -5795,193 +5681,207 @@ msgstr "n'a pas pu obtenir un verrou sur la relation 
 msgid "could not obtain lock on relation with OID %u"
 msgstr "n'a pas pu obtenir un verrou sur la relation d'OID « %u »"
 
-#: commands/opclasscmds.c:190
-#: commands/opclasscmds.c:701
+#: commands/opclasscmds.c:136
+#: commands/opclasscmds.c:1619
+#: commands/opclasscmds.c:1839
+#: commands/opclasscmds.c:1850
+#: commands/opclasscmds.c:2084
+#: commands/opclasscmds.c:2095
+#, c-format
+msgid "operator family \"%s\" does not exist for access method \"%s\""
+msgstr "la famille d'opérateur « %s » n'existe pas pour la méthode d'accès « %s »"
+
+#: commands/opclasscmds.c:271
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists"
 msgstr "la famille d'opérateur « %s » existe déjà pour la méthode d'accès « %s »"
 
-#: commands/opclasscmds.c:320
+#: commands/opclasscmds.c:408
 msgid "must be superuser to create an operator class"
 msgstr "doit être super-utilisateur pour créer une classe d'opérateur"
 
-#: commands/opclasscmds.c:403
-#: commands/opclasscmds.c:849
-#: commands/opclasscmds.c:971
+#: commands/opclasscmds.c:480
+#: commands/opclasscmds.c:864
+#: commands/opclasscmds.c:994
 #, c-format
 msgid "invalid operator number %d, must be between 1 and %d"
 msgstr "numéro d'opérateur %d invalide, doit être compris entre 1 et %d"
 
-#: commands/opclasscmds.c:446
-#: commands/opclasscmds.c:892
-#: commands/opclasscmds.c:986
+#: commands/opclasscmds.c:531
+#: commands/opclasscmds.c:915
+#: commands/opclasscmds.c:1009
 #, c-format
 msgid "invalid procedure number %d, must be between 1 and %d"
 msgstr "numéro de procédure %d invalide, doit être compris entre 1 et %d"
 
-#: commands/opclasscmds.c:476
+#: commands/opclasscmds.c:561
 msgid "storage type specified more than once"
 msgstr "type de stockage spécifié plus d'une fois"
 
-#: commands/opclasscmds.c:504
+#: commands/opclasscmds.c:589
 #, c-format
 msgid "storage type cannot be different from data type for access method \"%s\""
 msgstr ""
 "le type de stockage ne peut pas être différent du type de données pour la\n"
 "méthode d'accès « %s »"
 
-#: commands/opclasscmds.c:520
+#: commands/opclasscmds.c:605
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists"
 msgstr "la classe d'opérateur « %s » existe déjà pour la méthode d'accès « %s »"
 
-#: commands/opclasscmds.c:548
+#: commands/opclasscmds.c:633
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
 msgstr "n'a pas pu rendre la classe d'opérateur « %s » par défaut pour le type %s"
 
-#: commands/opclasscmds.c:551
+#: commands/opclasscmds.c:636
 #, c-format
 msgid "Operator class \"%s\" already is the default."
 msgstr "La classe d'opérateur « %s » est déjà la classe par défaut."
 
-#: commands/opclasscmds.c:687
+#: commands/opclasscmds.c:760
 msgid "must be superuser to create an operator family"
 msgstr "doit être super-utilisateur pour créer une famille d'opérateur"
 
-#: commands/opclasscmds.c:802
+#: commands/opclasscmds.c:816
 msgid "must be superuser to alter an operator family"
 msgstr "doit être super-utilisateur pour modifier une famille d'opérateur"
 
-#: commands/opclasscmds.c:865
+#: commands/opclasscmds.c:880
 msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
 msgstr ""
 "les types d'argument de l'opérateur doivent être indiqués dans ALTER\n"
 "OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:921
+#: commands/opclasscmds.c:944
 msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY"
 msgstr "STORAGE ne peut pas être spécifié dans ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:1037
+#: commands/opclasscmds.c:1060
 msgid "one or two argument types must be specified"
 msgstr "un ou deux types d'argument doit être spécifié"
 
-#: commands/opclasscmds.c:1063
+#: commands/opclasscmds.c:1086
 msgid "index operators must be binary"
 msgstr "les opérateurs d'index doivent être binaires"
 
-#: commands/opclasscmds.c:1067
-msgid "index operators must return boolean"
-msgstr "les opérateurs d'index doivent renvoyer un booléen"
+#: commands/opclasscmds.c:1111
+#, c-format
+msgid "access method \"%s\" does not support ordering operators"
+msgstr "la méthode d'accès « %s » ne supporte pas les opérateurs de tri"
+
+#: commands/opclasscmds.c:1124
+msgid "index search operators must return boolean"
+msgstr "les opérateurs de recherche d'index doivent renvoyer un booléen"
 
-#: commands/opclasscmds.c:1105
+#: commands/opclasscmds.c:1163
 msgid "btree procedures must have two arguments"
 msgstr "les procédures btree doivent avoir deux arguments"
 
-#: commands/opclasscmds.c:1109
+#: commands/opclasscmds.c:1167
 msgid "btree procedures must return integer"
 msgstr "les procédures btree doivent renvoyer un entier"
 
-#: commands/opclasscmds.c:1124
+#: commands/opclasscmds.c:1182
 msgid "hash procedures must have one argument"
 msgstr "les procédures de hachage doivent avoir un argument"
 
-#: commands/opclasscmds.c:1128
+#: commands/opclasscmds.c:1186
 msgid "hash procedures must return integer"
 msgstr "les procédures de hachage doivent renvoyer un entier"
 
-#: commands/opclasscmds.c:1153
+#: commands/opclasscmds.c:1211
 msgid "associated data types must be specified for index support procedure"
 msgstr ""
 "les types de données associés doivent être indiqués pour la procédure de\n"
 "support de l'index"
 
-#: commands/opclasscmds.c:1179
+#: commands/opclasscmds.c:1237
 #, c-format
 msgid "procedure number %d for (%s,%s) appears more than once"
 msgstr "le numéro de procédure %d pour (%s, %s) apparaît plus d'une fois"
 
-#: commands/opclasscmds.c:1186
+#: commands/opclasscmds.c:1244
 #, c-format
 msgid "operator number %d for (%s,%s) appears more than once"
 msgstr "le numéro d'opérateur %d pour (%s, %s) apparaît plus d'une fois"
 
-#: commands/opclasscmds.c:1234
+#: commands/opclasscmds.c:1293
 #, c-format
 msgid "operator %d(%s,%s) already exists in operator family \"%s\""
 msgstr "l'opérateur %d(%s, %s) existe déjà dans la famille d'opérateur « %s »"
 
-#: commands/opclasscmds.c:1334
+#: commands/opclasscmds.c:1406
 #, c-format
 msgid "function %d(%s,%s) already exists in operator family \"%s\""
 msgstr "la fonction %d(%s, %s) existe déjà dans la famille d'opérateur « %s »"
 
-#: commands/opclasscmds.c:1421
+#: commands/opclasscmds.c:1493
 #, c-format
 msgid "operator %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "l'opérateur %d(%s, %s) n'existe pas dans la famille d'opérateur « %s »"
 
-#: commands/opclasscmds.c:1461
+#: commands/opclasscmds.c:1533
 #, c-format
 msgid "function %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "la fonction %d(%s, %s) n'existe pas dans la famille d'opérateur « %s »"
 
-#: commands/opclasscmds.c:1768
+#: commands/opclasscmds.c:1779
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr ""
 "la classe d'opérateur « %s » de la méthode d'accès « %s » existe déjà dans\n"
 "le schéma « %s »"
 
-#: commands/opclasscmds.c:1862
+#: commands/opclasscmds.c:1868
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr ""
 "la famille d'opérateur « %s » de la méthode d'accès « %s » existe déjà dans\n"
 "le schéma « %s »"
 
-#: commands/operatorcmds.c:98
+#: commands/operatorcmds.c:100
 msgid "=> is deprecated as an operator name"
 msgstr "=> est un nom d'opérateur obsolète"
 
-#: commands/operatorcmds.c:99
+#: commands/operatorcmds.c:101
 msgid "This name may be disallowed altogether in future versions of PostgreSQL."
 msgstr "Ce nom pourrait être interdit dans les prochaines versions de PostgreSQL."
 
-#: commands/operatorcmds.c:120
-#: commands/operatorcmds.c:128
+#: commands/operatorcmds.c:122
+#: commands/operatorcmds.c:130
 msgid "SETOF type not allowed for operator argument"
 msgstr "type SETOF non autorisé pour l'argument de l'opérateur"
 
-#: commands/operatorcmds.c:156
+#: commands/operatorcmds.c:158
 #, c-format
 msgid "operator attribute \"%s\" not recognized"
 msgstr "l'attribut « %s » de l'opérateur n'est pas reconnu"
 
-#: commands/operatorcmds.c:166
+#: commands/operatorcmds.c:168
 msgid "operator procedure must be specified"
 msgstr "la procédure de l'opérateur doit être spécifiée"
 
-#: commands/operatorcmds.c:177
+#: commands/operatorcmds.c:179
 msgid "at least one of leftarg or rightarg must be specified"
 msgstr "au moins un des arguments (le gauche ou le droit) doit être spécifié"
 
-#: commands/operatorcmds.c:226
+#: commands/operatorcmds.c:228
 #, c-format
 msgid "restriction estimator function %s must return type \"float8\""
 msgstr ""
 "la fonction d'estimation de la restriction, de nom %s, doit renvoyer le type\n"
 "« float8 »"
 
-#: commands/operatorcmds.c:265
+#: commands/operatorcmds.c:267
 #, c-format
 msgid "join estimator function %s must return type \"float8\""
 msgstr ""
 "la fonction d'estimation de la jointure, de nom %s, doit renvoyer le type\n"
 "« float8 »"
 
-#: commands/operatorcmds.c:316
+#: commands/operatorcmds.c:318
 #, c-format
 msgid "operator %s does not exist, skipping"
 msgstr "l'opérateur %s n'existe pas, poursuite du traitement"
@@ -5995,518 +5895,713 @@ msgstr "nom de curseur invalide : il ne doit pas 
 #: commands/portalcmds.c:168
 #: commands/portalcmds.c:222
 #: executor/execCurrent.c:66
-#: utils/adt/xml.c:2044
-#: utils/adt/xml.c:2208
+#: utils/adt/xml.c:2046
+#: utils/adt/xml.c:2210
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "le curseur « %s » n'existe pas"
 
-#: commands/portalcmds.c:329
-#: tcop/pquery.c:748
-#: tcop/pquery.c:1371
+#: commands/portalcmds.c:336
+#: tcop/pquery.c:738
+#: tcop/pquery.c:1401
 #, c-format
 msgid "portal \"%s\" cannot be run"
 msgstr "le portail « %s » ne peut pas être exécuté de nouveau"
 
-#: commands/portalcmds.c:402
+#: commands/portalcmds.c:409
 msgid "could not reposition held cursor"
 msgstr "n'a pas pu repositionner le curseur détenu"
 
-#: commands/prepare.c:70
+#: commands/prepare.c:71
 msgid "invalid statement name: must not be empty"
 msgstr "nom de l'instruction invalide : ne doit pas être vide"
 
-#: commands/prepare.c:121
-#: tcop/postgres.c:1307
-#: parser/parse_param.c:293
+#: commands/prepare.c:122
+#: tcop/postgres.c:1267
+#: parser/parse_param.c:303
 #, 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"
 
-#: commands/prepare.c:139
+#: commands/prepare.c:140
 msgid "utility statements cannot be prepared"
 msgstr "les instructions utilitaires ne peuvent pas être préparées"
 
-#: commands/prepare.c:239
-#: commands/prepare.c:246
-#: commands/prepare.c:702
+#: commands/prepare.c:240
+#: commands/prepare.c:247
+#: commands/prepare.c:706
 msgid "prepared statement is not a SELECT"
 msgstr "l'instruction préparée n'est pas un SELECT"
 
-#: commands/prepare.c:313
+#: commands/prepare.c:314
 #, c-format
 msgid "wrong number of parameters for prepared statement \"%s\""
 msgstr "mauvais nombre de paramètres pour l'instruction préparée « %s »"
 
-#: commands/prepare.c:315
+#: commands/prepare.c:316
 #, c-format
 msgid "Expected %d parameters but got %d."
 msgstr "%d paramètres attendus mais %d reçus."
 
-#: commands/prepare.c:344
+#: commands/prepare.c:345
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "ne peut pas utiliser les sous-requêtes dans le paramètre EXECUTE"
 
-#: commands/prepare.c:348
+#: commands/prepare.c:349
 msgid "cannot use aggregate function in EXECUTE parameter"
 msgstr "ne peut pas utiliser la fonction d'agrégat dans le paramètre EXECUTE"
 
-#: commands/prepare.c:352
+#: commands/prepare.c:353
 msgid "cannot use window function in EXECUTE parameter"
 msgstr "ne peut pas utiliser une fonction window dans le paramètre EXECUTE"
 
-#: commands/prepare.c:365
+#: commands/prepare.c:366
 #, c-format
 msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
 msgstr ""
 "le paramètre $%d de type %s ne peut être utilisé dans la coercion à cause du\n"
 "type %s attendu"
 
-#: commands/prepare.c:463
+#: commands/prepare.c:467
 #, c-format
 msgid "prepared statement \"%s\" already exists"
 msgstr "l'instruction préparée « %s » existe déjà"
 
-#: commands/prepare.c:521
+#: commands/prepare.c:525
 #, c-format
 msgid "prepared statement \"%s\" does not exist"
 msgstr "l'instruction préparée « %s » n'existe pas"
 
-#: commands/prepare.c:747
-#: executor/execQual.c:1615
-#: executor/execQual.c:1640
-#: executor/execQual.c:2001
-#: executor/execQual.c:5100
-#: executor/functions.c:652
-#: foreign/foreign.c:271
-#: utils/mmgr/portalmem.c:937
+#: commands/prepare.c:751
+#: commands/extension.c:1679
+#: commands/extension.c:1788
+#: commands/extension.c:1981
+#: executor/execQual.c:1613
+#: executor/execQual.c:1638
+#: executor/execQual.c:1999
+#: executor/execQual.c:5115
+#: executor/functions.c:785
+#: foreign/foreign.c:350
+#: replication/walsender.c:1387
+#: utils/mmgr/portalmem.c:946
 #: utils/fmgr/funcapi.c:60
 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"
 
-#: commands/prepare.c:751
-#: foreign/foreign.c:276
-#: utils/mmgr/portalmem.c:941
+#: commands/prepare.c:755
+#: commands/extension.c:1683
+#: commands/extension.c:1792
+#: commands/extension.c:1985
+#: foreign/foreign.c:355
+#: replication/walsender.c:1391
+#: utils/mmgr/portalmem.c:950
 msgid "materialize mode required, but it is not allowed in this context"
 msgstr "mode matérialisé requis mais interdit dans ce contexte"
 
-#: commands/proclang.c:92
+#: commands/user.c:143
+msgid "SYSID can no longer be specified"
+msgstr "SYSID ne peut plus être spécifié"
+
+#: commands/user.c:284
+msgid "must be superuser to create superusers"
+msgstr "doit être super-utilisateur pour créer des super-utilisateurs"
+
+#: commands/user.c:291
+msgid "must be superuser to create replication users"
+msgstr "doit être super-utilisateur pour créer des utilisateurs avec l'attribut réplication"
+
+#: commands/user.c:298
+msgid "permission denied to create role"
+msgstr "droit refusé pour créer un rôle"
+
+#: commands/user.c:305
+#: commands/user.c:1087
+#, c-format
+msgid "role name \"%s\" is reserved"
+msgstr "le nom du rôle « %s » est réservé"
+
+#: commands/user.c:318
+#: commands/user.c:1081
+#, c-format
+msgid "role \"%s\" already exists"
+msgstr "le rôle « %s » existe déjà"
+
+#: commands/user.c:623
+#: commands/user.c:825
+#: commands/user.c:905
+#: commands/user.c:1056
+#: commands/variable.c:882
+#: commands/variable.c:954
+#: utils/init/miscinit.c:432
+#: utils/adt/acl.c:4822
+#, c-format
+msgid "role \"%s\" does not exist"
+msgstr "le rôle « %s » n'existe pas"
+
+#: commands/user.c:636
+#: commands/user.c:842
+#: commands/user.c:1321
+#: commands/user.c:1458
+msgid "must be superuser to alter superusers"
+msgstr "doit être super-utilisateur pour modifier des super-utilisateurs"
+
+#: commands/user.c:643
+msgid "must be superuser to alter replication users"
+msgstr "doit être super-utilisateur pour modifier des utilisateurs ayant l'attribut réplication"
+
+#: commands/user.c:659
+#: commands/user.c:850
+msgid "permission denied"
+msgstr "droit refusé"
+
+#: commands/user.c:878
+msgid "permission denied to drop role"
+msgstr "droit refusé pour supprimer le rôle"
+
+#: commands/user.c:910
+#, c-format
+msgid "role \"%s\" does not exist, skipping"
+msgstr "le rôle « %s » n'existe pas, poursuite du traitement"
+
+#: commands/user.c:922
+#: commands/user.c:926
+msgid "current user cannot be dropped"
+msgstr "l'utilisateur actuel ne peut pas être supprimé"
+
+#: commands/user.c:930
+msgid "session user cannot be dropped"
+msgstr "l'utilisateur de la session ne peut pas être supprimé"
+
+#: commands/user.c:941
+msgid "must be superuser to drop superusers"
+msgstr "doit être super-utilisateur pour supprimer des super-utilisateurs"
+
+#: commands/user.c:954
+#, c-format
+msgid "role \"%s\" cannot be dropped because some objects depend on it"
+msgstr "le rôle « %s » ne peut pas être supprimé car d'autres objets en dépendent"
+
+#: commands/user.c:1071
+msgid "session user cannot be renamed"
+msgstr "l'utilisateur de la session ne peut pas être renommé"
+
+#: commands/user.c:1075
+msgid "current user cannot be renamed"
+msgstr "l'utilisateur courant ne peut pas être renommé"
+
+#: commands/user.c:1098
+msgid "must be superuser to rename superusers"
+msgstr "doit être super-utilisateur pour renommer les super-utilisateurs"
+
+#: commands/user.c:1105
+msgid "permission denied to rename role"
+msgstr "droit refusé pour renommer le rôle"
+
+#: commands/user.c:1126
+msgid "MD5 password cleared because of role rename"
+msgstr "mot de passe MD5 effacé à cause du renommage du rôle"
+
+#: commands/user.c:1182
+msgid "column names cannot be included in GRANT/REVOKE ROLE"
+msgstr "les noms de colonne ne peuvent pas être inclus dans GRANT/REVOKE ROLE"
+
+#: commands/user.c:1220
+msgid "permission denied to drop objects"
+msgstr "droit refusé pour supprimer les objets"
+
+#: commands/user.c:1247
+#: commands/user.c:1256
+msgid "permission denied to reassign objects"
+msgstr "droit refusé pour ré-affecter les objets"
+
+#: commands/user.c:1329
+#: commands/user.c:1466
+#, c-format
+msgid "must have admin option on role \"%s\""
+msgstr "doit avoir l'option admin sur le rôle « %s »"
+
+#: commands/user.c:1337
+msgid "must be superuser to set grantor"
+msgstr "doit être super-utilisateur pour configurer le « donneur de droits »"
+
+#: commands/user.c:1362
+#, c-format
+msgid "role \"%s\" is a member of role \"%s\""
+msgstr "le rôle « %s » est un membre du rôle « %s »"
+
+#: commands/user.c:1377
+#, c-format
+msgid "role \"%s\" is already a member of role \"%s\""
+msgstr "le rôle « %s » est déjà un membre du rôle « %s »"
+
+#: commands/user.c:1488
+#, c-format
+msgid "role \"%s\" is not a member of role \"%s\""
+msgstr "le rôle « %s » n'est pas un membre du rôle « %s »"
+
+#: commands/proclang.c:93
 msgid "using pg_pltemplate information instead of CREATE LANGUAGE parameters"
 msgstr ""
 "utilisation des informations de pg_pltemplate au lieu des paramètres de\n"
 "CREATE LANGUAGE"
 
-#: commands/proclang.c:102
+#: commands/proclang.c:103
 #, c-format
 msgid "must be superuser to create procedural language \"%s\""
 msgstr "doit être super-utilisateur pour créer le langage de procédures « %s »"
 
-#: commands/proclang.c:122
-#: commands/proclang.c:278
+#: commands/proclang.c:123
+#: commands/proclang.c:279
 #, c-format
 msgid "function %s must return type \"language_handler\""
 msgstr "la fonction %s doit renvoyer le type « language_handler »"
 
-#: commands/proclang.c:242
+#: commands/proclang.c:243
 #, c-format
 msgid "unsupported language \"%s\""
 msgstr "langage non supporté « %s »"
 
-#: commands/proclang.c:244
+#: commands/proclang.c:245
 msgid "The supported languages are listed in the pg_pltemplate system catalog."
 msgstr "Les langages supportés sont listés dans le catalogue système pg_pltemplate."
 
-#: commands/proclang.c:252
+#: commands/proclang.c:253
 msgid "must be superuser to create custom procedural language"
 msgstr "doit être super-utilisateur pour créer un langage de procédures personnalisé"
 
-#: commands/proclang.c:271
+#: commands/proclang.c:272
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"language_handler\""
 msgstr ""
 "changement du type du code retour de la fonction %s d'« opaque » à\n"
 "« language_handler »"
 
-#: commands/proclang.c:356
-#: commands/proclang.c:606
+#: commands/proclang.c:357
+#: commands/proclang.c:608
 #, c-format
 msgid "language \"%s\" already exists"
 msgstr "le langage « %s » existe déjà"
 
-#: commands/proclang.c:534
+#: commands/proclang.c:539
 #, c-format
 msgid "language \"%s\" does not exist, skipping"
 msgstr "le langage « %s » n'existe pas, poursuite du traitement"
 
 #: commands/schemacmds.c:82
-#: commands/schemacmds.c:288
+#: commands/schemacmds.c:275
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "nom de schéma « %s » inacceptable"
 
 #: commands/schemacmds.c:83
-#: commands/schemacmds.c:289
+#: commands/schemacmds.c:276
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "Le préfixe « pg_ » est réservé pour les schémas système."
 
-#: commands/schemacmds.c:196
+#: commands/schemacmds.c:186
 #, c-format
 msgid "schema \"%s\" does not exist, skipping"
 msgstr "le schéma « %s » n'existe pas, poursuite du traitement"
 
-#: commands/sequence.c:553
+#: commands/sequence.c:126
+msgid "unlogged sequences are not supported"
+msgstr "les séquences non tracées ne sont pas supportées"
+
+#: commands/sequence.c:634
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
 msgstr "nextval : valeur maximale de la séquence « %s » (%s) atteinte"
 
-#: commands/sequence.c:576
+#: commands/sequence.c:657
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
 msgstr "nextval : valeur minimale de la séquence « %s » (%s) atteinte"
 
-#: commands/sequence.c:674
+#: commands/sequence.c:755
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr ""
 "la valeur courante (currval) de la séquence « %s » n'est pas encore définie\n"
 "dans cette session"
 
-#: commands/sequence.c:693
-#: commands/sequence.c:699
+#: commands/sequence.c:774
+#: commands/sequence.c:780
 msgid "lastval is not yet defined in this session"
 msgstr "la dernière valeur (lastval) n'est pas encore définie dans cette session"
 
-#: commands/sequence.c:767
+#: commands/sequence.c:848
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr "setval : la valeur %s est en dehors des limites de la séquence « %s » (%s..%s)"
 
-#: commands/sequence.c:936
+#: commands/sequence.c:1017
 #: lib/stringinfo.c:266
-#: libpq/auth.c:1020
-#: libpq/auth.c:1374
-#: libpq/auth.c:1442
-#: libpq/auth.c:2016
-#: storage/buffer/buf_init.c:154
-#: storage/buffer/localbuf.c:348
-#: storage/file/fd.c:356
-#: storage/file/fd.c:739
-#: storage/file/fd.c:857
-#: storage/ipc/procarray.c:786
-#: storage/ipc/procarray.c:1176
+#: libpq/auth.c:1007
+#: libpq/auth.c:1361
+#: libpq/auth.c:1429
+#: libpq/auth.c:1831
+#: storage/ipc/procarray.c:784
 #: storage/ipc/procarray.c:1183
-#: storage/ipc/procarray.c:1418
-#: storage/ipc/procarray.c:1812
-#: postmaster/postmaster.c:1973
-#: postmaster/postmaster.c:2006
-#: postmaster/postmaster.c:3188
-#: postmaster/postmaster.c:3870
-#: postmaster/postmaster.c:3951
-#: postmaster/postmaster.c:4539
-#: utils/mmgr/aset.c:408
+#: storage/ipc/procarray.c:1190
+#: storage/ipc/procarray.c:1425
+#: storage/ipc/procarray.c:1819
+#: storage/buffer/buf_init.c:154
+#: storage/buffer/localbuf.c:350
+#: storage/file/fd.c:358
+#: storage/file/fd.c:742
+#: storage/file/fd.c:860
+#: postmaster/postmaster.c:2003
+#: postmaster/postmaster.c:2034
+#: postmaster/postmaster.c:3231
+#: postmaster/postmaster.c:3915
+#: postmaster/postmaster.c:3996
+#: postmaster/postmaster.c:4610
+#: utils/init/miscinit.c:150
+#: utils/init/miscinit.c:171
+#: utils/init/miscinit.c:181
+#: utils/adt/formatting.c:1529
+#: utils/adt/formatting.c:1650
+#: utils/adt/formatting.c:1783
+#: utils/adt/regexp.c:210
+#: utils/adt/varlena.c:3474
+#: utils/adt/varlena.c:3495
+#: utils/mmgr/aset.c:416
 #: utils/mmgr/aset.c:587
-#: utils/mmgr/aset.c:770
-#: utils/mmgr/aset.c:976
-#: utils/adt/formatting.c:1491
-#: utils/adt/formatting.c:1547
-#: utils/adt/formatting.c:1604
-#: utils/adt/regexp.c:205
-#: utils/adt/varlena.c:3246
-#: utils/adt/varlena.c:3267
-#: utils/misc/guc.c:2915
-#: utils/misc/guc.c:2928
-#: utils/misc/guc.c:2941
+#: utils/mmgr/aset.c:765
+#: utils/mmgr/aset.c:966
 #: utils/fmgr/dfmgr.c:224
-#: utils/hash/dynahash.c:363
-#: utils/hash/dynahash.c:435
-#: utils/hash/dynahash.c:929
-#: utils/init/miscinit.c:149
-#: utils/init/miscinit.c:170
-#: utils/init/miscinit.c:180
-#: utils/mb/mbutils.c:334
-#: utils/mb/mbutils.c:606
+#: utils/hash/dynahash.c:364
+#: utils/hash/dynahash.c:436
+#: utils/hash/dynahash.c:932
+#: utils/mb/mbutils.c:374
+#: utils/mb/mbutils.c:675
+#: utils/misc/guc.c:3298
+#: utils/misc/guc.c:3311
+#: utils/misc/guc.c:3324
+#: utils/misc/tzparser.c:455
 msgid "out of memory"
 msgstr "mémoire épuisée"
 
-#: commands/sequence.c:1096
+#: commands/sequence.c:1206
 msgid "INCREMENT must not be zero"
 msgstr "la valeur INCREMENT ne doit pas être zéro"
 
-#: commands/sequence.c:1142
+#: commands/sequence.c:1252
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "la valeur MINVALUE (%s) doit être moindre que la valeur MAXVALUE (%s)"
 
-#: commands/sequence.c:1167
+#: commands/sequence.c:1277
 #, c-format
 msgid "START value (%s) cannot be less than MINVALUE (%s)"
 msgstr "la valeur START (%s) ne peut pas être plus petite que celle de MINVALUE (%s)"
 
-#: commands/sequence.c:1179
+#: commands/sequence.c:1289
 #, c-format
 msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "la valeur START (%s) ne peut pas être plus grande que celle de MAXVALUE (%s)"
 
-#: commands/sequence.c:1210
+#: commands/sequence.c:1320
 #, c-format
 msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
 msgstr "la valeur RESTART (%s) ne peut pas être plus petite que celle de MINVALUE (%s)"
 
-#: commands/sequence.c:1222
+#: commands/sequence.c:1332
 #, c-format
 msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "la valeur RESTART (%s) ne peut pas être plus grande que celle de MAXVALUE (%s)"
 
-#: commands/sequence.c:1237
+#: commands/sequence.c:1347
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "la valeur CACHE (%s) doit être plus grande que zéro"
 
-#: commands/sequence.c:1268
+#: commands/sequence.c:1378
 msgid "invalid OWNED BY option"
 msgstr "option OWNED BY invalide"
 
-#: commands/sequence.c:1269
+#: commands/sequence.c:1379
 msgid "Specify OWNED BY table.column or OWNED BY NONE."
 msgstr "Indiquer OWNED BY table.colonne ou OWNED BY NONE."
 
-#: commands/sequence.c:1291
-#: commands/tablecmds.c:4811
+#: commands/sequence.c:1401
+#: commands/tablecmds.c:5525
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "la relation référencée « %s » n'est pas une table"
 
-#: commands/sequence.c:1298
+#: commands/sequence.c:1408
 msgid "sequence must have same owner as table it is linked to"
 msgstr "la séquence doit avoir le même propriétaire que la table avec laquelle elle est liée"
 
-#: commands/sequence.c:1302
+#: commands/sequence.c:1412
 msgid "sequence must be in same schema as table it is linked to"
 msgstr "la séquence doit être dans le même schéma que la table avec laquelle elle est liée"
 
-#: commands/tablecmds.c:192
+#: commands/tablecmds.c:200
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "la table « %s » n'existe pas"
 
-#: commands/tablecmds.c:193
+#: commands/tablecmds.c:201
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "la table « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablecmds.c:195
+#: commands/tablecmds.c:203
 msgid "Use DROP TABLE to remove a table."
 msgstr "Utilisez DROP TABLE pour supprimer une table."
 
-#: commands/tablecmds.c:198
+#: commands/tablecmds.c:206
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "la séquence « %s » n'existe pas"
 
-#: commands/tablecmds.c:199
+#: commands/tablecmds.c:207
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "la séquence « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablecmds.c:201
+#: commands/tablecmds.c:209
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Utilisez DROP SEQUENCE pour supprimer une séquence."
 
-#: commands/tablecmds.c:204
+#: commands/tablecmds.c:212
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "la vue « %s » n'existe pas"
 
-#: commands/tablecmds.c:205
+#: commands/tablecmds.c:213
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "la vue « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablecmds.c:207
+#: commands/tablecmds.c:215
 msgid "Use DROP VIEW to remove a view."
 msgstr "Utilisez DROP VIEW pour supprimer une vue."
 
-#: commands/tablecmds.c:210
+#: commands/tablecmds.c:218
+#: parser/parse_utilcmd.c:1449
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "l'index « %s » n'existe pas"
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:219
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "l'index « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablecmds.c:213
+#: commands/tablecmds.c:221
 msgid "Use DROP INDEX to remove an index."
 msgstr "Utilisez DROP INDEX pour supprimer un index."
 
-#: commands/tablecmds.c:217
-#: commands/typecmds.c:656
+#: commands/tablecmds.c:225
+#: commands/typecmds.c:666
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "le type « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablecmds.c:218
+#: commands/tablecmds.c:226
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "« %s » n'est pas un type"
 
-#: commands/tablecmds.c:219
+#: commands/tablecmds.c:227
 msgid "Use DROP TYPE to remove a type."
 msgstr "Utilisez DROP TYPE pour supprimer un type."
 
-#: commands/tablecmds.c:390
-#: executor/execMain.c:2155
+#: commands/tablecmds.c:230
+#: commands/tablecmds.c:8888
+#, c-format
+msgid "foreign table \"%s\" does not exist"
+msgstr "la table distante « %s » n'existe pas"
+
+#: commands/tablecmds.c:231
+#, c-format
+msgid "foreign table \"%s\" does not exist, skipping"
+msgstr "la table distante « %s » n'existe pas, poursuite du traitement"
+
+#: commands/tablecmds.c:233
+msgid "Use DROP FOREIGN TABLE to remove a foreign table."
+msgstr "Utilisez DROP FOREIGN TABLE pour supprimer une table distante."
+
+#: commands/tablecmds.c:425
+#: executor/execMain.c:2415
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT peut seulement être utilisé sur des tables temporaires"
 
-#: commands/tablecmds.c:400
-#: executor/execMain.c:2165
+#: commands/tablecmds.c:429
+msgid "constraints on foreign tables are not supported"
+msgstr "les contraintes sur les tables distantes ne sont pas supportées"
+
+#: commands/tablecmds.c:447
+#: executor/execMain.c:2433
 msgid "cannot create temporary table within security-restricted operation"
 msgstr ""
 "ne peut pas créer une table temporaire à l'intérieur d'une fonction\n"
 "restreinte pour sécurité"
 
-#: commands/tablecmds.c:777
-#: commands/tablecmds.c:1109
-#: commands/tablecmds.c:2001
-#: commands/tablecmds.c:3367
-#: commands/tablecmds.c:3396
-#: commands/tablecmds.c:4817
-#: commands/trigger.c:155
-#: commands/trigger.c:1069
-#: tcop/utility.c:92
-#: rewrite/rewriteDefine.c:258
+#: commands/tablecmds.c:545
+#: commands/tablecmds.c:4351
+msgid "default values on foreign tables are not supported"
+msgstr "les valeurs par défaut ne sont pas supportées sur les tables distantes"
+
+#: commands/tablecmds.c:813
+#: commands/tablecmds.c:1142
+#: commands/tablecmds.c:2070
+#: commands/tablecmds.c:3807
+#: commands/tablecmds.c:5531
+#: commands/trigger.c:192
+#: commands/trigger.c:1096
+#: tcop/utility.c:95
+#: rewrite/rewriteDefine.c:263
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "droit refusé : « %s » est un catalogue système"
 
-#: commands/tablecmds.c:889
+#: commands/tablecmds.c:925
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "TRUNCATE cascade sur la table « %s »"
 
-#: commands/tablecmds.c:1119
+#: commands/tablecmds.c:1152
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "ne peut pas tronquer les tables temporaires des autres sessions"
 
-#: commands/tablecmds.c:1314
-#: parser/parse_utilcmd.c:590
-#: parser/parse_utilcmd.c:1408
+#: commands/tablecmds.c:1354
+#: parser/parse_utilcmd.c:621
+#: parser/parse_utilcmd.c:1667
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "la relation héritée « %s » n'est pas une table"
 
-#: commands/tablecmds.c:1320
-#: commands/tablecmds.c:7228
+#: commands/tablecmds.c:1361
+#: commands/tablecmds.c:8114
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "ine peut pas hériter à partir d'une relation temporaire « %s »"
 
-#: commands/tablecmds.c:1337
-#: commands/tablecmds.c:7256
+#: commands/tablecmds.c:1378
+#: commands/tablecmds.c:8142
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "la relation « %s » serait héritée plus d'une fois"
 
-#: commands/tablecmds.c:1392
+#: commands/tablecmds.c:1434
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "assemblage de plusieurs définitions d'héritage pour la colonne « %s »"
 
-#: commands/tablecmds.c:1400
+#: commands/tablecmds.c:1442
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "la colonne héritée « %s » a un conflit de type"
 
-#: commands/tablecmds.c:1402
-#: commands/tablecmds.c:1414
-#: commands/tablecmds.c:1574
-#: commands/tablecmds.c:1586
-#: parser/parse_coerce.c:1438
-#: parser/parse_coerce.c:1457
-#: parser/parse_coerce.c:1502
-#: parser/parse_param.c:214
+#: commands/tablecmds.c:1444
+#: commands/tablecmds.c:1465
+#: commands/tablecmds.c:1630
+#: commands/tablecmds.c:1652
+#: parser/parse_coerce.c:1514
+#: parser/parse_coerce.c:1534
+#: parser/parse_coerce.c:1579
+#: parser/parse_param.c:217
 #, c-format
 msgid "%s versus %s"
 msgstr "%s versus %s"
 
-#: commands/tablecmds.c:1412
+#: commands/tablecmds.c:1451
+#, c-format
+msgid "inherited column \"%s\" has a collation conflict"
+msgstr "la colonne héritée « %s » a un conflit sur le collationnement"
+
+#: commands/tablecmds.c:1453
+#: commands/tablecmds.c:1640
+#: commands/tablecmds.c:4220
+#, c-format
+msgid "\"%s\" versus \"%s\""
+msgstr "« %s » versus « %s »"
+
+#: commands/tablecmds.c:1463
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "la colonne héritée « %s » a un conflit de paramètre de stockage"
 
-#: commands/tablecmds.c:1564
+#: commands/tablecmds.c:1620
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "assemblage de la colonne « %s » avec une définition héritée"
 
-#: commands/tablecmds.c:1572
+#: commands/tablecmds.c:1628
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "la colonne « %s » a un conflit de type"
 
-#: commands/tablecmds.c:1584
+#: commands/tablecmds.c:1638
+#, c-format
+msgid "column \"%s\" has a collation conflict"
+msgstr "la colonne « %s » a un conflit sur le collationnement"
+
+#: commands/tablecmds.c:1650
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "la colonne « %s » a un conflit de paramètre de stockage"
 
-#: commands/tablecmds.c:1636
+#: commands/tablecmds.c:1702
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "la colonne « %s » hérite de valeurs par défaut conflictuelles"
 
-#: commands/tablecmds.c:1638
+#: commands/tablecmds.c:1704
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Pour résoudre le conflit, spécifiez explicitement une valeur par défaut."
 
-#: commands/tablecmds.c:1685
+#: commands/tablecmds.c:1751
 #, c-format
 msgid "check constraint name \"%s\" appears multiple times but with different expressions"
 msgstr ""
 "le nom de la contrainte de vérification, « %s », apparaît plusieurs fois\n"
 "mais avec des expressions différentes"
 
-#: commands/tablecmds.c:1973
+#: commands/tablecmds.c:2041
 msgid "cannot rename column of typed table"
 msgstr "ne peut pas renommer une colonne d'une table typée"
 
-#: commands/tablecmds.c:1989
+#: commands/tablecmds.c:2058
 #, c-format
-msgid "\"%s\" is not a table, view, composite type or index"
-msgstr "« %s » n'est ni une table, ni une vue, ni un type composite, ni une séquence"
+msgid "\"%s\" is not a table, view, composite type, index or foreign table"
+msgstr "« %s » n'est ni une table, ni une vue, ni un type composite, ni une table distante"
 
-#: commands/tablecmds.c:2055
+#: commands/tablecmds.c:2124
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "la colonne héritée « %s » doit aussi être renommée pour les tables filles"
 
-#: commands/tablecmds.c:2073
+#: commands/tablecmds.c:2156
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "ne peut pas renommer la colonne système « %s »"
 
-#: commands/tablecmds.c:2088
+#: commands/tablecmds.c:2171
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "ne peut pas renommer la colonne héritée « %s »"
 
-#: commands/tablecmds.c:2099
-#: commands/tablecmds.c:3711
+#: commands/tablecmds.c:2182
+#: commands/tablecmds.c:4264
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "la colonne « %s » de la relation « %s » existe déjà"
 
-#: commands/tablecmds.c:2164
-#: commands/tablecmds.c:6552
-#: commands/tablecmds.c:7858
+#: commands/tablecmds.c:2271
+#: commands/tablecmds.c:7438
+#: commands/tablecmds.c:9020
 msgid "Use ALTER TYPE instead."
 msgstr "Utilisez ALTER TYPE à la place."
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2287
+#: commands/tablecmds.c:2394
 #, c-format
 msgid "cannot %s \"%s\" because it is being used by active queries in this session"
 msgstr ""
@@ -6514,1167 +6609,1191 @@ msgstr ""
 "des requêtes actives dans cette session"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2296
+#: commands/tablecmds.c:2403
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr "ne peut pas exécuter %s « %s » car il reste des événements sur les triggers"
 
-#: commands/tablecmds.c:2909
+#: commands/tablecmds.c:2502
+#, c-format
+msgid "\"%s\" is not a composite type"
+msgstr "« %s » n'est pas un type composite"
+
+#: commands/tablecmds.c:3327
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "ne peut pas ré-écrire la relation système « %s »"
 
-#: commands/tablecmds.c:2919
+#: commands/tablecmds.c:3337
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "ne peut pas ré-écrire les tables temporaires des autres sessions"
 
-#: commands/tablecmds.c:3244
+#: commands/tablecmds.c:3562
+#, c-format
+msgid "rewriting table \"%s\""
+msgstr "ré-écriture de la table « %s »"
+
+#: commands/tablecmds.c:3566
+#, c-format
+msgid "verifying table \"%s\""
+msgstr "vérification de la table « %s »"
+
+#: commands/tablecmds.c:3673
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "la colonne « %s » contient des valeurs NULL"
 
-#: commands/tablecmds.c:3258
+#: commands/tablecmds.c:3687
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "la contrainte de vérification « %s » est rompue par une ligne"
 
-#: commands/tablecmds.c:3349
-#: rewrite/rewriteDefine.c:252
+#: commands/tablecmds.c:3828
+#: commands/tablecmds.c:4778
+#, c-format
+msgid "\"%s\" is not a table or index"
+msgstr "« %s » n'est pas une table ou un index"
+
+#: commands/tablecmds.c:3831
+#: commands/trigger.c:186
+#: commands/trigger.c:1090
+#: rewrite/rewriteDefine.c:257
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "« %s » n'est pas une table ou une vue"
 
-#: commands/tablecmds.c:3385
-#: commands/tablecmds.c:4139
+#: commands/tablecmds.c:3834
 #, c-format
-msgid "\"%s\" is not a table or index"
-msgstr "« %s » n'est pas une table ou un index"
+msgid "\"%s\" is not a table or foreign table"
+msgstr "« %s » n'est pas une table ou une table distante"
+
+#: commands/tablecmds.c:3837
+#, c-format
+msgid "\"%s\" is not a table, composite type, or foreign table"
+msgstr "« %s » n'est ni une table, ni un type composite, ni une table distante"
 
-#: commands/tablecmds.c:3540
+#: commands/tablecmds.c:3847
 #, c-format
-msgid "cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"
+msgid "\"%s\" is of the wrong type"
+msgstr "« %s » est du mauvais type"
+
+#: commands/tablecmds.c:3996
+#: commands/tablecmds.c:4003
+#, fuzzy, c-format
+msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
+msgstr "ne peux pas modifier le type « %s » car la colonne « %s ».« %s » l'utilise"
+
+#: commands/tablecmds.c:4010
+#, fuzzy, c-format
+msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
+msgstr ""
+"ne peut pas modifier la table distante « %s » car la colonne « %s ».« %s » utilise\n"
+"son type de ligne"
+
+#: commands/tablecmds.c:4017
+#, fuzzy, c-format
+msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr ""
 "ne peut pas modifier la table « %s » car la colonne « %s ».« %s » utilise\n"
 "son type de ligne"
 
-#: commands/tablecmds.c:3547
+#: commands/tablecmds.c:4079
 #, c-format
-msgid "cannot alter type \"%s\" because column \"%s\".\"%s\" uses it"
-msgstr "ne peux pas modifier le type « %s » car la colonne « %s ».« %s » l'utilise"
+msgid "cannot alter type \"%s\" because it is the type of a typed table"
+msgstr "ne peut pas modifier le type « %s » car il s'agit du type d'une table de type"
+
+#: commands/tablecmds.c:4081
+msgid "Use ALTER ... CASCADE to alter the typed tables too."
+msgstr "Utilisez ALTER ... CASCADE pour modifier aussi les tables de type."
+
+#: commands/tablecmds.c:4125
+#, c-format
+msgid "type %s is not a composite type"
+msgstr "le type %s n'est pas un type composite"
 
-#: commands/tablecmds.c:3594
+#: commands/tablecmds.c:4151
 msgid "cannot add column to typed table"
 msgstr "ne peut pas ajouter une colonne à une table typée"
 
-#: commands/tablecmds.c:3623
-msgid "column must be added to child tables too"
-msgstr "la colonne doit aussi être ajoutée aux tables filles"
-
-#: commands/tablecmds.c:3668
-#: commands/tablecmds.c:7412
+#: commands/tablecmds.c:4212
+#: commands/tablecmds.c:8296
 #, 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:3675
+#: commands/tablecmds.c:4218
+#: commands/tablecmds.c:8303
+#, 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 »"
+
+#: commands/tablecmds.c:4228
 #, c-format
 msgid "child table \"%s\" has a conflicting \"%s\" column"
 msgstr "la table fille « %s » a une colonne conflictuelle, « %s »"
 
-#: commands/tablecmds.c:3687
+#: commands/tablecmds.c:4240
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "assemblage de la définition de la colonne « %s » pour le fils « %s »"
 
-#: commands/tablecmds.c:3961
-#: commands/tablecmds.c:4051
-#: commands/tablecmds.c:4096
-#: commands/tablecmds.c:4192
-#: commands/tablecmds.c:4236
-#: commands/tablecmds.c:4315
-#: commands/tablecmds.c:5849
+#: commands/tablecmds.c:4470
+msgid "column must be added to child tables too"
+msgstr "la colonne doit aussi être ajoutée aux tables filles"
+
+#: commands/tablecmds.c:4600
+#: commands/tablecmds.c:4690
+#: commands/tablecmds.c:4735
+#: commands/tablecmds.c:4831
+#: commands/tablecmds.c:4875
+#: commands/tablecmds.c:4954
+#: commands/tablecmds.c:6656
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "n'a pas pu modifier la colonne système « %s »"
 
-#: commands/tablecmds.c:3995
+#: commands/tablecmds.c:4634
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "la colonne « %s » est dans une clé primaire"
 
-#: commands/tablecmds.c:4166
+#: commands/tablecmds.c:4805
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "la cible statistique %d est trop basse"
 
-#: commands/tablecmds.c:4174
+#: commands/tablecmds.c:4813
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "abaissement de la cible statistique à %d"
 
-#: commands/tablecmds.c:4296
+#: commands/tablecmds.c:4935
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "type « %s » de stockage invalide"
 
-#: commands/tablecmds.c:4327
+#: commands/tablecmds.c:4966
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr ""
 "le type de données %s de la colonne peut seulement avoir un stockage texte\n"
 "(PLAIN)"
 
-#: commands/tablecmds.c:4356
+#: commands/tablecmds.c:4996
 msgid "cannot drop column from typed table"
 msgstr "ne peut pas supprimer une colonne à une table typée"
 
-#: commands/tablecmds.c:4395
+#: commands/tablecmds.c:5037
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "la colonne « %s » de la relation « %s » n'existe pas, ignore"
 
-#: commands/tablecmds.c:4408
+#: commands/tablecmds.c:5050
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "ne peut pas supprimer la colonne système « %s »"
 
-#: commands/tablecmds.c:4415
+#: commands/tablecmds.c:5057
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "ne peut pas supprimer la colonne héritée « %s »"
 
-#: commands/tablecmds.c:4746
+#: commands/tablecmds.c:5283
+#, c-format
+msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
+msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX renommera l'index « %s » en « %s »"
+
+#: commands/tablecmds.c:5460
 msgid "constraint must be added to child tables too"
 msgstr "la contrainte doit aussi être ajoutée aux tables filles"
 
-#: commands/tablecmds.c:4833
-msgid "cannot reference temporary table from permanent table constraint"
-msgstr ""
-"ne peut pas référencer une table temporaire à partir d'une contrainte de\n"
-"table permanente"
+#: commands/tablecmds.c:5548
+msgid "constraints on permanent tables may reference only permanent tables"
+msgstr "les contraintes sur les tables permanentes peuvent seulement référencer des tables permanentes"
 
-#: commands/tablecmds.c:4840
-msgid "cannot reference permanent table from temporary table constraint"
+#: commands/tablecmds.c:5555
+msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
+msgstr "les contraintes sur les tables non tracées peuvent seulement référencer des tables permanentes ou non tracées"
+
+#: commands/tablecmds.c:5561
+msgid "constraints on temporary tables may reference only temporary tables"
 msgstr ""
-"ne peut pas référencer une table permanente à partir de la contrainte de\n"
-"table temporaire"
+"les constraintes sur des tables temporaires ne peuvent référencer que des\n"
+"tables temporaires"
 
-#: commands/tablecmds.c:4900
+#: commands/tablecmds.c:5622
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "nombre de colonnes de référence et référencées pour la clé étrangère en désaccord"
 
-#: commands/tablecmds.c:4989
+#: commands/tablecmds.c:5711
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "la contrainte de clé étrangère « %s » ne peut pas être implémentée"
 
-#: commands/tablecmds.c:4992
+#: commands/tablecmds.c:5714
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Les colonnes clés « %s » et « %s » sont de types incompatibles : %s et %s."
 
-#: commands/tablecmds.c:5087
+#: commands/tablecmds.c:5827
+#, c-format
+msgid "foreign key constraint \"%s\" of relation \"%s\" does not exist"
+msgstr "la clé étrangère « %s » de la relation « %s » n'existe pas"
+
+#: commands/tablecmds.c:5890
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "la colonne « %s » référencée dans la contrainte de clé étrangère n'existe pas"
 
-#: commands/tablecmds.c:5092
+#: commands/tablecmds.c:5895
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "ne peut pas avoir plus de %d clés dans une clé étrangère"
 
-#: commands/tablecmds.c:5157
+#: commands/tablecmds.c:5960
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr "ne peut pas utiliser une clé primaire déferrable pour la table « %s » référencée"
 
-#: commands/tablecmds.c:5174
+#: commands/tablecmds.c:5977
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "il n'existe pas de clé étrangère pour la table « %s » référencée"
 
-#: commands/tablecmds.c:5324
+#: commands/tablecmds.c:6127
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr ""
 "ne peut pas utiliser une contrainte unique déferrable pour la table\n"
 "référencée « %s »"
 
-#: commands/tablecmds.c:5329
+#: commands/tablecmds.c:6132
 #, c-format
 msgid "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr ""
 "il n'existe aucune contrainte unique correspondant aux clés données pour la\n"
 "table « %s » référencée"
 
-#: commands/tablecmds.c:5659
+#: commands/tablecmds.c:6183
+#, c-format
+msgid "validating foreign key constraint \"%s\""
+msgstr "validation de la contraintes de clé étrangère « %s »"
+
+#: commands/tablecmds.c:6465
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "ne peut pas supprimer la contrainte héritée « %s » de la relation « %s »"
 
-#: commands/tablecmds.c:5686
-#: commands/tablecmds.c:5800
+#: commands/tablecmds.c:6492
+#: commands/tablecmds.c:6605
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "la contrainte « %s » de la relation « %s » n'existe pas"
 
-#: commands/tablecmds.c:5692
+#: commands/tablecmds.c:6498
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "la contrainte « %s » de la relation « %s » n'existe pas, ignore"
 
-#: commands/tablecmds.c:5833
+#: commands/tablecmds.c:6640
 msgid "cannot alter column type of typed table"
 msgstr "ne peut pas modifier le type d'une colonne appartenant à une table typée"
 
-#: commands/tablecmds.c:5856
+#: commands/tablecmds.c:6663
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "ne peut pas modifier la colonne héritée « %s »"
 
-#: commands/tablecmds.c:5893
+#: commands/tablecmds.c:6705
 msgid "transform expression must not return a set"
 msgstr "l'expression de transformation ne doit pas renvoyer un ensemble"
 
-#: commands/tablecmds.c:5899
+#: commands/tablecmds.c:6711
 msgid "cannot use subquery in transform expression"
 msgstr "ne peut pas utiliser une sous-requête dans l'expression de transformation"
 
-#: commands/tablecmds.c:5903
+#: commands/tablecmds.c:6715
 msgid "cannot use aggregate function in transform expression"
 msgstr "ne peut pas utiliser la fonction d'agrégat dans l'expression de la transformation"
 
-#: commands/tablecmds.c:5907
+#: commands/tablecmds.c:6719
 msgid "cannot use window function in transform expression"
 msgstr "ne peut pas utiliser la fonction window dans l'expression de la transformation"
 
-#: commands/tablecmds.c:5925
+#: commands/tablecmds.c:6738
 #, c-format
 msgid "column \"%s\" cannot be cast to type %s"
 msgstr "la colonne « %s » ne peut pas être convertie vers le type %s"
 
-#: commands/tablecmds.c:5951
+#: commands/tablecmds.c:6785
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "le type de colonne héritée « %s » doit aussi être renommée pour les tables filles"
 
-#: commands/tablecmds.c:5990
+#: commands/tablecmds.c:6866
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "ne peut pas modifier la colonne « %s » deux fois"
 
-#: commands/tablecmds.c:6024
+#: commands/tablecmds.c:6902
 #, c-format
 msgid "default for column \"%s\" cannot be cast to type %s"
 msgstr ""
 "la valeur par défaut de la colonne « %s » ne peut pas être convertie vers le\n"
 "type %s"
 
-#: commands/tablecmds.c:6150
+#: commands/tablecmds.c:7028
 msgid "cannot alter type of a column used by a view or rule"
 msgstr "ne peut pas modifier le type d'une colonne utilisée dans une vue ou une règle"
 
-#: commands/tablecmds.c:6151
-#: commands/tablecmds.c:6169
+#: commands/tablecmds.c:7029
+#: commands/tablecmds.c:7048
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s dépend de la colonne « %s »"
 
-#: commands/tablecmds.c:6168
+#: commands/tablecmds.c:7047
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "ne peut pas modifier le type d'une colonne utilisée dans la définition d'un trigger"
 
-#: commands/tablecmds.c:6520
+#: commands/tablecmds.c:7406
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "ne peut pas modifier le propriétaire de l'index « %s »"
 
-#: commands/tablecmds.c:6522
+#: commands/tablecmds.c:7408
 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:6538
+#: commands/tablecmds.c:7424
 #, 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:6540
-#: commands/tablecmds.c:7848
+#: commands/tablecmds.c:7426
+#: commands/tablecmds.c:9010
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La séquence « %s » est liée à la table « %s »."
 
-#: commands/tablecmds.c:6561
-#: commands/tablecmds.c:7866
+#: commands/tablecmds.c:7447
+#: commands/tablecmds.c:9028
 #, c-format
-msgid "\"%s\" is not a table, view, or sequence"
-msgstr "« %s » n'est pas une table, une vue ou une séquence"
+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:6820
+#: commands/tablecmds.c:7702
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "ne peut pas avoir de nombreuses sous-commandes SET TABLESPACE"
 
-#: commands/tablecmds.c:6872
+#: commands/tablecmds.c:7754
 #, c-format
 msgid "\"%s\" is not a table, index, or TOAST table"
 msgstr "« %s » n'est pas une table, un index ou une table TOAST"
 
-#: commands/tablecmds.c:6993
+#: commands/tablecmds.c:7875
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "ne peut pas déplacer la colonne système « %s »"
 
-#: commands/tablecmds.c:7009
+#: commands/tablecmds.c:7891
 msgid "cannot move temporary tables of other sessions"
 msgstr "ne peut pas déplacer les tables temporaires d'autres sessions"
 
-#: commands/tablecmds.c:7198
+#: commands/tablecmds.c:8083
 msgid "cannot change inheritance of typed table"
 msgstr "ne peut pas modifier l'héritage d'une table typée"
 
-#: commands/tablecmds.c:7283
+#: commands/tablecmds.c:8169
 msgid "circular inheritance not allowed"
 msgstr "héritage circulaire interdit"
 
-#: commands/tablecmds.c:7284
+#: commands/tablecmds.c:8170
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "« %s » est déjà un enfant de « %s »."
 
-#: commands/tablecmds.c:7292
+#: commands/tablecmds.c:8178
 #, 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:7419
+#: commands/tablecmds.c:8314
 #, 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:7435
+#: commands/tablecmds.c:8330
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "la colonne « %s » manque à la table enfant"
 
-#: commands/tablecmds.c:7514
+#: commands/tablecmds.c:8409
 #, 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:7538
+#: commands/tablecmds.c:8433
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "la contrainte « %s » manque à la table enfant"
 
-#: commands/tablecmds.c:7619
+#: commands/tablecmds.c:8513
 #, 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:7847
-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:8730
+msgid "typed tables cannot inherit"
+msgstr "les tables avec type ne peuvent pas hériter d'autres tables"
 
-#: commands/tablecmds.c:7876
+#: commands/tablecmds.c:8761
 #, c-format
-msgid "relation \"%s\" is already in schema \"%s\""
-msgstr "la relation « %s » existe déjà dans le schéma « %s »"
+msgid "table is missing column \"%s\""
+msgstr "la colonne « %s » manque à la table"
+
+#: commands/tablecmds.c:8771
+#, 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:8780
+#, 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:8793
+#, c-format
+msgid "table has extra column \"%s\""
+msgstr "la table a une colonne supplémentaire « %s »"
+
+#: commands/tablecmds.c:8840
+#, c-format
+msgid "\"%s\" is not a typed table"
+msgstr "« %s » n'est pas une table typée"
+
+#: commands/tablecmds.c:9009
+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:7939
+#: commands/tablecmds.c:9085
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "la relation « %s » existe déjà dans le schéma « %s »"
 
-#: commands/tablespace.c:157
-#: commands/tablespace.c:174
-#: commands/tablespace.c:185
-#: commands/tablespace.c:193
-#: commands/tablespace.c:598
+#: commands/tablespace.c:158
+#: commands/tablespace.c:175
+#: commands/tablespace.c:186
+#: commands/tablespace.c:194
+#: commands/tablespace.c:603
 #: storage/file/copydir.c:61
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "n'a pas pu créer le répertoire « %s » : %m"
 
-#: commands/tablespace.c:204
+#: commands/tablespace.c:205
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "n'a pas pu lire les informations sur le répertoire « %s » : %m"
 
-#: commands/tablespace.c:213
+#: commands/tablespace.c:214
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "« %s » existe mais n'est pas un répertoire"
 
-#: commands/tablespace.c:243
+#: commands/tablespace.c:244
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "droit refusé pour créer le tablespace « %s »"
 
-#: commands/tablespace.c:245
+#: commands/tablespace.c:246
 msgid "Must be superuser to create a tablespace."
 msgstr "Doit être super-utilisateur pour créer un tablespace."
 
-#: commands/tablespace.c:261
+#: commands/tablespace.c:262
 msgid "tablespace location cannot contain single quotes"
 msgstr "le chemin du tablespace ne peut pas contenir de guillemets simples"
 
-#: commands/tablespace.c:271
+#: commands/tablespace.c:272
 msgid "tablespace location must be an absolute path"
 msgstr "le chemin du tablespace doit être un chemin absolu"
 
-#: commands/tablespace.c:282
+#: commands/tablespace.c:283
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "le chemin du tablespace « %s » est trop long"
 
-#: commands/tablespace.c:292
-#: commands/tablespace.c:824
+#: commands/tablespace.c:293
+#: commands/tablespace.c:829
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "nom inacceptable pour le tablespace « %s »"
 
-#: commands/tablespace.c:294
-#: commands/tablespace.c:825
+#: commands/tablespace.c:295
+#: commands/tablespace.c:830
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "Le préfixe « pg_ » est réservé pour les tablespaces système."
 
-#: commands/tablespace.c:304
-#: commands/tablespace.c:837
+#: commands/tablespace.c:305
+#: commands/tablespace.c:842
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "le tablespace « %s » existe déjà"
 
-#: commands/tablespace.c:372
-#: commands/tablespace.c:524
+#: commands/tablespace.c:377
+#: commands/tablespace.c:529
 msgid "tablespaces are not supported on this platform"
 msgstr "les tablespaces ne sont pas supportés sur cette plateforme"
 
-#: commands/tablespace.c:416
+#: commands/tablespace.c:415
+#: commands/tablespace.c:813
+#: commands/tablespace.c:880
+#: commands/tablespace.c:985
+#: commands/tablespace.c:1358
+#, c-format
+msgid "tablespace \"%s\" does not exist"
+msgstr "le tablespace « %s » n'existe pas"
+
+#: commands/tablespace.c:421
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "le tablespace « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tablespace.c:481
+#: commands/tablespace.c:486
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "le tablespace « %s » n'est pas vide"
 
-#: commands/tablespace.c:555
+#: commands/tablespace.c:560
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "le répertoire « %s » n'existe pas"
 
-#: commands/tablespace.c:556
-#, c-format
-msgid "Create directory \"%s\" for this tablespace before restarting the server."
-msgstr "Créer le répertoire « %s » pour ce tablespace avant de redémarrer le serveur."
-
 #: commands/tablespace.c:561
+msgid "Create this directory for the tablespace before restarting the server."
+msgstr "Créer le répertoire pour ce tablespace avant de redémarrer le serveur."
+
+#: commands/tablespace.c:566
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "n'a pas pu configurer les droits du répertoire « %s » : %m"
 
-#: commands/tablespace.c:593
+#: commands/tablespace.c:598
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "répertoire « %s » déjà en cours d'utilisation"
 
-#: commands/tablespace.c:608
-#: commands/tablespace.c:745
+#: commands/tablespace.c:613
+#: commands/tablespace.c:750
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "n'a pas pu supprimer le lien symbolique « %s » : %m"
 
-#: commands/tablespace.c:618
+#: commands/tablespace.c:623
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "n'a pas pu créer le lien symbolique « %s » : %m"
 
-#: commands/tablespace.c:679
+#: commands/tablespace.c:684
 #: storage/file/copydir.c:67
 #: storage/file/copydir.c:106
-#: storage/file/fd.c:1600
-#: postmaster/postmaster.c:1142
-#: utils/adt/genfile.c:244
+#: storage/file/fd.c:1624
+#: postmaster/postmaster.c:1165
+#: utils/adt/genfile.c:353
 #: utils/adt/misc.c:213
-#: utils/misc/tzparser.c:345
+#: utils/misc/tzparser.c:323
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "n'a pas pu ouvrir le répertoire « %s » : %m"
 
-#: commands/tablespace.c:709
-#: commands/tablespace.c:721
-#: commands/tablespace.c:737
+#: commands/tablespace.c:714
+#: commands/tablespace.c:726
+#: commands/tablespace.c:742
 #, c-format
 msgid "could not remove directory \"%s\": %m"
 msgstr "n'a pas pu supprimer le répertoire « %s » : %m"
 
-#: commands/tablespace.c:1421
+#: commands/tablespace.c:1039
+#, c-format
+msgid "Tablespace \"%s\" does not exist."
+msgstr "Le tablespace « %s » n'existe pas."
+
+#: commands/tablespace.c:1450
 #, c-format
 msgid "tablespace %u is not empty"
 msgstr "le tablespace %u n'est pas vide"
 
-#: commands/trigger.c:192
+#: commands/trigger.c:159
+#, c-format
+msgid "\"%s\" is a table"
+msgstr "« %s » est une table"
+
+#: commands/trigger.c:161
+msgid "Tables cannot have INSTEAD OF triggers."
+msgstr "Les tables ne peuvent pas avoir de triggers INSTEAD OF."
+
+#: commands/trigger.c:172
+#: commands/trigger.c:179
+#, c-format
+msgid "\"%s\" is a view"
+msgstr "« %s » est une vue"
+
+#: commands/trigger.c:174
+msgid "Views cannot have row-level BEFORE or AFTER triggers."
+msgstr "Les vues ne peuvent pas avoir de trigger BEFORE ou AFTER au niveau ligne."
+
+#: commands/trigger.c:181
+msgid "Views cannot have TRUNCATE triggers."
+msgstr "Les vues ne peuvent pas avoir de triggers TRUNCATE."
+
+#: commands/trigger.c:228
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "les triggers TRUNCATE FOR EACH ROW ne sont pas supportés"
 
-#: commands/trigger.c:233
+#: commands/trigger.c:236
+msgid "INSTEAD OF triggers must be FOR EACH ROW"
+msgstr "les triggers INSTEAD OF doivent être FOR EACH ROW"
+
+#: commands/trigger.c:240
+msgid "INSTEAD OF triggers cannot have WHEN conditions"
+msgstr "les triggers INSTEAD OF ne peuvent pas avoir de conditions WHEN"
+
+#: commands/trigger.c:244
+msgid "INSTEAD OF triggers cannot have column lists"
+msgstr "les triggers INSTEAD OF ne peuvent pas avoir de liste de colonnes"
+
+#: commands/trigger.c:288
 msgid "cannot use subquery in trigger WHEN condition"
 msgstr "ne peut pas utiliser une sous-requête dans la condition WHEN d'un trigger"
 
-#: commands/trigger.c:237
+#: commands/trigger.c:292
 msgid "cannot use aggregate function in trigger WHEN condition"
 msgstr "ne peut pas utiliser la fonction d'agrégat dans la condition WHEN d'un trigger"
 
-#: commands/trigger.c:241
+#: commands/trigger.c:296
 msgid "cannot use window function in trigger WHEN condition"
 msgstr "ne peut pas utiliser la fonction window dans la condition WHEN d'un trigger"
 
-#: commands/trigger.c:261
-#: commands/trigger.c:274
+#: commands/trigger.c:316
+#: commands/trigger.c:329
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr ""
 "la condition WHEN de l'instruction du trigger ne peut pas référencer les valeurs\n"
 "des colonnes"
 
-#: commands/trigger.c:266
+#: commands/trigger.c:321
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr "la condition WHEN du trigger INSERT ne peut pas référencer les valeurs OLD"
 
-#: commands/trigger.c:279
+#: commands/trigger.c:334
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr "la condition WHEN du trigger DELETE ne peut pas référencer les valeurs NEW"
 
-#: commands/trigger.c:284
+#: commands/trigger.c:339
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr ""
 "la condition WHEN d'un trigger BEFORE ne doit pas référencer les colonnes\n"
 "système avec NEW"
 
-#: commands/trigger.c:322
+#: commands/trigger.c:377
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"trigger\""
 msgstr "changement du type de retour de la fonction %s de « opaque » vers « trigger »"
 
-#: commands/trigger.c:329
+#: commands/trigger.c:384
 #, c-format
 msgid "function %s must return type \"trigger\""
 msgstr "la fonction %s doit renvoyer le type « trigger »"
 
-#: commands/trigger.c:438
-#: commands/trigger.c:1152
+#: commands/trigger.c:494
+#: commands/trigger.c:1232
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "le trigger « %s » de la relation « %s » existe déjà"
 
-#: commands/trigger.c:719
+#: commands/trigger.c:779
 msgid "Found referenced table's UPDATE trigger."
 msgstr "Trigger UPDATE de la table référencée trouvé."
 
-#: commands/trigger.c:720
+#: commands/trigger.c:780
 msgid "Found referenced table's DELETE trigger."
 msgstr "Trigger DELETE de la table référencée trouvé."
 
-#: commands/trigger.c:721
+#: commands/trigger.c:781
 msgid "Found referencing table's trigger."
 msgstr "Trigger de la table référencée trouvé."
 
-#: commands/trigger.c:830
-#: commands/trigger.c:846
+#: commands/trigger.c:890
+#: commands/trigger.c:906
 #, c-format
 msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
 msgstr "ignore le groupe de trigger incomplet pour la contrainte « %s » %s"
 
-#: commands/trigger.c:858
+#: commands/trigger.c:918
 #, c-format
 msgid "converting trigger group into constraint \"%s\" %s"
 msgstr "conversion du groupe de trigger en une contrainte « %s » %s"
 
-#: commands/trigger.c:998
+#: commands/trigger.c:1034
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist, skipping"
 msgstr "le trigger « %s » pour la table « %s » n'existe pas, poursuite du traitement"
 
-#: commands/trigger.c:1273
+#: commands/trigger.c:1161
+#: commands/trigger.c:1274
+#: commands/trigger.c:1385
+#, c-format
+msgid "trigger \"%s\" for table \"%s\" does not exist"
+msgstr "le trigger « %s » de la table « %s » n'existe pas"
+
+#: commands/trigger.c:1353
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "droit refusé : « %s » est un trigger système"
 
-#: commands/trigger.c:1848
+#: commands/trigger.c:1835
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "la fonction trigger %u a renvoyé la valeur NULL"
 
-#: commands/trigger.c:1908
-#: commands/trigger.c:2023
-#: commands/trigger.c:2160
-#: commands/trigger.c:2335
+#: commands/trigger.c:1894
+#: commands/trigger.c:2093
+#: commands/trigger.c:2277
+#: commands/trigger.c:2519
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "le trigger BEFORE STATEMENT ne peut pas renvoyer une valeur"
 
-#: commands/trigger.c:2397
-#: executor/execMain.c:1613
+#: commands/trigger.c:2581
+#: executor/execMain.c:1863
 #: executor/nodeLockRows.c:137
-#: executor/nodeModifyTable.c:334
-#: executor/nodeModifyTable.c:505
+#: executor/nodeModifyTable.c:366
+#: executor/nodeModifyTable.c:582
 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"
 
-#: commands/trigger.c:4012
+#: commands/trigger.c:4196
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "la contrainte « %s » n'est pas DEFERRABLE"
 
-#: commands/trigger.c:4035
+#: commands/trigger.c:4219
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "la contrainte « %s » n'existe pas"
 
-#: commands/tsearchcmds.c:109
-#: commands/tsearchcmds.c:929
+#: commands/tsearchcmds.c:117
+#: commands/tsearchcmds.c:1044
 #, c-format
 msgid "function %s should return type %s"
 msgstr "la fonction %s doit renvoyer le type %s"
 
-#: commands/tsearchcmds.c:178
+#: commands/tsearchcmds.c:189
 msgid "must be superuser to create text search parsers"
 msgstr "doit être super-utilisateur pour créer des analyseurs de recherche plein texte"
 
-#: commands/tsearchcmds.c:226
+#: commands/tsearchcmds.c:237
 #, c-format
 msgid "text search parser parameter \"%s\" not recognized"
 msgstr "paramètre de l'analyseur de recherche plein texte « %s » non reconnu"
 
-#: commands/tsearchcmds.c:236
+#: commands/tsearchcmds.c:247
 msgid "text search parser start method is required"
 msgstr "la méthode start de l'analyseur de recherche plein texte est requise"
 
-#: commands/tsearchcmds.c:241
+#: commands/tsearchcmds.c:252
 msgid "text search parser gettoken method is required"
 msgstr "la méthode gettoken de l'analyseur de recherche plein texte est requise"
 
-#: commands/tsearchcmds.c:246
+#: commands/tsearchcmds.c:257
 msgid "text search parser end method is required"
 msgstr "la méthode end l'analyseur de recherche de texte est requise"
 
-#: commands/tsearchcmds.c:251
+#: commands/tsearchcmds.c:262
 msgid "text search parser lextypes method is required"
 msgstr "la méthode lextypes de l'analyseur de recherche plein texte est requise"
 
-#: commands/tsearchcmds.c:283
+#: commands/tsearchcmds.c:297
 msgid "must be superuser to drop text search parsers"
 msgstr ""
 "doit être super-utilisateur pour supprimer des analyseurs de recherche plein\n"
 "texte"
 
-#: commands/tsearchcmds.c:312
+#: commands/tsearchcmds.c:326
 #, c-format
 msgid "text search parser \"%s\" does not exist, skipping"
 msgstr ""
 "l'analyseur de recherche plein texte « %s » n'existe pas, poursuite du\n"
 "traitement"
 
-#: commands/tsearchcmds.c:367
+#: commands/tsearchcmds.c:381
 msgid "must be superuser to rename text search parsers"
 msgstr ""
 "doit être super-utilisateur pour renommer les analyseurs de recherche plein\n"
 "texte"
 
-#: commands/tsearchcmds.c:385
+#: commands/tsearchcmds.c:399
 #, c-format
 msgid "text search parser \"%s\" already exists"
 msgstr "l'analyseur de recherche plein texte « %s » existe déjà"
 
-#: commands/tsearchcmds.c:462
+#: commands/tsearchcmds.c:525
 #, c-format
 msgid "text search template \"%s\" does not accept options"
 msgstr "le modèle de recherche plein texte « %s » n'accepte pas d'options"
 
-#: commands/tsearchcmds.c:535
+#: commands/tsearchcmds.c:598
 msgid "text search template is required"
 msgstr "le modèle de la recherche plein texte est requis"
 
-#: commands/tsearchcmds.c:600
+#: commands/tsearchcmds.c:667
 #, c-format
 msgid "text search dictionary \"%s\" already exists"
 msgstr "le dictionnaire de recherche plein texte « %s » existe déjà"
 
-#: commands/tsearchcmds.c:660
+#: commands/tsearchcmds.c:775
 #, c-format
 msgid "text search dictionary \"%s\" does not exist, skipping"
 msgstr ""
 "le dictionnaire de recherche plein texte « %s » n'existe pas, poursuite du\n"
 "traitement"
 
-#: commands/tsearchcmds.c:990
+#: commands/tsearchcmds.c:1108
 msgid "must be superuser to create text search templates"
 msgstr "doit être super-utilisateur pour créer des modèles de recherche plein texte"
 
-#: commands/tsearchcmds.c:1027
+#: commands/tsearchcmds.c:1145
 #, c-format
 msgid "text search template parameter \"%s\" not recognized"
 msgstr "paramètre de modèle de recherche plein texte « %s » non reconnu"
 
-#: commands/tsearchcmds.c:1037
+#: commands/tsearchcmds.c:1155
 msgid "text search template lexize method is required"
 msgstr "la méthode lexize du modèle de recherche plein texte est requise"
 
-#: commands/tsearchcmds.c:1072
+#: commands/tsearchcmds.c:1193
 msgid "must be superuser to rename text search templates"
 msgstr "doit être super-utilisateur pour renommer les modèles de recherche plein texte"
 
-#: commands/tsearchcmds.c:1091
+#: commands/tsearchcmds.c:1212
 #, c-format
 msgid "text search template \"%s\" already exists"
 msgstr "le modèle de recherche plein texte « %s » existe déjà"
 
-#: commands/tsearchcmds.c:1114
+#: commands/tsearchcmds.c:1281
 msgid "must be superuser to drop text search templates"
 msgstr "doit être super-utilisateur pour supprimer des modèles de recherche plein texte"
 
-#: commands/tsearchcmds.c:1143
+#: commands/tsearchcmds.c:1310
 #, c-format
 msgid "text search template \"%s\" does not exist, skipping"
 msgstr "le modèle de recherche plein texte « %s » n'existe pas, poursuite du traitement"
 
-#: commands/tsearchcmds.c:1338
+#: commands/tsearchcmds.c:1509
 #, c-format
 msgid "text search configuration parameter \"%s\" not recognized"
 msgstr "paramètre de configuration de recherche plein texte « %s » non reconnu"
 
-#: commands/tsearchcmds.c:1345
+#: commands/tsearchcmds.c:1516
 msgid "cannot specify both PARSER and COPY options"
 msgstr "ne peut pas spécifier à la fois PARSER et COPY"
 
-#: commands/tsearchcmds.c:1373
+#: commands/tsearchcmds.c:1544
 msgid "text search parser is required"
 msgstr "l'analyseur de la recherche plein texte est requis"
 
-#: commands/tsearchcmds.c:1479
+#: commands/tsearchcmds.c:1653
 #, c-format
 msgid "text search configuration \"%s\" already exists"
 msgstr "la configuration de recherche plein texte « %s » existe déjà"
 
-#: commands/tsearchcmds.c:1538
+#: commands/tsearchcmds.c:1760
 #, c-format
 msgid "text search configuration \"%s\" does not exist, skipping"
 msgstr ""
 "la configuration de recherche plein texte « %s » n'existe pas, poursuite du\n"
 "traitement"
 
-#: commands/tsearchcmds.c:1760
+#: commands/tsearchcmds.c:1982
 #, c-format
 msgid "token type \"%s\" does not exist"
 msgstr "le type de jeton « %s » n'existe pas"
 
-#: commands/tsearchcmds.c:1984
+#: commands/tsearchcmds.c:2204
 #, c-format
 msgid "mapping for token type \"%s\" does not exist"
 msgstr "la correspondance pour le type de jeton « %s » n'existe pas"
 
-#: commands/tsearchcmds.c:1990
+#: commands/tsearchcmds.c:2210
 #, c-format
 msgid "mapping for token type \"%s\" does not exist, skipping"
 msgstr ""
 "la correspondance pour le type de jeton « %s » n'existe pas, poursuite du\n"
 "traitement"
 
-#: commands/tsearchcmds.c:2143
-#: commands/tsearchcmds.c:2254
+#: commands/tsearchcmds.c:2363
+#: commands/tsearchcmds.c:2474
 #, c-format
 msgid "invalid parameter list format: \"%s\""
 msgstr "format de liste de paramètres invalide : « %s »"
 
-#: commands/typecmds.c:163
+#: commands/typecmds.c:169
 msgid "must be superuser to create a base type"
 msgstr "doit être super-utilisateur pour créer un type de base"
 
-#: commands/typecmds.c:267
+#: commands/typecmds.c:275
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "attribut du type « %s » non reconnu"
 
-#: commands/typecmds.c:321
+#: commands/typecmds.c:329
 #, c-format
 msgid "invalid type category \"%s\": must be simple ASCII"
 msgstr "catégorie de type « %s » invalide : doit être de l'ASCII pur"
 
-#: commands/typecmds.c:340
+#: commands/typecmds.c:348
 #, c-format
 msgid "array element type cannot be %s"
 msgstr "le type d'élément tableau ne peut pas être %s"
 
-#: commands/typecmds.c:372
+#: commands/typecmds.c:380
 #, c-format
 msgid "alignment \"%s\" not recognized"
 msgstr "alignement « %s » non reconnu"
 
-#: commands/typecmds.c:389
+#: commands/typecmds.c:397
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "stockage « %s » non reconnu"
 
-#: commands/typecmds.c:398
+#: commands/typecmds.c:408
 msgid "type input function must be specified"
 msgstr "le type d'entrée de la fonction doit être spécifié"
 
-#: commands/typecmds.c:402
+#: commands/typecmds.c:412
 msgid "type output function must be specified"
 msgstr "le type de sortie de la fonction doit être spécifié"
 
-#: commands/typecmds.c:407
+#: commands/typecmds.c:417
 msgid "type modifier output function is useless without a type modifier input function"
 msgstr ""
 "la fonction en sortie du modificateur de type est inutile sans une fonction\n"
 "en entrée du modificateur de type"
 
-#: commands/typecmds.c:430
+#: commands/typecmds.c:440
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to %s"
 msgstr "changement du type de retour de la fonction %s d'« opaque » vers %s"
 
-#: commands/typecmds.c:437
+#: commands/typecmds.c:447
 #, c-format
 msgid "type input function %s must return type %s"
 msgstr "le type d'entrée de la fonction %s doit être %s"
 
-#: commands/typecmds.c:447
+#: commands/typecmds.c:457
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"cstring\""
 msgstr "changement du type de retour de la fonction %s d'« opaque » vers « cstring »"
 
-#: commands/typecmds.c:454
+#: commands/typecmds.c:464
 #, c-format
 msgid "type output function %s must return type \"cstring\""
 msgstr "le type de sortie de la fonction %s doit être « cstring »"
 
-#: commands/typecmds.c:463
+#: commands/typecmds.c:473
 #, c-format
 msgid "type receive function %s must return type %s"
 msgstr "la fonction receive du type %s doit renvoyer le type %s"
 
-#: commands/typecmds.c:472
+#: commands/typecmds.c:482
 #, c-format
 msgid "type send function %s must return type \"bytea\""
 msgstr "la fonction send du type %s doit renvoyer le type « bytea »"
 
-#: commands/typecmds.c:677
-#: commands/typecmds.c:2205
+#: commands/typecmds.c:687
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "« %s » n'est pas un domaine"
 
-#: commands/typecmds.c:816
+#: commands/typecmds.c:827
 #, c-format
 msgid "\"%s\" is not a valid base type for a domain"
 msgstr "« %s » n'est pas un type de base valide pour un domaine"
 
-#: commands/typecmds.c:885
+#: commands/typecmds.c:909
 msgid "multiple default expressions"
 msgstr "multiples expressions par défaut"
 
-#: commands/typecmds.c:949
-#: commands/typecmds.c:958
+#: commands/typecmds.c:973
+#: commands/typecmds.c:982
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "contraintes NULL/NOT NULL en conflit"
 
-#: commands/typecmds.c:977
-#: commands/typecmds.c:1902
+#: commands/typecmds.c:1001
+#: commands/typecmds.c:1984
 msgid "unique constraints not possible for domains"
 msgstr "contraintes uniques impossible pour les domaines"
 
-#: commands/typecmds.c:983
-#: commands/typecmds.c:1908
+#: commands/typecmds.c:1007
+#: commands/typecmds.c:1990
 msgid "primary key constraints not possible for domains"
 msgstr "contraintes de clé primaire impossible pour les domaines"
 
-#: commands/typecmds.c:989
-#: commands/typecmds.c:1914
+#: commands/typecmds.c:1013
+#: commands/typecmds.c:1996
 msgid "exclusion constraints not possible for domains"
 msgstr "contraintes d'exclusion impossible pour les domaines"
 
-#: commands/typecmds.c:995
-#: commands/typecmds.c:1920
+#: commands/typecmds.c:1019
+#: commands/typecmds.c:2002
 msgid "foreign key constraints not possible for domains"
 msgstr "contraintes de clé étrangère impossible pour les domaines"
 
-#: commands/typecmds.c:1004
-#: commands/typecmds.c:1929
+#: commands/typecmds.c:1028
+#: commands/typecmds.c:2011
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "spécifier des contraintes déferrantes n'est pas supporté par les domaines"
 
-#: commands/typecmds.c:1251
+#: commands/typecmds.c:1272
+#: utils/cache/typcache.c:996
+#, c-format
+msgid "%s is not an enum"
+msgstr "%s n'est pas un enum"
+
+#: commands/typecmds.c:1332
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
 msgstr "changement du type d'argument de la fonction %s d'« opaque » à « cstring »"
 
-#: commands/typecmds.c:1302
+#: commands/typecmds.c:1383
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to %s"
 msgstr "changement du type d'argument de la fonction %s d'« opaque » à %s"
 
-#: commands/typecmds.c:1401
+#: commands/typecmds.c:1482
 #, c-format
 msgid "typmod_in function %s must return type \"integer\""
 msgstr "la fonction typmod_in %s doit renvoyer le type « entier »"
 
-#: commands/typecmds.c:1428
+#: commands/typecmds.c:1509
 #, c-format
 msgid "typmod_out function %s must return type \"cstring\""
 msgstr "la fonction typmod_out %s doit renvoyer le type « cstring »"
 
-#: commands/typecmds.c:1455
+#: commands/typecmds.c:1536
 #, c-format
 msgid "type analyze function %s must return type \"boolean\""
 msgstr "la fonction analyze du type %s doit renvoyer le type « boolean »"
 
-#: commands/typecmds.c:1513
-msgid "composite type must have at least one attribute"
-msgstr "le type composite doit avoir au moins un attribut"
-
-#: commands/typecmds.c:1754
+#: commands/typecmds.c:1836
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "la colonne « %s » de la table « %s » contient des valeurs NULL"
 
-#: commands/typecmds.c:2000
+#: commands/typecmds.c:2082
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint"
 msgstr ""
 "la colonne « %s » de la table « %s » contient des valeurs violant la\n"
 "nouvelle contrainte"
 
-#: commands/typecmds.c:2281
-#: commands/typecmds.c:2290
+#: commands/typecmds.c:2287
+#, c-format
+msgid "%s is not a domain"
+msgstr "%s n'est pas un domaine"
+
+#: commands/typecmds.c:2369
+#: commands/typecmds.c:2378
 msgid "cannot use table references in domain check constraint"
 msgstr ""
 "ne peut pas utiliser les références de table dans la contrainte de\n"
 "vérification du domaine"
 
-#: commands/typecmds.c:2519
-#: commands/typecmds.c:2591
-#: commands/typecmds.c:2822
+#: commands/typecmds.c:2608
+#: commands/typecmds.c:2680
+#: commands/typecmds.c:2904
 #, c-format
 msgid "%s is a table's row type"
 msgstr "« %s » est du type ligne de table"
 
-#: commands/typecmds.c:2521
-#: commands/typecmds.c:2593
-#: commands/typecmds.c:2824
+#: commands/typecmds.c:2610
+#: commands/typecmds.c:2682
+#: commands/typecmds.c:2906
 msgid "Use ALTER TABLE instead."
 msgstr "Utilisez ALTER TABLE à la place."
 
-#: commands/typecmds.c:2528
-#: commands/typecmds.c:2600
-#: commands/typecmds.c:2739
+#: commands/typecmds.c:2617
+#: commands/typecmds.c:2689
+#: commands/typecmds.c:2835
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "ne peut pas modifier le type array %s"
 
-#: commands/typecmds.c:2530
-#: commands/typecmds.c:2602
-#: commands/typecmds.c:2741
+#: commands/typecmds.c:2619
+#: commands/typecmds.c:2691
+#: commands/typecmds.c:2837
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "Vous pouvez modifier le type %s, ce qui va modifier aussi le type tableau."
 
-#: commands/typecmds.c:2786
-#, c-format
-msgid "type %s is already in schema \"%s\""
-msgstr "le type « %s » existe déjà dans le schéma « %s »"
-
-#: commands/typecmds.c:2808
+#: commands/typecmds.c:2890
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "le type « %s » existe déjà dans le schéma « %s »"
 
-#: commands/user.c:150
-msgid "SYSID can no longer be specified"
-msgstr "SYSID ne peut plus être spécifié"
-
-#: commands/user.c:272
-msgid "must be superuser to create superusers"
-msgstr "doit être super-utilisateur pour créer des super-utilisateurs"
-
-#: commands/user.c:279
-msgid "permission denied to create role"
-msgstr "droit refusé pour créer un rôle"
-
-#: commands/user.c:286
-#: commands/user.c:1033
-#, c-format
-msgid "role name \"%s\" is reserved"
-msgstr "le nom du rôle « %s » est réservé"
-
-#: commands/user.c:300
-#: commands/user.c:1027
-#, c-format
-msgid "role \"%s\" already exists"
-msgstr "le rôle « %s » existe déjà"
-
-#: commands/user.c:579
-#: commands/user.c:767
-#: commands/user.c:851
-#: commands/user.c:1002
-#: commands/variable.c:735
-#: commands/variable.c:849
-#: utils/cache/lsyscache.c:2669
-#: utils/init/miscinit.c:413
-#, c-format
-msgid "role \"%s\" does not exist"
-msgstr "le rôle « %s » n'existe pas"
-
-#: commands/user.c:592
-#: commands/user.c:784
-#: commands/user.c:1267
-#: commands/user.c:1404
-msgid "must be superuser to alter superusers"
-msgstr "doit être super-utilisateur pour modifier des super-utilisateurs"
-
-#: commands/user.c:607
-#: commands/user.c:792
-msgid "permission denied"
-msgstr "droit refusé"
-
-#: commands/user.c:802
-#, c-format
-msgid "database \"%s\" not found"
-msgstr "base de données « %s » non trouvée"
-
-#: commands/user.c:824
-msgid "permission denied to drop role"
-msgstr "droit refusé pour supprimer le rôle"
-
-#: commands/user.c:856
-#, c-format
-msgid "role \"%s\" does not exist, skipping"
-msgstr "le rôle « %s » n'existe pas, poursuite du traitement"
-
-#: commands/user.c:868
-#: commands/user.c:872
-msgid "current user cannot be dropped"
-msgstr "l'utilisateur actuel ne peut pas être supprimé"
-
-#: commands/user.c:876
-msgid "session user cannot be dropped"
-msgstr "l'utilisateur de la session ne peut pas être supprimé"
-
-#: commands/user.c:887
-msgid "must be superuser to drop superusers"
-msgstr "doit être super-utilisateur pour supprimer des super-utilisateurs"
-
-#: commands/user.c:900
-#, c-format
-msgid "role \"%s\" cannot be dropped because some objects depend on it"
-msgstr "le rôle « %s » ne peut pas être supprimé car d'autres objets en dépendent"
-
-#: commands/user.c:1017
-msgid "session user cannot be renamed"
-msgstr "l'utilisateur de la session ne peut pas être renommé"
-
-#: commands/user.c:1021
-msgid "current user cannot be renamed"
-msgstr "l'utilisateur courant ne peut pas être renommé"
-
-#: commands/user.c:1044
-msgid "must be superuser to rename superusers"
-msgstr "doit être super-utilisateur pour renommer les super-utilisateurs"
-
-#: commands/user.c:1051
-msgid "permission denied to rename role"
-msgstr "droit refusé pour renommer le rôle"
-
-#: commands/user.c:1072
-msgid "MD5 password cleared because of role rename"
-msgstr "mot de passe MD5 effacé à cause du renommage du rôle"
-
-#: commands/user.c:1128
-msgid "column names cannot be included in GRANT/REVOKE ROLE"
-msgstr "les noms de colonne ne peuvent pas être inclus dans GRANT/REVOKE ROLE"
-
-#: commands/user.c:1166
-msgid "permission denied to drop objects"
-msgstr "droit refusé pour supprimer les objets"
-
-#: commands/user.c:1193
-#: commands/user.c:1202
-msgid "permission denied to reassign objects"
-msgstr "droit refusé pour ré-affecter les objets"
-
-#: commands/user.c:1275
-#: commands/user.c:1412
-#, c-format
-msgid "must have admin option on role \"%s\""
-msgstr "doit avoir l'option admin sur le rôle « %s »"
-
-#: commands/user.c:1283
-msgid "must be superuser to set grantor"
-msgstr "doit être super-utilisateur pour configurer le « donneur de droits »"
-
-#: commands/user.c:1308
-#, c-format
-msgid "role \"%s\" is a member of role \"%s\""
-msgstr "le rôle « %s » est un membre du rôle « %s »"
-
-#: commands/user.c:1323
-#, c-format
-msgid "role \"%s\" is already a member of role \"%s\""
-msgstr "le rôle « %s » est déjà un membre du rôle « %s »"
-
-#: commands/user.c:1434
-#, c-format
-msgid "role \"%s\" is not a member of role \"%s\""
-msgstr "le rôle « %s » n'est pas un membre du rôle « %s »"
-
-#: commands/vacuum.c:421
+#: commands/vacuum.c:419
 msgid "oldest xmin is far in the past"
 msgstr "le plus ancien xmin est loin dans le passé"
 
-#: commands/vacuum.c:422
+#: commands/vacuum.c:420
 msgid "Close open transactions soon to avoid wraparound problems."
 msgstr ""
 "Fermez les transactions ouvertes rapidement pour éviter des problèmes de\n"
 "réinitialisation."
 
-#: commands/vacuum.c:747
+#: commands/vacuum.c:809
 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:748
+#: commands/vacuum.c:810
 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:873
+#: commands/vacuum.c:917
+#, c-format
+msgid "skipping vacuum of \"%s\" --- lock not available"
+msgstr "ignore le vacuum de « %s » --- verrou non disponible"
+
+#: commands/vacuum.c:943
 #, 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:877
+#: commands/vacuum.c:947
 #, 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:881
+#: commands/vacuum.c:951
 #, 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:898
+#: commands/vacuum.c:968
 #, c-format
-msgid "skipping \"%s\" --- cannot vacuum indexes, views, or special system tables"
+msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr ""
-"ignore « %s » --- n'a pas pu exécuter un VACUUM sur les index, vues ou\n"
-"tables système"
+"ignore « %s » --- n'a pas pu exécuter un VACUUM sur les objets autres que\n"
+"des tables et les tables systèmes"
 
-#: commands/vacuumlazy.c:234
+#: commands/vacuumlazy.c:230
 #, c-format
 msgid ""
 "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
@@ -7687,24 +7806,24 @@ msgstr ""
 "lignes : %.0f supprimés, %.0f restantes\n"
 "utilisation système : %s"
 
-#: commands/vacuumlazy.c:450
+#: commands/vacuumlazy.c:484
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr "relation « %s » : la page %u n'est pas initialisée --- correction en cours"
 
-#: commands/vacuumlazy.c:801
+#: commands/vacuumlazy.c:841
 #, c-format
 msgid "\"%s\": removed %.0f row versions in %u pages"
 msgstr "« %s » : %.0f versions de ligne supprimées parmi %u pages"
 
-#: commands/vacuumlazy.c:806
+#: commands/vacuumlazy.c:846
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u pages"
 msgstr ""
 "« %s » : %.0f versions de ligne supprimables, %.0f non supprimables\n"
 "parmi %u pages sur %u"
 
-#: commands/vacuumlazy.c:809
+#: commands/vacuumlazy.c:850
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7717,29 +7836,29 @@ msgstr ""
 "%u pages sont entièrement vides.\n"
 "%s."
 
-#: commands/vacuumlazy.c:867
+#: commands/vacuumlazy.c:908
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "« %s »: %d versions de ligne supprimée parmi %d pages"
 
-#: commands/vacuumlazy.c:870
-#: commands/vacuumlazy.c:962
-#: commands/vacuumlazy.c:1087
+#: commands/vacuumlazy.c:911
+#: commands/vacuumlazy.c:1003
+#: commands/vacuumlazy.c:1136
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: commands/vacuumlazy.c:959
+#: commands/vacuumlazy.c:1000
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "a parcouru l'index « %s » pour supprimer %d versions de lignes"
 
-#: commands/vacuumlazy.c:1001
+#: commands/vacuumlazy.c:1041
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "l'index « %s » contient maintenant %.0f versions de ligne dans %u pages"
 
-#: commands/vacuumlazy.c:1005
+#: commands/vacuumlazy.c:1045
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -7750,424 +7869,745 @@ msgstr ""
 "%u pages d'index ont été supprimées, %u sont actuellement réutilisables.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1084
+#: commands/vacuumlazy.c:1133
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "« %s » : %u pages tronqués en %u"
 
-#: commands/variable.c:62
-msgid "invalid list syntax for parameter \"datestyle\""
-msgstr "syntaxe de liste invalide pour le paramètre « datestyle »"
-
-#: commands/variable.c:161
+#: commands/variable.c:160
+#: utils/misc/guc.c:8177
 #, c-format
-msgid "unrecognized \"datestyle\" key word: \"%s\""
-msgstr "mot clé « datestyle » non reconnu : « %s »"
+msgid "Unrecognized key word: \"%s\"."
+msgstr "Mot clé non reconnu : « %s »"
 
-#: commands/variable.c:175
-msgid "conflicting \"datestyle\" specifications"
-msgstr "spécifications « datestyle » conflictuelles"
+#: commands/variable.c:172
+msgid "Conflicting \"datestyle\" specifications."
+msgstr "Spécifications « datestyle » conflictuelles"
 
-#: commands/variable.c:285
-msgid "invalid interval value for time zone: month not allowed"
-msgstr "valeur d'intervalle invalide pour le fuseau horaire : les mois ne sont pas autorisés"
+#: commands/variable.c:328
+msgid "Cannot specify months in time zone interval."
+msgstr "Ne peut pas spécifier des mois dans un interval avec fuseau horaire."
 
-#: commands/variable.c:293
-msgid "invalid interval value for time zone: day not allowed"
-msgstr "valeur d'intervalle invalide pour le fuseau horaire : jour non autorisé"
-
-#: commands/variable.c:361
-#: commands/variable.c:493
-#, c-format
-msgid "unrecognized time zone name: \"%s\""
-msgstr "nom de fuseau horaire non reconnu : « %s »"
+#: commands/variable.c:334
+msgid "Cannot specify days in time zone interval."
+msgstr "Ne peut pas spécifier des jours dans un interval avec fuseau horaire."
 
-#: commands/variable.c:370
-#: commands/variable.c:502
+#: commands/variable.c:378
+#: commands/variable.c:517
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "le fuseau horaire « %s » semble utiliser les secondes « leap »"
 
-#: commands/variable.c:372
-#: commands/variable.c:504
+#: commands/variable.c:380
+#: commands/variable.c:519
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL ne supporte pas les secondes « leap »."
 
-#: commands/variable.c:557
+#: commands/variable.c:582
+msgid "cannot set transaction read-write mode inside a read-only transaction"
+msgstr ""
+"ne peut pas initialiser le mode lecture-écriture de la transaction à\n"
+"l'intérieur d'une transaction en lecture seule"
+
+#: commands/variable.c:589
+msgid "transaction read-write mode must be set before any query"
+msgstr ""
+"le mode de transaction lecture/écriture doit être configuré avant d'exécuter\n"
+"la première requête"
+
+#: commands/variable.c:595
+msgid "cannot set transaction read-write mode during recovery"
+msgstr ""
+"ne peut pas initialiser le mode lecture-écriture des transactions lors de la\n"
+"restauration"
+
+#: commands/variable.c:642
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "SET TRANSACTION ISOLATION LEVEL doit être appelé avant toute requête"
 
-#: commands/variable.c:566
+#: commands/variable.c:649
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr ""
 "SET TRANSACTION ISOLATION LEVEL ne doit pas être appelé dans une\n"
 "sous-transaction"
 
-#: commands/variable.c:665
-#: utils/mb/mbutils.c:241
+#: commands/variable.c:655
+msgid "cannot use serializable mode in a hot standby"
+msgstr "ne peut pas utiliser le mode sérialisable sur un serveur en « Hot Standby »"
+
+#: commands/variable.c:656
+msgid "You can use REPEATABLE READ instead."
+msgstr "Vous pouvez utiliser REPEATABLE READ à la place."
+
+#: commands/variable.c:704
+msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
+msgstr ""
+"SET TRANSACTION [NOT] DEFERRABLE ne doit pas être appelé dans une\n"
+"sous-transaction"
+
+#: commands/variable.c:710
+msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
+msgstr "SET TRANSACTION [NOT] DEFERRABLE doit être appelé avant toute requête"
+
+#: commands/variable.c:792
 #, c-format
-msgid "conversion between %s and %s is not supported"
-msgstr "la conversion entre %s et %s n'est pas supportée"
+msgid "Conversion between %s and %s is not supported."
+msgstr "La conversion entre %s et %s n'est pas supportée."
 
-#: commands/variable.c:865
+#: commands/variable.c:799
+msgid "Cannot change \"client_encoding\" now."
+msgstr "Ne peut pas modifier « client_encoding » maintenant."
+
+#: commands/variable.c:969
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "droit refusé pour configurer le rôle « %s »"
 
-#: tcop/fastpath.c:110
-#: tcop/fastpath.c:492
-#: tcop/fastpath.c:622
+#: commands/view.c:143
 #, c-format
-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:304
-#: tcop/postgres.c:957
-#: tcop/postgres.c:1267
-#: tcop/postgres.c:1548
-#: tcop/postgres.c:1990
-#: tcop/postgres.c:2358
-#: tcop/postgres.c:2439
-msgid "current transaction is aborted, commands ignored until end of transaction block"
+msgid "could not determine which collation to use for view column \"%s\""
 msgstr ""
-"la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc\n"
-"de la transaction"
+"n'a pas pu déterminer le collationnement à utiliser pour la colonne « %s »\n"
+"de la vue"
 
-#: tcop/fastpath.c:332
-#, c-format
-msgid "fastpath function call: \"%s\" (OID %u)"
-msgstr "appel de fonction fastpath : « %s » (OID %u)"
+#: commands/view.c:158
+msgid "view must have at least one column"
+msgstr "la vue doit avoir au moins une colonne"
 
-#: tcop/fastpath.c:359
-#: parser/parse_func.c:1654
-msgid "argument to pg_get_expr() must come from system catalogs"
-msgstr "l'argument de pg_get_expr() doit provenir des catalogues systèmes"
+#: commands/view.c:283
+#: commands/view.c:295
+msgid "cannot drop columns from view"
+msgstr "ne peut pas supprimer les colonnes d'une vue"
 
-#: tcop/fastpath.c:418
-#: tcop/postgres.c:1127
-#: tcop/postgres.c:1414
-#: tcop/postgres.c:1831
-#: tcop/postgres.c:2048
+#: commands/view.c:300
 #, c-format
-msgid "duration: %s ms"
-msgstr "durée : %s ms"
+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 »"
 
-#: tcop/fastpath.c:422
+#: commands/view.c:308
 #, c-format
-msgid "duration: %s ms  fastpath function call: \"%s\" (OID %u)"
-msgstr "durée : %s ms, appel de fonction fastpath : « %s » (OID %u)"
+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"
 
-#: tcop/fastpath.c:460
-#: tcop/fastpath.c:587
-#, c-format
-msgid "function call message contains %d arguments but function requires %d"
-msgstr ""
-"le message d'appel de la fonction contient %d arguments mais la fonction en\n"
-"requiert %d"
+#: commands/view.c:447
+msgid "views must not contain SELECT INTO"
+msgstr "les vues ne peuvent pas contenir SELECT INTO"
 
-#: tcop/fastpath.c:468
-#, c-format
-msgid "function call message contains %d argument formats but %d arguments"
-msgstr ""
-"le message d'appel de la fonction contient %d formats d'argument mais %d\n"
-" arguments"
+#: commands/view.c:451
+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"
 
-#: tcop/fastpath.c:555
-#: tcop/fastpath.c:638
-#, c-format
-msgid "incorrect binary data format in function argument %d"
-msgstr "format des données binaires incorrect dans l'argument de la fonction %d"
+#: commands/view.c:479
+msgid "CREATE VIEW specifies more column names than columns"
+msgstr "CREATE VIEW spécifie plus de noms de colonnes que de colonnes"
 
-#: tcop/postgres.c:398
-#: tcop/postgres.c:410
-#: tcop/postgres.c:421
-#: tcop/postgres.c:433
-#: tcop/postgres.c:4156
+#: commands/view.c:487
+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:501
 #, c-format
-msgid "invalid frontend message type %d"
-msgstr "type %d du message de l'interface invalide"
+msgid "view \"%s\" will be a temporary view"
+msgstr "la vue « %s » sera une vue temporaire"
+
+#: commands/seclabel.c:58
+msgid "no security label providers have been loaded"
+msgstr "aucun fournisseur de label de sécurité n'a été chargé"
 
-#: tcop/postgres.c:898
+#: commands/seclabel.c:62
+msgid "must specify provider when multiple security label providers have been loaded"
+msgstr "doit indiquer le fournisseur quand plusieurs fournisseurs de labels de sécurité sont chargés"
+
+#: commands/seclabel.c:80
 #, c-format
-msgid "statement: %s"
-msgstr "instruction : %s"
+msgid "security label provider \"%s\" is not loaded"
+msgstr "le fournisseur « %s » de label de sécurité n'est pas chargé"
 
-#: tcop/postgres.c:1132
+#: commands/extension.c:147
+#: commands/extension.c:2431
 #, c-format
-msgid "duration: %s ms  statement: %s"
-msgstr "durée : %s ms, instruction : %s"
+msgid "extension \"%s\" does not exist"
+msgstr "l'extension « %s » n'existe pas"
 
-#: tcop/postgres.c:1182
+#: commands/extension.c:246
+#: commands/extension.c:255
+#: commands/extension.c:267
+#: commands/extension.c:277
 #, c-format
-msgid "parse %s: %s"
-msgstr "analyse %s : %s"
+msgid "invalid extension name: \"%s\""
+msgstr "nom d'extension invalide : « %s »"
 
-#: tcop/postgres.c:1240
-msgid "cannot insert multiple commands into a prepared statement"
-msgstr "ne peut pas insérer les commandes multiples dans une instruction préparée"
+#: commands/extension.c:247
+msgid "Extension names must not be empty."
+msgstr "Les noms d'extension ne doivent pas être vides."
 
-#: tcop/postgres.c:1419
-#, c-format
-msgid "duration: %s ms  parse %s: %s"
-msgstr "durée : %s ms, analyse %s : %s"
+#: commands/extension.c:256
+msgid "Extension names must not contain \"--\"."
+msgstr "Les noms d'extension ne doivent pas contenir « -- »."
 
-#: tcop/postgres.c:1465
+#: commands/extension.c:268
+msgid "Extension names must not begin or end with \"-\"."
+msgstr "Les noms des extensions ne doivent pas commencer ou finir avec un tiret (« - »)."
+
+#: commands/extension.c:278
+msgid "Extension names must not contain directory separator characters."
+msgstr "Les noms des extensions ne doivent pas contenir des caractères séparateurs de répertoire."
+
+#: commands/extension.c:293
+#: commands/extension.c:302
+#: commands/extension.c:311
+#: commands/extension.c:321
 #, c-format
-msgid "bind %s to %s"
-msgstr "lie %s à %s"
+msgid "invalid extension version name: \"%s\""
+msgstr "nom de version de l'extension invalide :  « %s »"
 
-#: tcop/postgres.c:1484
-#: tcop/postgres.c:2338
-msgid "unnamed prepared statement does not exist"
-msgstr "l'instruction préparée non nommée n'existe pas"
+#: commands/extension.c:294
+msgid "Version names must not be empty."
+msgstr "Les noms de version ne doivent pas être vides."
+
+#: commands/extension.c:303
+msgid "Version names must not contain \"--\"."
+msgstr "Les noms de version ne doivent pas contenir « -- »."
+
+#: commands/extension.c:312
+msgid "Version names must not begin or end with \"-\"."
+msgstr "Les noms de version ne doivent ni commencer ni se terminer avec un tiret."
 
-#: tcop/postgres.c:1526
+#: commands/extension.c:322
+msgid "Version names must not contain directory separator characters."
+msgstr ""
+"Les noms de version ne doivent pas contenir de caractères séparateurs de\n"
+"répertoire."
+
+#: commands/extension.c:472
 #, 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"
+msgid "could not open extension control file \"%s\": %m"
+msgstr "n'a pas pu ouvrir le fichier de contrôle d'extension « %s » : %m"
 
-#: tcop/postgres.c:1532
+#: commands/extension.c:493
+#: commands/extension.c:503
 #, c-format
-msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
+msgid "parameter \"%s\" cannot be set in a secondary extension control file"
 msgstr ""
-"le message bind fournit %d paramètres, mais l'instruction préparée « %s » en\n"
-"requiert %d"
+"le paramètre « %s » ne peut pas être configuré dans un fichier de contrôle\n"
+"secondaire de l'extension"
 
-#: tcop/postgres.c:1697
+#: commands/extension.c:542
 #, c-format
-msgid "incorrect binary data format in bind parameter %d"
-msgstr "format des données binaires incorrect dans le paramètre bind %d"
+msgid "\"%s\" is not a valid encoding name"
+msgstr "« %s » n'est pas un nom d'encodage valide"
 
-#: tcop/postgres.c:1836
+#: commands/extension.c:556
 #, c-format
-msgid "duration: %s ms  bind %s%s%s: %s"
-msgstr "durée : %s ms, lien %s%s%s : %s"
+msgid "parameter \"%s\" must be a list of extension names"
+msgstr "l'argument « %s » doit être une liste de noms d'extension"
 
-#: tcop/postgres.c:1884
-#: tcop/postgres.c:2425
+#: commands/extension.c:563
 #, c-format
-msgid "portal \"%s\" does not exist"
-msgstr "le portail « %s » n'existe pas"
+msgid "unrecognized parameter \"%s\" in file \"%s\""
+msgstr "paramètre « %s » non reconnu dans le fichier « %s »"
 
-#: tcop/postgres.c:1971
-#: tcop/postgres.c:2056
-msgid "execute fetch from"
-msgstr "exécute fetch à partir de"
+#: commands/extension.c:572
+msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
+msgstr "le paramètre « schema » ne peut pas être indiqué quand « relocatable » est vrai"
 
-#: tcop/postgres.c:1972
-#: tcop/postgres.c:2057
-msgid "execute"
+#: commands/extension.c:724
+msgid "transaction control statements are not allowed within an extension script"
+msgstr ""
+"les instructions de contrôle des transactions ne sont pas autorisées dans un\n"
+"script d'extension"
+
+#: commands/extension.c:794
+#, c-format
+msgid "permission denied to create extension \"%s\""
+msgstr "droit refusé pour créer l'extension « %s »"
+
+#: commands/extension.c:796
+msgid "Must be superuser to create this extension."
+msgstr "Doit être super-utilisateur pour créer cette extension."
+
+#: commands/extension.c:800
+#, c-format
+msgid "permission denied to update extension \"%s\""
+msgstr "droit refusé pour mettre à jour l'extension « %s »"
+
+#: commands/extension.c:802
+msgid "Must be superuser to update this extension."
+msgstr "Doit être super-utilisateur pour mettre à jour cette extension."
+
+#: commands/extension.c:1082
+#, c-format
+msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
+msgstr "l'extension « %s » n'a pas de chemin de mise à jour pour aller de la version « %s » à la version « %s »"
+
+#: commands/extension.c:1209
+#, c-format
+msgid "extension \"%s\" already exists, skipping"
+msgstr "l'extension « %s » existe déjà, poursuite du traitement"
+
+#: commands/extension.c:1216
+#, c-format
+msgid "extension \"%s\" already exists"
+msgstr "l'extension « %s » existe déjà"
+
+#: commands/extension.c:1227
+msgid "nested CREATE EXTENSION is not supported"
+msgstr "CREATE EXTENSION imbriqué n'est pas supporté"
+
+#: commands/extension.c:1282
+#: commands/extension.c:2491
+msgid "version to install must be specified"
+msgstr "la version à installer doit être précisée"
+
+#: commands/extension.c:1299
+#, c-format
+msgid "FROM version must be different from installation target version \"%s\""
+msgstr "la version FROM doit être différente de la version cible d'installation « %s »"
+
+#: commands/extension.c:1354
+#, c-format
+msgid "extension \"%s\" must be installed in schema \"%s\""
+msgstr "l'extension « %s » doit être installée dans le schéma « %s »"
+
+#: commands/extension.c:1424
+#: commands/extension.c:2632
+#, c-format
+msgid "required extension \"%s\" is not installed"
+msgstr "l'extension « %s » requise n'est pas installée"
+
+#: commands/extension.c:1593
+#, c-format
+msgid "extension \"%s\" does not exist, skipping"
+msgstr "l'extension « %s » n'existe pas, poursuite du traitement"
+
+#: commands/extension.c:2101
+#, fuzzy
+msgid "pg_extension_config_dump() can only be called from an SQL script executed by CREATE EXTENSION"
+msgstr ""
+"pg_extension_config_dump() peut seulement être appelé à partir d'un script SQL\n"
+"exécuté par CREATE EXTENSION"
+
+#: commands/extension.c:2113
+#, c-format
+msgid "OID %u does not refer to a table"
+msgstr "l'OID %u ne fait pas référence à une table"
+
+#: commands/extension.c:2118
+#, c-format
+msgid "table \"%s\" is not a member of the extension being created"
+msgstr "la table « %s » n'est pas un membre de l'extension en cours de création"
+
+#: commands/extension.c:2301
+#: commands/extension.c:2360
+#, c-format
+msgid "extension \"%s\" does not support SET SCHEMA"
+msgstr "l'extension « %s » ne supporte pas SET SCHEMA"
+
+#: commands/extension.c:2362
+#, c-format
+msgid "%s is not in the extension's schema \"%s\""
+msgstr "%s n'est pas dans le schéma « %s » de l'extension"
+
+#: commands/extension.c:2411
+msgid "nested ALTER EXTENSION is not supported"
+msgstr "un ALTER EXTENSION imbriqué n'est pas supporté"
+
+#: commands/extension.c:2502
+#, c-format
+msgid "version \"%s\" of extension \"%s\" is already installed"
+msgstr "la version « %s » de l'extension « %s » est déjà installée"
+
+#: commands/extension.c:2725
+#, c-format
+msgid "%s is already a member of extension \"%s\""
+msgstr "%s est déjà un membre de l'extension « %s »"
+
+#: commands/extension.c:2742
+#, c-format
+msgid "%s is not a member of extension \"%s\""
+msgstr "%s n'est pas un membre de l'extension « %s »"
+
+#: commands/collationcmds.c:81
+#, c-format
+msgid "collation attribute \"%s\" not recognized"
+msgstr "attribut de collationnement « %s » non reconnu"
+
+#: commands/collationcmds.c:126
+msgid "parameter \"lc_collate\" parameter must be specified"
+msgstr "le paramètre « lc_collate » doit être spécifié"
+
+#: commands/collationcmds.c:131
+msgid "parameter \"lc_ctype\" must be specified"
+msgstr "le paramètre « lc_ctype » doit être spécifié"
+
+#: commands/collationcmds.c:177
+#, c-format
+msgid "collation \"%s\" does not exist, skipping"
+msgstr "le collationnement « %s » n'existe pas, poursuite du traitement"
+
+#: commands/collationcmds.c:237
+#: commands/collationcmds.c:416
+#, c-format
+msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
+msgstr "le collationnament « %s » pour l'encodage « %s » existe déjà dans le schéma « %s »"
+
+#: commands/collationcmds.c:249
+#: commands/collationcmds.c:428
+#, c-format
+msgid "collation \"%s\" already exists in schema \"%s\""
+msgstr "le collationnement « %s » existe déjà dans le schéma « %s »"
+
+#: tcop/fastpath.c:109
+#: tcop/fastpath.c:485
+#: tcop/fastpath.c:615
+#, c-format
+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:303
+#: tcop/postgres.c:917
+#: tcop/postgres.c:1227
+#: tcop/postgres.c:1508
+#: tcop/postgres.c:1950
+#: tcop/postgres.c:2318
+#: tcop/postgres.c:2399
+msgid "current transaction is aborted, commands ignored until end of transaction block"
+msgstr ""
+"la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc\n"
+"de la transaction"
+
+#: tcop/fastpath.c:331
+#, c-format
+msgid "fastpath function call: \"%s\" (OID %u)"
+msgstr "appel de fonction fastpath : « %s » (OID %u)"
+
+#: tcop/fastpath.c:411
+#: tcop/postgres.c:1087
+#: tcop/postgres.c:1374
+#: tcop/postgres.c:1791
+#: tcop/postgres.c:2008
+#, c-format
+msgid "duration: %s ms"
+msgstr "durée : %s ms"
+
+#: tcop/fastpath.c:415
+#, c-format
+msgid "duration: %s ms  fastpath function call: \"%s\" (OID %u)"
+msgstr "durée : %s ms, appel de fonction fastpath : « %s » (OID %u)"
+
+#: tcop/fastpath.c:453
+#: tcop/fastpath.c:580
+#, c-format
+msgid "function call message contains %d arguments but function requires %d"
+msgstr ""
+"le message d'appel de la fonction contient %d arguments mais la fonction en\n"
+"requiert %d"
+
+#: tcop/fastpath.c:461
+#, c-format
+msgid "function call message contains %d argument formats but %d arguments"
+msgstr ""
+"le message d'appel de la fonction contient %d formats d'argument mais %d\n"
+" arguments"
+
+#: tcop/fastpath.c:548
+#: tcop/fastpath.c:631
+#, c-format
+msgid "incorrect binary data format in function argument %d"
+msgstr "format des données binaires incorrect dans l'argument de la fonction %d"
+
+#: tcop/postgres.c:399
+#: tcop/postgres.c:411
+#: tcop/postgres.c:422
+#: tcop/postgres.c:434
+#: tcop/postgres.c:4150
+#, c-format
+msgid "invalid frontend message type %d"
+msgstr "type %d du message de l'interface invalide"
+
+#: tcop/postgres.c:858
+#, c-format
+msgid "statement: %s"
+msgstr "instruction : %s"
+
+#: tcop/postgres.c:1092
+#, c-format
+msgid "duration: %s ms  statement: %s"
+msgstr "durée : %s ms, instruction : %s"
+
+#: tcop/postgres.c:1142
+#, c-format
+msgid "parse %s: %s"
+msgstr "analyse %s : %s"
+
+#: tcop/postgres.c:1200
+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:1379
+#, c-format
+msgid "duration: %s ms  parse %s: %s"
+msgstr "durée : %s ms, analyse %s : %s"
+
+#: tcop/postgres.c:1425
+#, c-format
+msgid "bind %s to %s"
+msgstr "lie %s à %s"
+
+#: tcop/postgres.c:1444
+#: tcop/postgres.c:2298
+msgid "unnamed prepared statement does not exist"
+msgstr "l'instruction préparée non nommée n'existe pas"
+
+#: tcop/postgres.c:1486
+#, 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:1492
+#, 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:1657
+#, 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:1796
+#, c-format
+msgid "duration: %s ms  bind %s%s%s: %s"
+msgstr "durée : %s ms, lien %s%s%s : %s"
+
+#: tcop/postgres.c:1844
+#: tcop/postgres.c:2385
+#, c-format
+msgid "portal \"%s\" does not exist"
+msgstr "le portail « %s » n'existe pas"
+
+#: tcop/postgres.c:1931
+#: tcop/postgres.c:2016
+msgid "execute fetch from"
+msgstr "exécute fetch à partir de"
+
+#: tcop/postgres.c:1932
+#: tcop/postgres.c:2017
+msgid "execute"
 msgstr "exécute"
 
-#: tcop/postgres.c:1969
+#: tcop/postgres.c:1929
 #, c-format
 msgid "%s %s%s%s: %s"
 msgstr "%s %s%s%s: %s"
 
-#: tcop/postgres.c:2053
+#: tcop/postgres.c:2013
 #, c-format
 msgid "duration: %s ms  %s %s%s%s: %s"
 msgstr "durée : %s ms  %s %s%s%s: %s"
 
-#: tcop/postgres.c:2179
+#: tcop/postgres.c:2139
 #, c-format
 msgid "prepare: %s"
 msgstr "préparation : %s"
 
-#: tcop/postgres.c:2242
+#: tcop/postgres.c:2202
 #, c-format
 msgid "parameters: %s"
 msgstr "paramètres : %s"
 
-#: tcop/postgres.c:2261
+#: tcop/postgres.c:2221
 msgid "abort reason: recovery conflict"
 msgstr "raison de l'annulation : conflit de restauration"
 
-#: tcop/postgres.c:2277
+#: tcop/postgres.c:2237
 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:2280
+#: tcop/postgres.c:2240
 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:2283
+#: tcop/postgres.c:2243
 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:2286
+#: tcop/postgres.c:2246
 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:2289
-#: storage/ipc/standby.c:494
+#: tcop/postgres.c:2249
+#: storage/ipc/standby.c:490
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr "La transaction de l'utilisateur causait un verrou mortel lors de la restauration."
 
-#: tcop/postgres.c:2292
+#: tcop/postgres.c:2252
 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:2626
+#: tcop/postgres.c:2586
 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:2627
+#: tcop/postgres.c:2587
 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 ""
 "Le postmaster a commandé à ce processus serveur d'annuler la transaction\n"
 "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:2631
-#: tcop/postgres.c:2963
+#: tcop/postgres.c:2591
+#: tcop/postgres.c:2939
 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:2735
+#: tcop/postgres.c:2701
 msgid "floating-point exception"
 msgstr "exception dû à une virgule flottante"
 
-#: tcop/postgres.c:2736
+#: tcop/postgres.c:2702
 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 ""
 "Une opération invalide sur les virgules flottantes a été signalée.\n"
 "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:2903
+#: tcop/postgres.c:2870
 msgid "terminating autovacuum process due to administrator command"
 msgstr "arrêt du processus autovacuum suite à la demande de l'administrateur"
 
-#: tcop/postgres.c:2907
-#: tcop/postgres.c:2912
-#: tcop/postgres.c:2961
+#: tcop/postgres.c:2876
+#: tcop/postgres.c:2886
+#: tcop/postgres.c:2937
 msgid "terminating connection due to conflict with recovery"
 msgstr "arrêt de la connexion à cause d'un conflit avec la restauration"
 
-#: tcop/postgres.c:2917
+#: tcop/postgres.c:2892
 msgid "terminating connection due to administrator command"
 msgstr "arrêt des connexions suite à la demande de l'administrateur"
 
-#: tcop/postgres.c:2932
+#: tcop/postgres.c:2907
 msgid "canceling authentication due to timeout"
 msgstr "annulation de l'authentification à cause du délai écoulé"
 
-#: tcop/postgres.c:2941
+#: tcop/postgres.c:2916
 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:2950
+#: tcop/postgres.c:2925
 msgid "canceling autovacuum task"
 msgstr "annulation de la tâche d'autovacuum"
 
-#: tcop/postgres.c:2968
-#: storage/ipc/standby.c:493
+#: tcop/postgres.c:2944
+#: storage/ipc/standby.c:489
 msgid "canceling statement due to conflict with recovery"
 msgstr "annulation de la requête à cause d'un conflit avec la restauration"
 
-#: tcop/postgres.c:2984
+#: tcop/postgres.c:2960
 msgid "canceling statement due to user request"
 msgstr "annulation de la requête à la demande de l'utilisateur"
 
-#: tcop/postgres.c:3060
-#: tcop/postgres.c:3081
+#: tcop/postgres.c:3041
+#: tcop/postgres.c:3063
 msgid "stack depth limit exceeded"
 msgstr "dépassement de limite (en profondeur) de la pile"
 
-#: tcop/postgres.c:3061
-#: tcop/postgres.c:3082
-msgid "Increase the configuration parameter \"max_stack_depth\", after ensuring the platform's stack depth limit is adequate."
+#: tcop/postgres.c:3042
+#: tcop/postgres.c:3064
+#, c-format
+msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), after ensuring the platform's stack depth limit is adequate."
 msgstr ""
-"Augmenter le paramètre « max_stack_depth » après vous être assuré que la\n"
-"limite de profondeur de la pile de la plateforme est adéquate."
+"Augmenter le paramètre « max_stack_depth » (actuellement %d Ko) après vous\n"
+"être assuré que la limite de profondeur de la pile de la plateforme est\n"
+"adéquate."
 
-#: tcop/postgres.c:3099
+#: tcop/postgres.c:3080
 #, c-format
-msgid "\"max_stack_depth\" must not exceed %ldkB"
-msgstr "« max_stack_depth » ne doit pas dépasser %ld Ko"
+msgid "\"max_stack_depth\" must not exceed %ldkB."
+msgstr "« max_stack_depth » ne doit pas dépasser %ld Ko."
 
-#: tcop/postgres.c:3101
+#: tcop/postgres.c:3082
 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:3424
+#: tcop/postgres.c:3417
 msgid "invalid command-line arguments for server process"
 msgstr "arguments invalides en ligne de commande pour le processus serveur"
 
-#: tcop/postgres.c:3425
-#: tcop/postgres.c:3431
+#: tcop/postgres.c:3418
+#: tcop/postgres.c:3424
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Essayez « %s --help » pour plus d'informations."
 
-#: tcop/postgres.c:3429
+#: tcop/postgres.c:3422
 #, c-format
 msgid "%s: invalid command-line arguments"
 msgstr "%s : arguments invalides en ligne de commande"
 
-#: tcop/postgres.c:3528
+#: tcop/postgres.c:3521
 #, 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:4066
+#: tcop/postgres.c:4060
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "sous-type %d du message CLOSE invalide"
 
-#: tcop/postgres.c:4099
+#: tcop/postgres.c:4093
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "sous-type %d du message DESCRIBE invalide"
 
-#: tcop/postgres.c:4330
+#: tcop/postgres.c:4327
 #, c-format
 msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
 msgstr ""
 "déconnexion : durée de la session : %d:%02d:%02d.%03d\n"
 "utilisateur=%s base=%s hôte=%s%s%s"
 
-#: tcop/pquery.c:670
+#: tcop/pquery.c:660
 #, c-format
 msgid "bind message has %d result formats but query has %d columns"
 msgstr "le message bind a %d formats de résultat mais la requête a %d colonnes"
 
-#: tcop/pquery.c:978
+#: tcop/pquery.c:969
 msgid "cursor can only scan forward"
 msgstr "le curseur peut seulement parcourir en avant"
 
-#: tcop/pquery.c:979
+#: tcop/pquery.c:970
 msgid "Declare it with SCROLL option to enable backward scan."
 msgstr "Déclarez-le avec l'option SCROLL pour activer le parcours inverse."
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:242
+#: tcop/utility.c:253
 #, c-format
 msgid "cannot execute %s in a read-only transaction"
 msgstr "ne peut pas exécuter %s dans une transaction en lecture seule"
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:261
+#: tcop/utility.c:272
 #, c-format
 msgid "cannot execute %s during recovery"
 msgstr "ne peut pas exécuté %s lors de la restauration"
 
 #. translator: %s is name of a SQL command, eg PREPARE
-#: tcop/utility.c:279
+#: tcop/utility.c:290
 #, c-format
 msgid "cannot execute %s within security-restricted operation"
 msgstr ""
 "ne peut pas exécuter %s à l'intérieur d'une fonction restreinte\n"
 "pour sécurité"
 
-#: tcop/utility.c:1129
+#: tcop/utility.c:1194
 msgid "must be superuser to do CHECKPOINT"
 msgstr "doit être super-utilisateur pour exécuter un point de vérification (CHECKPOINT)"
 
@@ -8203,80 +8643,132 @@ 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:230
-#: executor/execQual.c:1024
+#: executor/execQual.c:1033
 #, 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:242
-#: executor/execQual.c:1035
+#: executor/execQual.c:1045
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "aucune valeur trouvée pour le paramètre %d"
 
-#: executor/execMain.c:874
+#: executor/execMain.c:995
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "ne peut pas modifier la séquence « %s »"
 
-#: executor/execMain.c:880
+#: executor/execMain.c:1001
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "ne peut pas modifier la relation TOAST « %s »"
 
-#: executor/execMain.c:886
+#: executor/execMain.c:1011
+#, c-format
+msgid "cannot insert into view \"%s\""
+msgstr "ne peut pas insérer dans la vue « %s »"
+
+#: executor/execMain.c:1013
+msgid "You need an unconditional ON INSERT DO INSTEAD rule or an INSTEAD OF INSERT trigger."
+msgstr "Vous avez besoin d'une règle ON INSERT DO INSTEAD sans condition ou d'un trigger INSTEAD OF INSERT."
+
+#: executor/execMain.c:1019
+#, c-format
+msgid "cannot update view \"%s\""
+msgstr "ne peut pas mettre à jour la vue « %s »"
+
+#: executor/execMain.c:1021
+msgid "You need an unconditional ON UPDATE DO INSTEAD rule or an INSTEAD OF UPDATE trigger."
+msgstr "Vous avez besoin d'une règle non conditionnelle ON UPDATE DO INSTEAD ou d'un trigger INSTEAD OF UPDATE."
+
+#: executor/execMain.c:1027
+#, c-format
+msgid "cannot delete from view \"%s\""
+msgstr "ne peut pas supprimer à partir de la vue « %s »"
+
+#: executor/execMain.c:1029
+msgid "You need an unconditional ON DELETE DO INSTEAD rule or an INSTEAD OF DELETE trigger."
+msgstr "Vous avez besoin d'une règle inconditionnelle ON DELETE DO INSTEAD ou d'un trigger INSTEAD OF DELETE."
+
+#: executor/execMain.c:1039
 #, c-format
-msgid "cannot change view \"%s\""
-msgstr "ne peut pas modifier la vue « %s »"
+msgid "cannot change foreign table \"%s\""
+msgstr "ne peut pas modifier la table distante « %s »"
 
-#: executor/execMain.c:892
+#: executor/execMain.c:1045
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "ne peut pas modifier la relation « %s »"
 
-#: executor/execMain.c:1317
+#: executor/execMain.c:1069
+#, c-format
+msgid "cannot lock rows in sequence \"%s\""
+msgstr "ne peut pas verrouiller les lignes dans la séquence « %s »"
+
+#: executor/execMain.c:1076
+#, 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:1083
+#, c-format
+msgid "cannot lock rows in view \"%s\""
+msgstr "ne peut pas verrouiller les lignes dans la vue « %s »"
+
+#: executor/execMain.c:1090
+#, c-format
+msgid "cannot lock rows in foreign table \"%s\""
+msgstr "ne peut pas verrouiller la table distante « %s »"
+
+#: executor/execMain.c:1096
+#, c-format
+msgid "cannot lock rows in relation \"%s\""
+msgstr "n'a pas pu verrouiller les lignes dans la relation « %s »"
+
+#: executor/execMain.c:1567
 #, 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:1329
+#: executor/execMain.c:1579
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "la nouvelle ligne viole la contrainte de vérification « %s » de la relation « %s »"
 
-#: executor/execQual.c:296
-#: executor/execQual.c:324
-#: executor/execQual.c:2988
-#: utils/adt/array_userfuncs.c:428
-#: utils/adt/arrayfuncs.c:204
-#: utils/adt/arrayfuncs.c:483
-#: utils/adt/arrayfuncs.c:1218
-#: utils/adt/arrayfuncs.c:2890
-#: utils/adt/arrayfuncs.c:4570
+#: executor/execQual.c:298
+#: executor/execQual.c:326
+#: executor/execQual.c:2987
+#: utils/adt/array_userfuncs.c:430
+#: utils/adt/arrayfuncs.c:228
+#: utils/adt/arrayfuncs.c:507
+#: utils/adt/arrayfuncs.c:1242
+#: utils/adt/arrayfuncs.c:2915
+#: utils/adt/arrayfuncs.c:4940
 #, 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)"
 
-#: executor/execQual.c:309
-#: executor/execQual.c:337
+#: executor/execQual.c:311
+#: executor/execQual.c:339
 msgid "array subscript in assignment must not be null"
 msgstr "l'indice du tableau dans l'affectation ne doit pas être NULL"
 
-#: executor/execQual.c:633
-#: executor/execQual.c:3906
+#: executor/execQual.c:635
+#: executor/execQual.c:3905
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "l'attribut %d a un type invalide"
 
-#: executor/execQual.c:634
-#: executor/execQual.c:3907
+#: executor/execQual.c:636
+#: executor/execQual.c:3906
 #, c-format
 msgid "Table has type %s, but query expects %s."
 msgstr "La table a le type %s alors que la requête attend %s."
 
-#: executor/execQual.c:698
-#: executor/execQual.c:717
-#: executor/execQual.c:916
+#: executor/execQual.c:700
+#: executor/execQual.c:719
+#: executor/execQual.c:918
 #: executor/nodeModifyTable.c:82
 #: executor/nodeModifyTable.c:92
 #: executor/nodeModifyTable.c:109
@@ -8284,296 +8776,295 @@ msgstr "La table a le type %s alors que la requ
 msgid "table row type and query-specified row type do not match"
 msgstr "Le type de ligne de la table et celui spécifié par la requête ne correspondent pas"
 
-#: executor/execQual.c:699
+#: executor/execQual.c:701
 #, c-format
 msgid "Table row contains %d attribute, but query expects %d."
 msgid_plural "Table row contains %d attributes, but query expects %d."
 msgstr[0] "La ligne de la table contient %d attribut alors que la requête en attend %d."
 msgstr[1] "La ligne de la table contient %d attributs alors que la requête en attend %d."
 
-#: executor/execQual.c:718
+#: executor/execQual.c:720
 #: executor/nodeModifyTable.c:93
 #, c-format
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr "La table a le type %s à la position ordinale %d alors que la requête attend %s."
 
-#: executor/execQual.c:917
-#: executor/execQual.c:1505
+#: executor/execQual.c:919
+#: executor/execQual.c:1519
 #, c-format
 msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
 msgstr ""
 "Le stockage physique ne correspond pas à l'attribut supprimé à la position\n"
 "ordinale %d."
 
-#: executor/execQual.c:1189
-#: parser/parse_func.c:97
-#: parser/parse_func.c:329
-#: parser/parse_func.c:645
+#: executor/execQual.c:1198
+#: parser/parse_func.c:91
+#: parser/parse_func.c:323
+#: parser/parse_func.c:640
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
 msgstr[0] "ne peut pas passer plus de %d argument à une fonction"
 msgstr[1] "ne peut pas passer plus de %d arguments à une fonction"
 
-#: executor/execQual.c:1373
+#: executor/execQual.c:1387
 msgid "functions and operators can take at most one set argument"
 msgstr "les fonctions et opérateurs peuvent prendre au plus un argument d'ensemble"
 
-#: executor/execQual.c:1423
+#: executor/execQual.c:1437
 msgid "function returning setof record called in context that cannot accept type record"
 msgstr ""
 "la fonction renvoyant des lignes a été appelée dans un contexte qui\n"
 "n'accepte pas un ensemble"
 
-#: executor/execQual.c:1478
-#: executor/execQual.c:1494
-#: executor/execQual.c:1504
+#: executor/execQual.c:1492
+#: executor/execQual.c:1508
+#: executor/execQual.c:1518
 msgid "function return row and query-specified return row do not match"
 msgstr "la ligne de retour spécifiée par la requête et la ligne de retour de la fonction ne correspondent pas"
 
-#: executor/execQual.c:1479
+#: executor/execQual.c:1493
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
 msgstr[0] "La ligne renvoyée contient %d attribut mais la requête en attend %d."
 msgstr[1] "La ligne renvoyée contient %d attributs mais la requête en attend %d."
 
-#: executor/execQual.c:1495
+#: executor/execQual.c:1509
 #, c-format
 msgid "Returned type %s at ordinal position %d, but query expects %s."
 msgstr "A renvoyé le type %s à la position ordinale %d, mais la requête attend %s."
 
-#: executor/execQual.c:1748
-#: executor/execQual.c:2171
+#: executor/execQual.c:1745
+#: executor/execQual.c:2170
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "le protocole de la fonction table pour le mode matérialisé n'a pas été respecté"
 
-#: executor/execQual.c:1768
-#: executor/execQual.c:2178
+#: executor/execQual.c:1765
+#: executor/execQual.c:2177
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "returnMode de la fonction table non reconnu : %d"
 
-#: executor/execQual.c:2088
+#: executor/execQual.c:2087
 msgid "function returning set of rows cannot return null value"
 msgstr ""
 "la fonction renvoyant un ensemble de lignes ne peut pas renvoyer une valeur\n"
 "NULL"
 
-#: executor/execQual.c:2145
+#: executor/execQual.c:2144
 msgid "rows returned by function are not all of the same row type"
 msgstr "les lignes renvoyées par la fonction ne sont pas toutes du même type ligne"
 
-#: executor/execQual.c:2338
+#: executor/execQual.c:2335
 msgid "IS DISTINCT FROM does not support set arguments"
 msgstr "IS DISTINCT FROM ne supporte pas les arguments d'ensemble"
 
-#: executor/execQual.c:2413
+#: executor/execQual.c:2412
 msgid "op ANY/ALL (array) does not support set arguments"
 msgstr ""
 "l'opérateur ANY/ALL (pour les types array) ne supporte pas les arguments\n"
 "d'ensemble"
 
-#: executor/execQual.c:2966
+#: executor/execQual.c:2965
 msgid "cannot merge incompatible arrays"
 msgstr "ne peut pas fusionner les tableaux incompatibles"
 
-#: executor/execQual.c:2967
+#: executor/execQual.c:2966
 #, c-format
 msgid "Array with element type %s cannot be included in ARRAY construct with element type %s."
 msgstr "Le tableau avec le type d'élément %s ne peut pas être inclus dans la construction ARRAY avec le type d'élément %s."
 
-#: executor/execQual.c:3008
-#: executor/execQual.c:3035
-#: utils/adt/arrayfuncs.c:518
+#: executor/execQual.c:3007
+#: executor/execQual.c:3034
+#: utils/adt/arrayfuncs.c:542
 msgid "multidimensional arrays must have array expressions with matching dimensions"
 msgstr ""
 "les tableaux multidimensionnels doivent avoir des expressions de tableaux\n"
 "avec les dimensions correspondantes"
 
-#: executor/execQual.c:3550
+#: executor/execQual.c:3549
 msgid "NULLIF does not support set arguments"
 msgstr "NULLIF ne supporte pas les arguments d'ensemble"
 
-#: executor/execQual.c:3780
+#: executor/execQual.c:3779
 #: utils/adt/domains.c:128
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "le domaine %s n'autorise pas les valeurs NULL"
 
-#: executor/execQual.c:3809
+#: executor/execQual.c:3808
 #: utils/adt/domains.c:164
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "la valeur pour le domaine %s viole la contrainte de vérification « %s »"
 
-#: executor/execQual.c:4277
-#: optimizer/util/clauses.c:572
-#: parser/parse_agg.c:160
+#: executor/execQual.c:4288
+#: optimizer/util/clauses.c:608
+#: parser/parse_agg.c:164
 msgid "aggregate function calls cannot be nested"
 msgstr "les appels à la fonction d'agrégat ne peuvent pas être imbriqués"
 
-#: executor/execQual.c:4315
-#: optimizer/util/clauses.c:646
-#: parser/parse_agg.c:207
+#: executor/execQual.c:4326
+#: optimizer/util/clauses.c:682
+#: parser/parse_agg.c:211
 msgid "window function calls cannot be nested"
 msgstr "les appels à la fonction window ne peuvent pas être imbriqués"
 
-#: executor/execQual.c:4515
+#: executor/execQual.c:4538
 msgid "target type is not an array"
 msgstr "le type cible n'est pas un tableau"
 
-#: executor/execQual.c:4628
+#: executor/execQual.c:4651
 #, c-format
 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:4759
-#: utils/adt/arrayfuncs.c:3310
-#: utils/adt/rowtypes.c:913
+#: executor/execQual.c:4786
+#: utils/adt/arrayfuncs.c:3378
+#: utils/adt/rowtypes.c:922
 #, 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"
 
-#: executor/execUtils.c:1296
+#: executor/execUtils.c:1304
 #, c-format
 msgid "could not create exclusion constraint \"%s\""
 msgstr "n'a pas pu créer la contrainte d'exclusion « %s »"
 
-#: executor/execUtils.c:1298
+#: executor/execUtils.c:1306
 #, c-format
 msgid "Key %s conflicts with key %s."
 msgstr "La clé %s est en conflit avec la clé %s."
 
-#: executor/execUtils.c:1303
+#: executor/execUtils.c:1311
 #, c-format
 msgid "conflicting key value violates exclusion constraint \"%s\""
 msgstr "la valeur d'une clé en conflit rompt la contrainte d'exclusion « %s »"
 
-#: executor/execUtils.c:1305
+#: executor/execUtils.c:1313
 #, c-format
 msgid "Key %s conflicts with existing key %s."
 msgstr "La clé %s est en conflit avec la clé existante %s."
 
+#: executor/functions.c:195
+#, c-format
+msgid "could not determine actual type of argument declared %s"
+msgstr "n'a pas pu déterminer le type actuel de l'argument déclaré %s"
+
 #. translator: %s is a SQL statement name
-#: executor/functions.c:154
+#: executor/functions.c:295
 #, c-format
 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:161
+#: executor/functions.c:302
 #: executor/spi.c:1256
-#: executor/spi.c:1846
+#: executor/spi.c:1891
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s n'est pas autorisé dans une fonction non volatile"
 
-#: executor/functions.c:259
+#: executor/functions.c:408
 #, c-format
 msgid "could not determine actual result type for function declared to return type %s"
 msgstr ""
 "n'a pas pu déterminer le type du résultat actuel pour la fonction déclarant\n"
 "renvoyer le type %s"
 
-#: executor/functions.c:298
-#, c-format
-msgid "could not determine actual type of argument declared %s"
-msgstr "n'a pas pu déterminer le type actuel de l'argument déclaré %s"
-
-#: executor/functions.c:923
+#: executor/functions.c:1146
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "fonction SQL « %s », instruction %d"
 
-#: executor/functions.c:946
+#: executor/functions.c:1172
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "fonction SQL « %s » lors du lancement"
 
-#: executor/functions.c:1091
-#: executor/functions.c:1127
-#: executor/functions.c:1139
-#: executor/functions.c:1250
-#: executor/functions.c:1282
-#: executor/functions.c:1311
+#: executor/functions.c:1332
+#: executor/functions.c:1368
+#: executor/functions.c:1380
+#: executor/functions.c:1493
+#: executor/functions.c:1526
+#: executor/functions.c:1556
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "le type de retour ne correspond pas à la fonction déclarant renvoyer %s"
 
-#: executor/functions.c:1093
+#: executor/functions.c:1334
 msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
 msgstr ""
 "L'instruction finale de la fonction doit être un SELECT ou un\n"
 "INSERT/UPDATE/DELETE RETURNING."
 
-#: executor/functions.c:1129
+#: executor/functions.c:1370
 msgid "Final statement must return exactly one column."
 msgstr "L'instruction finale doit renvoyer exactement une colonne."
 
-#: executor/functions.c:1141
+#: executor/functions.c:1382
 #, c-format
 msgid "Actual return type is %s."
 msgstr "Le code de retour réel est %s."
 
-#: executor/functions.c:1252
+#: executor/functions.c:1495
 msgid "Final statement returns too many columns."
 msgstr "L'instruction finale renvoie beaucoup trop de colonnes."
 
-#: executor/functions.c:1284
+#: executor/functions.c:1528
 #, c-format
 msgid "Final statement returns %s instead of %s at column %d."
 msgstr "L'instruction finale renvoie %s au lieu de %s pour la colonne %d."
 
-#: executor/functions.c:1313
+#: executor/functions.c:1558
 msgid "Final statement returns too few columns."
 msgstr "L'instruction finale renvoie trop peu de colonnes."
 
-#: executor/functions.c:1361
+#: executor/functions.c:1607
 #, c-format
 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:1717
-#: executor/nodeWindowAgg.c:1842
+#: executor/nodeAgg.c:1730
+#: executor/nodeWindowAgg.c:1851
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr ""
 "L'agrégat %u a besoin d'avoir un type en entrée compatible avec le type en\n"
 "transition"
 
-#: executor/nodeHashjoin.c:721
-#: executor/nodeHashjoin.c:755
+#: executor/nodeHashjoin.c:814
+#: executor/nodeHashjoin.c:844
 #, c-format
 msgid "could not rewind hash-join temporary file: %m"
 msgstr "n'a pas pu revenir au début du fichier temporaire de la jointure hâchée : %m"
 
-#: executor/nodeHashjoin.c:789
-#: executor/nodeHashjoin.c:795
+#: executor/nodeHashjoin.c:879
+#: executor/nodeHashjoin.c:885
 #, c-format
 msgid "could not write to hash-join temporary file: %m"
 msgstr "n'a pas pu écrire le fichier temporaire de la jointure hâchée : %m"
 
-#: executor/nodeHashjoin.c:829
-#: executor/nodeHashjoin.c:839
+#: executor/nodeHashjoin.c:919
+#: executor/nodeHashjoin.c:929
 #, c-format
 msgid "could not read from hash-join temporary file: %m"
 msgstr "n'a pas pu lire le fichier temporaire contenant la jointure hâchée : %m"
 
-#: executor/nodeLimit.c:251
+#: executor/nodeLimit.c:253
 msgid "OFFSET must not be negative"
 msgstr "OFFSET ne doit pas être négatif"
 
-#: executor/nodeLimit.c:278
+#: executor/nodeLimit.c:280
 msgid "LIMIT must not be negative"
 msgstr "LIMIT ne doit pas être négative"
 
-#: executor/nodeMergejoin.c:1586
+#: executor/nodeMergejoin.c:1604
 msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
 msgstr "RIGHT JOIN est supporté seulement avec les conditions de jointures MERGE"
 
-#: executor/nodeMergejoin.c:1606
-#: optimizer/path/joinpath.c:1072
+#: executor/nodeMergejoin.c:1624
 msgid "FULL JOIN is only supported with merge-joinable join conditions"
 msgstr "FULL JOIN est supporté seulement avec les conditions de jointures MERGE"
 
@@ -8598,19 +9089,19 @@ msgstr "La requ
 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"
 
-#: executor/nodeWindowAgg.c:1233
+#: executor/nodeWindowAgg.c:1238
 msgid "frame starting offset must not be null"
 msgstr "l'offset de début de frame ne doit pas être NULL"
 
-#: executor/nodeWindowAgg.c:1246
+#: executor/nodeWindowAgg.c:1251
 msgid "frame starting offset must not be negative"
 msgstr "l'offset de début de frame ne doit pas être négatif"
 
-#: executor/nodeWindowAgg.c:1259
+#: executor/nodeWindowAgg.c:1264
 msgid "frame ending offset must not be null"
 msgstr "l'offset de fin de frame ne doit pas être NULL"
 
-#: executor/nodeWindowAgg.c:1272
+#: executor/nodeWindowAgg.c:1277
 msgid "frame ending offset must not be negative"
 msgstr "l'offset de fin de frame ne doit pas être négatif"
 
@@ -8638,31 +9129,36 @@ msgid "cannot open %s query as cursor"
 msgstr "ne peut pas ouvrir la requête %s comme curseur"
 
 #: executor/spi.c:1233
-#: parser/analyze.c:1978
+#: parser/analyze.c:2206
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE n'est pas supporté"
 
 #: executor/spi.c:1234
-#: parser/analyze.c:1979
+#: parser/analyze.c:2207
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Les curseurs déplaçables doivent être en lecture seule (READ ONLY)."
 
-#: executor/spi.c:2142
+#: executor/spi.c:2157
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "instruction SQL « %s »"
 
-#: foreign/foreign.c:230
+#: foreign/foreign.c:198
 #, c-format
 msgid "user mapping not found for \"%s\""
 msgstr "correspondance utilisateur non trouvée pour « %s »"
 
-#: foreign/foreign.c:408
+#: foreign/foreign.c:321
+#, c-format
+msgid "foreign-data wrapper \"%s\" has no handler"
+msgstr "le wrapper de données distantes « %s » n'a pas de gestionnaire"
+
+#: foreign/foreign.c:489
 #, c-format
 msgid "invalid option \"%s\""
 msgstr "option « %s » invalide"
 
-#: foreign/foreign.c:409
+#: foreign/foreign.c:490
 #, c-format
 msgid "Valid options in this context are: %s"
 msgstr "Les options valides dans ce contexte sont %s"
@@ -8672,529 +9168,518 @@ msgstr "Les options valides dans ce contexte sont %s"
 msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
 msgstr "Ne peut pas agrandir de %d octets le tampon de chaîne contenant déjà %d octets"
 
-#: libpq/auth.c:255
+#: libpq/auth.c:257
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "authentification échouée pour l'utilisateur « %s » : hôte rejeté"
 
-#: libpq/auth.c:258
+#: libpq/auth.c:260
 #, c-format
 msgid "Kerberos 5 authentication failed for user \"%s\""
 msgstr "authentification Kerberos 5 échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:261
+#: libpq/auth.c:263
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "authentification « trust » échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:264
+#: libpq/auth.c:266
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "authentification Ident échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:268
+#: libpq/auth.c:269
+#, c-format
+msgid "Peer authentication failed for user \"%s\""
+msgstr "authentification peer échouée pour l'utilisateur « %s »"
+
+#: libpq/auth.c:273
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "authentification par mot de passe échouée pour l'utilisateur  « %s »"
 
-#: libpq/auth.c:273
+#: libpq/auth.c:278
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "authentification GSSAPI échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:276
+#: libpq/auth.c:281
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "authentification SSPI échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:279
+#: libpq/auth.c:284
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "authentification PAM échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:282
+#: libpq/auth.c:287
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "authentification LDAP échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:285
+#: libpq/auth.c:290
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "authentification par le certificat échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:288
+#: libpq/auth.c:293
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "authentification RADIUS échouée pour l'utilisateur « %s »"
 
-#: libpq/auth.c:291
+#: libpq/auth.c:296
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr ""
 "authentification échouée pour l'utilisateur « %s » :\n"
 "méthode d'authentification invalide"
 
-#: libpq/auth.c:320
+#: libpq/auth.c:325
 msgid "missing or erroneous pg_hba.conf file"
 msgstr "fichier pg_hba.conf manquant ou erroné"
 
-#: libpq/auth.c:321
+#: libpq/auth.c:326
 msgid "See server log for details."
 msgstr "Voir les journaux applicatifs du serveur pour plus de détails."
 
-#: libpq/auth.c:351
+#: libpq/auth.c:356
 msgid "connection requires a valid client certificate"
 msgstr "la connexion requiert un certificat client valide"
 
-#: libpq/auth.c:395
-#: libpq/auth.c:411
-#: libpq/auth.c:448
-#: libpq/auth.c:464
+#: libpq/auth.c:400
+#: libpq/auth.c:416
+#: libpq/auth.c:453
+#: libpq/auth.c:469
 msgid "SSL on"
 msgstr "SSL actif"
 
-#: libpq/auth.c:395
-#: libpq/auth.c:411
-#: libpq/auth.c:448
-#: libpq/auth.c:464
+#: libpq/auth.c:400
+#: libpq/auth.c:416
+#: libpq/auth.c:453
+#: libpq/auth.c:469
 msgid "SSL off"
 msgstr "SSL inactif"
 
-#: libpq/auth.c:393
+#: libpq/auth.c:398
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr ""
 "pg_hba.conf rejette la connexion de la réplication pour l'hôte « %s »,\n"
 "utilisateur « %s », %s"
 
-#: libpq/auth.c:399
+#: libpq/auth.c:404
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
 msgstr ""
 "pg_hba.conf rejette la connexion de la réplication pour l'hôte « %s »,\n"
 "utilisateur « %s »"
 
-#: libpq/auth.c:408
+#: libpq/auth.c:413
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "pg_hba.conf rejette la connexion pour l'hôte « %s », utilisateur « %s », base\n"
 "de données « %s », %s"
 
-#: libpq/auth.c:415
+#: libpq/auth.c:420
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
 msgstr ""
 "pg_hba.conf rejette la connexion pour l'hôte « %s », utilisateur « %s », base\n"
 "de données « %s »"
 
-#: libpq/auth.c:446
+#: libpq/auth.c:451
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
 msgstr ""
 "aucune entrée dans pg_hba.conf pour la connexion de la réplication à partir de\n"
 "l'hôte « %s », utilisateur « %s », %s"
 
-#: libpq/auth.c:452
+#: libpq/auth.c:457
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
 msgstr ""
 "aucune entrée dans pg_hba.conf pour la connexion de la réplication à partir de\n"
 "l'hôte « %s », utilisateur « %s »"
 
-#: libpq/auth.c:461
+#: libpq/auth.c:466
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "aucune entrée dans pg_hba.conf pour l'hôte « %s », utilisateur « %s »,\n"
 "base de données « %s », %s"
 
-#: libpq/auth.c:468
+#: libpq/auth.c:473
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
 msgstr ""
 "aucune entrée dans pg_hba.conf pour l'hôte « %s », utilisateur « %s »,\n"
 "base de données « %s »"
 
-#: libpq/auth.c:526
-#, c-format
-msgid "could not enable credential reception: %m"
-msgstr "n'a pas pu activer la réception de lettres de créance : %m"
-
-#: libpq/auth.c:539
-#: libpq/hba.c:948
+#: libpq/auth.c:524
+#: libpq/hba.c:1118
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "l'authentification MD5 n'est pas supportée quand « db_user_namespace » est activé"
 
-#: libpq/auth.c:660
+#: libpq/auth.c:648
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "en attente du mot de passe, a reçu un type de message %d"
 
-#: libpq/auth.c:688
+#: libpq/auth.c:676
 msgid "invalid password packet size"
 msgstr "taille du paquet du mot de passe invalide"
 
-#: libpq/auth.c:692
+#: libpq/auth.c:680
 msgid "received password packet"
 msgstr "paquet du mot de passe reçu"
 
-#: libpq/auth.c:750
+#: libpq/auth.c:738
 #, c-format
 msgid "Kerberos initialization returned error %d"
 msgstr "l'initialisation de Kerberos a retourné l'erreur %d"
 
-#: libpq/auth.c:760
+#: libpq/auth.c:748
 #, c-format
 msgid "Kerberos keytab resolving returned error %d"
 msgstr "la résolution keytab de Kerberos a renvoyé l'erreur %d"
 
-#: libpq/auth.c:784
+#: libpq/auth.c:772
 #, c-format
 msgid "Kerberos sname_to_principal(\"%s\", \"%s\") returned error %d"
 msgstr "sname_to_principal(« %s », « %s ») de Kerberos a renvoyé l'erreur %d"
 
-#: libpq/auth.c:829
+#: libpq/auth.c:817
 #, c-format
 msgid "Kerberos recvauth returned error %d"
 msgstr "recvauth de Kerberos a renvoyé l'erreur %d"
 
-#: libpq/auth.c:852
+#: libpq/auth.c:840
 #, c-format
 msgid "Kerberos unparse_name returned error %d"
 msgstr "unparse_name de Kerberos a renvoyé l'erreur %d"
 
-#: libpq/auth.c:975
+#: libpq/auth.c:962
 #, c-format
 msgid "%s: %s"
 msgstr "%s : %s"
 
-#: libpq/auth.c:1001
+#: libpq/auth.c:988
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI n'est pas supporté dans le protocole de version 2"
 
-#: libpq/auth.c:1056
+#: libpq/auth.c:1043
 #, 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:1119
+#: libpq/auth.c:1106
 msgid "accepting GSS security context failed"
 msgstr "échec de l'acceptation du contexte de sécurité GSS"
 
-#: libpq/auth.c:1145
+#: libpq/auth.c:1132
 msgid "retrieving GSS user name failed"
 msgstr "échec lors de la récupération du nom de l'utilisateur avec GSS"
 
-#: libpq/auth.c:1218
+#: libpq/auth.c:1205
 #, c-format
 msgid "SSPI error %x"
 msgstr "erreur SSPI : %x"
 
-#: libpq/auth.c:1222
+#: libpq/auth.c:1209
 #, c-format
 msgid "%s (%x)"
 msgstr "%s (%x)"
 
-#: libpq/auth.c:1262
+#: libpq/auth.c:1249
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSPI n'est pas supporté dans le protocole de version 2"
 
-#: libpq/auth.c:1277
+#: libpq/auth.c:1264
 msgid "could not acquire SSPI credentials"
 msgstr "n'a pas pu obtenir les pièces d'identité SSPI"
 
-#: libpq/auth.c:1294
+#: libpq/auth.c:1281
 #, 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:1366
+#: libpq/auth.c:1353
 msgid "could not accept SSPI security context"
 msgstr "n'a pas pu accepter le contexte de sécurité SSPI"
 
-#: libpq/auth.c:1422
+#: libpq/auth.c:1409
 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:1665
+#: libpq/auth.c:1653
 #, 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:1680
+#: libpq/auth.c:1668
 #, 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:1692
+#: libpq/auth.c:1680
 #, 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:1712
+#: libpq/auth.c:1700
 #, 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:1727
+#: libpq/auth.c:1715
 #, 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:1737
+#: libpq/auth.c:1725
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "réponse mal formatée du serveur Ident : « %s »"
 
-#: libpq/auth.c:1772
-#: libpq/auth.c:1802
-#: libpq/auth.c:1830
-#: libpq/auth.c:1906
+#: libpq/auth.c:1764
+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:1768
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "n'a pas pu obtenir l'authentification de l'autre : %m"
 
-#: libpq/auth.c:1781
-#: libpq/auth.c:1811
-#: libpq/auth.c:1848
-#: libpq/auth.c:1917
+#: libpq/auth.c:1777
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "l'utilisateur local dont l'identifiant est %d n'existe pas"
 
-#: libpq/auth.c:1838
-#, c-format
-msgid "could not get effective UID from peer credentials: %m"
-msgstr "n'a pas pu obtenir l'UID réel à partir des pièces d'identité de l'autre : %m"
-
-#: libpq/auth.c:1928
-msgid "Ident authentication is not supported on local connections on this platform"
-msgstr "l'authentification Ident n'est pas supportée sur les connexions locales sur cette plateforme"
-
-#: libpq/auth.c:2045
-#: libpq/auth.c:2317
-#: libpq/auth.c:2677
+#: libpq/auth.c:1860
+#: libpq/auth.c:2132
+#: libpq/auth.c:2492
 msgid "empty password returned by client"
 msgstr "mot de passe vide renvoyé par le client"
 
-#: libpq/auth.c:2055
+#: libpq/auth.c:1870
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "erreur provenant de la couche PAM : %s"
 
-#: libpq/auth.c:2124
+#: libpq/auth.c:1939
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "n'a pas pu créer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:2135
+#: libpq/auth.c:1950
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) a échoué : %s"
 
-#: libpq/auth.c:2146
+#: libpq/auth.c:1961
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) a échoué : %s"
 
-#: libpq/auth.c:2157
+#: libpq/auth.c:1972
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate a échoué : %s"
 
-#: libpq/auth.c:2168
+#: libpq/auth.c:1983
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt a échoué : %s"
 
-#: libpq/auth.c:2179
+#: libpq/auth.c:1994
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "n'a pas pu fermer l'authenticateur PAM : %s"
 
-#: libpq/auth.c:2212
-#: libpq/auth.c:2216
+#: libpq/auth.c:2027
+#: libpq/auth.c:2031
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "n'a pas pu initialiser LDAP : code d'erreur %d"
 
-#: libpq/auth.c:2226
+#: libpq/auth.c:2041
 #, c-format
 msgid "could not set LDAP protocol version: error code %d"
 msgstr "n'a pas pu initialiser la version du protocole LDAP : code d'erreur %d"
 
-#: libpq/auth.c:2255
+#: libpq/auth.c:2070
 msgid "could not load wldap32.dll"
 msgstr "n'a pas pu charger wldap32.dll"
 
-#: libpq/auth.c:2263
+#: libpq/auth.c:2078
 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:2264
+#: libpq/auth.c:2079
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP via SSL n'est pas supporté sur cette plateforme."
 
-#: libpq/auth.c:2279
+#: libpq/auth.c:2094
 #, c-format
 msgid "could not start LDAP TLS session: error code %d"
 msgstr "n'a pas pu démarrer la session TLS LDAP : code d'erreur %d"
 
-#: libpq/auth.c:2301
+#: libpq/auth.c:2116
 msgid "LDAP server not specified"
 msgstr "serveur LDAP non précisé"
 
-#: libpq/auth.c:2353
+#: libpq/auth.c:2168
 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:2368
+#: libpq/auth.c:2183
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": error code %d"
 msgstr ""
 "n'a pas pu réaliser la connexion LDAP initiale pour ldapbinddn « %s » sur le\n"
 "serveur « %s » : code d'erreur %d"
 
-#: libpq/auth.c:2393
+#: libpq/auth.c:2208
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": error code %d"
 msgstr ""
 "n'a pas pu rechercher dans LDAP pour filtrer « %s » sur le serveur « %s » :\n"
 "code d'erreur %d"
 
-#: libpq/auth.c:2403
+#: libpq/auth.c:2218
 #, c-format
 msgid "LDAP search failed for filter \"%s\" on server \"%s\": no such user"
 msgstr ""
 "échec de la recherche LDAP pour le filtre « %s » sur le serveur « %s » :\n"
 "utilisateur non trouvé"
 
-#: libpq/auth.c:2407
+#: libpq/auth.c:2222
 #, c-format
 msgid "LDAP search failed for filter \"%s\" on server \"%s\": user is not unique (%ld matches)"
 msgstr ""
 "échec de la recherche LDAP pour le filtre « %s » sur le serveur « %s » :\n"
 "utilisateur non unique (%ld correspondances)"
 
-#: libpq/auth.c:2424
+#: libpq/auth.c:2239
 #, 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:2444
+#: libpq/auth.c:2259
 #, 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:2481
+#: libpq/auth.c:2296
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": error code %d"
 msgstr ""
 "échec de connexion LDAP pour l'utilisateur « %s » sur le serveur « %s » :\n"
 "code d'erreur %d"
 
-#: libpq/auth.c:2509
+#: libpq/auth.c:2324
 #, 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:2633
+#: libpq/auth.c:2448
 msgid "RADIUS server not specified"
 msgstr "serveur RADIUS non précisé"
 
-#: libpq/auth.c:2640
+#: libpq/auth.c:2455
 msgid "RADIUS secret not specified"
 msgstr "secret RADIUS non précisé"
 
-#: libpq/auth.c:2656
-#: libpq/hba.c:1213
+#: libpq/auth.c:2471
+#: libpq/hba.c:1403
 #, 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:2684
+#: libpq/auth.c:2499
 msgid "RADIUS authentication does not support passwords longer than 16 characters"
 msgstr ""
 "l'authentification RADIUS ne supporte pas les mots de passe de plus de 16\n"
 "caractères"
 
-#: libpq/auth.c:2695
+#: libpq/auth.c:2510
 msgid "could not generate random encryption vector"
 msgstr "n'a pas pu générer le vecteur de chiffrement aléatoire"
 
-#: libpq/auth.c:2718
+#: libpq/auth.c:2533
 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:2740
+#: libpq/auth.c:2555
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "n'a pas pu créer le socket RADIUS : %m"
 
-#: libpq/auth.c:2761
+#: libpq/auth.c:2576
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "n'a pas pu se lier à la socket RADIUS : %m"
 
-#: libpq/auth.c:2771
+#: libpq/auth.c:2586
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "n'a pas pu transmettre le paquet RADIUS : %m"
 
-#: libpq/auth.c:2800
-#: libpq/auth.c:2825
+#: libpq/auth.c:2615
+#: libpq/auth.c:2640
 msgid "timeout waiting for RADIUS response"
 msgstr "dépassement du délai pour la réponse du RADIUS"
 
-#: libpq/auth.c:2818
+#: libpq/auth.c:2633
 #, 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:2847
+#: libpq/auth.c:2662
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "n'a pas pu lire la réponse RADIUS : %m"
 
-#: libpq/auth.c:2859
-#: libpq/auth.c:2863
+#: libpq/auth.c:2674
+#: libpq/auth.c:2678
 #, c-format
 msgid "RADIUS response was sent from incorrect port: %i"
 msgstr "la réponse RADIUS a été envoyée à partir d'un mauvais port : %i"
 
-#: libpq/auth.c:2872
+#: libpq/auth.c:2687
 #, c-format
 msgid "RADIUS response too short: %i"
 msgstr "réponse RADIUS trop courte : %i"
 
-#: libpq/auth.c:2879
+#: libpq/auth.c:2694
 #, c-format
 msgid "RADIUS response has corrupt length: %i (actual length %i)"
 msgstr "la réponse RADIUS a une longueur corrompue : %i (longueur actuelle %i)"
 
-#: libpq/auth.c:2887
+#: libpq/auth.c:2702
 #, c-format
 msgid "RADIUS response is to a different request: %i (should be %i)"
 msgstr "la réponse RADIUS correspond à une demande différente : %i (devrait être %i)"
 
-#: libpq/auth.c:2912
+#: libpq/auth.c:2727
 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:2921
+#: libpq/auth.c:2736
 msgid "RADIUS response has incorrect MD5 signature"
 msgstr "la réponse RADIUS a une signature MD5 erronée"
 
-#: libpq/auth.c:2938
+#: libpq/auth.c:2753
 #, c-format
 msgid "RADIUS response has invalid code (%i) for user \"%s\""
 msgstr "la réponse RADIUS a un code invalide (%i) pour l'utilisateur « %s »"
@@ -9204,14 +9689,14 @@ msgstr "la r
 #: libpq/be-fsstubs.c:189
 #: libpq/be-fsstubs.c:225
 #: libpq/be-fsstubs.c:272
-#: libpq/be-fsstubs.c:518
+#: libpq/be-fsstubs.c:519
 #, c-format
 msgid "invalid large-object descriptor: %d"
 msgstr "descripteur invalide de « Large Object » : %d"
 
 #: libpq/be-fsstubs.c:173
 #: libpq/be-fsstubs.c:205
-#: libpq/be-fsstubs.c:528
+#: libpq/be-fsstubs.c:529
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "droit refusé pour le Large Object %u"
@@ -9247,12 +9732,12 @@ msgstr "doit 
 msgid "Anyone can use the client-side lo_export() provided by libpq."
 msgstr "Tout le monde peut utiliser lo_export(), fournie par libpq, du côté client."
 
-#: libpq/be-fsstubs.c:483
+#: libpq/be-fsstubs.c:484
 #, c-format
 msgid "could not create server file \"%s\": %m"
 msgstr "n'a pas pu créer le fichier serveur « %s » : %m"
 
-#: libpq/be-fsstubs.c:495
+#: libpq/be-fsstubs.c:496
 #, c-format
 msgid "could not write server file \"%s\": %m"
 msgstr "n'a pas pu écrire le fichier serveur « %s » : %m"
@@ -9387,277 +9872,305 @@ msgstr "aucune erreur SSL report
 msgid "SSL error code %lu"
 msgstr "erreur SSL %lu"
 
-#: libpq/hba.c:158
+#: libpq/hba.c:160
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
 msgstr "jeton du fichier d'authentification trop long, ignore : « %s »"
 
-#: libpq/hba.c:351
+#: libpq/hba.c:355
 #, c-format
 msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
 msgstr ""
 "n'a pas pu ouvrir le fichier d'authentification secondaire « @%s » comme\n"
 "« %s » : %m"
 
+#: libpq/hba.c:628
+#, c-format
+msgid "could not translate host name \"%s\" to address: %s"
+msgstr "n'a pas pu traduire le nom d'hôte « %s » en adresse : %s"
+
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:651
+#: libpq/hba.c:779
 #, c-format
 msgid "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr ""
 "l'option d'authentification « %s » est seulement valide pour les méthodes\n"
 "d'authentification « %s »"
 
-#: libpq/hba.c:667
+#: libpq/hba.c:795
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "la méthode d'authentification « %s » requiert un argument « %s » pour êtremise en place"
 
-#: libpq/hba.c:713
-msgid "hostssl not supported on this platform"
-msgstr "hostssl non supporté sur cette plateforme"
+#: libpq/hba.c:832
+msgid "local connections are not supported by this build"
+msgstr "les connexions locales ne sont pas supportées dans cette installation"
+
+#: libpq/hba.c:853
+msgid "hostssl requires SSL to be turned on"
+msgstr "hostssl requiert que SSL soit activé"
+
+#: libpq/hba.c:854
+msgid "Set ssl = on in postgresql.conf."
+msgstr "Configurez ssl = on dans le postgresql.conf."
+
+#: libpq/hba.c:862
+msgid "hostssl is not supported by this build"
+msgstr "hostssl n'est pas supporté par cette installation"
 
-#: libpq/hba.c:714
+#: libpq/hba.c:863
 msgid "Compile with --with-openssl to use SSL connections."
 msgstr "Compilez avec --with-ssl pour utiliser les connexions SSL"
 
-#: libpq/hba.c:736
+#: libpq/hba.c:885
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "type de connexion « %s » invalide"
 
-#: libpq/hba.c:749
+#: libpq/hba.c:898
 msgid "end-of-line before database specification"
 msgstr "fin de ligne avant la spécification de la base de données"
 
-#: libpq/hba.c:762
+#: libpq/hba.c:911
 msgid "end-of-line before role specification"
 msgstr "fin de ligne avant la spécification du rôle"
 
-#: libpq/hba.c:777
+#: libpq/hba.c:926
 msgid "end-of-line before IP address specification"
 msgstr "fin de ligne avant la spécification de l'adresse IP"
 
-#: libpq/hba.c:823
+#: libpq/hba.c:980
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "adresse IP « %s » invalide : %s"
 
-#: libpq/hba.c:846
+#: libpq/hba.c:1000
+#, c-format
+msgid "specifying both host name and CIDR mask is invalid: \"%s\""
+msgstr "spécifier le nom d'hôte et le masque CIDR n'est pas valide : « %s »"
+
+#: libpq/hba.c:1014
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "masque CIDR invalide dans l'adresse « %s »"
 
-#: libpq/hba.c:864
+#: libpq/hba.c:1032
 msgid "end-of-line before netmask specification"
 msgstr "fin de ligne avant la spécification du masque réseau"
 
-#: libpq/hba.c:876
+#: libpq/hba.c:1044
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "masque IP « %s » invalide : %s"
 
-#: libpq/hba.c:893
+#: libpq/hba.c:1061
 msgid "IP address and mask do not match"
 msgstr "l'adresse IP et le masque ne correspondent pas"
 
-#: libpq/hba.c:908
+#: libpq/hba.c:1076
 msgid "end-of-line before authentication method"
 msgstr "fin de ligne avant la méthode d'authentification"
 
-#: libpq/hba.c:979
+#: libpq/hba.c:1149
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "méthode d'authentification « %s » invalide"
 
-#: libpq/hba.c:990
+#: libpq/hba.c:1160
 #, c-format
-msgid "invalid authentication method \"%s\": not supported on this platform"
+msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr ""
 "méthode d'authentification « %s » invalide : non supportée sur cette\n"
-"plateforme"
+"installation"
 
-#: libpq/hba.c:1003
+#: libpq/hba.c:1181
 msgid "krb5 authentication is not supported on local sockets"
 msgstr ""
 "l'authentification krb5 n'est pas supportée sur les connexions locales par\n"
 "socket"
 
-#: libpq/hba.c:1014
+#: libpq/hba.c:1192
 msgid "gssapi authentication is not supported on local sockets"
 msgstr ""
 "l'authentification gssapi n'est pas supportée sur les connexions locales par\n"
 "socket"
 
-#: libpq/hba.c:1031
+#: libpq/hba.c:1203
+msgid "peer authentication is only supported on local sockets"
+msgstr ""
+"l'authentification peer est seulement supportée sur les connexions locales par\n"
+"socket"
+
+#: libpq/hba.c:1220
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "l'authentification cert est seulement supportée sur les connexions hostssl"
 
-#: libpq/hba.c:1052
+#: libpq/hba.c:1241
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "l'option d'authentification n'est pas dans le format nom=valeur : %s"
 
-#: libpq/hba.c:1067
-msgid "ident, krb5, gssapi, sspi and cert"
-msgstr "ident, krb5, gssapi, sspi et cert"
+#: libpq/hba.c:1257
+msgid "ident, peer, krb5, gssapi, sspi and cert"
+msgstr "ident, peer, krb5, gssapi, sspi et cert"
 
-#: libpq/hba.c:1081
+#: libpq/hba.c:1271
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "clientcert peut seulement être configuré pour les lignes « hostssl »"
 
-#: libpq/hba.c:1092
+#: libpq/hba.c:1282
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr ""
 "les certificats cert peuvent seulement être vérifiés si un emplacement de\n"
 "certificat racine est disponible"
 
-#: libpq/hba.c:1093
+#: libpq/hba.c:1283
 msgid "Make sure the root.crt file is present and readable."
 msgstr "Assurez-vous que le certificat racine (root.crt) est présent et lisible"
 
-#: libpq/hba.c:1106
+#: libpq/hba.c:1296
 msgid "clientcert can not be set to 0 when using \"cert\" authentication"
 msgstr "clientcert ne peut pas être initialisé à 0 si vous utilisez l'authentification « cert »"
 
-#: libpq/hba.c:1140
+#: libpq/hba.c:1330
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "numéro de port LDAP invalide : « %s »"
 
-#: libpq/hba.c:1186
-#: libpq/hba.c:1194
+#: libpq/hba.c:1376
+#: libpq/hba.c:1384
 msgid "krb5, gssapi and sspi"
 msgstr "krb5, gssapi et sspi"
 
-#: libpq/hba.c:1232
+#: libpq/hba.c:1422
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "numéro de port RADIUS invalide : « %s »"
 
-#: libpq/hba.c:1252
+#: libpq/hba.c:1442
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "nom d'option de l'authentification inconnu : « %s »"
 
-#: libpq/hba.c:1284
+#: libpq/hba.c:1474
 msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, or ldapsearchattribute together with ldapprefix"
 msgstr ""
 "ne peut pas utiliser ldapbasedn, ldapbinddn, ldapbindpasswd\n"
 "ou ldapsearchattribute avec ldapprefix"
 
-#: libpq/hba.c:1294
+#: libpq/hba.c:1484
 msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
 msgstr ""
 "la méthode d'authentification « ldap » requiert un argument « ldapbasedn »,\n"
 "« ldapprefix » ou « ldapsuffix » pour être mise en place"
 
-#: libpq/hba.c:1482
-#: guc-file.l:436
+#: libpq/hba.c:1683
+#: guc-file.l:409
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier de configuration « %s » : %m"
 
-#: libpq/hba.c:1614
+#: libpq/hba.c:1815
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "expression rationnelle invalide « %s » : %s"
 
-#: libpq/hba.c:1637
+#: libpq/hba.c:1838
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "la correspondance de l'expression rationnelle pour « %s » a échoué : %s"
 
-#: libpq/hba.c:1655
+#: libpq/hba.c:1856
 #, c-format
 msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
 msgstr ""
 "l'expression rationnelle « %s » n'a pas de sous-expressions comme celle\n"
 "demandée par la référence dans « %s »"
 
-#: libpq/hba.c:1721
+#: libpq/hba.c:1922
 #, c-format
 msgid "missing entry in file \"%s\" at end of line %d"
 msgstr "entrée manquante dans le fichier « %s » à la fin de la ligne %d"
 
-#: libpq/hba.c:1762
+#: libpq/hba.c:1963
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr ""
 "le nom d'utilisateur (%s) et le nom d'utilisateur authentifié (%s) fournis ne\n"
 "correspondent pas"
 
-#: libpq/hba.c:1783
+#: libpq/hba.c:1984
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr ""
 "pas de correspondance dans la usermap « %s » pour l'utilisateur « %s »\n"
 "authentifié en tant que « %s »"
 
-#: libpq/hba.c:1807
+#: libpq/hba.c:2008
 #, c-format
 msgid "could not open usermap file \"%s\": %m"
 msgstr "n'a pas pu ouvrir le fichier usermap « %s » : %m"
 
-#: libpq/pqcomm.c:294
+#: libpq/pqcomm.c:306
 #, c-format
 msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
 msgstr "n'a pas pu résoudre le nom de l'hôte « %s », service « %s » par l'adresse : %s"
 
-#: libpq/pqcomm.c:298
+#: libpq/pqcomm.c:310
 #, c-format
 msgid "could not translate service \"%s\" to address: %s"
 msgstr "n'a pas pu résoudre le service « %s » par l'adresse : %s"
 
-#: libpq/pqcomm.c:325
+#: libpq/pqcomm.c:337
 #, c-format
 msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded"
 msgstr "n'a pas pu se lier à toutes les adresses requises : MAXLISTEN (%d) dépassé"
 
-#: libpq/pqcomm.c:334
+#: libpq/pqcomm.c:346
 msgid "IPv4"
 msgstr "IPv4"
 
-#: libpq/pqcomm.c:338
+#: libpq/pqcomm.c:350
 msgid "IPv6"
 msgstr "IPv6"
 
-#: libpq/pqcomm.c:343
+#: libpq/pqcomm.c:355
 msgid "Unix"
 msgstr "Unix"
 
-#: libpq/pqcomm.c:348
+#: libpq/pqcomm.c:360
 #, c-format
 msgid "unrecognized address family %d"
 msgstr "famille d'adresse %d non reconnue"
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:359
+#: libpq/pqcomm.c:371
 #, c-format
 msgid "could not create %s socket: %m"
 msgstr "n'a pas pu créer le socket %s : %m"
 
-#: libpq/pqcomm.c:384
+#: libpq/pqcomm.c:396
 #, c-format
 msgid "setsockopt(SO_REUSEADDR) failed: %m"
 msgstr "setsockopt(SO_REUSEADDR) a échoué : %m"
 
-#: libpq/pqcomm.c:399
+#: libpq/pqcomm.c:411
 #, c-format
 msgid "setsockopt(IPV6_V6ONLY) failed: %m"
 msgstr "setsockopt(IPV6_V6ONLY) a échoué : %m"
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:418
+#: libpq/pqcomm.c:430
 #, c-format
 msgid "could not bind %s socket: %m"
 msgstr "n'a pas pu se lier à la socket %s : %m"
 
-#: libpq/pqcomm.c:421
+#: libpq/pqcomm.c:433
 #, c-format
 msgid "Is another postmaster already running on port %d? If not, remove socket file \"%s\" and retry."
 msgstr "Un autre postmaster fonctionne-t'il déjà sur le port %d ?Sinon, supprimez le fichier socket « %s » et réessayez."
 
-#: libpq/pqcomm.c:424
+#: libpq/pqcomm.c:436
 #, c-format
 msgid "Is another postmaster already running on port %d? If not, wait a few seconds and retry."
 msgstr ""
@@ -9665,62 +10178,61 @@ msgstr ""
 "Sinon, attendez quelques secondes et réessayez."
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:457
+#: libpq/pqcomm.c:469
 #, c-format
 msgid "could not listen on %s socket: %m"
 msgstr "n'a pas pu écouter sur le socket %s : %m"
 
-#: libpq/pqcomm.c:542
+#: libpq/pqcomm.c:554
 #, c-format
 msgid "group \"%s\" does not exist"
 msgstr "le groupe « %s » n'existe pas"
 
-#: libpq/pqcomm.c:552
+#: libpq/pqcomm.c:564
 #, c-format
 msgid "could not set group of file \"%s\": %m"
 msgstr "n'a pas pu initialiser le groupe du fichier « %s » : %m"
 
-#: libpq/pqcomm.c:563
+#: libpq/pqcomm.c:575
 #, c-format
 msgid "could not set permissions of file \"%s\": %m"
 msgstr "n'a pas pu initialiser les droits du fichier « %s » : %m"
 
-#: libpq/pqcomm.c:593
+#: libpq/pqcomm.c:605
 #, c-format
 msgid "could not accept new connection: %m"
 msgstr "n'a pas pu accepter la nouvelle connexion : %m"
 
-#: libpq/pqcomm.c:779
-#: libpq/pqcomm.c:879
-#, c-format
-msgid "could not receive data from client: %m"
-msgstr "n'a pas pu recevoir les données du client : %m"
-
-#: libpq/pqcomm.c:854
+#: libpq/pqcomm.c:773
 #, c-format
 msgid "could not set socket to non-blocking mode: %m"
 msgstr "n'a pas pu activer le mode non-bloquant pour la socket : %m"
 
-#: libpq/pqcomm.c:900
-#: libpq/pqcomm.c:911
+#: libpq/pqcomm.c:779
 #, c-format
 msgid "could not set socket to blocking mode: %m"
 msgstr "n'a pas pu activer le mode bloquant pour la socket : %m"
 
-#: libpq/pqcomm.c:1056
+#: libpq/pqcomm.c:831
+#: libpq/pqcomm.c:921
+#, c-format
+msgid "could not receive data from client: %m"
+msgstr "n'a pas pu recevoir les données du client : %m"
+
+#: libpq/pqcomm.c:1072
 msgid "unexpected EOF within message length word"
 msgstr "fin de fichier (EOF) inattendue à l'intérieur de la longueur du message"
 
-#: libpq/pqcomm.c:1067
+#: libpq/pqcomm.c:1083
 msgid "invalid message length"
 msgstr "longueur du message invalide"
 
-#: libpq/pqcomm.c:1089
-#: libpq/pqcomm.c:1099
+#: libpq/pqcomm.c:1105
+#: libpq/pqcomm.c:1115
 msgid "incomplete message from client"
 msgstr "message incomplet du client"
 
-#: libpq/pqcomm.c:1208
+#: libpq/pqcomm.c:1245
 #, c-format
 msgid "could not send data to client: %m"
 msgstr "n'a pas pu envoyer les données au client : %m"
@@ -9732,7 +10244,7 @@ msgstr "pas de donn
 #: libpq/pqformat.c:556
 #: libpq/pqformat.c:574
 #: libpq/pqformat.c:595
-#: utils/adt/arrayfuncs.c:1386
+#: utils/adt/arrayfuncs.c:1411
 #: utils/adt/rowtypes.c:557
 msgid "insufficient data left in message"
 msgstr "données insuffisantes laissées dans le message"
@@ -9763,224 +10275,238 @@ msgstr "param
 msgid "missing Language parameter"
 msgstr "paramètre Language manquant"
 
-#: storage/smgr/md.c:371
-#: storage/smgr/md.c:839
-#, c-format
-msgid "could not truncate file \"%s\": %m"
-msgstr "n'a pas pu tronquer le fichier « %s » : %m"
+#: storage/ipc/procarray.c:270
+#: storage/ipc/sinvaladt.c:302
+#: storage/lmgr/proc.c:293
+#: postmaster/postmaster.c:1861
+msgid "sorry, too many clients already"
+msgstr "désolé, trop de clients sont déjà connectés"
 
-#: storage/smgr/md.c:439
-#, c-format
-msgid "cannot extend file \"%s\" beyond %u blocks"
-msgstr "ne peut pas étendre le fichier « %s » de plus de %u blocs"
+#: storage/ipc/procarray.c:637
+msgid "consistent state delayed because recovery snapshot incomplete"
+msgstr "état de cohérence pas encore atteint à cause d'un snapshot de restauration incomplet"
 
-#: storage/smgr/md.c:461
-#: storage/smgr/md.c:621
-#: storage/smgr/md.c:694
+#: storage/ipc/shmem.c:190
+#: storage/lmgr/lock.c:631
+#: storage/lmgr/lock.c:700
+#: storage/lmgr/lock.c:2170
+#: storage/lmgr/lock.c:2549
+#: storage/lmgr/lock.c:2614
+#: storage/lmgr/proc.c:193
+#: storage/lmgr/proc.c:212
+#: storage/lmgr/predicate.c:2233
+#: storage/lmgr/predicate.c:2248
+#: storage/lmgr/predicate.c:3623
+#: storage/lmgr/predicate.c:4770
+#: utils/hash/dynahash.c:928
+msgid "out of shared memory"
+msgstr "mémoire partagée épuisée"
+
+#: storage/ipc/shmem.c:346
+#: storage/ipc/shmem.c:399
 #, 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"
+msgid "not enough shared memory for data structure \"%s\" (%lu bytes requested)"
+msgstr "pas assez de mémoire partagée pour la structure de données « %s » (%lu octets demandés)"
 
-#: storage/smgr/md.c:469
+#: storage/ipc/shmem.c:365
 #, c-format
-msgid "could not extend file \"%s\": %m"
-msgstr "n'a pas pu étendre le fichier « %s » : %m"
+msgid "could not create ShmemIndex entry for data structure \"%s\""
+msgstr "n'a pas pu créer l'entrée ShmemIndex pour la structure de données « %s »"
 
-#: storage/smgr/md.c:471
-#: storage/smgr/md.c:478
-#: storage/smgr/md.c:720
-msgid "Check free disk space."
-msgstr "Vérifiez l'espace disque disponible."
-
-#: storage/smgr/md.c:475
-#, 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:638
-#, 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:654
-#, 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:711
-#, 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:716
-#, 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:815
-#, 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:864
-#, 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:1087
-#, 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:1586
+#: storage/ipc/shmem.c:380
 #, 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"
+msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %lu, actual %lu"
+msgstr "La taille de l'entrée shmemIndex est mauvaise pour la structure de données « %s » : %lu obtenu, %lu attendu"
 
-#: storage/smgr/md.c:1608
-#, c-format
-msgid "could not seek to end of file \"%s\": %m"
-msgstr "n'a pas pu trouver la fin du fichier « %s » : %m"
+#: storage/ipc/shmem.c:427
+#: storage/ipc/shmem.c:446
+msgid "requested shared memory size overflows size_t"
+msgstr "la taille de la mémoire partagée demandée dépasse size_t"
 
-#: storage/buffer/bufmgr.c:131
-#: storage/buffer/bufmgr.c:235
+#: storage/buffer/bufmgr.c:134
+#: storage/buffer/bufmgr.c:239
 msgid "cannot access temporary tables of other sessions"
 msgstr "ne peut pas accéder aux tables temporaires d'autres sessions"
 
-#: storage/buffer/bufmgr.c:364
+#: storage/buffer/bufmgr.c:373
 #, c-format
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr ""
 "données inattendues après la fin de fichier dans le bloc %u de la relation\n"
 "%s"
 
-#: storage/buffer/bufmgr.c:366
+#: storage/buffer/bufmgr.c:375
 msgid "This has been seen to occur with buggy kernels; consider updating your system."
 msgstr ""
 "Ceci s'est déjà vu avec des noyaux buggés ; pensez à mettre à jour votre\n"
 "système."
 
-#: storage/buffer/bufmgr.c:438
+#: storage/buffer/bufmgr.c:447
 #, c-format
 msgid "invalid page header in block %u of relation %s; zeroing out page"
 msgstr ""
 "en-tête de page invalide dans le bloc %u de la relation %s ; remplacement\n"
 "de la page par des zéros"
 
-#: storage/buffer/bufmgr.c:446
+#: storage/buffer/bufmgr.c:455
 #, c-format
 msgid "invalid page header in block %u of relation %s"
 msgstr "en-tête de page invalide dans le bloc %u de la relation %s"
 
-#: storage/buffer/bufmgr.c:2706
+#: storage/buffer/bufmgr.c:2734
 #, c-format
 msgid "could not write block %u of %s"
 msgstr "n'a pas pu écrire le bloc %u de %s"
 
-#: storage/buffer/bufmgr.c:2708
+#: storage/buffer/bufmgr.c:2736
 msgid "Multiple failures --- write error might be permanent."
 msgstr "Échecs multiples --- l'erreur d'écriture pourrait être permanent."
 
-#: storage/buffer/bufmgr.c:2729
+#: storage/buffer/bufmgr.c:2757
+#: storage/buffer/bufmgr.c:2776
 #, c-format
 msgid "writing block %u of relation %s"
 msgstr "écriture du bloc %u de la relation %s"
 
-#: storage/buffer/localbuf.c:189
+#: storage/buffer/localbuf.c:190
 msgid "no empty local buffer available"
 msgstr "aucun tampon local vide disponible"
 
-#: storage/file/fd.c:403
+#: storage/file/fd.c:405
 #, c-format
 msgid "getrlimit failed: %m"
 msgstr "échec de getrlimit : %m"
 
-#: storage/file/fd.c:493
+#: storage/file/fd.c:495
 msgid "insufficient file descriptors available to start server process"
 msgstr "nombre de descripteurs de fichier insuffisants pour lancer le processus serveur"
 
-#: storage/file/fd.c:494
+#: storage/file/fd.c:496
 #, c-format
 msgid "System allows %d, we need at least %d."
 msgstr "Le système autorise %d, nous avons besoin d'au moins %d."
 
-#: storage/file/fd.c:535
-#: storage/file/fd.c:1446
-#: storage/file/fd.c:1561
+#: storage/file/fd.c:537
+#: storage/file/fd.c:1469
+#: storage/file/fd.c:1585
 #, c-format
 msgid "out of file descriptors: %m; release and retry"
 msgstr "plus de descripteurs de fichiers : %m; quittez et ré-essayez"
 
-#: storage/file/fd.c:1088
+#: storage/file/fd.c:1110
 #, c-format
 msgid "temporary file: path \"%s\", size %lu"
 msgstr "fichier temporaire : chemin « %s », taille %lu"
 
-#: storage/file/fd.c:1620
+#: storage/file/fd.c:1644
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "n'a pas pu lire le répertoire « %s » : %m"
 
-#: storage/ipc/procarray.c:270
-#: storage/ipc/sinvaladt.c:302
-#: storage/lmgr/proc.c:289
-#: postmaster/postmaster.c:1833
-msgid "sorry, too many clients already"
-msgstr "désolé, trop de clients sont déjà connectés"
+#: storage/file/reinit.c:58
+#, c-format
+msgid "resetting unlogged relations: cleanup %d init %d"
+msgstr "réinitialisation des relations non tracées : nettoyage %d initialisation %d"
 
-#: storage/ipc/procarray.c:639
-msgid "consistent state delayed because recovery snapshot incomplete"
-msgstr "état de cohérence pas encore atteint à cause d'un snapshot de restauration incomplet"
+#: storage/smgr/md.c:381
+#: storage/smgr/md.c:855
+#, c-format
+msgid "could not truncate file \"%s\": %m"
+msgstr "n'a pas pu tronquer le fichier « %s » : %m"
 
-#: storage/ipc/shmem.c:190
-#: storage/lmgr/lock.c:629
-#: storage/lmgr/lock.c:698
-#: storage/lmgr/lock.c:2132
-#: storage/lmgr/lock.c:2511
-#: storage/lmgr/lock.c:2576
-#: storage/lmgr/proc.c:192
-#: storage/lmgr/proc.c:210
-#: utils/hash/dynahash.c:925
-msgid "out of shared memory"
-msgstr "mémoire partagée épuisée"
+#: storage/smgr/md.c:449
+#, c-format
+msgid "cannot extend file \"%s\" beyond %u blocks"
+msgstr "ne peut pas étendre le fichier « %s » de plus de %u blocs"
 
-#: storage/ipc/shmem.c:346
-#: storage/ipc/shmem.c:399
+#: storage/smgr/md.c:471
+#: storage/smgr/md.c:635
+#: storage/smgr/md.c:710
 #, c-format
-msgid "not enough shared memory for data structure \"%s\" (%lu bytes requested)"
-msgstr "pas assez de mémoire partagée pour la structure de données « %s » (%lu octets demandés)"
+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/ipc/shmem.c:365
+#: storage/smgr/md.c:479
 #, c-format
-msgid "could not create ShmemIndex entry for data structure \"%s\""
-msgstr "n'a pas pu créer l'entrée ShmemIndex pour la structure de données « %s »"
+msgid "could not extend file \"%s\": %m"
+msgstr "n'a pas pu étendre le fichier « %s » : %m"
 
-#: storage/ipc/shmem.c:380
+#: storage/smgr/md.c:481
+#: storage/smgr/md.c:488
+#: storage/smgr/md.c:737
+msgid "Check free disk space."
+msgstr "Vérifiez l'espace disque disponible."
+
+#: storage/smgr/md.c:485
 #, c-format
-msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %lu, actual %lu"
-msgstr "La taille de l'entrée shmemIndex est mauvaise pour la structure de données « %s » : %lu obtenu, %lu attendu"
+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/ipc/shmem.c:427
-#: storage/ipc/shmem.c:446
-msgid "requested shared memory size overflows size_t"
-msgstr "la taille de la mémoire partagée demandée dépasse size_t"
+#: storage/smgr/md.c:653
+#, 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:669
+#, 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:728
+#, 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:733
+#, 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:831
+#, 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:880
+#, 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:1134
+#, 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:1276
+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:1646
+#, 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"
+
+#: storage/smgr/md.c:1668
+#, c-format
+msgid "could not seek to end of file \"%s\": %m"
+msgstr "n'a pas pu trouver la fin du fichier « %s » : %m"
 
-#: storage/large_object/inv_api.c:550
-#: storage/large_object/inv_api.c:747
+#: storage/large_object/inv_api.c:555
+#: storage/large_object/inv_api.c:752
 #, c-format
 msgid "large object %u was not opened for writing"
 msgstr "le « Large Object » %u n'a pas été ouvert en écriture"
 
-#: storage/large_object/inv_api.c:557
-#: storage/large_object/inv_api.c:754
+#: storage/large_object/inv_api.c:562
+#: storage/large_object/inv_api.c:759
 #, c-format
 msgid "large object %u was already dropped"
 msgstr "le « Large Object » %u a déjà été supprimé"
@@ -10003,115 +10529,224 @@ msgstr "Bloquage mortel d
 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:717
+#: storage/lmgr/lmgr.c:720
 #, c-format
 msgid "relation %u of database %u"
 msgstr "relation %u de la base de données %u"
 
-#: storage/lmgr/lmgr.c:723
+#: storage/lmgr/lmgr.c:726
 #, 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:729
+#: storage/lmgr/lmgr.c:732
 #, 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:736
+#: storage/lmgr/lmgr.c:739
 #, 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:744
+#: storage/lmgr/lmgr.c:747
 #, c-format
 msgid "transaction %u"
 msgstr "transaction %u"
 
-#: storage/lmgr/lmgr.c:749
+#: storage/lmgr/lmgr.c:752
 #, c-format
 msgid "virtual transaction %d/%u"
 msgstr "transaction virtuelle %d/%u"
 
-#: storage/lmgr/lmgr.c:755
+#: storage/lmgr/lmgr.c:758
 #, 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:763
+#: storage/lmgr/lmgr.c:766
 #, c-format
 msgid "user lock [%u,%u,%u]"
 msgstr "verrou utilisateur [%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:770
+#: storage/lmgr/lmgr.c:773
 #, c-format
 msgid "advisory lock [%u,%u,%u,%u]"
 msgstr "verrou informatif [%u,%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:778
+#: storage/lmgr/lmgr.c:781
 #, c-format
 msgid "unrecognized locktag type %d"
 msgstr "type locktag non reconnu %d"
 
-#: storage/lmgr/lock.c:516
+#: storage/lmgr/lock.c:517
 #, 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:518
+#: storage/lmgr/lock.c:519
 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:630
-#: storage/lmgr/lock.c:699
-#: storage/lmgr/lock.c:2512
-#: storage/lmgr/lock.c:2577
+#: storage/lmgr/lock.c:632
+#: storage/lmgr/lock.c:701
+#: storage/lmgr/lock.c:2550
+#: storage/lmgr/lock.c:2615
 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:2133
+#: storage/lmgr/lock.c:2171
 msgid "Not enough memory for reassigning the prepared transaction's locks."
 msgstr "Pas assez de mémoire pour réaffecter les verrous des transactions préparées."
 
-#: storage/lmgr/proc.c:1006
+#: storage/lmgr/proc.c:1019
 #: utils/adt/misc.c:102
 #, c-format
 msgid "could not send signal to process %d: %m"
 msgstr "n'a pas pu envoyer le signal au processus %d : %m"
 
-#: storage/lmgr/proc.c:1040
+#: storage/lmgr/proc.c:1053
 #, c-format
 msgid "process %d avoided deadlock for %s on %s by rearranging queue order after %ld.%03d ms"
 msgstr ""
 "le processus %d a évité un verrou mortel pour %s sur %s en modifiant l'ordre\n"
 "de la queue après %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1052
+#: storage/lmgr/proc.c:1065
 #, c-format
 msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
 msgstr ""
 "le processus %d a détecté un verrou mortel alors qu'il était en attente de\n"
 "%s sur %s après %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1058
+#: storage/lmgr/proc.c:1071
 #, c-format
 msgid "process %d still waiting for %s on %s after %ld.%03d ms"
 msgstr "le processus %d est toujours en attente de %s sur %s après %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1062
+#: storage/lmgr/proc.c:1075
 #, c-format
 msgid "process %d acquired %s on %s after %ld.%03d ms"
 msgstr "le processus %d a acquis %s sur %s après %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1078
+#: storage/lmgr/proc.c:1091
 #, c-format
 msgid "process %d failed to acquire %s on %s after %ld.%03d ms"
 msgstr "le processus %d a échoué pour l'acquisition de %s sur %s après %ld.%03d ms"
 
+#: storage/lmgr/predicate.c:665
+msgid "not enough elements in RWConflictPool to record a rw-conflict"
+msgstr "pas assez d'éléments dans RWConflictPool pour enregistrer un conflit RW"
+
+#: storage/lmgr/predicate.c:666
+#: storage/lmgr/predicate.c:694
+msgid "You might need to run fewer transactions at a time or increase max_connections."
+msgstr ""
+"Il est possible que vous ayez à exécuter moins de transactions à la fois\n"
+"ou d'augmenter max_connections."
+
+#: storage/lmgr/predicate.c:693
+msgid "not enough elements in RWConflictPool to record a potential rw-conflict"
+msgstr "pas assez d'éléments dans RWConflictPool pour enregistrer un conflit RW potentiel"
+
+#: storage/lmgr/predicate.c:898
+msgid "memory for serializable conflict tracking is nearly exhausted"
+msgstr "la mémoire pour tracer les conflits sérialisables est pratiquement pleine"
+
+#: storage/lmgr/predicate.c:899
+#, fuzzy
+msgid "There might be an idle transaction or a forgotten prepared transaction causing this."
+msgstr ""
+"Il pourait y avoir une transaction en attente ou une transaction préparée\n"
+"oubliée causant cela."
+
+#: storage/lmgr/predicate.c:1181
+#: storage/lmgr/predicate.c:1253
+#, c-format
+msgid "not enough shared memory for elements of data structure \"%s\" (%lu bytes requested)"
+msgstr ""
+"pas assez de mémoire partagée pour les éléments de la structure de données\n"
+"« %s » (%lu octets demandés)"
+
+#: storage/lmgr/predicate.c:1536
+msgid "deferrable snapshot was unsafe; trying a new one"
+msgstr "l'image déferrable est non sûre ; tentative avec une nouvelle image"
+
+#: storage/lmgr/predicate.c:2234
+#: storage/lmgr/predicate.c:2249
+#: storage/lmgr/predicate.c:3624
+msgid "You might need to increase max_pred_locks_per_transaction."
+msgstr "Vous pourriez avoir besoin d'augmenter max_pred_locks_per_transaction."
+
+#: storage/lmgr/predicate.c:3778
+#: storage/lmgr/predicate.c:3867
+#: storage/lmgr/predicate.c:3875
+#: storage/lmgr/predicate.c:3914
+#: storage/lmgr/predicate.c:4153
+#: storage/lmgr/predicate.c:4491
+#: storage/lmgr/predicate.c:4503
+#: storage/lmgr/predicate.c:4545
+#: storage/lmgr/predicate.c:4583
+msgid "could not serialize access due to read/write dependencies among transactions"
+msgstr ""
+"n'a pas pu sérialiser un accès à cause des dépendances de lecture/écriture\n"
+"parmi les transactions"
+
+#: storage/lmgr/predicate.c:3779
+msgid "Canceled on identification as a pivot, during conflict out checking."
+msgstr "Annulation sur l'identification en tant que pivot, lors d'un blocage dans la vérification."
+
+#: storage/lmgr/predicate.c:3780
+#: storage/lmgr/predicate.c:3869
+#: storage/lmgr/predicate.c:3877
+#: storage/lmgr/predicate.c:3916
+#: storage/lmgr/predicate.c:4155
+#: storage/lmgr/predicate.c:4493
+#: storage/lmgr/predicate.c:4505
+#: storage/lmgr/predicate.c:4547
+#: storage/lmgr/predicate.c:4585
+msgid "The transaction might succeed if retried."
+msgstr "La transaction pourrait réussir après une nouvelle tentative."
+
+#: storage/lmgr/predicate.c:3868
+#, c-format
+msgid "Canceled on conflict out to old pivot %u."
+msgstr "Annulation sur le conflit d'ancien pivot %u."
+
+#: storage/lmgr/predicate.c:3876
+#, fuzzy, c-format
+msgid "Canceled on identification as a pivot, with conflict out to old committed transaction %u."
+msgstr "Annulation sur l'identification en tant que pivot, lors d'un blocage dans la vérification."
+
+#: storage/lmgr/predicate.c:3915
+msgid "Canceled on conflict out to old pivot."
+msgstr "Annulation sur le conflit d'ancien pivot."
+
+#: storage/lmgr/predicate.c:4154
+msgid "Canceled on identification as a pivot, during conflict in checking."
+msgstr "Annulation sur l'identification en tant que pivot, lors d'un conflit dans la vérification."
+
+#: storage/lmgr/predicate.c:4492
+msgid "Canceled on identification as a pivot, during write."
+msgstr "Annulation sur l'identification en tant que pivot, lors d'une écriture."
+
+#: storage/lmgr/predicate.c:4504
+#, c-format
+msgid "Canceled on conflict out to pivot %u, during read."
+msgstr "Annulation sur le conflit en tant que pivot %u, lors d'une lecture."
+
+#: storage/lmgr/predicate.c:4546
+msgid "Canceled on identification as a pivot, during commit attempt."
+msgstr "Annulation sur l'identification en tant que pivot, lors d'une tentative de validation (COMMIT)."
+
+#: storage/lmgr/predicate.c:4584
+msgid "Canceled on commit attempt with conflict in from prepared pivot."
+msgstr "Annulation sur la tentative de validation (COMMIT) à cause d'un conflit à partir d'un pivot préparé."
+
 #: storage/page/bufpage.c:143
 #: storage/page/bufpage.c:390
 #: storage/page/bufpage.c:623
@@ -10137,950 +10772,1293 @@ msgstr "longueurs d'
 msgid "corrupted item pointer: offset = %u, size = %u"
 msgstr "pointeur d'élément corrompu : décalage = %u, taille = %u"
 
-#: nodes/nodeFuncs.c:110
-#: nodes/nodeFuncs.c:136
-#: parser/parse_coerce.c:1568
-#: parser/parse_coerce.c:1585
-#: parser/parse_coerce.c:1643
-#: parser/parse_expr.c:1606
-#: parser/parse_func.c:373
-#: parser/parse_oper.c:983
+#: main/main.c:237
 #, c-format
-msgid "could not find array type for data type %s"
-msgstr "n'a pas pu trouver le type array pour le type de données %s"
+msgid "%s: setsysinfo failed: %s\n"
+msgstr "%s : setsysinfo a échoué : %s\n"
 
-#: optimizer/plan/initsplan.c:585
-msgid "SELECT FOR UPDATE/SHARE cannot be applied to the nullable side of an outer join"
+#: main/main.c:259
+#, c-format
+msgid "%s: WSAStartup failed: %d\n"
+msgstr "%s : WSAStartup a échoué : %d\n"
+
+#: main/main.c:278
+#, c-format
+msgid ""
+"%s is the PostgreSQL server.\n"
+"\n"
 msgstr ""
-"SELECT FOR UPDATE/SHARE ne peut être appliqué sur le côté possiblement NULL\n"
-"d'une jointure externe"
+"%s est le serveur PostgreSQL.\n"
+"\n"
 
-#: optimizer/plan/planner.c:947
-#: parser/analyze.c:1205
-#: parser/analyze.c:1393
-#: parser/analyze.c:2035
-msgid "SELECT FOR UPDATE/SHARE is not allowed with UNION/INTERSECT/EXCEPT"
-msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec UNION/INTERSECT/EXCEPT"
+#: main/main.c:279
+#, c-format
+msgid ""
+"Usage:\n"
+"  %s [OPTION]...\n"
+"\n"
+msgstr ""
+"Usage :\n"
+"  %s [OPTION]...\n"
+"\n"
 
-#: optimizer/plan/planner.c:2215
-msgid "could not implement GROUP BY"
-msgstr "n'a pas pu implanté GROUP BY"
+#: main/main.c:280
+#, c-format
+msgid "Options:\n"
+msgstr "Options :\n"
 
-#: optimizer/plan/planner.c:2216
-#: optimizer/plan/planner.c:2385
-#: optimizer/prep/prepunion.c:769
-msgid "Some of the datatypes only support hashing, while others only support sorting."
+#: main/main.c:282
+#, c-format
+msgid "  -A 1|0          enable/disable run-time assert checking\n"
 msgstr ""
-"Certains des types de données supportent seulement le hachage,\n"
-"alors que les autres supportent seulement le tri."
+"  -A 1|0             active/désactive la vérification des limites (assert) à\n"
+"                     l'exécution\n"
 
-#: optimizer/plan/planner.c:2384
-msgid "could not implement DISTINCT"
-msgstr "n'a pas pu implanté DISTINCT"
+#: main/main.c:284
+#, c-format
+msgid "  -B NBUFFERS     number of shared buffers\n"
+msgstr "  -B NBUFFERS        nombre de tampons partagés\n"
 
-#: optimizer/plan/planner.c:2828
-msgid "could not implement window PARTITION BY"
-msgstr "n'a pas pu implanter PARTITION BY de window"
+#: main/main.c:285
+#, c-format
+msgid "  -c NAME=VALUE   set run-time parameter\n"
+msgstr "  -c NOM=VALEUR      configure un paramètre d'exécution\n"
 
-#: optimizer/plan/planner.c:2829
-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."
+#: main/main.c:286
+#, c-format
+msgid "  -d 1-5          debugging level\n"
+msgstr "  -d 1-5             niveau de débogage\n"
 
-#: optimizer/plan/planner.c:2833
-msgid "could not implement window ORDER BY"
-msgstr "n'a pas pu implanter ORDER BY dans le window"
+#: main/main.c:287
+#, c-format
+msgid "  -D DATADIR      database directory\n"
+msgstr "  -D REPDONNEES      répertoire de la base de données\n"
 
-#: optimizer/plan/planner.c:2834
-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."
+#: main/main.c:288
+#, c-format
+msgid "  -e              use European date input format (DMY)\n"
+msgstr "  -e                 utilise le format de saisie européen des dates (DMY)\n"
 
-#: optimizer/util/clauses.c:4030
+#: main/main.c:289
 #, c-format
-msgid "SQL function \"%s\" during inlining"
-msgstr "fonction SQL « %s » durant « inlining »"
+msgid "  -F              turn fsync off\n"
+msgstr "  -F                 désactive fsync\n"
 
-#: optimizer/prep/prepunion.c:374
-msgid "could not implement recursive UNION"
-msgstr "n'a pas pu implanté le UNION récursif"
+#: main/main.c:290
+#, c-format
+msgid "  -h HOSTNAME     host name or IP address to listen on\n"
+msgstr "  -h NOMHOTE         nom d'hôte ou adresse IP à écouter\n"
 
-#: optimizer/prep/prepunion.c:375
-msgid "All column datatypes must be hashable."
-msgstr "Tous les types de données colonnes doivent être hachables."
+#: main/main.c:291
+#, c-format
+msgid "  -i              enable TCP/IP connections\n"
+msgstr "  -i                 active les connexions TCP/IP\n"
 
-#. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:768
+#: main/main.c:292
 #, c-format
-msgid "could not implement %s"
-msgstr "n'a pas pu implanté %s"
+msgid "  -k DIRECTORY    Unix-domain socket location\n"
+msgstr "  -k REPERTOIRE      emplacement des sockets de domaine Unix\n"
 
-#: parser/scansup.c:190
+#: main/main.c:294
 #, c-format
-msgid "identifier \"%s\" will be truncated to \"%s\""
-msgstr "l'identifiant « %s » sera tronqué en « %s »"
+msgid "  -l              enable SSL connections\n"
+msgstr "  -l                 active les connexions SSL\n"
 
-#: parser/analyze.c:450
-msgid "INSERT ... SELECT cannot specify INTO"
-msgstr "INSERT ... SELECT ne peut pas avoir INTO"
+#: main/main.c:296
+#, c-format
+msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
+msgstr "  -N MAX-CONNECT     nombre maximum de connexions simultanées\n"
 
-#: parser/analyze.c:552
-#: parser/analyze.c:977
+#: main/main.c:297
+#, c-format
+msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process (obsolete)\n"
+msgstr "  -o OPTIONS         passe « OPTIONS » à chaque processus serveur (obsolète)\n"
+
+#: main/main.c:298
+#, c-format
+msgid "  -p PORT         port number to listen on\n"
+msgstr "  -p PORT            numéro du port à écouter\n"
+
+#: main/main.c:299
+#, c-format
+msgid "  -s              show statistics after each query\n"
+msgstr "  -s                 affiche les statistiques après chaque requête\n"
+
+#: main/main.c:300
+#, c-format
+msgid "  -S WORK-MEM     set amount of memory for sorts (in kB)\n"
+msgstr "  -S WORK-MEM        configure la mémoire pour les tris (en Ko)\n"
+
+#: main/main.c:301
+#, c-format
+msgid "  --NAME=VALUE    set run-time parameter\n"
+msgstr "  -c NOM=VALEUR      configure un paramètre d'exécution\n"
+
+#: main/main.c:302
+#, c-format
+msgid "  --describe-config  describe configuration parameters, then exit\n"
+msgstr "  --describe-config  décrit les paramètres de configuration, puis quitte\n"
+
+#: main/main.c:303
+#, c-format
+msgid "  --help          show this help, then exit\n"
+msgstr "  --help             affiche cette aide, puis quitte\n"
+
+#: main/main.c:304
+#, c-format
+msgid "  --version       output version information, then exit\n"
+msgstr "  --version          affiche la version, puis quitte\n"
+
+#: main/main.c:306
+#, c-format
+msgid ""
+"\n"
+"Developer options:\n"
+msgstr ""
+"\n"
+"Options pour le développeur :\n"
+
+#: main/main.c:307
+#, c-format
+msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
+msgstr "  -f s|i|n|m|h       interdit l'utilisation de certains types de plan\n"
+
+#: main/main.c:308
+#, c-format
+msgid "  -n              do not reinitialize shared memory after abnormal exit\n"
+msgstr ""
+"  -n                 ne réinitialise pas la mémoire partagée après un arrêt\n"
+"                     brutal\n"
+
+#: main/main.c:309
+#, c-format
+msgid "  -O              allow system table structure changes\n"
+msgstr ""
+"  -O                 autorise les modifications de structure des tables\n"
+"                     système\n"
+
+#: main/main.c:310
+#, c-format
+msgid "  -P              disable system indexes\n"
+msgstr "  -P                 désactive les index système\n"
+
+#: main/main.c:311
+#, c-format
+msgid "  -t pa|pl|ex     show timings after each query\n"
+msgstr "  -t pa|pl|ex     affiche les temps pour chaque requête\n"
+
+#: main/main.c:312
+#, c-format
+msgid "  -T              send SIGSTOP to all backend processes if one dies\n"
+msgstr ""
+"  -T                 envoie SIGSTOP à tous les processus serveur si l'un\n"
+"                     d'entre eux meurt\n"
+
+#: main/main.c:313
+#, c-format
+msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
+msgstr ""
+"  -W NUM             attends NUM secondes pour permettre l'attache d'un\n"
+"                     débogueur\n"
+
+#: main/main.c:315
+#, c-format
+msgid ""
+"\n"
+"Options for single-user mode:\n"
+msgstr ""
+"\n"
+"Options pour le mode mono-utilisateur :\n"
+
+#: main/main.c:316
+#, c-format
+msgid "  --single        selects single-user mode (must be first argument)\n"
+msgstr ""
+"  --single           sélectionne le mode mono-utilisateur (doit être le\n"
+"                     premier argument)\n"
+
+#: main/main.c:317
+#, c-format
+msgid "  DBNAME          database name (defaults to user name)\n"
+msgstr "  NOMBASE            nom de la base (par défaut, celui de l'utilisateur)\n"
+
+#: main/main.c:318
+#, c-format
+msgid "  -d 0-5          override debugging level\n"
+msgstr "  -d 0-5             surcharge le niveau de débogage\n"
+
+#: main/main.c:319
+#, c-format
+msgid "  -E              echo statement before execution\n"
+msgstr "  -E                 affiche la requête avant de l'exécuter\n"
+
+#: main/main.c:320
+#, c-format
+msgid "  -j              do not use newline as interactive query delimiter\n"
+msgstr ""
+"  -N                 n'utilise pas le retour à la ligne comme délimiteur de\n"
+"                     requête\n"
+
+#: main/main.c:321
+#: main/main.c:326
+#, c-format
+msgid "  -r FILENAME     send stdout and stderr to given file\n"
+msgstr "  -r FICHIER         envoie stdout et stderr dans le fichier indiqué\n"
+
+#: main/main.c:323
+#, c-format
+msgid ""
+"\n"
+"Options for bootstrapping mode:\n"
+msgstr ""
+"\n"
+"Options pour le mode « bootstrapping » :\n"
+
+#: main/main.c:324
+#, c-format
+msgid "  --boot          selects bootstrapping mode (must be first argument)\n"
+msgstr ""
+"  --boot             sélectionne le mode « bootstrapping » (doit être le\n"
+"                     premier argument)\n"
+
+#: main/main.c:325
+#, c-format
+msgid "  DBNAME          database name (mandatory argument in bootstrapping mode)\n"
+msgstr "  NOMBASE            nom de la base (argument obligatoire dans ce mode)\n"
+
+#: main/main.c:327
+#, c-format
+msgid "  -x NUM          internal use\n"
+msgstr "  -x NUM             utilisation interne\n"
+
+#: main/main.c:329
+#, c-format
+msgid ""
+"\n"
+"Please read the documentation for the complete list of run-time\n"
+"configuration settings and how to set them on the command line or in\n"
+"the configuration file.\n"
+"\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
+msgstr ""
+"\n"
+"Merci de lire la documentation pour la liste complète des paramètres de\n"
+"configuration à l'exécution et pour savoir comment les configurer à la\n"
+"ligne de commande ou dans le fichier de configuration.\n"
+"\n"
+"Rapportez les bogues à <pgsql-bugs@postgresql.org>.\n"
+
+#: main/main.c:343
+msgid ""
+"\"root\" execution of the PostgreSQL server is not permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromise.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
+"L'exécution du serveur PostgreSQL par l'utilisateur « root » n'est pas\n"
+"autorisée.\n"
+"Le serveur doit être lancé avec un utilisateur non privilégié pour empêcher\n"
+"tout problème possible de sécurité sur le serveur. Voir la documentation pour\n"
+"plus d'informations sur le lancement propre du serveur.\n"
+
+#: main/main.c:360
+#, c-format
+msgid "%s: real and effective user IDs must match\n"
+msgstr "%s : les identifiants réel et effectif de l'utilisateur doivent correspondre\n"
+
+#: main/main.c:367
+msgid ""
+"Execution of PostgreSQL by a user with administrative permissions is not\n"
+"permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromises.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
+"L'exécution du serveur PostgreSQL par un utilisateur doté de droits d'administrateur n'est pas permise.\n"
+"Le serveur doit être lancé avec un utilisateur non privilégié pour empêcher\n"
+"tout problème de sécurité sur le serveur. Voir la documentation pour\n"
+"plus d'informations sur le lancement propre du serveur.\n"
+
+#: main/main.c:388
+#, c-format
+msgid "%s: invalid effective UID: %d\n"
+msgstr "%s : UID effectif invalide : %d\n"
+
+#: main/main.c:401
+#, c-format
+msgid "%s: could not determine user name (GetUserName failed)\n"
+msgstr "%s : n'a pas pu déterminer le nom de l'utilisateur (GetUserName a échoué)\n"
+
+#: optimizer/prep/prepunion.c:385
+msgid "could not implement recursive UNION"
+msgstr "n'a pas pu implanté le UNION récursif"
+
+#: optimizer/prep/prepunion.c:386
+msgid "All column datatypes must be hashable."
+msgstr "Tous les types de données colonnes doivent être hachables."
+
+#. translator: %s is UNION, INTERSECT, or EXCEPT
+#: optimizer/prep/prepunion.c:790
+#, c-format
+msgid "could not implement %s"
+msgstr "n'a pas pu implanté %s"
+
+#: optimizer/prep/prepunion.c:791
+#: optimizer/plan/planner.c:2250
+#: optimizer/plan/planner.c:2422
+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/util/clauses.c:4201
+#, c-format
+msgid "SQL function \"%s\" during inlining"
+msgstr "fonction SQL « %s » durant « inlining »"
+
+#: optimizer/util/plancat.c:97
+msgid "cannot access temporary or unlogged relations during recovery"
+msgstr "ne peut pas accéder à des tables temporaires et non tracées lors de la restauration"
+
+#: optimizer/plan/initsplan.c:587
+msgid "SELECT FOR UPDATE/SHARE cannot be applied to the nullable side of an outer join"
+msgstr ""
+"SELECT FOR UPDATE/SHARE ne peut être appliqué sur le côté possiblement NULL\n"
+"d'une jointure externe"
+
+#: optimizer/plan/planner.c:959
+#: parser/analyze.c:1337
+#: parser/analyze.c:1534
+#: parser/analyze.c:2263
+msgid "SELECT FOR UPDATE/SHARE is not allowed with UNION/INTERSECT/EXCEPT"
+msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec UNION/INTERSECT/EXCEPT"
+
+#: optimizer/plan/planner.c:2249
+msgid "could not implement GROUP BY"
+msgstr "n'a pas pu implanté GROUP BY"
+
+#: optimizer/plan/planner.c:2421
+msgid "could not implement DISTINCT"
+msgstr "n'a pas pu implanté DISTINCT"
+
+#: optimizer/plan/planner.c:2868
+msgid "could not implement window PARTITION BY"
+msgstr "n'a pas pu implanter PARTITION BY de window"
+
+#: optimizer/plan/planner.c:2869
+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:2873
+msgid "could not implement window ORDER BY"
+msgstr "n'a pas pu implanter ORDER BY dans le window"
+
+#: optimizer/plan/planner.c:2874
+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."
+
+#: optimizer/path/joinrels.c:673
+msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions"
+msgstr ""
+"FULL JOIN est supporté seulement avec les conditions de jointures MERGE et de\n"
+"jointures HASH JOIN"
+
+#: parser/analyze.c:471
+msgid "INSERT ... SELECT cannot specify INTO"
+msgstr "INSERT ... SELECT ne peut pas avoir INTO"
+
+#: parser/analyze.c:564
+#: parser/analyze.c:1070
 msgid "VALUES lists must all be the same length"
 msgstr "les listes VALUES doivent toutes être de la même longueur"
 
-#: parser/analyze.c:573
-#: parser/analyze.c:1082
+#: parser/analyze.c:606
+#: parser/analyze.c:1211
 msgid "VALUES must not contain table references"
 msgstr "VALUES ne doit pas contenir de références de table"
 
-#: parser/analyze.c:587
-#: parser/analyze.c:1096
+#: parser/analyze.c:620
+#: parser/analyze.c:1225
 msgid "VALUES must not contain OLD or NEW references"
 msgstr "VALUES ne doit pas contenir des références à OLD et NEW"
 
-#: parser/analyze.c:588
-#: parser/analyze.c:1097
+#: parser/analyze.c:621
+#: parser/analyze.c:1226
 msgid "Use SELECT ... UNION ALL ... instead."
 msgstr "Utilisez à la place SELECT ... UNION ALL ..."
 
-#: parser/analyze.c:698
-#: parser/analyze.c:1109
+#: parser/analyze.c:725
+#: parser/analyze.c:1238
 msgid "cannot use aggregate function in VALUES"
 msgstr "ne peut pas utiliser la fonction d'agrégat dans un VALUES"
 
-#: parser/analyze.c:704
-#: parser/analyze.c:1115
+#: parser/analyze.c:731
+#: parser/analyze.c:1244
 msgid "cannot use window function in VALUES"
 msgstr "ne peut pas utiliser la fonction window dans un VALUES"
 
-#: parser/analyze.c:736
+#: parser/analyze.c:765
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT a plus d'expressions que les colonnes cibles"
 
-#: parser/analyze.c:744
+#: parser/analyze.c:783
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT a plus de colonnes cibles que d'expressions"
 
-#: parser/analyze.c:993
+#: parser/analyze.c:787
+msgid "The insertion source is a row expression containing the same number of columns expected by the INSERT. Did you accidentally use extra parentheses?"
+msgstr ""
+"La source d'insertion est une expression de ligne contenant le même nombre\n"
+"de colonnes que celui attendu par INSERT. Auriez-vous utilisé des parenthèses\n"
+"supplémentaires ?"
+
+#: parser/analyze.c:1084
 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"
 
-#: parser/analyze.c:1063
-#: parser/analyze.c:2183
+#: parser/analyze.c:1192
+#: parser/analyze.c:2414
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to VALUES"
 msgstr "SELECT FOR UPDATE/SHARE ne peut pas être appliqué à VALUES"
 
-#: parser/analyze.c:1316
+#: parser/analyze.c:1452
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "clause UNION/INTERSECT/EXCEPT ORDER BY invalide"
 
-#: parser/analyze.c:1317
+#: parser/analyze.c:1453
 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:1318
+#: parser/analyze.c:1454
 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:1385
+#: parser/analyze.c:1526
 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:1445
+#: parser/analyze.c:1586
 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:1530
+#: parser/analyze.c:1674
 #, 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:1722
+#: parser/analyze.c:1930
 msgid "CREATE TABLE AS specifies too many column names"
 msgstr "CREATE TABLE AS spécifie trop de noms de colonnes"
 
-#: parser/analyze.c:1772
+#: parser/analyze.c:1988
 msgid "cannot use aggregate function in UPDATE"
 msgstr "ne peut pas utiliser une fonction d'agrégat dans un UPDATE"
 
-#: parser/analyze.c:1778
+#: parser/analyze.c:1994
 msgid "cannot use window function in UPDATE"
 msgstr "ne peut pas utiliser une fonction window dans un UPDATE"
 
-#: parser/analyze.c:1885
+#: parser/analyze.c:2103
 msgid "cannot use aggregate function in RETURNING"
 msgstr "ne peut pas utiliser une fonction d'agrégat dans RETURNING"
 
-#: parser/analyze.c:1891
+#: parser/analyze.c:2109
 msgid "cannot use window function in RETURNING"
 msgstr "ne peut pas utiliser une fonction window dans RETURNING"
 
-#: parser/analyze.c:1910
+#: parser/analyze.c:2128
 msgid "RETURNING cannot contain references to other relations"
 msgstr "RETURNING ne doit pas contenir de références à d'autres relations"
 
-#: parser/analyze.c:1949
+#: parser/analyze.c:2167
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "ne peut pas spécifier à la fois SCROLL et NO SCROLL"
 
-#: parser/analyze.c:1963
+#: parser/analyze.c:2181
 msgid "DECLARE CURSOR cannot specify INTO"
 msgstr "DECLARE CURSOR ne peut pas spécifier INTO"
 
-#: parser/analyze.c:1971
+#: parser/analyze.c:2193
+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"
+
+#: parser/analyze.c:2199
 msgid "DECLARE CURSOR WITH HOLD ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... FOR UPDATE/SHARE n'est pas supporté"
 
-#: parser/analyze.c:1972
+#: parser/analyze.c:2200
 msgid "Holdable cursors must be READ ONLY."
 msgstr "Les curseurs détenables doivent être en lecture seule (READ ONLY)."
 
-#: parser/analyze.c:1985
+#: parser/analyze.c:2213
 msgid "DECLARE INSENSITIVE CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE INSENSITIVE CURSOR ... FOR UPDATE/SHARE n'est pas supporté"
 
-#: parser/analyze.c:1986
+#: parser/analyze.c:2214
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "Les curseurs insensibles doivent être en lecture seule (READ ONLY)."
 
-#: parser/analyze.c:2039
+#: parser/analyze.c:2267
 msgid "SELECT FOR UPDATE/SHARE is not allowed with DISTINCT clause"
 msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec la clause DISTINCT"
 
-#: parser/analyze.c:2043
+#: parser/analyze.c:2271
 msgid "SELECT FOR UPDATE/SHARE is not allowed with GROUP BY clause"
 msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec la clause GROUP BY"
 
-#: parser/analyze.c:2047
+#: parser/analyze.c:2275
 msgid "SELECT FOR UPDATE/SHARE is not allowed with HAVING clause"
 msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec la clause HAVING"
 
-#: parser/analyze.c:2051
+#: parser/analyze.c:2279
 msgid "SELECT FOR UPDATE/SHARE is not allowed with aggregate functions"
 msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec les fonctions d'agrégats"
 
-#: parser/analyze.c:2055
+#: parser/analyze.c:2283
 msgid "SELECT FOR UPDATE/SHARE is not allowed with window functions"
 msgstr "SELECT FOR UPDATE/SHARE n'est pas autorisé avec les fonctions window"
 
-#: parser/analyze.c:2059
+#: parser/analyze.c:2287
 msgid "SELECT FOR UPDATE/SHARE is not allowed with set-returning functions in the target list"
 msgstr ""
 "SELECT FOR UPDATE/SHARE n'est pas autorisé avec les fonctions renvoyant plusieurs lignes\n"
 "dans la liste cible"
 
-#: parser/analyze.c:2135
+#: parser/analyze.c:2366
 msgid "SELECT FOR UPDATE/SHARE must specify unqualified relation names"
 msgstr "SELECT FOR UPDATE/SHARE doit indiqué les noms de relation non qualifiés"
 
-#: parser/analyze.c:2165
+#: parser/analyze.c:2383
+#, c-format
+msgid "SELECT FOR UPDATE/SHARE cannot be used with foreign table \"%s\""
+msgstr "SELECT FOR UPDATE/SHARE ne peut pas être utilisé avec une table distante « %s »"
+
+#: parser/analyze.c:2402
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a join"
 msgstr "SELECT FOR UPDATE/SHARE ne peut pas être appliqué à une jointure"
 
-#: parser/analyze.c:2171
-msgid "SELECT FOR UPDATE/SHARE cannot be applied to NEW or OLD"
-msgstr "SELECT FOR UPDATE/SHARE ne peut pas être appliqué à NEW et OLD"
-
-#: parser/analyze.c:2177
+#: parser/analyze.c:2408
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a function"
 msgstr "SELECT FOR UPDATE/SHARE ne peut pas être appliqué à une fonction"
 
-#: parser/analyze.c:2189
+#: parser/analyze.c:2420
 msgid "SELECT FOR UPDATE/SHARE cannot be applied to a WITH query"
 msgstr ""
 "SELECT FOR UPDATE/SHARE ne peut pas être appliqué à une requête\n"
 "WITH"
 
-#: parser/analyze.c:2203
+#: parser/analyze.c:2434
 #, c-format
 msgid "relation \"%s\" in FOR UPDATE/SHARE clause not found in FROM clause"
 msgstr "la relation « %s » d'une clause FOR UPDATE/SHARE introuvable dans la clause FROM"
 
-#: parser/parse_agg.c:127
-#: parser/parse_oper.c:254
+#: parser/parse_agg.c:131
+#: parser/parse_oper.c:219
 #, c-format
 msgid "could not identify an ordering operator for type %s"
 msgstr "n'a pas pu identifier un opérateur de tri pour le type %s"
 
-#: parser/parse_agg.c:129
+#: parser/parse_agg.c:133
 msgid "Aggregates with DISTINCT must be able to sort their inputs."
 msgstr "Les agrégats avec DISTINCT doivent être capable de trier leur entrée."
 
-#: parser/parse_agg.c:170
+#: parser/parse_agg.c:174
 msgid "aggregate function calls cannot contain window function calls"
 msgstr ""
 "les appels à la fonction d'agrégat ne peuvent pas contenir des appels à la\n"
 "fonction window"
 
-#: parser/parse_agg.c:241
-#: parser/parse_clause.c:1620
+#: parser/parse_agg.c:245
+#: parser/parse_clause.c:1637
 #, c-format
 msgid "window \"%s\" does not exist"
 msgstr "le window « %s » n'existe pas"
 
-#: parser/parse_agg.c:331
+#: parser/parse_agg.c:336
 msgid "aggregates not allowed in WHERE clause"
 msgstr "agrégats non autorisés dans une clause WHERE"
 
-#: parser/parse_agg.c:337
+#: parser/parse_agg.c:342
 msgid "aggregates not allowed in JOIN conditions"
 msgstr "agrégats non autorisés dans une condition JOIN"
 
-#: parser/parse_agg.c:358
+#: parser/parse_agg.c:363
 msgid "aggregates not allowed in GROUP BY clause"
 msgstr "agrégats non autorisés dans une clause GROUP BY"
 
-#: parser/parse_agg.c:426
+#: parser/parse_agg.c:433
 msgid "aggregate functions not allowed in a recursive query's recursive term"
 msgstr ""
 "fonctions d'agrégat non autorisées dans le terme récursif de la requête\n"
 "récursive"
 
-#: parser/parse_agg.c:451
+#: parser/parse_agg.c:458
 msgid "window functions not allowed in WHERE clause"
 msgstr "fonctions window non autorisées dans une clause WHERE"
 
-#: parser/parse_agg.c:457
+#: parser/parse_agg.c:464
 msgid "window functions not allowed in JOIN conditions"
 msgstr "fonctions window non autorisées dans une condition JOIN"
 
-#: parser/parse_agg.c:463
+#: parser/parse_agg.c:470
 msgid "window functions not allowed in HAVING clause"
 msgstr "fonctions window non autorisées dans une clause WHERE"
 
-#: parser/parse_agg.c:476
+#: parser/parse_agg.c:483
 msgid "window functions not allowed in GROUP BY clause"
 msgstr "fonctions window non autorisées dans une clause GROUP BY"
 
-#: parser/parse_agg.c:495
-#: parser/parse_agg.c:508
+#: parser/parse_agg.c:502
+#: parser/parse_agg.c:515
 msgid "window functions not allowed in window definition"
 msgstr "fonctions window non autorisées dans une définition window"
 
-#: parser/parse_agg.c:630
+#: parser/parse_agg.c:673
 #, c-format
 msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function"
 msgstr "la colonne « %s.%s » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat"
 
-#: parser/parse_agg.c:636
+#: parser/parse_agg.c:679
 #, c-format
 msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr ""
 "la sous-requête utilise une colonne « %s.%s » non groupée dans la requête\n"
 "externe"
 
-#: parser/parse_clause.c:420
+#: parser/parse_clause.c:421
 #, c-format
 msgid "JOIN/ON clause refers to \"%s\", which is not part of JOIN"
 msgstr "la clause JOIN/ON se réfère à « %s », qui ne fait pas partie du JOIN"
 
-#: parser/parse_clause.c:501
+#: parser/parse_clause.c:502
 msgid "subquery in FROM cannot have SELECT INTO"
 msgstr "la sous-requête du FROM ne peut pas avoir de SELECT INTO"
 
-#: parser/parse_clause.c:523
+#: parser/parse_clause.c:524
 msgid "subquery in FROM cannot refer to other relations of same query level"
 msgstr ""
 "la sous-requête du FROM ne peut pas faire référence à d'autres relations\n"
 "dans le même niveau de la requête"
 
-#: parser/parse_clause.c:574
+#: parser/parse_clause.c:580
 msgid "function expression in FROM cannot refer to other relations of same query level"
 msgstr ""
 "l'expression de la fonction du FROM ne peut pas faire référence à d'autres\n"
 "relations sur le même niveau de la requête"
 
-#: parser/parse_clause.c:587
+#: parser/parse_clause.c:593
 msgid "cannot use aggregate function in function expression in FROM"
 msgstr ""
 "ne peut pas utiliser la fonction d'agrégat dans l'expression de la fonction\n"
 "du FROM"
 
-#: parser/parse_clause.c:594
+#: parser/parse_clause.c:600
 msgid "cannot use window function in function expression in FROM"
 msgstr ""
 "ne peut pas utiliser la fonction window dans l'expression de la fonction\n"
 "du FROM"
 
-#: parser/parse_clause.c:870
+#: parser/parse_clause.c:877
 #, c-format
 msgid "column name \"%s\" appears more than once in USING clause"
 msgstr "le nom de la colonne « %s » apparaît plus d'une fois dans la clause USING"
 
-#: parser/parse_clause.c:885
+#: parser/parse_clause.c:892
 #, c-format
 msgid "common column name \"%s\" appears more than once in left table"
 msgstr ""
 "le nom commun de la colonne « %s » apparaît plus d'une fois dans la table de\n"
 "gauche"
 
-#: parser/parse_clause.c:894
+#: parser/parse_clause.c:901
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in left table"
 msgstr ""
 "la colonne « %s » spécifiée dans la clause USING n'existe pas dans la table\n"
 "de gauche"
 
-#: parser/parse_clause.c:908
+#: parser/parse_clause.c:915
 #, c-format
 msgid "common column name \"%s\" appears more than once in right table"
 msgstr ""
 "le nom commun de la colonne « %s » apparaît plus d'une fois dans la table de\n"
 " droite"
 
-#: parser/parse_clause.c:917
+#: parser/parse_clause.c:924
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in right table"
 msgstr ""
 "la colonne « %s » spécifiée dans la clause USING n'existe pas dans la table\n"
 "de droite"
 
-#: parser/parse_clause.c:974
+#: parser/parse_clause.c:981
 #, c-format
 msgid "column alias list for \"%s\" has too many entries"
 msgstr "la liste d'alias de colonnes pour « %s » a beaucoup trop d'entrées"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1211
+#: parser/parse_clause.c:1228
 #, c-format
 msgid "argument of %s must not contain variables"
 msgstr "l'argument de « %s » ne doit pas contenir de variables"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1222
+#: parser/parse_clause.c:1239
 #, c-format
 msgid "argument of %s must not contain aggregate functions"
 msgstr "l'argument de %s ne doit pas contenir de fonctions d'agrégats"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1233
+#: parser/parse_clause.c:1250
 #, c-format
 msgid "argument of %s must not contain window functions"
 msgstr "l'argument de %s ne doit pas contenir des fonctions window"
 
 #. translator: first %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1350
+#: parser/parse_clause.c:1367
 #, c-format
 msgid "%s \"%s\" is ambiguous"
 msgstr "%s « %s » est ambigu"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1374
+#: parser/parse_clause.c:1391
 #, c-format
 msgid "non-integer constant in %s"
 msgstr "constante non entière dans %s"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1392
+#: parser/parse_clause.c:1409
 #, c-format
 msgid "%s position %d is not in select list"
 msgstr "%s, à la position %d, n'est pas dans la liste SELECT"
 
-#: parser/parse_clause.c:1608
+#: parser/parse_clause.c:1625
 #, c-format
 msgid "window \"%s\" is already defined"
 msgstr "le window « %s » est déjà définie"
 
-#: parser/parse_clause.c:1662
+#: parser/parse_clause.c:1679
 #, c-format
 msgid "cannot override PARTITION BY clause of window \"%s\""
 msgstr "n'a pas pu surcharger la clause PARTITION BY de window « %s »"
 
-#: parser/parse_clause.c:1674
+#: parser/parse_clause.c:1691
 #, c-format
 msgid "cannot override ORDER BY clause of window \"%s\""
 msgstr "n'a pas pu surcharger la clause ORDER BY de window « %s »"
 
-#: parser/parse_clause.c:1696
+#: parser/parse_clause.c:1713
 #, c-format
 msgid "cannot override frame clause of window \"%s\""
 msgstr "ne peut pas surcharger la frame clause du window « %s »"
 
-#: parser/parse_clause.c:1762
+#: parser/parse_clause.c:1779
 msgid "in an aggregate with DISTINCT, ORDER BY expressions must appear in argument list"
 msgstr ""
 "dans un agrégat avec DISTINCT, les expressions ORDER BY doivent apparaître\n"
 "dans la liste d'argument"
 
-#: parser/parse_clause.c:1763
+#: parser/parse_clause.c:1780
 msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr ""
 "pour SELECT DISTINCT, ORDER BY, les expressions doivent apparaître dans la\n"
 "liste SELECT"
 
-#: parser/parse_clause.c:1849
-#: parser/parse_clause.c:1881
+#: parser/parse_clause.c:1866
+#: parser/parse_clause.c:1898
 msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr ""
 "les expressions SELECT DISTINCT ON doivent correspondre aux expressions\n"
 "ORDER BY initiales"
 
-#: parser/parse_clause.c:2000
+#: parser/parse_clause.c:2020
 #, c-format
 msgid "operator %s is not a valid ordering operator"
 msgstr "l'opérateur %s n'est pas un opérateur de tri valide"
 
-#: parser/parse_clause.c:2002
+#: parser/parse_clause.c:2022
 msgid "Ordering operators must be \"<\" or \">\" members of btree operator families."
 msgstr ""
 "Les opérateurs de tri doivent être les membres « < » ou « > » des familles\n"
 "d'opérateurs btree."
 
-#: parser/parse_coerce.c:841
-#: parser/parse_coerce.c:870
-#: parser/parse_coerce.c:888
-#: parser/parse_coerce.c:903
-#: parser/parse_expr.c:1640
-#: parser/parse_expr.c:2079
+#: parser/parse_coerce.c:906
+#: parser/parse_coerce.c:936
+#: parser/parse_coerce.c:954
+#: parser/parse_coerce.c:969
+#: parser/parse_expr.c:1667
+#: parser/parse_expr.c:2109
+#: parser/parse_target.c:829
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "ne peut pas convertir le type %s en %s"
 
-#: parser/parse_coerce.c:873
+#: parser/parse_coerce.c:939
 msgid "Input has too few columns."
 msgstr "L'entrée n'a pas assez de colonnes."
 
-#: parser/parse_coerce.c:891
+#: parser/parse_coerce.c:957
 #, c-format
 msgid "Cannot cast type %s to %s in column %d."
 msgstr "ne peut pas convertir le type %s en %s dans la colonne %d"
 
-#: parser/parse_coerce.c:906
+#: parser/parse_coerce.c:972
 msgid "Input has too many columns."
 msgstr "L'entrée a trop de colonnes."
 
 #. translator: first %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:949
+#: parser/parse_coerce.c:1015
 #, c-format
 msgid "argument of %s must be type boolean, not type %s"
 msgstr "l'argument de %s doit être de type booléen, et non du type %s"
 
 #. translator: %s is name of a SQL construct, eg WHERE
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:959
-#: parser/parse_coerce.c:1008
+#: parser/parse_coerce.c:1025
+#: parser/parse_coerce.c:1074
 #, c-format
 msgid "argument of %s must not return a set"
 msgstr "l'argument de %s ne doit pas renvoyer un ensemble"
 
 #. translator: first %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:996
+#: parser/parse_coerce.c:1062
 #, c-format
 msgid "argument of %s must be type %s, not type %s"
 msgstr "l'argument de %s doit être de type %s, et non du type %s"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1129
+#: parser/parse_coerce.c:1195
 #, c-format
 msgid "%s types %s and %s cannot be matched"
 msgstr "les %s types %s et %s ne peuvent pas correspondre"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1196
+#: parser/parse_coerce.c:1262
 #, c-format
 msgid "%s could not convert type %s to %s"
 msgstr "%s n'a pas pu convertir le type %s en %s"
 
-#: parser/parse_coerce.c:1437
+#: parser/parse_coerce.c:1513
 msgid "arguments declared \"anyelement\" are not all alike"
 msgstr "les arguments déclarés « anyelement » ne sont pas tous identiques"
 
-#: parser/parse_coerce.c:1456
+#: parser/parse_coerce.c:1533
 msgid "arguments declared \"anyarray\" are not all alike"
 msgstr "les arguments déclarés « anyarray » ne sont pas tous identiques"
 
-#: parser/parse_coerce.c:1485
-#: parser/parse_coerce.c:1629
-#: parser/parse_coerce.c:1660
+#: parser/parse_coerce.c:1562
+#: parser/parse_coerce.c:1710
+#: parser/parse_coerce.c:1742
 #, c-format
 msgid "argument declared \"anyarray\" is not an array but type %s"
 msgstr "l'argument déclaré « anyarray » n'est pas un tableau mais est du type %s"
 
-#: parser/parse_coerce.c:1501
+#: parser/parse_coerce.c:1578
 msgid "argument declared \"anyarray\" is not consistent with argument declared \"anyelement\""
 msgstr ""
 "l'argument déclaré « anyarray » n'est pas cohérent avec l'argument déclaré\n"
 "« anyelement »"
 
-#: parser/parse_coerce.c:1519
+#: parser/parse_coerce.c:1596
 msgid "could not determine polymorphic type because input has type \"unknown\""
 msgstr ""
 "n'a pas pu déterminer le type polymorphique car l'entrée dispose du type\n"
 "« unknown »"
 
-#: parser/parse_coerce.c:1529
+#: parser/parse_coerce.c:1606
 #, c-format
 msgid "type matched to anynonarray is an array type: %s"
 msgstr "le type déclaré anynonarray est un type tableau : %s"
 
-#: parser/parse_coerce.c:1539
+#: parser/parse_coerce.c:1616
 #, c-format
 msgid "type matched to anyenum is not an enum type: %s"
 msgstr "le type déclaré anyenum n'est pas un type enum : %s"
 
-#: parser/parse_cte.c:40
+#: parser/parse_cte.c:42
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear within its non-recursive term"
 msgstr ""
 "la référence récursive à la requête « %s » ne doit pas apparaître à\n"
 "l'intérieur de son terme non récursif"
 
-#: parser/parse_cte.c:42
+#: parser/parse_cte.c:44
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear within a subquery"
 msgstr ""
 "la référence récursive à la requête « %s » ne doit pas apparaître à\n"
 "l'intérieur d'une sous-requête"
 
-#: parser/parse_cte.c:44
+#: parser/parse_cte.c:46
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear within an outer join"
 msgstr ""
 "la référence récursive à la requête « %s » ne doit pas apparaître à\n"
 "l'intérieur d'une jointure externe"
 
-#: parser/parse_cte.c:46
+#: parser/parse_cte.c:48
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear within INTERSECT"
 msgstr ""
 "la référence récursive à la requête « %s » ne doit pas apparaître à\n"
 "l'intérieur d'INTERSECT"
 
-#: parser/parse_cte.c:48
+#: parser/parse_cte.c:50
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear within EXCEPT"
 msgstr ""
 "la référence récursive à la requête « %s » ne doit pas apparaître à\n"
 "l'intérieur d'EXCEPT"
 
-#: parser/parse_cte.c:130
+#: parser/parse_cte.c:132
 #, c-format
 msgid "WITH query name \"%s\" specified more than once"
 msgstr "le nom de la requête WITH « %s » est spécifié plus d'une fois"
 
-#: parser/parse_cte.c:247
+#: parser/parse_cte.c:259
 msgid "subquery in WITH cannot have SELECT INTO"
 msgstr "la sous-requête du WITH ne peut pas avoir de SELECT INTO"
 
-#: parser/parse_cte.c:288
+#: parser/parse_cte.c:271
+msgid "WITH clause containing a data-modifying statement must be at the top level"
+msgstr ""
+"la clause WITH contenant une instruction de modification de données doit être\n"
+"au plus haut niveau"
+
+#: parser/parse_cte.c:320
 #, c-format
 msgid "recursive query \"%s\" column %d has type %s in non-recursive term but type %s overall"
 msgstr ""
 "dans la requête récursive « %s », la colonne %d a le type %s dans le terme non\n"
 "récursif mais le type global %s"
 
-#: parser/parse_cte.c:294
+#: parser/parse_cte.c:326
 msgid "Cast the output of the non-recursive term to the correct type."
 msgstr "Convertit la sortie du terme non récursif dans le bon type."
 
-#: parser/parse_cte.c:376
+#: parser/parse_cte.c:331
+#, c-format
+msgid "recursive query \"%s\" column %d has collation \"%s\" in non-recursive term but collation \"%s\" overall"
+msgstr ""
+
+#: parser/parse_cte.c:335
+msgid "Use the COLLATE clause to set the collation of the non-recursive term."
+msgstr "Utilisez la clause COLLATE pour configurer le collationnement du terme non récursif."
+
+#: parser/parse_cte.c:426
 #, c-format
 msgid "WITH query \"%s\" has %d columns available but %d columns specified"
 msgstr "la requête WITH « %s » a %d colonnes disponibles mais %d colonnes spécifiées"
 
-#: parser/parse_cte.c:556
+#: parser/parse_cte.c:606
 msgid "mutual recursion between WITH items is not implemented"
 msgstr "la récursion mutuelle entre des éléments WITH n'est pas implantée"
 
-#: parser/parse_cte.c:608
+#: parser/parse_cte.c:658
+#, c-format
+msgid "recursive query \"%s\" must not contain data-modifying statements"
+msgstr "la requête récursive « %s » ne doit pas contenir des instructions de modification de données"
+
+#: parser/parse_cte.c:666
 #, c-format
 msgid "recursive query \"%s\" does not have the form non-recursive-term UNION [ALL] recursive-term"
 msgstr ""
 "la requête récursive « %s » n'a pas la forme terme-non-récursive UNION [ALL]\n"
 "terme-récursive"
 
-#: parser/parse_cte.c:640
+#: parser/parse_cte.c:698
 msgid "ORDER BY in a recursive query is not implemented"
 msgstr "ORDER BY dans une requête récursive n'est pas implanté"
 
-#: parser/parse_cte.c:646
+#: parser/parse_cte.c:704
 msgid "OFFSET in a recursive query is not implemented"
 msgstr "OFFSET dans une requête récursive n'est pas implémenté"
 
-#: parser/parse_cte.c:652
+#: parser/parse_cte.c:710
 msgid "LIMIT in a recursive query is not implemented"
 msgstr "LIMIT dans une requête récursive n'est pas implémenté"
 
-#: parser/parse_cte.c:658
+#: parser/parse_cte.c:716
 msgid "FOR UPDATE/SHARE in a recursive query is not implemented"
 msgstr "FOR UPDATE/SHARE dans une requête récursive n'est pas implémenté"
 
-#: parser/parse_cte.c:715
+#: parser/parse_cte.c:773
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear more than once"
 msgstr "la référence récursive à la requête « %s » ne doit pas apparaître plus d'une fois"
 
-#: parser/parse_expr.c:358
-#: parser/parse_expr.c:751
+#: parser/parse_expr.c:364
+#: parser/parse_expr.c:757
 #, c-format
 msgid "column %s.%s does not exist"
 msgstr "la colonne %s.%s n'existe pas"
 
-#: parser/parse_expr.c:370
+#: parser/parse_expr.c:376
 #, c-format
 msgid "column \"%s\" not found in data type %s"
 msgstr "colonne « %s » introuvable pour le type de données %s"
 
-#: parser/parse_expr.c:376
+#: parser/parse_expr.c:382
 #, c-format
 msgid "could not identify column \"%s\" in record data type"
 msgstr "n'a pas pu identifier la colonne « %s » dans le type de données de l'enregistrement"
 
-#: parser/parse_expr.c:382
+#: parser/parse_expr.c:388
 #, c-format
 msgid "column notation .%s applied to type %s, which is not a composite type"
 msgstr "notation d'attribut .%s appliqué au type %s, qui n'est pas un type composé"
 
-#: parser/parse_expr.c:412
-#: parser/parse_target.c:600
+#: parser/parse_expr.c:418
+#: parser/parse_target.c:617
 msgid "row expansion via \"*\" is not supported here"
 msgstr "l'expansion de ligne via « * » n'est pas supporté ici"
 
-#: parser/parse_expr.c:735
+#: parser/parse_expr.c:741
 #: parser/parse_relation.c:478
 #: parser/parse_relation.c:551
-#: parser/parse_target.c:977
+#: parser/parse_target.c:1064
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "la référence à la colonne « %s » est ambigu"
 
-#: parser/parse_expr.c:803
-#: parser/parse_param.c:108
-#: parser/parse_param.c:139
-#: parser/parse_param.c:195
-#: parser/parse_param.c:287
+#: parser/parse_expr.c:809
+#: parser/parse_param.c:109
+#: parser/parse_param.c:141
+#: parser/parse_param.c:198
+#: parser/parse_param.c:297
 #, c-format
 msgid "there is no parameter $%d"
 msgstr "Il n'existe pas de paramètres $%d"
 
-#: parser/parse_expr.c:1008
+#: parser/parse_expr.c:1018
 msgid "NULLIF requires = operator to yield boolean"
 msgstr "NULLIF requiert l'opérateur = pour comparer des booleéns"
 
-#: parser/parse_expr.c:1181
+#: parser/parse_expr.c:1197
 msgid "arguments of row IN must all be row expressions"
 msgstr "les arguments de la ligne IN doivent tous être des expressions de ligne"
 
-#: parser/parse_expr.c:1385
+#: parser/parse_expr.c:1411
 msgid "subquery cannot have SELECT INTO"
 msgstr "la sous-requête ne peut pas avoir de SELECT INTO"
 
-#: parser/parse_expr.c:1413
+#: parser/parse_expr.c:1439
 msgid "subquery must return a column"
 msgstr "la sous-requête doit renvoyer une colonne"
 
-#: parser/parse_expr.c:1420
+#: parser/parse_expr.c:1446
 msgid "subquery must return only one column"
 msgstr "la sous-requête doit renvoyer une seule colonne"
 
-#: parser/parse_expr.c:1479
+#: parser/parse_expr.c:1506
 msgid "subquery has too many columns"
 msgstr "la sous-requête a trop de colonnes"
 
-#: parser/parse_expr.c:1484
+#: parser/parse_expr.c:1511
 msgid "subquery has too few columns"
 msgstr "la sous-requête n'a pas assez de colonnes"
 
-#: parser/parse_expr.c:1580
+#: parser/parse_expr.c:1607
 msgid "cannot determine type of empty array"
 msgstr "ne peut pas déterminer le type d'un tableau vide"
 
-#: parser/parse_expr.c:1581
+#: parser/parse_expr.c:1608
 msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]."
 msgstr "Convertit explicitement vers le type désiré, par exemple ARRAY[]::integer[]."
 
-#: parser/parse_expr.c:1595
+#: parser/parse_expr.c:1622
 #, c-format
 msgid "could not find element type for data type %s"
 msgstr "n'a pas pu trouver le type d'élément pour le type de données %s"
 
-#: parser/parse_expr.c:1793
+#: parser/parse_expr.c:1823
 msgid "unnamed XML attribute value must be a column reference"
 msgstr "la valeur d'un attribut XML sans nom doit être une référence de colonne"
 
-#: parser/parse_expr.c:1794
+#: parser/parse_expr.c:1824
 msgid "unnamed XML element value must be a column reference"
 msgstr "la valeur d'un élément XML sans nom doit être une référence de colonne"
 
-#: parser/parse_expr.c:1809
+#: parser/parse_expr.c:1839
 #, c-format
 msgid "XML attribute name \"%s\" appears more than once"
 msgstr "le nom de l'attribut XML « %s » apparaît plus d'une fois"
 
-#: parser/parse_expr.c:1916
+#: parser/parse_expr.c:1946
 #, c-format
 msgid "cannot cast XMLSERIALIZE result to %s"
 msgstr "ne peut pas convertir le résultat XMLSERIALIZE en %s"
 
-#: parser/parse_expr.c:2120
-#: parser/parse_expr.c:2318
+#: parser/parse_expr.c:2182
+#: parser/parse_expr.c:2382
 msgid "unequal number of entries in row expressions"
 msgstr "nombre différent d'entrées dans les expressions de ligne"
 
-#: parser/parse_expr.c:2130
+#: parser/parse_expr.c:2192
 msgid "cannot compare rows of zero length"
 msgstr "n'a pas pu comparer des lignes de taille zéro"
 
-#: parser/parse_expr.c:2155
+#: parser/parse_expr.c:2217
 #, c-format
 msgid "row comparison operator must yield type boolean, not type %s"
 msgstr ""
 "l'opérateur de comparaison de ligne doit renvoyer le type booléen, et non le\n"
 "type %s"
 
-#: parser/parse_expr.c:2162
+#: parser/parse_expr.c:2224
 msgid "row comparison operator must not return a set"
 msgstr "l'opérateur de comparaison de ligne ne doit pas renvoyer un ensemble"
 
-#: parser/parse_expr.c:2221
-#: parser/parse_expr.c:2265
+#: parser/parse_expr.c:2283
+#: parser/parse_expr.c:2328
 #, c-format
 msgid "could not determine interpretation of row comparison operator %s"
 msgstr "n'a pas pu déterminer l'interprétation de l'opérateur de comparaison de ligne %s"
 
-#: parser/parse_expr.c:2223
+#: parser/parse_expr.c:2285
 msgid "Row comparison operators must be associated with btree operator families."
 msgstr ""
 "Les opérateurs de comparaison de lignes doivent être associés à des familles\n"
 "d'opérateurs btree."
 
-#: parser/parse_expr.c:2267
+#: parser/parse_expr.c:2330
 msgid "There are multiple equally-plausible candidates."
 msgstr "Il existe de nombreus candidats également plausibles."
 
-#: parser/parse_expr.c:2358
+#: parser/parse_expr.c:2422
 msgid "IS DISTINCT FROM requires = operator to yield boolean"
 msgstr "IS DISTINCT FROM requiert l'opérateur = pour comparer des booléens"
 
-#: parser/parse_func.c:153
+#: parser/parse_func.c:147
 #, c-format
 msgid "argument name \"%s\" used more than once"
 msgstr "nom « %s » de l'argument spécifié plus d'une fois"
 
-#: parser/parse_func.c:164
+#: parser/parse_func.c:158
 msgid "positional argument cannot follow named argument"
 msgstr "l'argument positionné ne doit pas suivre l'argument nommé"
 
-#: parser/parse_func.c:242
+#: parser/parse_func.c:236
 #, c-format
 msgid "%s(*) specified, but %s is not an aggregate function"
 msgstr "%s(*) spécifié, mais %s n'est pas une fonction d'agrégat"
 
-#: parser/parse_func.c:249
+#: parser/parse_func.c:243
 #, c-format
 msgid "DISTINCT specified, but %s is not an aggregate function"
 msgstr "DISTINCT spécifié mais %s n'est pas une fonction d'agrégat"
 
-#: parser/parse_func.c:255
+#: parser/parse_func.c:249
 #, c-format
 msgid "ORDER BY specified, but %s is not an aggregate function"
 msgstr "ORDER BY spécifié, mais %s n'est pas une fonction d'agrégat"
 
-#: parser/parse_func.c:261
+#: parser/parse_func.c:255
 #, c-format
 msgid "OVER specified, but %s is not a window function nor an aggregate function"
 msgstr "OVER spécifié, mais %s n'est pas une fonction window ou une fonction d'agrégat"
 
-#: parser/parse_func.c:283
+#: parser/parse_func.c:277
 #, c-format
 msgid "function %s is not unique"
 msgstr "la fonction %s n'est pas unique"
 
-#: parser/parse_func.c:286
+#: parser/parse_func.c:280
 msgid "Could not choose a best candidate function. You might need to add explicit type casts."
 msgstr ""
 "N'a pas pu choisir un meilleur candidat dans les fonctions. Vous pourriez\n"
 "avoir besoin d'ajouter des conversions explicites de type."
 
-#: parser/parse_func.c:297
+#: parser/parse_func.c:291
 msgid "No aggregate function matches the given name and argument types. Perhaps you misplaced ORDER BY; ORDER BY must appear after all regular arguments of the aggregate."
 msgstr ""
 "Aucune fonction d'agrégat ne correspond au nom donné et aux types d'arguments.\n"
 "Peut-être avez-vous mal placé la clause ORDER BY.\n"
 "Cette dernière doit apparaître après tous les arguments standards de l'agrégat."
 
-#: parser/parse_func.c:308
+#: parser/parse_func.c:302
 msgid "No function matches the given name and argument types. You might need to add explicit type casts."
 msgstr ""
 "Aucune fonction ne correspond au nom donné et aux types d'arguments.\n"
 "Vous devez ajouter des conversions explicites de type."
 
-#: parser/parse_func.c:415
-#: parser/parse_func.c:480
+#: parser/parse_func.c:412
+#: parser/parse_func.c:478
 #, c-format
 msgid "%s(*) must be used to call a parameterless aggregate function"
 msgstr "%s(*) doit être utilisé pour appeler une fonction d'agrégat sans paramètre"
 
-#: parser/parse_func.c:422
+#: parser/parse_func.c:419
 msgid "aggregates cannot return sets"
 msgstr "les agrégats ne peuvent pas renvoyer des ensembles"
 
-#: parser/parse_func.c:434
+#: parser/parse_func.c:431
 msgid "aggregates cannot use named arguments"
 msgstr "les agrégats ne peuvent pas utiliser des aguments nommés"
 
-#: parser/parse_func.c:453
+#: parser/parse_func.c:450
 msgid "window function call requires an OVER clause"
 msgstr "l'appel à la fonction window nécessite une clause OVER"
 
-#: parser/parse_func.c:470
+#: parser/parse_func.c:468
 msgid "DISTINCT is not implemented for window functions"
 msgstr "DISTINCT n'est pas implémenté pour des fonctions window"
 
-#: parser/parse_func.c:490
+#: parser/parse_func.c:488
 msgid "aggregate ORDER BY is not implemented for window functions"
 msgstr "l'agrégat ORDER BY n'est pas implémenté pour des fonctions window"
 
-#: parser/parse_func.c:496
+#: parser/parse_func.c:494
 msgid "window functions cannot return sets"
 msgstr "les fonctions window ne peuvent pas renvoyer des ensembles"
 
-#: parser/parse_func.c:507
+#: parser/parse_func.c:505
 msgid "window functions cannot use named arguments"
 msgstr "les fonctions window ne peuvent pas renvoyer des arguments nommés"
 
-#: parser/parse_func.c:1572
+#: parser/parse_func.c:1589
 #, c-format
 msgid "aggregate %s(*) does not exist"
 msgstr "l'agrégat %s(*) n'existe pas"
 
-#: parser/parse_func.c:1577
+#: parser/parse_func.c:1594
 #, c-format
 msgid "aggregate %s does not exist"
 msgstr "l'agrégat %s n'existe pas"
 
-#: parser/parse_func.c:1596
+#: parser/parse_func.c:1613
 #, c-format
 msgid "function %s is not an aggregate"
 msgstr "la fonction %s n'est pas un agrégat"
 
-#: parser/parse_node.c:82
+#: parser/parse_node.c:83
 #, c-format
 msgid "target lists can have at most %d entries"
 msgstr "les listes cibles peuvent avoir au plus %d colonnes"
 
-#: parser/parse_node.c:222
+#: parser/parse_node.c:240
 #, c-format
 msgid "cannot subscript type %s because it is not an array"
 msgstr "ne peut pas indicer le type %s car il ne s'agit pas d'un tableau"
 
-#: parser/parse_node.c:316
 #: parser/parse_node.c:342
+#: parser/parse_node.c:369
 msgid "array subscript must have type integer"
 msgstr "l'indice d'un tableau doit être de type entier"
 
-#: parser/parse_node.c:366
+#: parser/parse_node.c:393
 #, c-format
 msgid "array assignment requires type %s but expression is of type %s"
 msgstr "l'affectation de tableaux requiert le type %s mais l'expression est de type %s"
 
 #: parser/parse_oper.c:124
-#: parser/parse_oper.c:751
+#: parser/parse_oper.c:718
 #: utils/adt/regproc.c:464
 #: utils/adt/regproc.c:484
 #: utils/adt/regproc.c:643
@@ -11088,59 +12066,59 @@ msgstr "l'affectation de tableaux requiert le type %s mais l'expression est de t
 msgid "operator does not exist: %s"
 msgstr "l'opérateur n'existe pas : %s"
 
-#: parser/parse_oper.c:256
+#: parser/parse_oper.c:221
 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:260
-#: utils/adt/arrayfuncs.c:3109
-#: utils/adt/arrayfuncs.c:3510
-#: utils/adt/rowtypes.c:1139
+#: parser/parse_oper.c:225
+#: utils/adt/arrayfuncs.c:3176
+#: utils/adt/arrayfuncs.c:3695
+#: utils/adt/rowtypes.c:1157
 #, 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"
 
-#: parser/parse_oper.c:509
+#: parser/parse_oper.c:476
 #, c-format
 msgid "operator requires run-time type coercion: %s"
 msgstr "l'opérateur requiert la coercion du type à l'exécution : %s"
 
-#: parser/parse_oper.c:743
+#: parser/parse_oper.c:710
 #, c-format
 msgid "operator is not unique: %s"
 msgstr "l'opérateur n'est pas unique : %s"
 
-#: parser/parse_oper.c:745
+#: parser/parse_oper.c:712
 msgid "Could not choose a best candidate operator. You might need to add explicit type casts."
 msgstr ""
 "N'a pas pu choisir un meilleur candidat pour l'opérateur. Vous devez ajouter une\n"
 "conversion explicite de type."
 
-#: parser/parse_oper.c:753
+#: parser/parse_oper.c:720
 msgid "No operator matches the given name and argument type(s). You might need to add explicit type casts."
 msgstr ""
 "Aucun opérateur ne correspond au nom donné et aux types d'arguments.\n"
 "Vous devez ajouter des conversions explicites de type."
 
-#: parser/parse_oper.c:812
-#: parser/parse_oper.c:928
+#: parser/parse_oper.c:779
+#: parser/parse_oper.c:893
 #, c-format
 msgid "operator is only a shell: %s"
 msgstr "l'opérateur est seulement un shell : %s"
 
-#: parser/parse_oper.c:916
+#: parser/parse_oper.c:881
 msgid "op ANY/ALL (array) requires array on right side"
 msgstr "op ANY/ALL (tableau) requiert un tableau sur le côté droit"
 
-#: parser/parse_oper.c:958
+#: parser/parse_oper.c:923
 msgid "op ANY/ALL (array) requires operator to yield boolean"
 msgstr "op ANY/ALL (tableau) requiert un opérateur pour comparer des booléens"
 
-#: parser/parse_oper.c:963
+#: parser/parse_oper.c:928
 msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr "op ANY/ALL (tableau) requiert que l'opérateur ne renvoie pas un ensemble"
 
-#: parser/parse_param.c:212
+#: parser/parse_param.c:215
 #, c-format
 msgid "inconsistent types deduced for parameter $%d"
 msgstr "types incohérents déduit pour le paramètre $%d"
@@ -11161,8 +12139,8 @@ msgid "table name \"%s\" specified more than once"
 msgstr "le nom de la table « %s » est spécifié plus d'une fois"
 
 #: parser/parse_relation.c:754
-#: parser/parse_relation.c:1043
-#: parser/parse_relation.c:1403
+#: parser/parse_relation.c:1045
+#: parser/parse_relation.c:1432
 #, c-format
 msgid "table \"%s\" has %d columns available but %d columns specified"
 msgstr "la table « %s » a %d colonnes disponibles mais %d colonnes spécifiées"
@@ -11185,108 +12163,113 @@ msgstr ""
 "Utilisez WITH RECURSIVE ou ré-ordonnez les éléments WITH pour supprimer\n"
 "les références en avant."
 
-#: parser/parse_relation.c:1122
+#: parser/parse_relation.c:1125
 msgid "a column definition list is only allowed for functions returning \"record\""
 msgstr ""
 "une liste de définition de colonnes est uniquement autorisée pour les fonctions\n"
 "renvoyant un « record »"
 
-#: parser/parse_relation.c:1130
+#: parser/parse_relation.c:1133
 msgid "a column definition list is required for functions returning \"record\""
 msgstr ""
 "une liste de définition de colonnes est requise pour les fonctions renvoyant\n"
 "un « record »"
 
-#: parser/parse_relation.c:1177
+#: parser/parse_relation.c:1184
 #, c-format
 msgid "function \"%s\" in FROM has unsupported return type %s"
 msgstr "la fonction « %s » dans la clause FROM a un type de retour %s non supporté"
 
-#: parser/parse_relation.c:1249
+#: parser/parse_relation.c:1258
 #, c-format
 msgid "VALUES lists \"%s\" have %d columns available but %d columns specified"
 msgstr ""
 "les listes « %s » de VALUES ont %d colonnes disponibles mais %d colonnes\n"
 "spécifiées"
 
-#: parser/parse_relation.c:1305
+#: parser/parse_relation.c:1314
 #, c-format
 msgid "joins can have at most %d columns"
 msgstr "les jointures peuvent avoir au plus %d colonnes"
 
-#: parser/parse_relation.c:2038
+#: parser/parse_relation.c:1405
+#, c-format
+msgid "WITH query \"%s\" does not have a RETURNING clause"
+msgstr "La requête WITH « %s » n'a pas de clause RETURNING"
+
+#: parser/parse_relation.c:2087
 #, c-format
 msgid "column %d of relation \"%s\" does not exist"
 msgstr "la colonne %d de la relation « %s » n'existe pas"
 
-#: parser/parse_relation.c:2397
+#: parser/parse_relation.c:2471
 #, c-format
 msgid "invalid reference to FROM-clause entry for table \"%s\""
 msgstr "référence invalide d'une entrée de la clause FROM pour la table « %s »"
 
-#: parser/parse_relation.c:2400
+#: parser/parse_relation.c:2474
 #, c-format
 msgid "Perhaps you meant to reference the table alias \"%s\"."
 msgstr "Peut-être que vous souhaitiez référencer l'alias de la table « %s »."
 
-#: parser/parse_relation.c:2402
+#: parser/parse_relation.c:2476
 #, c-format
 msgid "There is an entry for table \"%s\", but it cannot be referenced from this part of the query."
 msgstr ""
 "Il existe une entrée pour la table « %s » mais elle ne peut pas être\n"
 "référencée de cette partie de la requête."
 
-#: parser/parse_relation.c:2408
+#: parser/parse_relation.c:2482
 #, c-format
 msgid "missing FROM-clause entry for table \"%s\""
 msgstr "entrée manquante de la clause FROM pour la table « %s »"
 
-#: parser/parse_target.c:373
-#: parser/parse_target.c:661
+#: parser/parse_target.c:382
+#: parser/parse_target.c:670
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "ne peut pas affecter à une colonne système « %s »"
 
-#: parser/parse_target.c:398
+#: parser/parse_target.c:410
 msgid "cannot set an array element to DEFAULT"
 msgstr "ne peut pas initialiser un élément d'un tableau avec DEFAULT"
 
-#: parser/parse_target.c:403
+#: parser/parse_target.c:415
 msgid "cannot set a subfield to DEFAULT"
 msgstr "ne peut pas initialiser un sous-champ avec DEFAULT"
 
-#: parser/parse_target.c:470
+#: parser/parse_target.c:484
 #, c-format
 msgid "column \"%s\" is of type %s but expression is of type %s"
 msgstr "la colonne « %s » est de type %s mais l'expression est de type %s"
 
-#: parser/parse_target.c:645
+#: parser/parse_target.c:654
 #, c-format
 msgid "cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type"
 msgstr ""
 "ne peut pas l'affecter au champ « %s » de la colonne « %s » parce que son\n"
 "type %s n'est pas un type composé"
 
-#: parser/parse_target.c:654
+#: parser/parse_target.c:663
 #, c-format
 msgid "cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s"
 msgstr ""
 "ne peut pas l'affecter au champ « %s » de la colonne « %s » parce qu'il n'existe\n"
 "pas une telle colonne dans le type de données %s"
 
-#: parser/parse_target.c:729
+#: parser/parse_target.c:730
 #, c-format
 msgid "array assignment to \"%s\" requires type %s but expression is of type %s"
 msgstr ""
 "l'affectation d'un tableau avec « %s » requiert le type %s mais l'expression est\n"
 "de type %s"
 
-#: parser/parse_target.c:739
+#: parser/parse_target.c:740
 #, c-format
 msgid "subfield \"%s\" is of type %s but expression is of type %s"
 msgstr "le sous-champ « %s » est de type %s mais l'expression est de type %s"
 
-#: parser/parse_target.c:1039
+#: parser/parse_target.c:1126
 msgid "SELECT * with no tables specified is not valid"
 msgstr "Un SELECT * sans table spécifiée n'est pas valide"
 
@@ -11306,343 +12289,453 @@ msgid "type reference %s converted to %s"
 msgstr "référence de type %s convertie en %s"
 
 #: parser/parse_type.c:202
-#: utils/cache/typcache.c:151
+#: utils/cache/typcache.c:195
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "le type « %s » est seulement un shell"
 
-#: parser/parse_type.c:270
+#: parser/parse_type.c:287
 #, c-format
 msgid "type modifier is not allowed for type \"%s\""
 msgstr "le modificateur de type n'est pas autorisé pour le type « %s »"
 
-#: parser/parse_type.c:313
+#: parser/parse_type.c:330
 msgid "type modifiers must be simple constants or identifiers"
 msgstr "les modificateurs de type doivent être des constantes ou des identifiants"
 
-#: parser/parse_type.c:548
-#: parser/parse_type.c:647
+#: parser/parse_type.c:641
+#: parser/parse_type.c:740
 #, c-format
 msgid "invalid type name \"%s\""
 msgstr "nom de type « %s » invalide"
 
-#: parser/parse_utilcmd.c:306
+#: parser/parse_utilcmd.c:181
+#, c-format
+msgid "relation \"%s\" already exists, skipping"
+msgstr "la relation « %s » existe déjà, poursuite du traitement"
+
+#: parser/parse_utilcmd.c:334
 msgid "array of serial is not implemented"
 msgstr "le tableau de type serial n'est pas implanté"
 
-#: parser/parse_utilcmd.c:350
+#: parser/parse_utilcmd.c:382
 #, c-format
 msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
 msgstr "%s créera des séquences implicites « %s » pour la colonne serial « %s.%s »"
 
-#: parser/parse_utilcmd.c:451
-#: parser/parse_utilcmd.c:463
+#: parser/parse_utilcmd.c:483
+#: parser/parse_utilcmd.c:495
 #, c-format
 msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
 msgstr "déclarations NULL/NOT NULL en conflit pour la colonne « %s » de la table « %s »"
 
-#: parser/parse_utilcmd.c:475
+#: parser/parse_utilcmd.c:507
 #, c-format
 msgid "multiple default values specified for column \"%s\" of table \"%s\""
 msgstr ""
 "plusieurs valeurs par défaut sont spécifiées pour la colonne « %s » de la table\n"
 "« %s »"
 
-#: parser/parse_utilcmd.c:832
+#: parser/parse_utilcmd.c:1440
+msgid "cannot use an existing index in CREATE TABLE"
+msgstr "ne peut pas utiliser un index existant dans CREATE TABLE"
+
+#: parser/parse_utilcmd.c:1460
 #, c-format
-msgid "type %s is not a composite type"
-msgstr "le type %s n'est pas un type composite"
+msgid "index \"%s\" is already associated with a constraint"
+msgstr "l'index « %s » est déjà associé à une contrainte"
 
-#: parser/parse_utilcmd.c:1457
+#: parser/parse_utilcmd.c:1468
+#, c-format
+msgid "index \"%s\" does not belong to table \"%s\""
+msgstr "l'index « %s » n'appartient pas à la table « %s »"
+
+#: parser/parse_utilcmd.c:1475
+#, c-format
+msgid "index \"%s\" is not valid"
+msgstr "l'index « %s » n'est pas valide"
+
+#: parser/parse_utilcmd.c:1481
+#, c-format
+msgid "index \"%s\" is not ready"
+msgstr "l'index « %s » n'est pas prêt"
+
+#: parser/parse_utilcmd.c:1487
+#, c-format
+msgid "\"%s\" is not a unique index"
+msgstr "« %s » n'est pas un index unique"
+
+#: parser/parse_utilcmd.c:1488
+#: parser/parse_utilcmd.c:1495
+#: parser/parse_utilcmd.c:1502
+#: parser/parse_utilcmd.c:1572
+msgid "Cannot create a primary key or unique constraint using such an index."
+msgstr "Ne peut pas créer une clé primaire ou une contrainte unique avec cet index."
+
+#: parser/parse_utilcmd.c:1494
+#, c-format
+msgid "index \"%s\" contains expressions"
+msgstr "l'index « %s » contient des expressions"
+
+#: parser/parse_utilcmd.c:1501
+#, c-format
+msgid "\"%s\" is a partial index"
+msgstr "« %s » est un index partiel"
+
+#: parser/parse_utilcmd.c:1513
+#, c-format
+msgid "\"%s\" is a deferrable index"
+msgstr "« %s » est un index déferrable"
+
+#: parser/parse_utilcmd.c:1514
+msgid "Cannot create a non-deferrable constraint using a deferrable index."
+msgstr "Ne peut pas créer une contrainte non-déferrable utilisant un index déferrable."
+
+#: parser/parse_utilcmd.c:1571
+#, c-format
+msgid "index \"%s\" does not have default sorting behavior"
+msgstr "l'index « %s » n'a pas de comportement de tri par défaut"
+
+#: parser/parse_utilcmd.c:1716
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "la colonne « %s » apparaît deux fois dans la contrainte de la clé primaire"
 
-#: parser/parse_utilcmd.c:1462
+#: parser/parse_utilcmd.c:1722
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
 msgstr "la colonne « %s » apparaît deux fois sur une contrainte unique"
 
-#: parser/parse_utilcmd.c:1615
+#: parser/parse_utilcmd.c:1887
 msgid "index expression cannot return a set"
 msgstr "l'expression de l'index ne peut pas renvoyer un ensemble"
 
-#: parser/parse_utilcmd.c:1625
+#: parser/parse_utilcmd.c:1897
 msgid "index expressions and predicates can refer only to the table being indexed"
 msgstr "les expressions et prédicats d'index peuvent seulement faire référence à la table en cours d'indexage"
 
-#: parser/parse_utilcmd.c:1720
+#: parser/parse_utilcmd.c:1994
 msgid "rule WHERE condition cannot contain references to other relations"
 msgstr ""
 "la condition WHERE d'une règle&n