Translation update
authorPeter Eisentraut <peter_e@gmx.net>
Fri, 5 Nov 2004 17:08:11 +0000 (17:08 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Fri, 5 Nov 2004 17:08:11 +0000 (17:08 +0000)
src/backend/po/de.po

index 3e804b954f0733130122e4cf682efc7f01dd5d13..53b358c197296c29d1bc2ead8f87167564f9ef1e 100644 (file)
@@ -1,23 +1,23 @@
 # German message translation file for PostgreSQL server
-# Peter Eisentraut <peter_e@gmx.net>, 2001, 2003.
+# Peter Eisentraut <peter_e@gmx.net>, 2001, 2003, 2004.
 #
-# $PostgreSQL: pgsql/src/backend/po/de.po,v 1.14 2004/01/19 14:28:18 petere Exp $
+# $PostgreSQL: pgsql/src/backend/po/de.po,v 1.15 2004/11/05 17:08:11 petere Exp $
 #
 # Use these quotes: »%s«
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
-"POT-Creation-Date: 2003-11-13 19:53+0100\n"
-"PO-Revision-Date: 2003-11-13 19:59+0100\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-11-05 17:40+0100\n"
+"PO-Revision-Date: 2004-11-05 17:56+0100\n"
 "Last-Translator: Peter Eisentraut <peter_e@gmx.net>\n"
 "Language-Team: German <peter_e@gmx.net>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Report-Msgid-Bugs-To: \n"
 
-#: access/common/heaptuple.c:584
+#: access/common/heaptuple.c:580
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "Anzahl der Spalten (%d) überschreitet Maximum (%d)"
@@ -32,70 +32,81 @@ msgstr "Anzahl der Indexspalten (%d) 
 msgid "index row requires %lu bytes, maximum size is %lu"
 msgstr "Indexzeile benötigt %lu Bytes, Maximalgröße ist %lu"
 
-#: access/common/tupdesc.c:660 access/common/tupdesc.c:687
+#: access/common/printtup.c:296 tcop/fastpath.c:186 tcop/fastpath.c:511
+#: tcop/postgres.c:1490
+#, c-format
+msgid "unsupported format code: %d"
+msgstr "nicht unterstützter Formatcode: %d"
+
+#: access/common/tupdesc.c:511
+#, c-format
+msgid "column \"%s\" cannot be declared SETOF"
+msgstr "Spalte »%s« kann nicht als SETOF deklariert werden"
+
+#: access/common/tupdesc.c:630 access/common/tupdesc.c:661
 msgid "number of aliases does not match number of columns"
 msgstr "Anzahl der Aliasnamen stimmt nicht mit der Anzahl der Spalten überein"
 
-#: access/common/tupdesc.c:681
+#: access/common/tupdesc.c:655
 msgid "no column alias was provided"
 msgstr "Spaltenalias fehlt"
 
-#: access/common/tupdesc.c:704
+#: access/common/tupdesc.c:679
 msgid "could not determine row description for function returning record"
 msgstr ""
 "konnte Zeilenbeschreibung für Funktion, die »record« zurückgibt, nicht "
 "ermitteln"
 
-#: access/common/printtup.c:279 tcop/fastpath.c:187 tcop/fastpath.c:517
-#: tcop/postgres.c:1428
-#, c-format
-msgid "unsupported format code: %d"
-msgstr "nicht unterstützter Formatcode: %d"
-
 #: access/hash/hashinsert.c:90
 #, 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/hashovfl.c:522
+#, c-format
+msgid "out of overflow pages in hash index \"%s\""
+msgstr "keine Überlaufseiten in Hash-Index »%s« mehr"
+
+#: access/hash/hashsearch.c:146
+msgid "hash indexes do not support whole-index scans"
+msgstr "Hash-Indexe unterstützen keine Scans des ganzen Index"
+
 #: access/hash/hashutil.c:46
 msgid "hash indexes cannot contain null keys"
 msgstr "Hash-Indexe können keine NULL-Schlüssel enthalten"
 
-#: access/hash/hashutil.c:126
+#: access/hash/hashutil.c:127
 #, c-format
 msgid "index \"%s\" is not a hash index"
 msgstr "Index »%s« ist kein Hash-Index"
 
-#: access/hash/hashutil.c:132
+#: access/hash/hashutil.c:133
 #, c-format
 msgid "index \"%s\" has wrong hash version"
 msgstr "Index »%s« hat falsche Hash-Version"
 
-#: access/hash/hashutil.c:133
+#: access/hash/hashutil.c:134
 msgid "Please REINDEX it."
 msgstr "Bitte führen Sie REINDEX für den Index aus."
 
-#: access/hash/hashovfl.c:521
+#: access/heap/heapam.c:495
 #, c-format
-msgid "out of overflow pages in hash index \"%s\""
-msgstr "keine Überlaufseiten in Hash-Index »%s« mehr"
-
-#: access/hash/hashsearch.c:145
-msgid "hash indexes do not support whole-index scans"
-msgstr "Hash-Indexe unterstützen keine Scans des ganzen Index"
+msgid "could not obtain lock on relation \"%s\""
+msgstr "konnte Sperre für Relation »%s« nicht setzen"
 
-#: access/heap/heapam.c:580 access/heap/heapam.c:615 access/heap/heapam.c:650
-#: catalog/aclchk.c:283
+#: access/heap/heapam.c:618 access/heap/heapam.c:653 access/heap/heapam.c:688
+#: catalog/aclchk.c:286
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "»%s« ist ein Index"
 
-#: access/heap/heapam.c:585 access/heap/heapam.c:620 access/heap/heapam.c:655
+#: access/heap/heapam.c:623 access/heap/heapam.c:658 access/heap/heapam.c:693
 #, c-format
 msgid "\"%s\" is a special relation"
 msgstr "»%s« ist eine spezielle Relation"
 
-#: access/heap/heapam.c:590 access/heap/heapam.c:625 access/heap/heapam.c:660
+#: access/heap/heapam.c:628 access/heap/heapam.c:663 access/heap/heapam.c:698
+#: catalog/aclchk.c:293
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "»%s« ist ein zusammengesetzter Typ"
@@ -105,9 +116,9 @@ msgstr "
 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:134 access/index/indexam.c:159
-#: access/index/indexam.c:184 commands/comment.c:309 commands/indexcmds.c:575
-#: commands/indexcmds.c:605 tcop/utility.c:91
+#: access/index/indexam.c:139 access/index/indexam.c:164
+#: access/index/indexam.c:189 commands/comment.c:327 commands/indexcmds.c:873
+#: commands/indexcmds.c:903 tcop/utility.c:93
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "»%s« ist kein Index"
@@ -117,155 +128,213 @@ msgstr "
 msgid "duplicate key violates unique constraint \"%s\""
 msgstr "duplizierter Schlüssel verletzt Unique-Constraint »%s«"
 
-#: access/nbtree/nbtinsert.c:406 access/nbtree/nbtsort.c:402
+#: access/nbtree/nbtinsert.c:398 access/nbtree/nbtsort.c:499
 #, c-format
 msgid "index row size %lu exceeds btree maximum, %lu"
 msgstr "Indexzeilengröße %lu überschreitet Maximalgröße für B-Tree, %lu"
 
-#: access/nbtree/nbtpage.c:156 access/nbtree/nbtpage.c:335
+#: access/nbtree/nbtpage.c:169 access/nbtree/nbtpage.c:350
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "Index »%s« ist kein B-Tree"
 
-#: access/nbtree/nbtpage.c:162 access/nbtree/nbtpage.c:341
+#: access/nbtree/nbtpage.c:175 access/nbtree/nbtpage.c:356
 #, 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"
 
-#: access/rtree/rtree.c:645
+#: access/rtree/rtree.c:646
 msgid "variable-length rtree keys are not supported"
 msgstr "R-Tree-Schlüssel mit variabler Länge werden nicht unterstützt"
 
-#: access/rtree/rtree.c:785
+#: access/rtree/rtree.c:786
 #, c-format
 msgid "index row size %lu exceeds rtree maximum, %lu"
 msgstr "Indexzeilengröße %lu überschreitet Maximalgröße für R-Tree, %lu"
 
-#: access/transam/xact.c:418
-msgid "cannot have more than 2^32-1 commands in a transaction"
-msgstr "kann nicht mehr als 2^32-1 Befehle in einer Transaktion ausführen"
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1386
-#, c-format
-msgid "%s cannot run inside a transaction block"
-msgstr "%s kann nicht in einem Transaktionsblock laufen"
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1398
-#, c-format
-msgid "%s cannot be executed from a function"
-msgstr "%s kann nicht aus einer Funktion heraus ausgeführt werden"
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1441
-#, c-format
-msgid "%s may only be used in transaction blocks"
-msgstr "%s kann nur in einem Transaktionsblock laufen"
-
-#: access/transam/xact.c:1520
-msgid "there is already a transaction in progress"
-msgstr "eine Transaktion is bereits begonnen"
-
-#: access/transam/xact.c:1582 access/transam/xact.c:1620
-#: access/transam/xact.c:1668
-msgid "there is no transaction in progress"
-msgstr "keine Transaktion offen"
-
-#: access/transam/slru.c:492
+#: access/transam/slru.c:452
 #, c-format
 msgid "file \"%s\" doesn't exist, reading as zeroes"
 msgstr "Datei »%s« existiert nicht, wird als Nullen eingelesen"
 
-#: access/transam/slru.c:613 access/transam/slru.c:620
-#: access/transam/slru.c:627 access/transam/slru.c:634
-#: access/transam/slru.c:641
+#: access/transam/slru.c:637 access/transam/slru.c:644
+#: access/transam/slru.c:651 access/transam/slru.c:658
+#: access/transam/slru.c:665 access/transam/slru.c:672
+#: access/transam/slru.c:679
 #, c-format
 msgid "could not access status of transaction %u"
 msgstr "konnte auf den Status von Transaktion %u nicht zugreifen"
 
-#: access/transam/slru.c:614 libpq/hba.c:818 libpq/hba.c:842
-#: storage/smgr/smgr.c:278 utils/error/elog.c:877 utils/init/miscinit.c:726
-#: utils/init/miscinit.c:826 utils/misc/database.c:149
+#: access/transam/slru.c:638 access/transam/xlog.c:1632
+#: access/transam/xlog.c:2753 access/transam/xlog.c:2843
+#: access/transam/xlog.c:2941 libpq/hba.c:911 libpq/hba.c:935
+#: utils/error/elog.c:1118 utils/init/miscinit.c:783 utils/init/miscinit.c:889
+#: utils/misc/database.c:68
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht öffnen: %m"
 
-#: access/transam/slru.c:621 access/transam/xlog.c:1387
+#: access/transam/slru.c:645 access/transam/xlog.c:1527
+#: access/transam/xlog.c:1647 access/transam/xlog.c:2922
+#: access/transam/xlog.c:5332 access/transam/xlog.c:5450
+#: postmaster/postmaster.c:3367
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "kann Datei »%s« nicht erstellen: %m"
 
-#: access/transam/slru.c:628
+#: access/transam/slru.c:652
 #, c-format
 msgid "could not seek in file \"%s\" to offset %u: %m"
 msgstr "konnte Positionszeiger in Datei »%s« nicht auf %u setzen: %m"
 
-#: access/transam/slru.c:635
+#: access/transam/slru.c:659
 #, c-format
 msgid "could not read from file \"%s\" at offset %u: %m"
 msgstr "konnte nicht aus Datei »%s« bei Position %u lesen: %m"
 
-#: access/transam/slru.c:642
+#: access/transam/slru.c:666
 #, c-format
 msgid "could not write to file \"%s\" at offset %u: %m"
 msgstr "konnte nicht in Datei »%s« bei Position %u schreiben: %m"
 
-#: access/transam/slru.c:820
+#: access/transam/slru.c:673 access/transam/xlog.c:1563
+#: access/transam/xlog.c:1687 access/transam/xlog.c:3019
+#, c-format
+msgid "could not fsync file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht fsyncen: %m"
+
+#: access/transam/slru.c:680 access/transam/xlog.c:1568
+#: access/transam/xlog.c:1692 access/transam/xlog.c:3024
+#, c-format
+msgid "could not close file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht schließen: %m"
+
+#: access/transam/slru.c:862
 #, c-format
 msgid "could not truncate directory \"%s\": apparent wraparound"
 msgstr "konnte Verzeichnis »%s« nicht stutzen: scheinbarer Überlauf"
 
-#: access/transam/slru.c:879
+#: access/transam/slru.c:930 commands/tablespace.c:528
+#: commands/tablespace.c:695 utils/adt/misc.c:174
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "konnte Verzeichnis »%s« nicht öffnen: %m"
 
-#: access/transam/slru.c:895
+#: access/transam/slru.c:948
 #, c-format
-msgid "removing file \"%s/%s\""
-msgstr "entferne Datei \"%s/%s\""
+msgid "removing file \"%s\""
+msgstr "entferne Datei »%s«"
 
-#: access/transam/slru.c:907
+#: access/transam/slru.c:967 commands/tablespace.c:576
+#: commands/tablespace.c:722
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "konnte Verzeichnis »%s« nicht lesen: %m"
 
-#: access/transam/xlog.c:1049 access/transam/xlog.c:1165
-#: access/transam/xlog.c:3565
+#: access/transam/xact.c:510
+msgid "cannot have more than 2^32-1 commands in a transaction"
+msgstr "kann nicht mehr als 2^32-1 Befehle in einer Transaktion ausführen"
+
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2178
+#, c-format
+msgid "%s cannot run inside a transaction block"
+msgstr "%s kann nicht in einem Transaktionsblock laufen"
+
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2188
+#, c-format
+msgid "%s cannot run inside a subtransaction"
+msgstr "%s kann nicht in einer Subtransaktion laufen"
+
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2200
+#, c-format
+msgid "%s cannot be executed from a function"
+msgstr "%s kann nicht aus einer Funktion heraus ausgeführt werden"
+
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2251
+#, c-format
+msgid "%s may only be used in transaction blocks"
+msgstr "%s kann nur in einem Transaktionsblock laufen"
+
+#: access/transam/xact.c:2434
+msgid "there is already a transaction in progress"
+msgstr "eine Transaktion ist bereits begonnen"
+
+#: access/transam/xact.c:2549 access/transam/xact.c:2640
+msgid "there is no transaction in progress"
+msgstr "keine Transaktion offen"
+
+#: access/transam/xact.c:2732 access/transam/xact.c:2781
+#: access/transam/xact.c:2787 access/transam/xact.c:2831
+#: access/transam/xact.c:2878 access/transam/xact.c:2884
+msgid "no such savepoint"
+msgstr "Savepoint existiert nicht"
+
+#: access/transam/xact.c:3522
+msgid "cannot have more than 2^32-1 subtransactions in a transaction"
+msgstr "kann nicht mehr als 2^32-1 Subtransaktionen in einer Transaktion haben"
+
+#: access/transam/xlog.c:907
+#, c-format
+msgid "could not create archive status file \"%s\": %m"
+msgstr "konnte Archivstatusdatei »%s« nicht erstellen: %m"
+
+#: access/transam/xlog.c:915
+#, c-format
+msgid "could not write archive status file \"%s\": %m"
+msgstr "konnte Archivstatusdatei »%s« nicht schreiben: %m"
+
+#: access/transam/xlog.c:1180 access/transam/xlog.c:1304
+#: access/transam/xlog.c:5192
 #, 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:1105 access/transam/xlog.c:1867
+#: access/transam/xlog.c:1238 access/transam/xlog.c:2416
 #, 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:1119
+#: access/transam/xlog.c:1252
 #, c-format
 msgid "could not write to log file %u, segment %u at offset %u: %m"
 msgstr "konnte nicht in Logdatei %u, Segment %u bei Position %u schreiben: %m"
 
-#: access/transam/xlog.c:1363 access/transam/xlog.c:1452
-#: access/transam/xlog.c:1566 access/transam/xlog.c:1572
+#: access/transam/xlog.c:1504 access/transam/xlog.c:1595
+#: access/transam/xlog.c:1808 access/transam/xlog.c:1862
+#: access/transam/xlog.c:1871
 #, c-format
 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:1416 utils/init/miscinit.c:775 utils/misc/guc.c:3775
+#: access/transam/xlog.c:1556 access/transam/xlog.c:1680
+#: access/transam/xlog.c:2975 access/transam/xlog.c:3013 commands/copy.c:1117
+#: commands/tablespace.c:667 commands/tablespace.c:673
+#: postmaster/postmaster.c:3431 utils/init/miscinit.c:832
+#: utils/init/miscinit.c:841 utils/misc/guc.c:4962 utils/misc/guc.c:5026
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "konnte nicht in Datei »%s« schreiben: %m"
 
-#: access/transam/xlog.c:1423
+#: access/transam/xlog.c:1660 access/transam/xlog.c:2953
+#: access/transam/xlog.c:5421 access/transam/xlog.c:5472
+#: access/transam/xlog.c:5544 access/transam/xlog.c:5569
+#: access/transam/xlog.c:5607
 #, c-format
-msgid "could not fsync file \"%s\": %m"
-msgstr "konnte Datei »%s« nicht fsyncen: %m"
+msgid "could not read file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht lesen: %m"
+
+#: access/transam/xlog.c:1663
+#, c-format
+msgid "not enough data in file \"%s\""
+msgstr "nicht genug Daten in Datei »%s«"
 
-#: access/transam/xlog.c:1530
+#: access/transam/xlog.c:1775
 #, c-format
 msgid ""
 "could not link file \"%s\" to \"%s\" (initialization of log file %u, segment "
@@ -274,7 +343,7 @@ msgstr ""
 "konnte Datei »%s« nicht nach »%s« linken (Initialisierung von Logdatei %u, "
 "Segment %u): %m"
 
-#: access/transam/xlog.c:1537
+#: access/transam/xlog.c:1782
 #, c-format
 msgid ""
 "could not rename file \"%s\" to \"%s\" (initialization of log file %u, "
@@ -283,156 +352,243 @@ msgstr ""
 "konnte Datei »%s« nicht in »%s« umbenennen (Initialisierung von Logdatei %u, "
 "Segment %u): %m"
 
-#: access/transam/xlog.c:1624
+#: access/transam/xlog.c:1937 access/transam/xlog.c:2039
+#: access/transam/xlog.c:5315
 #, c-format
-msgid "could not open transaction log directory \"%s\": %m"
-msgstr "konnte Transaktionslog-Verzeichnis »%s« nicht öffnen: %m"
+msgid "could not stat file \"%s\": %m"
+msgstr "konnte »stat« für Datei »%s« nicht ausführen: %m"
+
+#: access/transam/xlog.c:1945 access/transam/xlog.c:5477
+#: access/transam/xlog.c:5631 commands/tablespace.c:592
+#: postmaster/postmaster.c:3505
+#, c-format
+msgid "could not remove file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht löschen: %m"
+
+#: access/transam/xlog.c:2020
+#, c-format
+msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
+msgstr "Archivdatei »%s« hat falsche Größe: %lu statt %lu"
+
+#: access/transam/xlog.c:2027
+#, c-format
+msgid "restored log file \"%s\" from archive"
+msgstr "Logdatei »%s« aus Archiv wiederhergestellt"
+
+#: access/transam/xlog.c:2052
+#, c-format
+msgid "could not restore file \"%s\" from archive: return code %d"
+msgstr "konnte Datei »%s« nicht aus Archiv wiederherstellen: Rückgabecode %d"
 
-#: access/transam/xlog.c:1640
+#: access/transam/xlog.c:2120
 #, c-format
-msgid "archiving transaction log file \"%s\""
-msgstr "archiviere Transaktionslogdatei »%s«"
+msgid "could not open transaction log directory \"%s\": %m"
+msgstr "konnte Transaktionslog-Verzeichnis »%s« nicht öffnen: %m"
 
-#: access/transam/xlog.c:1657
+#: access/transam/xlog.c:2165
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "Transaktionslogdatei »%s« wird wiederverwendet"
 
-#: access/transam/xlog.c:1664
+#: access/transam/xlog.c:2173
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "entferne Transaktionslogdatei »%s«"
 
-#: access/transam/xlog.c:1675
+#: access/transam/xlog.c:2196
 #, c-format
 msgid "could not read transaction log directory \"%s\": %m"
 msgstr "konnte Transaktionslog-Verzeichnis »%s« nicht lesen: %m"
 
-#: access/transam/xlog.c:1749
+#: access/transam/xlog.c:2280
 #, c-format
 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:1772
+#: access/transam/xlog.c:2303
 #, c-format
 msgid "incorrect checksum of backup block %d in record at %X/%X"
 msgstr "falsche Prüfsumme von Backup-Block %d im Datensatz bei %X/%X"
 
-#: access/transam/xlog.c:1842
+#: access/transam/xlog.c:2376 access/transam/xlog.c:2446
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "ungültiger Datensatz-Offset bei %X/%X"
 
-#: access/transam/xlog.c:1875
+#: access/transam/xlog.c:2424
 #, c-format
 msgid "could not read from log file %u, segment %u at offset %u: %m"
 msgstr "konnte nicht aus Logdatei %u, Segment %u bei Position %u lesen: %m"
 
-#: access/transam/xlog.c:1886
+#: access/transam/xlog.c:2454
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "Contrecord-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:1901
+#: access/transam/xlog.c:2469
 #, c-format
 msgid "record with zero length at %X/%X"
 msgstr "Datensatz mit Länge null bei %X/%X"
 
-#: access/transam/xlog.c:1926
-#, c-format
-msgid "record length %u at %X/%X too long"
-msgstr "Datensatzlänge %u bei %X/%X zu groß"
-
-#: access/transam/xlog.c:1933
+#: access/transam/xlog.c:2476
 #, 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:1965
+#: access/transam/xlog.c:2514
+#, c-format
+msgid "record length %u at %X/%X too long"
+msgstr "Datensatzlänge %u bei %X/%X zu groß"
+
+#: access/transam/xlog.c:2550
 #, c-format
 msgid "could not read from log file %u, segment %u, offset %u: %m"
 msgstr "konnte nicht aus Logdatei %u, Segment %u bei Position %u lesen: %m"
 
-#: access/transam/xlog.c:1974
+#: access/transam/xlog.c:2559
 #, 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:1983
+#: access/transam/xlog.c:2569
 #, 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:2049
+#: access/transam/xlog.c:2636
 #, 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:2056
+#: access/transam/xlog.c:2643
 #, 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:2065
+#: access/transam/xlog.c:2665 access/transam/xlog.c:2673
+msgid "WAL file is from different system"
+msgstr "WAL-Datei stammt von einem anderen System"
+
+#: access/transam/xlog.c:2666
+#, c-format
+msgid "WAL file SYSID is %s, pg_control SYSID is %s"
+msgstr "SYSID in WAL-Datei ist %s, SYSID in pg_control ist %s"
+
+#: access/transam/xlog.c:2674
+msgid "Incorrect XLOG_SEG_SIZE in page header."
+msgstr "Falscher XLOG_SEG_SIZE-Wert in Page-Header."
+
+#: access/transam/xlog.c:2683
 #, 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"
 
-#. translator: SUI = startup id
-#: access/transam/xlog.c:2088
+#: access/transam/xlog.c:2695
+#, 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:2713
 #, c-format
-msgid "out-of-sequence SUI %u (after %u) in log file %u, segment %u, offset %u"
+msgid ""
+"out-of-sequence timeline ID %u (after %u) in log file %u, segment %u, offset "
+"%u"
 msgstr ""
-"SUI %u nicht in richtiger Reihenfolge (nach %u) in Logdatei %u, Segment %u, "
-"Offset %u"
+"Timeline-ID %u nicht in richtiger Reihenfolge (nach %u) in Logdatei %u, "
+"Segment %u, Offset %u"
+
+#: access/transam/xlog.c:2782
+#, c-format
+msgid "syntax error in history file: %s"
+msgstr "Syntax-Fehler in History-Datei: %s"
+
+#: access/transam/xlog.c:2783
+msgid "Expected a numeric timeline ID."
+msgstr "Eine numerische Timeline-ID wurde erwartet."
+
+#: access/transam/xlog.c:2788
+#, c-format
+msgid "invalid data in history file: %s"
+msgstr "ungültige Daten in History-Datei: %s"
+
+#: access/transam/xlog.c:2789
+msgid "Timeline IDs must be in increasing sequence."
+msgstr "Timeline-IDs müssen in aufsteigender Folge sein."
 
-#: access/transam/xlog.c:2149
+#: access/transam/xlog.c:2802
+#, c-format
+msgid "invalid data in history file \"%s\""
+msgstr "ungültige Daten in History-Datei »%s«"
+
+#: access/transam/xlog.c:2803
+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:3041
+#, c-format
+msgid "could not link file \"%s\" to \"%s\": %m"
+msgstr "konnte Datei »%s« nicht nach »%s« linken: %m"
+
+#: access/transam/xlog.c:3048 access/transam/xlog.c:3830
+#: access/transam/xlog.c:3873 commands/user.c:282 commands/user.c:412
+#: postmaster/pgarch.c:597
+#, c-format
+msgid "could not rename file \"%s\" to \"%s\": %m"
+msgstr "konnte Datei »%s« nicht in »%s« umbenennen: %m"
+
+#: access/transam/xlog.c:3109
 msgid "invalid LC_COLLATE setting"
 msgstr "ungültige LC_COLLATE-Einstellung"
 
-#: access/transam/xlog.c:2154
+#: access/transam/xlog.c:3114
 msgid "invalid LC_CTYPE setting"
 msgstr "ungültige LC_CTYPE-Einstellung"
 
-#: access/transam/xlog.c:2173
+#: access/transam/xlog.c:3133
 msgid "sizeof(ControlFileData) is larger than BLCKSZ; fix either one"
 msgstr ""
 "sizeof(ControlFileData) ist größer als BLCKSZ; ändern Sie eines von beiden"
 
-#: access/transam/xlog.c:2183
+#: access/transam/xlog.c:3143
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "konnte Kontrolldatei »%s« nicht erzeugen: %m"
 
-#: access/transam/xlog.c:2194 access/transam/xlog.c:2371
+#: access/transam/xlog.c:3154 access/transam/xlog.c:3341
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "konnte nicht in Kontrolldatei schreiben: %m"
 
-#: access/transam/xlog.c:2200 access/transam/xlog.c:2377
+#: access/transam/xlog.c:3160 access/transam/xlog.c:3347
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "konnte Kontrolldatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:2218 access/transam/xlog.c:2360
+#: access/transam/xlog.c:3165 access/transam/xlog.c:3352
+#, c-format
+msgid "could not close control file: %m"
+msgstr "konnte Kontrolldatei nicht schließen: %m"
+
+#: access/transam/xlog.c:3181 access/transam/xlog.c:3330
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "konnte Kontrolldatei »%s« nicht öffnen: %m"
 
-#: access/transam/xlog.c:2224
+#: access/transam/xlog.c:3187
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "konnte nicht aus Kontrolldatei lesen: %m"
 
-#: access/transam/xlog.c:2236 access/transam/xlog.c:2266
-#: access/transam/xlog.c:2273 access/transam/xlog.c:2280
-#: access/transam/xlog.c:2287 access/transam/xlog.c:2294
-#: access/transam/xlog.c:2303 access/transam/xlog.c:2310
-#: access/transam/xlog.c:2318 utils/init/miscinit.c:844
+#: access/transam/xlog.c:3199 access/transam/xlog.c:3229
+#: access/transam/xlog.c:3236 access/transam/xlog.c:3243
+#: access/transam/xlog.c:3250 access/transam/xlog.c:3257
+#: access/transam/xlog.c:3264 access/transam/xlog.c:3273
+#: access/transam/xlog.c:3280 access/transam/xlog.c:3288
+#: utils/init/miscinit.c:907
 msgid "database files are incompatible with server"
 msgstr "Datenbankdateien sind inkompatibel mit Server"
 
-#: access/transam/xlog.c:2237
+#: access/transam/xlog.c:3200
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
@@ -441,15 +597,15 @@ 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:2240 access/transam/xlog.c:2270
+#: access/transam/xlog.c:3203 access/transam/xlog.c:3233
 msgid "It looks like you need to initdb."
 msgstr "Es sieht so aus, dass Sie initdb ausführen müssen."
 
-#: access/transam/xlog.c:2250
+#: access/transam/xlog.c:3213
 msgid "incorrect checksum in control file"
 msgstr "falsche Prüfsumme in Kontrolldatei"
 
-#: access/transam/xlog.c:2267
+#: access/transam/xlog.c:3230
 #, c-format
 msgid ""
 "The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
@@ -458,7 +614,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:2274
+#: access/transam/xlog.c:3237
 #, c-format
 msgid ""
 "The database cluster was initialized with BLCKSZ %d, but the server was "
@@ -467,15 +623,15 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit BLCKSZ %d initialisiert, aber der Server "
 "wurde mit BLCKSZ %d kompiliert."
 
-#: access/transam/xlog.c:2277 access/transam/xlog.c:2284
-#: access/transam/xlog.c:2291 access/transam/xlog.c:2298
-#: access/transam/xlog.c:2306 access/transam/xlog.c:2313
-#: access/transam/xlog.c:2322
+#: access/transam/xlog.c:3240 access/transam/xlog.c:3247
+#: access/transam/xlog.c:3254 access/transam/xlog.c:3261
+#: access/transam/xlog.c:3268 access/transam/xlog.c:3276
+#: access/transam/xlog.c:3283 access/transam/xlog.c:3292
 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:2281
+#: access/transam/xlog.c:3244
 #, c-format
 msgid ""
 "The database cluster was initialized with RELSEG_SIZE %d, but the server was "
@@ -484,7 +640,16 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit RELSEG_SIZE %d initialisiert, aber der "
 "Server wurde mit RELSEGSIZE %d kompiliert."
 
-#: access/transam/xlog.c:2288
+#: access/transam/xlog.c:3251
+#, c-format
+msgid ""
+"The database cluster was initialized with XLOG_SEG_SIZE %d, but the server "
+"was compiled with XLOG_SEG_SIZE %d."
+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:3258
 #, c-format
 msgid ""
 "The database cluster was initialized with NAMEDATALEN %d, but the server was "
@@ -493,7 +658,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit NAMEDATALEN %d initialisiert, aber der "
 "Server wurde mit NAMEDATALEN %d kompiliert."
 
-#: access/transam/xlog.c:2295
+#: access/transam/xlog.c:3265
 #, c-format
 msgid ""
 "The database cluster was initialized with FUNC_MAX_ARGS %d, but the server "
@@ -502,7 +667,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit FUNC_MAX_ARGS %d initialisiert, aber der "
 "Server wurde mit FUNC_MAX_ARGS %d kompiliert."
 
-#: access/transam/xlog.c:2304
+#: access/transam/xlog.c:3274
 msgid ""
 "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the "
 "server was compiled with HAVE_INT64_TIMESTAMP."
@@ -510,7 +675,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde ohne HAVE_INT64_TIMESTAMP initialisiert, aber "
 "der Server wurde mit HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:2311
+#: access/transam/xlog.c:3281
 msgid ""
 "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the "
 "server was compiled without HAVE_INT64_TIMESTAMP."
@@ -518,7 +683,7 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit HAVE_INT64_TIMESTAMP initialisiert, aber der "
 "Server wurde ohne HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:2319
+#: access/transam/xlog.c:3289
 #, c-format
 msgid ""
 "The database cluster was initialized with LOCALE_NAME_BUFLEN %d, but the "
@@ -527,11 +692,11 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit LOCALE_NAME_BUFLEN %d initialisiert, aber "
 "der Server wurde mit LOCALE_NAME_BUFLEN %d kompiliert."
 
-#: access/transam/xlog.c:2325 access/transam/xlog.c:2332
+#: access/transam/xlog.c:3295 access/transam/xlog.c:3302
 msgid "database files are incompatible with operating system"
 msgstr "Datenbankdateien sind inkompatibel mit Betriebssystem"
 
-#: access/transam/xlog.c:2326
+#: access/transam/xlog.c:3296
 #, c-format
 msgid ""
 "The database cluster was initialized with LC_COLLATE \"%s\", which is not "
@@ -540,13 +705,13 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit LC_COLLATE »%s« initialisiert, was von "
 "setlocale() nicht erkannt wird."
 
-#: access/transam/xlog.c:2329 access/transam/xlog.c:2336
+#: access/transam/xlog.c:3299 access/transam/xlog.c:3306
 msgid "It looks like you need to initdb or install locale support."
 msgstr ""
 "Es sieht so aus, dass Sie initdb ausführen oder Locale-Unterstützung "
 "installieren müssen."
 
-#: access/transam/xlog.c:2333
+#: access/transam/xlog.c:3303
 #, c-format
 msgid ""
 "The database cluster was initialized with LC_CTYPE \"%s\", which is not "
@@ -555,36 +720,137 @@ msgstr ""
 "Der Datenbank-Cluster wurde mit LC_CTYPE »%s« initialisiert, was von "
 "setlocale() nicht erkannt wird."
 
-#: access/transam/xlog.c:2519
+#: access/transam/xlog.c:3529
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht schreiben: %m"
 
-#: access/transam/xlog.c:2525
+#: access/transam/xlog.c:3535
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:2593
+#: access/transam/xlog.c:3540
+#, c-format
+msgid "could not close bootstrap transaction log file: %m"
+msgstr "konnte Bootstrap-Transaktionslogdatei nicht schließen: %m"
+
+#: access/transam/xlog.c:3602
+#, c-format
+msgid "could not open recovery command file \"%s\": %m"
+msgstr "konnte Recovery-Kommandodatei »%s« nicht öffnen: %m"
+
+#: access/transam/xlog.c:3607
+msgid "starting archive recovery"
+msgstr "starte Wiederherstellung aus Archiv"
+
+#: access/transam/xlog.c:3652
+#, c-format
+msgid "restore_command = \"%s\""
+msgstr "restore_command = »%s«"
+
+#: access/transam/xlog.c:3666
+#, 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:3671
+#, c-format
+msgid "recovery_target_timeline = %u"
+msgstr "recovery_target_timeline = %u"
+
+#: access/transam/xlog.c:3674
+msgid "recovery_target_timeline = latest"
+msgstr "recovery_target_timeline = latest"
+
+#: access/transam/xlog.c:3682
+#, 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:3685
+#, c-format
+msgid "recovery_target_xid = %u"
+msgstr "recovery_target_xid = %u"
+
+#: access/transam/xlog.c:3710
+#, c-format
+msgid "recovery_target_time = %s"
+msgstr "recovery_target_time = %s"
+
+#: access/transam/xlog.c:3727
+#, c-format
+msgid "recovery_target_inclusive = %s"
+msgstr "recovery_target_inclusive = %s"
+
+#: access/transam/xlog.c:3731
+#, c-format
+msgid "unrecognized recovery parameter \"%s\""
+msgstr "unbekannter Recovery-Parameter »%s«"
+
+#: access/transam/xlog.c:3739
+#, c-format
+msgid "syntax error in recovery command file: %s"
+msgstr "Syntaxfehler in Recovery-Kommandodatei: %s"
+
+#: access/transam/xlog.c:3741
+msgid "Lines should have the format parameter = 'value'."
+msgstr "Die Zeilen müssen das Format parameter = 'wert' haben."
+
+#: access/transam/xlog.c:3746
+#, c-format
+msgid "recovery command file \"%s\" did not specify restore_command"
+msgstr "Recovery-Kommandodatei »%s« hat kein restore_command angegeben"
+
+#: access/transam/xlog.c:3765
+#, c-format
+msgid "recovery_target_timeline %u does not exist"
+msgstr "recovery_target_timeline %u existiert nicht"
+
+#: access/transam/xlog.c:3877
+msgid "archive recovery complete"
+msgstr "Wiederherstellung aus Archiv abgeschlossen"
+
+#: access/transam/xlog.c:3961
+#, 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:3965
+#, 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:3972
+#, 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:3976
+#, 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:4018
 msgid "control file contains invalid data"
 msgstr "Kontrolldatei enthält ungültige Daten"
 
-#: access/transam/xlog.c:2597
+#: access/transam/xlog.c:4022
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "Datenbanksystem wurde am %s heruntergefahren"
 
-#: access/transam/xlog.c:2601
+#: access/transam/xlog.c:4026
 #, c-format
 msgid "database system shutdown was interrupted at %s"
 msgstr "Datenbanksystem wurde am %s während des Herunterfahrens unterbrochen"
 
-#: access/transam/xlog.c:2605
+#: access/transam/xlog.c:4030
 #, 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:2607
+#: access/transam/xlog.c:4032
 msgid ""
 "This probably means that some data is corrupted and you will have to use the "
 "last backup for recovery."
@@ -592,156 +858,267 @@ msgstr ""
 "Das bedeutet wahrscheinlich, dass einige Daten verfälscht sind und Sie die "
 "letzte Datensicherung zur Wiederherstellung verwenden müssen."
 
-#: access/transam/xlog.c:2611
+#: access/transam/xlog.c:4036
 #, c-format
 msgid "database system was interrupted at %s"
 msgstr "Datenbanksystem wurde am %s unterbrochen"
 
-#: access/transam/xlog.c:2629
+#: access/transam/xlog.c:4068
+#, 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:4083 access/transam/xlog.c:4105
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "Checkpoint-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:2639
+#: access/transam/xlog.c:4090
+msgid "could not locate required checkpoint record"
+msgstr "konnte den nötigen Checkpoint-Datensatz nicht finden"
+
+#: access/transam/xlog.c:4091
+#, c-format
+msgid ""
+"If you are not restoring from a backup, try removing the file \"%s/"
+"backup_label\"."
+msgstr "Wenn Sie kein Backup wiederherstellen, versuchen Sie, die Datei »%s/backup_label« zu löschen."
+
+#: access/transam/xlog.c:4115
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "Checkpoint-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:2645
+#: access/transam/xlog.c:4122
 msgid "could not locate a valid checkpoint record"
 msgstr "konnte keinen gültigen Checkpoint-Datensatz finden"
 
-#: access/transam/xlog.c:2652
+#: access/transam/xlog.c:4131
 #, c-format
 msgid "redo record is at %X/%X; undo record is at %X/%X; shutdown %s"
 msgstr "Redo-Eintrag ist bei %X/%X; Undo-Eintrag ist bei %X/%X; Shutdown %s"
 
-#: access/transam/xlog.c:2657
+#: access/transam/xlog.c:4136
 #, c-format
 msgid "next transaction ID: %u; next OID: %u"
 msgstr "nächste Transaktions-ID: %u; nächste OID: %u"
 
-#: access/transam/xlog.c:2661
+#: access/transam/xlog.c:4140
 msgid "invalid next transaction ID"
 msgstr "ungültige nächste Transaktions-ID"
 
-#: access/transam/xlog.c:2685
+#: access/transam/xlog.c:4157
 msgid "invalid redo in checkpoint record"
 msgstr "ungültiges Redo im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:2694
+#: access/transam/xlog.c:4171
 msgid "invalid redo/undo record in shutdown checkpoint"
 msgstr "ungültiger Redo/Undo-Datensatz im Shutdown-Checkpoint"
 
-#: access/transam/xlog.c:2706
+#: access/transam/xlog.c:4189
+msgid "automatic recovery in progress"
+msgstr "automatische Wiederherstellung läuft"
+
+#: access/transam/xlog.c:4192
 msgid ""
 "database system was not properly shut down; automatic recovery in progress"
 msgstr ""
 "Datenbanksystem wurde nicht richtig heruntergefahren; automatische "
-"Wiederherstellung beginnt"
+"Wiederherstellung läuft"
 
-#: access/transam/xlog.c:2734
+#: access/transam/xlog.c:4229
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "Redo beginnt bei %X/%X"
 
-#: access/transam/xlog.c:2766
+#: access/transam/xlog.c:4287
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "Redo fertig bei %X/%X"
 
-#: access/transam/xlog.c:2773
+#: access/transam/xlog.c:4295
 msgid "redo is not required"
 msgstr "Redo nicht nötig"
 
-#: access/transam/xlog.c:2842
+#: access/transam/xlog.c:4315
+msgid "requested recovery stop point is before end time of backup dump"
+msgstr "angeforderter Recovery-Endpunkt ist vor der Endzeit des Backup-Dumps"
+
+#: access/transam/xlog.c:4319
+msgid "WAL ends before end time of backup dump"
+msgstr "WAL endet vor der Endzeit des Backup-Dumps"
+
+#: access/transam/xlog.c:4334
+#, c-format
+msgid "selected new timeline ID: %u"
+msgstr "gewählte neue Timeline-ID: %u"
+
+#: access/transam/xlog.c:4416
 #, c-format
 msgid "undo starts at %X/%X"
 msgstr "Undo beginnt bei %X/%X"
 
-#: access/transam/xlog.c:2853
+#: access/transam/xlog.c:4427
 #, c-format
 msgid "undo done at %X/%X"
 msgstr "Undo fertig bei %X/%X"
 
-#: access/transam/xlog.c:2858
+#: access/transam/xlog.c:4432
 msgid "undo is not required"
 msgstr "Undo nicht nötig"
 
-#: access/transam/xlog.c:2948
+#: access/transam/xlog.c:4500
 msgid "database system is ready"
-msgstr "Datenbanksystem is bereit"
+msgstr "Datenbanksystem ist bereit"
 
-#: access/transam/xlog.c:2981
+#: access/transam/xlog.c:4539
 msgid "invalid primary checkpoint link in control file"
 msgstr "ungültige primäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:2984
+#: access/transam/xlog.c:4543
 msgid "invalid secondary checkpoint link in control file"
 msgstr "ungültige sekundäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:2994
+#: access/transam/xlog.c:4547
+msgid "invalid checkpoint link in backup_label file"
+msgstr "ungültige Checkpoint-Verknüpfung in backup_label-Datei"
+
+#: access/transam/xlog.c:4561
 msgid "invalid primary checkpoint record"
 msgstr "ungültiger primärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:2997
+#: access/transam/xlog.c:4565
 msgid "invalid secondary checkpoint record"
 msgstr "ungültiger sekundärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:3004
+#: access/transam/xlog.c:4569
+msgid "invalid checkpoint record"
+msgstr "ungültiger Checkpoint-Datensatz"
+
+#: access/transam/xlog.c:4580
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:3007
+#: access/transam/xlog.c:4584
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:3015
+#: access/transam/xlog.c:4588
+msgid "invalid resource manager ID in checkpoint record"
+msgstr "ungültige Resource-Manager-ID im Checkpoint-Datensatz"
+
+#: access/transam/xlog.c:4600
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "ungültige xl_info im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:3018
+#: access/transam/xlog.c:4604
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "ungültige xl_info im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:3025
+#: access/transam/xlog.c:4608
+msgid "invalid xl_info in checkpoint record"
+msgstr "ungültige xl_info im Checkpoint-Datensatz"
+
+#: access/transam/xlog.c:4619
 msgid "invalid length of primary checkpoint record"
 msgstr "ungültige Länge des primären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:3028
+#: access/transam/xlog.c:4623
 msgid "invalid length of secondary checkpoint record"
 msgstr "ungültige Länge des sekundären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:3092
+#: access/transam/xlog.c:4627
+msgid "invalid length of checkpoint record"
+msgstr "ungültige Länge des Checkpoint-Datensatzes"
+
+#: access/transam/xlog.c:4680
 msgid "shutting down"
 msgstr "fahre herunter"
 
-#: access/transam/xlog.c:3106
+#: access/transam/xlog.c:4689
 msgid "database system is shut down"
 msgstr "Datenbanksystem ist heruntergefahren"
 
-#: access/transam/xlog.c:3129
-msgid "checkpoint cannot be made inside transaction block"
-msgstr "Checkpoint kann nicht in einem Transaktionsblock erzeugt werden"
+#: access/transam/xlog.c:4880
+msgid "checkpoint starting"
+msgstr "Checkpoint-Prozess startet"
 
-#: access/transam/xlog.c:3317
+#: access/transam/xlog.c:4909
 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:3558 access/transam/xlog.c:3590
+#: access/transam/xlog.c:4981
+#, c-format
+msgid ""
+"checkpoint complete; %d transaction log file(s) added, %d removed, %d "
+"recycled"
+msgstr "Checkpoint vollständig; %d Transaktionslogdatei(en) hinzugefügt, %d entfernt, %d wiederverwendet"
+
+#: access/transam/xlog.c:5041
+#, c-format
+msgid "unexpected timeline ID %u (after %u) in checkpoint record"
+msgstr ""
+
+#: access/transam/xlog.c:5064
+#, c-format
+msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
+msgstr ""
+
+#: access/transam/xlog.c:5185 access/transam/xlog.c:5217
 #, 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:3598
+#: access/transam/xlog.c:5225
 #, c-format
 msgid "could not fdatasync log file %u, segment %u: %m"
 msgstr "konnte Logdatei %u, Segment %u nicht fdatasyncen: %m"
 
-#: bootstrap/bootstrap.c:196
+#: access/transam/xlog.c:5268 access/transam/xlog.c:5387
+msgid "must be superuser to run a backup"
+msgstr "nur Superuser können ein Backup ausführen"
+
+#: access/transam/xlog.c:5321
+msgid "a backup is already in progress"
+msgstr "ein Backup ist bereits begonnen"
+
+#: access/transam/xlog.c:5322
+#, c-format
+msgid ""
+"If you're sure there is no backup in progress, remove file \"%s\" and try "
+"again."
+msgstr ""
+
+#: access/transam/xlog.c:5343 access/transam/xlog.c:5463
+#, c-format
+msgid "could not write file \"%s\": %m"
+msgstr "konnte Datei »%s« nicht schreiben: %m"
+
+#: access/transam/xlog.c:5425
+msgid "a backup is not in progress"
+msgstr "es läuft kein Backup"
+
+#: access/transam/xlog.c:5438 access/transam/xlog.c:5559
+#: access/transam/xlog.c:5565 access/transam/xlog.c:5596
+#: access/transam/xlog.c:5602
+#, c-format
+msgid "invalid data in file \"%s\""
+msgstr "ungültige Daten in Datei »%s«"
+
+#: bootstrap/bootstrap.c:299 postmaster/postmaster.c:496 tcop/postgres.c:2512
+#, c-format
+msgid "--%s requires a value"
+msgstr "--%s benötigt einen Wert"
+
+#: bootstrap/bootstrap.c:304 postmaster/postmaster.c:501 tcop/postgres.c:2517
+#, c-format
+msgid "-c %s requires a value"
+msgstr "-c %s benötigt einen Wert"
+
+#: bootstrap/bootstrap.c:481
 msgid ""
 "Usage:\n"
 "  postgres -boot [OPTION]... DBNAME\n"
@@ -761,443 +1138,585 @@ msgstr ""
 "  -o datei         sende Debug-Ausgabe in Datei\n"
 "  -x num           interne Verwendung\n"
 
-#: bootstrap/bootstrap.c:319 postmaster/postmaster.c:567 tcop/postgres.c:2409
-#, c-format
-msgid "--%s requires a value"
-msgstr "--%s benötigt einen Wert"
+#: catalog/aclchk.c:158
+msgid "grant options can only be granted to individual users"
+msgstr "Grant-Optionen können nur einzelnen Benutzern gewährt werden"
 
-#: bootstrap/bootstrap.c:324 postmaster/postmaster.c:572 tcop/postgres.c:2414
+#: catalog/aclchk.c:246
 #, c-format
-msgid "-c %s requires a value"
-msgstr "-c %s benötigt einen Wert"
+msgid "invalid privilege type %s for table"
+msgstr "ungültiger Privilegtyp %s für Tabelle"
 
-#: bootstrap/bootstrap.c:357 postmaster/postmaster.c:314 tcop/postgres.c:2484
-#, c-format
-msgid ""
-"%s does not know where to find the database system data.\n"
-"You must specify the directory that contains the database system\n"
-"either by specifying the -D invocation option or by setting the\n"
-"PGDATA environment variable.\n"
-msgstr ""
-"%s weiß nicht, wo die Systemdaten für das Datenbanksystem\n"
-"zu finden sind.  Sie müssen das Verzeichnis mit dem Datenbanksystem\n"
-"entweder mit der Kommandozeilenoption -D angeben oder die\n"
-"Umgebungsvariable PGDATA setzen.\n"
-"\n"
+#: catalog/aclchk.c:334 catalog/aclchk.c:492 catalog/aclchk.c:646
+#: catalog/aclchk.c:809 catalog/aclchk.c:962 catalog/aclchk.c:1121
+msgid "no privileges were granted"
+msgstr "es wurden keine Privilegien gewährt"
+
+#: catalog/aclchk.c:338 catalog/aclchk.c:496 catalog/aclchk.c:650
+#: catalog/aclchk.c:813 catalog/aclchk.c:966 catalog/aclchk.c:1125
+msgid "not all privileges were granted"
+msgstr "es wurden nicht alle Priviligien gewährt"
+
+#: catalog/aclchk.c:345 catalog/aclchk.c:503 catalog/aclchk.c:657
+#: catalog/aclchk.c:820 catalog/aclchk.c:973 catalog/aclchk.c:1132
+msgid "no privileges could be revoked"
+msgstr "es konnten keine Privilegien entzogen werden"
 
-#: catalog/namespace.c:167 catalog/namespace.c:220 catalog/namespace.c:1167
-#: parser/parse_expr.c:1118 parser/parse_target.c:162
-msgid "cross-database references are not implemented"
-msgstr "Verweise auf andere Datenbanken sind nicht implementiert"
+#: catalog/aclchk.c:349 catalog/aclchk.c:507 catalog/aclchk.c:661
+#: catalog/aclchk.c:824 catalog/aclchk.c:977 catalog/aclchk.c:1136
+msgid "not all privileges could be revoked"
+msgstr "es konnten nicht alle Privilegien entzogen werden"
 
-#: catalog/namespace.c:187
+#: catalog/aclchk.c:414
 #, c-format
-msgid "relation \"%s.%s\" does not exist"
-msgstr "Relation »%s.%s« existiert nicht"
+msgid "invalid privilege type %s for database"
+msgstr "ungültiger Privilegtyp %s für Datenbank"
 
-#: catalog/namespace.c:192 utils/adt/regproc.c:837
+#: catalog/aclchk.c:451 commands/comment.c:458 commands/dbcommands.c:550
+#: commands/dbcommands.c:682 commands/dbcommands.c:777
+#: commands/dbcommands.c:851 utils/adt/acl.c:1661 utils/init/postinit.c:264
+#: utils/init/postinit.c:276
 #, c-format
-msgid "relation \"%s\" does not exist"
-msgstr "Relation »%s« existiert nicht"
+msgid "database \"%s\" does not exist"
+msgstr "Datenbank »%s« existiert nicht"
 
-#: catalog/namespace.c:229
-msgid "temporary tables may not specify a schema name"
-msgstr "temporäre Tabellen können keinen Schemanamen angeben"
-
-#: catalog/aclchk.c:687 catalog/namespace.c:245 catalog/namespace.c:1200
-#: catalog/namespace.c:1238 catalog/namespace.c:1800 commands/comment.c:490
-#: commands/schemacmds.c:181 commands/schemacmds.c:247 utils/adt/acl.c:1934
-#, c-format
-msgid "schema \"%s\" does not exist"
-msgstr "Schema »%s« existiert nicht"
-
-#: catalog/namespace.c:257 catalog/namespace.c:1249
-msgid "no schema has been selected to create in"
-msgstr "kein Schema für die Objekterzeugung ausgewählt"
-
-#: catalog/namespace.c:1172 gram.y:2340 gram.y:7082 parser/parse_expr.c:1150
-#: parser/parse_target.c:170
-#, c-format
-msgid "improper qualified name (too many dotted names): %s"
-msgstr "falscher qualifizierter Name (zu viele Namensteile): %s"
-
-#: catalog/namespace.c:1284
-#, c-format
-msgid "improper relation name (too many dotted names): %s"
-msgstr "falscher Relationsname (zu viele Namensteile): %s"
-
-#: catalog/namespace.c:1628
-#, 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/aclchk.c:160
-msgid "grant options can only be granted to individual users"
-msgstr "Grant-Optionen können nur einzelnen Benutzern gewährt werden"
-
-#: catalog/aclchk.c:165
-msgid "cannot revoke grant options from owner"
-msgstr "dem Eigentümer können die Grant-Optionen nicht entzogen werden"
-
-#: catalog/aclchk.c:236
-#, c-format
-msgid "invalid privilege type %s for table"
-msgstr "ungültiger Privilegtyp %s für Tabelle"
-
-#: catalog/aclchk.c:343
-#, c-format
-msgid "invalid privilege type %s for database"
-msgstr "ungültiger Privilegtyp %s für Datenbank"
-
-#: catalog/aclchk.c:377 commands/comment.c:440 commands/dbcommands.c:502
-#: commands/dbcommands.c:623 commands/dbcommands.c:712 utils/adt/acl.c:1312
-#: utils/init/postinit.c:261 utils/init/postinit.c:273
-#, c-format
-msgid "database \"%s\" does not exist"
-msgstr "Datenbank »%s« existiert nicht"
-
-#: catalog/aclchk.c:447
+#: catalog/aclchk.c:572
 #, c-format
 msgid "invalid privilege type %s for function"
 msgstr "ungültiger Privilegtyp %s für Funktion"
 
-#: catalog/aclchk.c:548
+#: catalog/aclchk.c:726
 #, c-format
 msgid "invalid privilege type %s for language"
 msgstr "ungültiger Privilegtyp %s für Sprache"
 
-#: catalog/aclchk.c:578 commands/functioncmds.c:441 commands/proclang.c:200
-#: commands/proclang.c:255 utils/adt/acl.c:1730
+#: catalog/aclchk.c:758 commands/comment.c:1001 commands/functioncmds.c:451
+#: commands/proclang.c:202 commands/proclang.c:257 utils/adt/acl.c:2079
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "Sprache »%s« existiert nicht"
 
-#: catalog/aclchk.c:598
+#: catalog/aclchk.c:764
 #, c-format
 msgid "language \"%s\" is not trusted"
 msgstr "Sprache »%s« ist nicht »trusted«"
 
-#: catalog/aclchk.c:657
+#: catalog/aclchk.c:765
+msgid "Only superusers may use untrusted languages."
+msgstr "Nur Superuser können nicht vertrauenswürdige Sprachen verwenden."
+
+#: catalog/aclchk.c:889
 #, c-format
 msgid "invalid privilege type %s for schema"
 msgstr "ungültiger Privilegtyp %s für Schema"
 
-#: catalog/aclchk.c:792 commands/user.c:1454 commands/user.c:1691
-#: commands/user.c:1726 libpq/pqcomm.c:475
+#: catalog/aclchk.c:921 catalog/namespace.c:255 catalog/namespace.c:1229
+#: catalog/namespace.c:1267 catalog/namespace.c:1866 commands/comment.c:509
+#: commands/schemacmds.c:210 commands/schemacmds.c:272
+#: commands/schemacmds.c:327 utils/adt/acl.c:2283
 #, c-format
-msgid "group \"%s\" does not exist"
-msgstr "Gruppe »%s« existiert nicht"
+msgid "schema \"%s\" does not exist"
+msgstr "Schema »%s« existiert nicht"
 
-#: catalog/aclchk.c:864
+#: catalog/aclchk.c:1043
 #, c-format
-msgid "group with ID %u does not exist"
-msgstr "Gruppe mit ID %u existiert nicht"
+msgid "invalid privilege type %s for tablespace"
+msgstr "ungültiger Privilegtyp %s für Tablespace"
+
+#: catalog/aclchk.c:1080 commands/dbcommands.c:277 commands/indexcmds.c:169
+#: commands/schemacmds.c:117 commands/tablecmds.c:328
+#: commands/tablecmds.c:5409 commands/tablespace.c:428
+#: commands/tablespace.c:824 commands/tablespace.c:891 utils/adt/acl.c:2489
+#, c-format
+msgid "tablespace \"%s\" does not exist"
+msgstr "Tablespace »%s« existiert nicht"
+
+#: catalog/aclchk.c:1229 commands/user.c:1535 commands/user.c:1772
+#: commands/user.c:1807 libpq/pqcomm.c:499
+#, c-format
+msgid "group \"%s\" does not exist"
+msgstr "Gruppe »%s« existiert nicht"
 
-#: catalog/aclchk.c:933
+#: catalog/aclchk.c:1264
 #, c-format
 msgid "permission denied for relation %s"
 msgstr "keine Berechtigung für Relation %s"
 
-#: catalog/aclchk.c:935
+#: catalog/aclchk.c:1266
 #, c-format
 msgid "permission denied for database %s"
 msgstr "keine Berechtigung für Datenbank %s"
 
-#: catalog/aclchk.c:937
+#: catalog/aclchk.c:1268
 #, c-format
 msgid "permission denied for function %s"
 msgstr "keine Berechtigung für Funktion %s"
 
-#: catalog/aclchk.c:939
+#: catalog/aclchk.c:1270
 #, c-format
 msgid "permission denied for operator %s"
 msgstr "keine Berechtigung für Operator %s"
 
-#: catalog/aclchk.c:941
+#: catalog/aclchk.c:1272
 #, c-format
 msgid "permission denied for type %s"
 msgstr "keine Berechtigung für Typ %s"
 
-#: catalog/aclchk.c:943
+#: catalog/aclchk.c:1274
 #, c-format
 msgid "permission denied for language %s"
 msgstr "keine Berechtigung für Sprache %s"
 
-#: catalog/aclchk.c:945
+#: catalog/aclchk.c:1276
 #, c-format
 msgid "permission denied for schema %s"
 msgstr "keine Berechtigung für Schema %s"
 
-#: catalog/aclchk.c:947
+#: catalog/aclchk.c:1278
 #, c-format
 msgid "permission denied for operator class %s"
 msgstr "keine Berechtigung für Operatorklasse %s"
 
-#: catalog/aclchk.c:949
+#: catalog/aclchk.c:1280
 #, c-format
 msgid "permission denied for conversion %s"
 msgstr "keine Berechtigung für Konversion %s"
 
-#: catalog/aclchk.c:955
+#: catalog/aclchk.c:1282
+#, c-format
+msgid "permission denied for tablespace %s"
+msgstr "keine Berechtigung für Tablespace %s"
+
+#: catalog/aclchk.c:1288
 #, c-format
 msgid "must be owner of relation %s"
 msgstr "Berechtigung nur für Eigentümer der Relation %s"
 
-#: catalog/aclchk.c:957
+#: catalog/aclchk.c:1290
 #, c-format
 msgid "must be owner of database %s"
 msgstr "Berechtigung nur für Eigentümer der Datenbank %s"
 
-#: catalog/aclchk.c:959
+#: catalog/aclchk.c:1292
 #, c-format
 msgid "must be owner of function %s"
 msgstr "Berechtigung nur für Eigentümer der Funktion %s"
 
-#: catalog/aclchk.c:961
+#: catalog/aclchk.c:1294
 #, c-format
 msgid "must be owner of operator %s"
 msgstr "Berechtigung nur für Eigentümer des Operators %s"
 
-#: catalog/aclchk.c:963
+#: catalog/aclchk.c:1296
 #, c-format
 msgid "must be owner of type %s"
 msgstr "Berechtigung nur für Eigentümer des Typs %s"
 
-#: catalog/aclchk.c:965
+#: catalog/aclchk.c:1298
 #, c-format
 msgid "must be owner of language %s"
 msgstr "Berechtigung nur für Eigentümer der Sprache %s"
 
-#: catalog/aclchk.c:967
+#: catalog/aclchk.c:1300
 #, c-format
 msgid "must be owner of schema %s"
 msgstr "Berechtigung nur für Eigentümer des Schemas %s"
 
-#: catalog/aclchk.c:969
+#: catalog/aclchk.c:1302
 #, c-format
 msgid "must be owner of operator class %s"
 msgstr "Berechtigung nur für Eigentümer der Operatorklasse %s"
 
-#: catalog/aclchk.c:971
+#: catalog/aclchk.c:1304
 #, c-format
 msgid "must be owner of conversion %s"
 msgstr "Berechtigung nur für Eigentümer der Konversion %s"
 
-#: catalog/aclchk.c:1029
+#: catalog/aclchk.c:1306
+#, c-format
+msgid "must be owner of tablespace %s"
+msgstr "Berechtigung nur für Eigentümer des Tablespace %s"
+
+#: catalog/aclchk.c:1369
 #, c-format
 msgid "user with ID %u does not exist"
 msgstr "Benutzer mit ID %u existiert nicht"
 
-#: catalog/aclchk.c:1046 catalog/aclchk.c:1363
+#: catalog/aclchk.c:1386 catalog/aclchk.c:1889
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "Relation mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1141 catalog/aclchk.c:1542
+#: catalog/aclchk.c:1490 catalog/aclchk.c:2107
 #, c-format
 msgid "database with OID %u does not exist"
 msgstr "Datenbank mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1198 catalog/aclchk.c:1447 tcop/fastpath.c:231
+#: catalog/aclchk.c:1548 catalog/aclchk.c:1973 tcop/fastpath.c:230
 #, c-format
 msgid "function with OID %u does not exist"
 msgstr "Funktion mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1253
+#: catalog/aclchk.c:1604
 #, c-format
 msgid "language with OID %u does not exist"
 msgstr "Sprache mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1313 catalog/aclchk.c:1475
+#: catalog/aclchk.c:1689 catalog/aclchk.c:2001
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "Schema mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1391
+#: catalog/aclchk.c:1761 catalog/aclchk.c:2039 commands/tablecmds.c:5921
+#, c-format
+msgid "tablespace with OID %u does not exist"
+msgstr "Tablespace mit OID %u existiert nicht"
+
+#: catalog/aclchk.c:1917
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "Typ mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1419
+#: catalog/aclchk.c:1945
 #, c-format
 msgid "operator with OID %u does not exist"
 msgstr "Operator mit OID %u existiert nicht"
 
-#: catalog/aclchk.c:1503
+#: catalog/aclchk.c:2068
 #, c-format
 msgid "operator class with OID %u does not exist"
 msgstr "Operatorklasse mit OID %u existiert nicht"
 
-#: catalog/dependency.c:173
+#: catalog/aclchk.c:2136
+#, c-format
+msgid "conversion with OID %u does not exist"
+msgstr "Konversion mit OID %u existiert nicht"
+
+#: catalog/dependency.c:152
 #, c-format
 msgid "cannot drop %s because other objects depend on it"
 msgstr "kann %s nicht löschen, weil andere Objekte davon abhängen"
 
-#: catalog/dependency.c:175
+#: catalog/dependency.c:154
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
 msgstr ""
 "Verwenden SIe DROP ... CASCADE um die abhängigen Objekte ebenfalls zu "
 "löschen."
 
-#: catalog/dependency.c:233
+#: catalog/dependency.c:212
 #, c-format
 msgid "failed to drop all objects depending on %s"
 msgstr "konnte nicht alle von %s abhängenden Objekte löschen"
 
-#: catalog/dependency.c:330 catalog/dependency.c:729
+#: catalog/dependency.c:312 catalog/dependency.c:717
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "kann %s nicht löschen, weil es vom Datenbanksystem benötigt wird"
 
-#: catalog/dependency.c:466
+#: catalog/dependency.c:451
 #, c-format
 msgid "cannot drop %s because %s requires it"
 msgstr "kann %s nicht löschen, weil es von %s benötigt wird"
 
-#: catalog/dependency.c:468
+#: catalog/dependency.c:453
 #, c-format
 msgid "You may drop %s instead."
 msgstr "Sie können stattdessen %s löschen."
 
-#: catalog/dependency.c:536 catalog/dependency.c:686 catalog/dependency.c:714
+#: catalog/dependency.c:521 catalog/dependency.c:674 catalog/dependency.c:702
 #, c-format
 msgid "drop auto-cascades to %s"
 msgstr "Löschvorgang löscht automatisch %s"
 
-#: catalog/dependency.c:541 catalog/dependency.c:691
+#: catalog/dependency.c:526 catalog/dependency.c:679
 #, c-format
 msgid "%s depends on %s"
 msgstr "%s hängt von %s ab"
 
-#: catalog/dependency.c:548 catalog/dependency.c:698
+#: catalog/dependency.c:533 catalog/dependency.c:686
 #, c-format
 msgid "drop cascades to %s"
 msgstr "Löschvorgang löscht ebenfalls %s"
 
-#: catalog/heap.c:227
+#: catalog/dependency.c:1427
+#, c-format
+msgid " column %s"
+msgstr " Spalte %s"
+
+#: catalog/dependency.c:1433
+#, c-format
+msgid "function %s"
+msgstr "Funktion %s"
+
+#: catalog/dependency.c:1438
+#, c-format
+msgid "type %s"
+msgstr "Typ %s"
+
+#: catalog/dependency.c:1468
+#, c-format
+msgid "cast from %s to %s"
+msgstr "Typumwandlung von %s in %s"
+
+#: catalog/dependency.c:1505
+#, c-format
+msgid "constraint %s on "
+msgstr "Constraint %s für "
+
+#: catalog/dependency.c:1511
+#, c-format
+msgid "constraint %s"
+msgstr "Constraint %s"
+
+#: catalog/dependency.c:1530
+#, c-format
+msgid "conversion %s"
+msgstr "Konversion %s"
+
+#: catalog/dependency.c:1567
+#, c-format
+msgid "default for %s"
+msgstr "Vorgabewert für %s"
+
+#: catalog/dependency.c:1585
+#, c-format
+msgid "language %s"
+msgstr "Sprache %s"
+
+#: catalog/dependency.c:1592
+#, c-format
+msgid "operator %s"
+msgstr "Operator %s"
+
+#: catalog/dependency.c:1626
+#, c-format
+msgid "operator class %s for access method %s"
+msgstr "Operatorklasse %s für Zugriffsmethode %s"
+
+#: catalog/dependency.c:1662
+#, c-format
+msgid "rule %s on "
+msgstr "Regel %s für "
+
+#: catalog/dependency.c:1697
+#, c-format
+msgid "trigger %s on "
+msgstr "Triger %s für "
+
+#: catalog/dependency.c:1714
+#, c-format
+msgid "schema %s"
+msgstr "Schema %s"
+
+#: catalog/dependency.c:1758
+#, c-format
+msgid "table %s"
+msgstr "Tabelle %s"
+
+#: catalog/dependency.c:1762
+#, c-format
+msgid "index %s"
+msgstr "Index %s"
+
+#: catalog/dependency.c:1766
+#, c-format
+msgid "special system relation %s"
+msgstr "besondere Systemrelation %s"
+
+#: catalog/dependency.c:1770
+#, c-format
+msgid "sequence %s"
+msgstr "Sequenz %s"
+
+#: catalog/dependency.c:1774
+#, c-format
+msgid "uncataloged table %s"
+msgstr "nicht katalogisierte Tabelle %s"
+
+#: catalog/dependency.c:1778
+#, c-format
+msgid "toast table %s"
+msgstr "TOAST-Tabelle %s"
+
+#: catalog/dependency.c:1782
+#, c-format
+msgid "view %s"
+msgstr "Sicht %s"
+
+#: catalog/dependency.c:1786
+#, c-format
+msgid "composite type %s"
+msgstr "zusammengesetzter Typ %s"
+
+#: catalog/dependency.c:1791
+#, c-format
+msgid "relation %s"
+msgstr "Relation %s"
+
+#: catalog/heap.c:221
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "keine Berechtigung um »%s.%s« zu erzeugen"
 
-#: catalog/heap.c:229
+#: catalog/heap.c:223
 msgid "System catalog modifications are currently disallowed."
 msgstr "Änderungen an Systemkatalogen sind gegenwärtig nicht erlaubt."
 
-#: catalog/heap.c:356 commands/tablecmds.c:1757
+#: catalog/heap.c:382 commands/tablecmds.c:2901
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "Tabellen können höchstens %d Spalten haben"
 
-#: catalog/heap.c:373
+#: catalog/heap.c:399
 #, 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:389
+#: catalog/heap.c:415
 #, c-format
 msgid "column name \"%s\" is duplicated"
 msgstr "Spaltenname »%s« besteht mehrfach"
 
-#: catalog/heap.c:429
+#: catalog/heap.c:452
 #, c-format
 msgid "column \"%s\" has type \"unknown\""
 msgstr "Spalte »%s« hat Typ »unknown«"
 
-#: catalog/heap.c:430
+#: catalog/heap.c:453
 msgid "Proceeding with relation creation anyway."
 msgstr "Erzeuge die Relation trotzdem."
 
-#: catalog/heap.c:437
+#: catalog/heap.c:460
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "Spalte »%s« hat Pseudotyp %s"
 
-#: catalog/heap.c:447
-#, c-format
-msgid "column \"%s\" has composite type %s"
-msgstr "Spalte »%s« hat zusammengesetzten Typ %s"
-
-#: catalog/heap.c:734 catalog/index.c:522 commands/tablecmds.c:1292
+#: catalog/heap.c:747 catalog/index.c:527 commands/tablecmds.c:1475
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "Relation »%s« existiert bereits"
 
-#: catalog/heap.c:1556 commands/tablecmds.c:2798 commands/tablecmds.c:2840
-#, c-format
-msgid "constraint \"%s\" for relation \"%s\" already exists"
-msgstr "Constraint »%s« existiert bereits für Relation »%s«"
-
-#: catalog/heap.c:1572
-#, c-format
-msgid "check constraint \"%s\" already exists"
-msgstr "Check-Constraint »%s« existiert bereits"
-
-#: catalog/heap.c:1634
+#: catalog/heap.c:1601
 #, 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:1643 commands/tablecmds.c:2927 commands/typecmds.c:1811
+#: catalog/heap.c:1610 commands/typecmds.c:1872
 msgid "cannot use subquery in check constraint"
 msgstr "Unteranfragen können nicht in Check-Constraints verwendet werden"
 
-#: catalog/heap.c:1647 commands/tablecmds.c:2931
+#: catalog/heap.c:1614
 msgid "cannot use aggregate function in check constraint"
 msgstr "Aggregatfunktionen können nicht in Check-Constraints verwendet werden"
 
-#: catalog/heap.c:1754
+#: catalog/heap.c:1631 commands/tablecmds.c:3696
+#, c-format
+msgid "constraint \"%s\" for relation \"%s\" already exists"
+msgstr "Constraint »%s« existiert bereits für Relation »%s«"
+
+#: catalog/heap.c:1640
+#, c-format
+msgid "check constraint \"%s\" already exists"
+msgstr "Check-Constraint »%s« existiert bereits"
+
+#: catalog/heap.c:1789
 msgid "cannot use column references in default expression"
 msgstr "Spaltenverweise können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:1762
+#: catalog/heap.c:1797
 msgid "default expression must not return a set"
 msgstr "Vorgabeausdruck kann keine Ergebnismenge zurückgeben"
 
-#: catalog/heap.c:1770
+#: catalog/heap.c:1805
 msgid "cannot use subquery in default expression"
 msgstr "Unteranfragen können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:1774
+#: catalog/heap.c:1809
 msgid "cannot use aggregate function in default expression"
 msgstr "Aggregatfunktionen können nicht in Vorgabeausdrücken verwendet werden"
 
-#: catalog/heap.c:1792 rewrite/rewriteHandler.c:560
+#: catalog/heap.c:1827 rewrite/rewriteHandler.c:646
 #, 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:1797 parser/analyze.c:2790 parser/parse_node.c:232
-#: parser/parse_target.c:425 rewrite/rewriteHandler.c:565
+#: catalog/heap.c:1832 parser/analyze.c:2689 parser/parse_node.c:247
+#: parser/parse_target.c:362 parser/parse_target.c:572
+#: parser/parse_target.c:581 rewrite/rewriteHandler.c:651
 msgid "You will need to rewrite or cast the expression."
 msgstr "Sie müssen den Ausdruck umschreiben oder eine Typumwandlung vornehmen."
 
-#: catalog/heap.c:2059
+#: catalog/heap.c:2093
 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:2060
+#: catalog/heap.c:2094
 #, c-format
 msgid "Table \"%s\" references \"%s\" via foreign key constraint \"%s\"."
 msgstr "Tabelle »%s« verweist auf »%s« über Fremdschlüssel-Constraint »%s«"
 
-#: catalog/index.c:505
+#: catalog/index.c:508
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr ""
 "benutzerdefinierte Indexe für Systemkatalogtabellen werden nicht unterstützt"
 
-#: catalog/index.c:517
+#: catalog/index.c:522
 msgid "shared indexes cannot be created after initdb"
 msgstr "Cluster-globale Indexe können nicht nach initdb erzeugt werden"
 
-#: catalog/index.c:1659
+#: catalog/index.c:1679
 #, c-format
 msgid "shared index \"%s\" can only be reindexed in stand-alone mode"
 msgstr ""
 "Cluster-globaler Index »%s« kann nur im Einzelbenutzermodus reindiziert "
 "werden"
 
+#: catalog/namespace.c:173 catalog/namespace.c:228
+#, 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:195
+#, c-format
+msgid "relation \"%s.%s\" does not exist"
+msgstr "Relation »%s.%s« existiert nicht"
+
+#: catalog/namespace.c:200 utils/adt/regproc.c:837
+#, c-format
+msgid "relation \"%s\" does not exist"
+msgstr "Relation »%s« existiert nicht"
+
+#: catalog/namespace.c:239
+msgid "temporary tables may not specify a schema name"
+msgstr "temporäre Tabellen können keinen Schemanamen angeben"
+
+#: catalog/namespace.c:267 catalog/namespace.c:1278
+msgid "no schema has been selected to create in"
+msgstr "kein Schema für die Objekterzeugung ausgewählt"
+
+#: catalog/namespace.c:1195 parser/parse_expr.c:1157 parser/parse_target.c:727
+#, c-format
+msgid "cross-database references are not implemented: %s"
+msgstr "Verweise auf andere Datenbanken sind nicht implementiert: %s"
+
+#: catalog/namespace.c:1201 parser/parse_expr.c:1183 parser/parse_target.c:736
+#: gram.y:2516 gram.y:7422
+#, c-format
+msgid "improper qualified name (too many dotted names): %s"
+msgstr "falscher qualifizierter Name (zu viele Namensteile): %s"
+
+#: catalog/namespace.c:1313
+#, c-format
+msgid "improper relation name (too many dotted names): %s"
+msgstr "falscher Relationsname (zu viele Namensteile): %s"
+
+#: catalog/namespace.c:1659
+#, 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/pg_aggregate.c:80
 msgid "cannot determine transition data type"
 msgstr "kann Übergangsdatentyp nicht bestimmen"
@@ -1223,7 +1742,7 @@ msgstr ""
 "Anfangswert darf nicht ausgelassen werden, wenn Übergangsfunktion strikt ist "
 "und Übergangstyp nicht mit Eingabetyp kompatibel ist"
 
-#: catalog/pg_aggregate.c:165 catalog/pg_proc.c:116 catalog/pg_proc.c:539
+#: catalog/pg_aggregate.c:165 catalog/pg_proc.c:124 executor/functions.c:1082
 msgid "cannot determine result data type"
 msgstr "kann Ergebnisdatentyp nicht bestimmen"
 
@@ -1235,121 +1754,23 @@ msgstr ""
 "Eine Aggregatfunktion, die »anyarray« oder »anyelement« zurückgibt, muss "
 "eines davon als Basistyp haben."
 
-#: catalog/pg_aggregate.c:280 commands/typecmds.c:896 commands/typecmds.c:966
-#: commands/typecmds.c:998 commands/typecmds.c:1030 parser/parse_func.c:319
-#: parser/parse_func.c:1491
+#: catalog/pg_aggregate.c:281 commands/typecmds.c:919 commands/typecmds.c:989
+#: commands/typecmds.c:1021 commands/typecmds.c:1053 commands/typecmds.c:1077
+#: parser/parse_func.c:203 parser/parse_func.c:1364
 #, c-format
 msgid "function %s does not exist"
 msgstr "Funktion %s existiert nicht"
 
-#: catalog/pg_aggregate.c:285
+#: catalog/pg_aggregate.c:286
 #, c-format
 msgid "function %s returns a set"
 msgstr "Funktion %s gibt eine Ergebnismenge zurück"
 
-#: catalog/pg_aggregate.c:316 catalog/pg_aggregate.c:325
+#: catalog/pg_aggregate.c:317 catalog/pg_aggregate.c:326
 #, c-format
 msgid "function %s requires run-time type coercion"
 msgstr "Funktion %s erfordert Typumwandlung zur Laufzeit"
 
-#: catalog/pg_proc.c:92 commands/functioncmds.c:150 parser/parse_func.c:1514
-#, c-format
-msgid "functions cannot have more than %d arguments"
-msgstr "Funktionen können nicht mehr als %d Argumente haben"
-
-#: catalog/pg_proc.c:117 catalog/pg_proc.c:540
-msgid ""
-"A function returning \"anyarray\" or \"anyelement\" must have at least one "
-"argument of either type."
-msgstr ""
-"Eine Funktion, die »anyarray« oder »anyelement« zurückgibt, muss mindestens "
-"ein Argument von einem dieser Typen haben."
-
-#: catalog/pg_proc.c:172
-#, c-format
-msgid "\"%s\" is already an attribute of type %s"
-msgstr "»%s« ist schon ein Attribut von Typ %s"
-
-#: catalog/pg_proc.c:224
-#, c-format
-msgid "function \"%s\" already exists with same argument types"
-msgstr "Funktion »%s« existiert bereits mit den selben Argumenttypen"
-
-#: catalog/pg_proc.c:238
-msgid "cannot change return type of existing function"
-msgstr "kann Rückgabetyp einer bestehenden Funktion nicht ändern"
-
-#: catalog/pg_proc.c:239
-msgid "Use DROP FUNCTION first."
-msgstr "Verwenden Sie zuerst DROP FUNCTION."
-
-#: catalog/pg_proc.c:247
-#, c-format
-msgid "function \"%s\" is an aggregate"
-msgstr "Funktion »%s« ist eine Aggregatfunktion"
-
-#: catalog/pg_proc.c:252
-#, c-format
-msgid "function \"%s\" is not an aggregate"
-msgstr "Funktion »%s« ist keine Aggregatfunktion"
-
-#: catalog/pg_proc.c:371 catalog/pg_proc.c:392 catalog/pg_proc.c:402
-#: catalog/pg_proc.c:426 catalog/pg_proc.c:434 catalog/pg_proc.c:486
-#: catalog/pg_proc.c:498 catalog/pg_proc.c:518
-#, c-format
-msgid "return type mismatch in function declared to return %s"
-msgstr "Rückgabetyp von Funktion stimmt nicht überein; deklariert als %s"
-
-#: catalog/pg_proc.c:373 catalog/pg_proc.c:404
-msgid "Function's final statement must be a SELECT."
-msgstr "Die letzte Anweisung der Funktion muss ein SELECT sein."
-
-#: catalog/pg_proc.c:394
-msgid "Function's final statement must not be a SELECT."
-msgstr "Die letzte Anweisung der Funktion darf kein SELECT sein."
-
-#: catalog/pg_proc.c:428
-msgid "Final SELECT must return exactly one column."
-msgstr "Das letzte SELECT muss genau eine Spalte zurückgeben."
-
-#: catalog/pg_proc.c:436
-#, c-format
-msgid "Actual return type is %s."
-msgstr "Eigentlicher Rückgabetyp ist %s."
-
-#: catalog/pg_proc.c:488
-msgid "Final SELECT returns too many columns."
-msgstr "Das letzte SELECT gibt zu viele Spalten zurück."
-
-#: catalog/pg_proc.c:500
-#, c-format
-msgid "Final SELECT returns %s instead of %s at column %d."
-msgstr "Das letzte SELECT ergibt %s statt %s in Spalte %d."
-
-#: catalog/pg_proc.c:520
-msgid "Final SELECT returns too few columns."
-msgstr "Das letzte SELECT gibt zu wenige Spalten zurück."
-
-#: catalog/pg_proc.c:545
-#, c-format
-msgid "return type %s is not supported for SQL functions"
-msgstr "Rückgabetyp %s wird nicht von SQL-Funktionen unterstützt"
-
-#: catalog/pg_proc.c:587
-#, c-format
-msgid "there is no built-in function named \"%s\""
-msgstr "es gibt keine eingebaute Funktion namens %s"
-
-#: catalog/pg_proc.c:685
-#, c-format
-msgid "SQL functions cannot return type %s"
-msgstr "SQL-Funktionen können keinen Rückgabetyp »%s« haben"
-
-#: catalog/pg_proc.c:701
-#, c-format
-msgid "SQL functions cannot have arguments of type %s"
-msgstr "SQL-Funktionen können keine Argumente vom Typ »%s« haben"
-
 #: catalog/pg_conversion.c:66
 #, c-format
 msgid "conversion \"%s\" already exists"
@@ -1360,19 +1781,20 @@ msgstr "Konversion 
 msgid "default conversion for %s to %s already exists"
 msgstr "Standardumwandlung von %s nach %s existiert bereits"
 
-#: catalog/pg_conversion.c:308 commands/conversioncmds.c:109
-#: commands/conversioncmds.c:133
+#: catalog/pg_conversion.c:307 commands/comment.c:958
+#: commands/conversioncmds.c:109 commands/conversioncmds.c:133
+#: commands/conversioncmds.c:192
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "Konversion »%s« existiert nicht"
 
-#: catalog/pg_largeobject.c:107 storage/large_object/inv_api.c:128
-#: storage/large_object/inv_api.c:248
+#: catalog/pg_largeobject.c:107 commands/comment.c:1151
+#: storage/large_object/inv_api.c:197 storage/large_object/inv_api.c:312
 #, c-format
 msgid "large object %u does not exist"
 msgstr "Large Object %u existiert nicht"
 
-#: catalog/pg_namespace.c:51 commands/schemacmds.c:256
+#: catalog/pg_namespace.c:51 commands/schemacmds.c:281
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "Schema »%s« existiert bereits"
@@ -1411,210 +1833,94 @@ msgstr "Operator %s existiert bereits"
 msgid "operator cannot be its own negator or sort operator"
 msgstr "Operator kann nicht sein eigener Negator oder Sortierungsoperator sein"
 
-#: catalog/pg_type.c:195 catalog/pg_type.c:201
+#: catalog/pg_proc.c:100 commands/functioncmds.c:154 parser/parse_func.c:1388
 #, c-format
-msgid "invalid type internal size %d"
-msgstr "ungültige interne Typgröße %d"
+msgid "functions cannot have more than %d arguments"
+msgstr "Funktionen können nicht mehr als %d Argumente haben"
 
-#: catalog/pg_type.c:208
-msgid "fixed-size types must have storage PLAIN"
-msgstr "Typen mit fester Größe müssen Storage-Typ PLAIN haben"
+#: catalog/pg_proc.c:125 executor/functions.c:1083
+msgid ""
+"A function returning \"anyarray\" or \"anyelement\" must have at least one "
+"argument of either type."
+msgstr ""
+"Eine Funktion, die »anyarray« oder »anyelement« zurückgibt, muss mindestens "
+"ein Argument von einem dieser Typen haben."
 
-#: catalog/pg_type.c:289 catalog/pg_type.c:511
+#: catalog/pg_proc.c:145
 #, c-format
-msgid "type \"%s\" already exists"
-msgstr "Typ »%s« existiert bereits"
+msgid "\"%s\" is already an attribute of type %s"
+msgstr "»%s« ist schon ein Attribut von Typ %s"
 
-#: catalog/pg_type.c:503 commands/functioncmds.c:109 commands/typecmds.c:407
-#: commands/typecmds.c:786 commands/typecmds.c:1113 commands/typecmds.c:1233
-#: commands/typecmds.c:1349 commands/typecmds.c:1436 commands/typecmds.c:2017
-#: parser/parse_func.c:1526 parser/parse_type.c:201 parser/parse_type.c:227
-#: tcop/utility.c:95 utils/adt/regproc.c:1003
+#: catalog/pg_proc.c:200
 #, c-format
-msgid "type \"%s\" does not exist"
-msgstr "Typ »%s« existiert nicht"
+msgid "function \"%s\" already exists with same argument types"
+msgstr "Funktion »%s« existiert bereits mit den selben Argumenttypen"
 
-#: commands/functioncmds.c:83
-#, c-format
-msgid "SQL function cannot return shell type %s"
-msgstr "SQL-Funktion kann keinen Hüllen-Rückgabetyp %s haben"
+#: catalog/pg_proc.c:214
+msgid "cannot change return type of existing function"
+msgstr "kann Rückgabetyp einer bestehenden Funktion nicht ändern"
 
-#: commands/functioncmds.c:88
-#, c-format
-msgid "return type %s is only a shell"
-msgstr "Rückgabetyp %s ist nur eine Hülle"
-
-#: commands/functioncmds.c:114
-#, c-format
-msgid "type \"%s\" is not yet defined"
-msgstr "Typ »%s« ist noch nicht definiert"
-
-#: commands/functioncmds.c:115
-msgid "Creating a shell type definition."
-msgstr "Erzeuge eine Hüllentypdefinition."
-
-#: commands/functioncmds.c:162
-#, c-format
-msgid "SQL function cannot accept shell type %s"
-msgstr "SQL-Funktion kann keinen Hüllentyp %s annehmen"
-
-#: commands/functioncmds.c:167
-#, c-format
-msgid "argument type %s is only a shell"
-msgstr "Argumenttyp %s ist nur eine Hülle"
-
-#: commands/functioncmds.c:175 parser/parse_oper.c:113 parser/parse_oper.c:124
-#, c-format
-msgid "type %s does not exist"
-msgstr "Typ %s existiert bereits"
-
-#: commands/functioncmds.c:182
-msgid "functions cannot accept set arguments"
-msgstr "Funktionen können keine SET Argumente haben"
-
-#: commands/copy.c:699 commands/copy.c:707 commands/copy.c:715
-#: commands/copy.c:723 commands/dbcommands.c:103 commands/dbcommands.c:111
-#: commands/dbcommands.c:119 commands/dbcommands.c:127
-#: commands/functioncmds.c:220 commands/functioncmds.c:228
-#: commands/functioncmds.c:236 commands/functioncmds.c:244
-#: commands/functioncmds.c:252 commands/sequence.c:895 commands/sequence.c:908
-#: commands/sequence.c:916 commands/sequence.c:924 commands/sequence.c:932
-#: commands/sequence.c:940 commands/user.c:525 commands/user.c:537
-#: commands/user.c:545 commands/user.c:553 commands/user.c:561
-#: commands/user.c:569 commands/user.c:775 commands/user.c:787
-#: commands/user.c:795 commands/user.c:803 commands/user.c:1275
-#: commands/user.c:1283
-msgid "conflicting or redundant options"
-msgstr "widersprüchliche oder überflüssige Optionen"
-
-#: commands/functioncmds.c:265
-msgid "no function body specified"
-msgstr "kein Funktionskörper angegeben"
-
-#: commands/functioncmds.c:272
-msgid "no language specified"
-msgstr "keine Sprache angegeben"
-
-#: commands/functioncmds.c:333
-#, c-format
-msgid "unrecognized function attribute \"%s\" ignored"
-msgstr "unbekanntes Funktionsattribut »%s« ignoriert"
-
-#: commands/functioncmds.c:377
-#, c-format
-msgid "only one AS item needed for language \"%s\""
-msgstr "nur ein AS-Element benötigt für Sprache »%s«"
-
-#: commands/functioncmds.c:448
-msgid "You need to use \"createlang\" to load the language into the database."
-msgstr ""
-"Sie müssen »createlang« verwenden um die Sprache in die Datenbank zu laden."
-
-#: commands/functioncmds.c:567 commands/functioncmds.c:673
-#, c-format
-msgid "\"%s\" is an aggregate function"
-msgstr "»%s« ist eine Aggregatfunktion"
-
-#: commands/functioncmds.c:569
-msgid "Use DROP AGGREGATE to drop aggregate functions."
-msgstr "Verwenden Sie DROP AGGREGATE um Aggregatfunktionen zu löschen."
-
-#: commands/functioncmds.c:576
-#, c-format
-msgid "removing built-in function \"%s\""
-msgstr "eingebaute Funktion »%s« wird entfernt"
-
-#: commands/functioncmds.c:675
-msgid "Use ALTER AGGREGATE to rename aggregate functions."
-msgstr "Verwenden Sie ALTER AGGREGATE um Aggregatfunktionen umzubenennen."
+#: catalog/pg_proc.c:215
+msgid "Use DROP FUNCTION first."
+msgstr "Verwenden Sie zuerst DROP FUNCTION."
 
-#: commands/aggregatecmds.c:265 commands/functioncmds.c:688
+#: catalog/pg_proc.c:223
 #, c-format
-msgid "function %s already exists in schema \"%s\""
-msgstr "Funktion %s existiert bereits in Schema »%s«"
+msgid "function \"%s\" is an aggregate"
+msgstr "Funktion »%s« ist eine Aggregatfunktion"
 
-#: commands/functioncmds.c:813 commands/functioncmds.c:1047
+#: catalog/pg_proc.c:228
 #, c-format
-msgid "source data type %s does not exist"
-msgstr "Quelldatentyp %s existiert nicht"
+msgid "function \"%s\" is not an aggregate"
+msgstr "Funktion »%s« ist keine Aggregatfunktion"
 
-#: commands/functioncmds.c:820 commands/functioncmds.c:1054
+#: catalog/pg_proc.c:387
 #, c-format
-msgid "target data type %s does not exist"
-msgstr "Zieldatentyp %s existiert nicht"
-
-#: commands/functioncmds.c:826
-msgid "source data type and target data type are the same"
-msgstr "Quelldatentyp und Zieldatentyp sind der selbe"
+msgid "there is no built-in function named \"%s\""
+msgstr "es gibt keine eingebaute Funktion namens %s"
 
-#: commands/functioncmds.c:832
+#: catalog/pg_proc.c:487
 #, c-format
-msgid "source data type %s is only a shell"
-msgstr "Quelldatentyp %s ist nur eine Hülle"
+msgid "SQL functions cannot return type %s"
+msgstr "SQL-Funktionen können keinen Rückgabetyp »%s« haben"
 
-#: commands/functioncmds.c:838
+#: catalog/pg_proc.c:503
 #, c-format
-msgid "target data type %s is only a shell"
-msgstr "Zieldatentyp %s ist nur eine Hülle"
+msgid "SQL functions cannot have arguments of type %s"
+msgstr "SQL-Funktionen können keine Argumente vom Typ »%s« haben"
 
-#: commands/functioncmds.c:844
+#: catalog/pg_proc.c:574 executor/functions.c:803
 #, c-format
-msgid "source data type %s is a pseudo-type"
-msgstr "Quelldatentyp %s ist ein Pseudotyp."
+msgid "SQL function \"%s\""
+msgstr "SQL-Funktion »%s«"
 
-#: commands/functioncmds.c:850
+#: catalog/pg_type.c:198
 #, c-format
-msgid "target data type %s is a pseudo-type"
-msgstr "Zieldatentyp %s ist ein Pseudotyp"
+msgid "invalid type internal size %d"
+msgstr "ungültige interne Typgröße %d"
 
-#: commands/functioncmds.c:858 commands/functioncmds.c:1073
+#: catalog/pg_type.c:204
 #, 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"
-
-#: commands/functioncmds.c:880
-msgid "cast function must take one argument"
-msgstr "Cast-Funktion muss ein Argument haben"
-
-#: commands/functioncmds.c:884
-msgid "argument of cast function must match source data type"
+msgid "internal size %d is invalid for passed-by-value type"
 msgstr ""
-"Argument der Typumwandlungsfunktion muss mit Quelldatentyp übereinstimmen"
 
-#: commands/functioncmds.c:888
-msgid "return data type of cast function must match target data type"
-msgstr ""
-"Rückgabetyp der Typumwandlungsfunktion muss mit Zieldatentyp übereinstimmen"
-
-#: commands/functioncmds.c:899
-msgid "cast function must not be volatile"
-msgstr "Typumwandlungsfunktion darf nicht VOLATILE sein"
-
-#: commands/functioncmds.c:904
-msgid "cast function must not be an aggregate function"
-msgstr "Typumwandlungsfunktion darf keine Aggregatfunktion sein"
-
-#: commands/functioncmds.c:908
-msgid "cast function must not return a set"
-msgstr "Typumwandlungsfunktion darf keine Ergebnismenge zurückgeben"
-
-#: commands/functioncmds.c:931
-msgid "must be superuser to create a cast WITHOUT FUNCTION"
-msgstr "nur Superuser können Typumwandlungen mit WITHOUT FUNCTION erzeugen"
-
-#: commands/functioncmds.c:946
-msgid "source and target data types are not physically compatible"
-msgstr "Quelldatentyp und Zieldatentyp sind nicht physikalisch kompatibel"
+#: catalog/pg_type.c:211
+msgid "fixed-size types must have storage PLAIN"
+msgstr "Typen mit fester Größe müssen Storage-Typ PLAIN haben"
 
-#: commands/functioncmds.c:981
+#: catalog/pg_type.c:293 catalog/pg_type.c:525
 #, c-format
-msgid "cast from type %s to type %s already exists"
-msgstr "Typumwandlung von Typ %s in Typ %s existiert bereits"
+msgid "type \"%s\" already exists"
+msgstr "Typ »%s« existiert bereits"
 
-#: commands/functioncmds.c:1064
+#: catalog/pg_type.c:517 commands/functioncmds.c:110 commands/tablecmds.c:4606
+#: commands/typecmds.c:423 commands/typecmds.c:809 commands/typecmds.c:1167
+#: commands/typecmds.c:1288 commands/typecmds.c:1400 commands/typecmds.c:1487
+#: commands/typecmds.c:2072 parser/parse_func.c:1401 parser/parse_type.c:201
+#: parser/parse_type.c:227 tcop/utility.c:97 utils/adt/regproc.c:1003
 #, c-format
-msgid "cast from type %s to type %s does not exist"
-msgstr "Typumwandlung von Typ %s in Typ %s existiert nicht"
+msgid "type \"%s\" does not exist"
+msgstr "Typ »%s« existiert nicht"
 
 #: commands/aggregatecmds.c:97
 #, c-format
@@ -1638,19 +1944,32 @@ msgstr "
 msgid "aggregate transition data type cannot be %s"
 msgstr "Übergangsdatentyp von Aggregatfunktion kann nicht %s sein"
 
-#: commands/aggregatecmds.c:259
+#: commands/aggregatecmds.c:258
 #, c-format
 msgid "function %s(*) already exists in schema \"%s\""
 msgstr "Funktion %s(*) existiert bereits in Schema »%s«"
 
-#: commands/analyze.c:200
+#: commands/aggregatecmds.c:264 commands/functioncmds.c:699
+#, c-format
+msgid "function %s already exists in schema \"%s\""
+msgstr "Funktion %s existiert bereits in Schema »%s«"
+
+#: commands/aggregatecmds.c:335 commands/conversioncmds.c:213
+#: commands/dbcommands.c:875 commands/functioncmds.c:773
+#: commands/opclasscmds.c:954 commands/operatorcmds.c:303
+#: commands/schemacmds.c:348 commands/tablecmds.c:5202
+#: commands/tablespace.c:913 commands/typecmds.c:2103
+msgid "must be superuser to change owner"
+msgstr "nur Superuser können den Eigentümer ändern"
+
+#: commands/analyze.c:153
 #, 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:215
+#: commands/analyze.c:168
 #, c-format
 msgid ""
 "skipping \"%s\" --- cannot analyze indexes, views, or special system tables"
@@ -1658,49 +1977,52 @@ msgstr ""
 "überspringe »%s« --- kann Indexe, Sichten oder spezielle Systemtabellen "
 "nicht analysieren"
 
-#: commands/analyze.c:245
+#: commands/analyze.c:198
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analysiere »%s.%s«"
 
-#: commands/analyze.c:544 commands/analyze.c:700
+#: commands/analyze.c:914
 #, c-format
-msgid "\"%s\": %u pages, %d rows sampled, %.0f estimated total rows"
+msgid ""
+"\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead "
+"rows; %d rows in sample, %.0f estimated total rows"
 msgstr ""
-"\"%s\": %u Seiten, %d Zeilen ausgewählt, %.0f geschätzte Zeilen insgesamt"
+"»%s«: %d von %u Seiten gelesen, enthalten %.0f lebende Zeilen und %.0f tote "
+"Zeilen; %d Zeilen in Stichprobe, schätzungsweise %.0f Zeilen insgesamt"
 
-#: commands/cluster.c:150
+#: commands/cluster.c:133
 #, 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:164 commands/tablecmds.c:3918
+#: commands/cluster.c:147 commands/tablecmds.c:5351
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "Index »%s« für Tabelle »%s« existiert nicht"
 
-#: commands/cluster.c:321
+#: commands/cluster.c:326
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "»%s« ist kein Index für Tabelle »%s«"
 
-#: commands/cluster.c:334
+#: commands/cluster.c:339
 msgid "cannot cluster on partial index"
 msgstr "kann nicht anhand eines partiellen Index clustern"
 
-#: commands/cluster.c:352
+#: commands/cluster.c:357
 msgid "cannot cluster when index access method does not handle null values"
 msgstr ""
 "kann nicht clustern, wenn die Indexmethode keine NULL-Werte verarbeiten kann"
 
-#: commands/cluster.c:353
+#: commands/cluster.c:358
 #, c-format
 msgid "You may 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."
 
-#: commands/cluster.c:365
+#: commands/cluster.c:370
 msgid ""
 "cannot cluster on expressional index when index access method does not "
 "handle null values"
@@ -1708,87 +2030,138 @@ msgstr ""
 "kann Ausdrucksindex nicht clustern, wenn die Indexmethode keine NULL-Werte "
 "verarbeiten kann"
 
-#: commands/cluster.c:379
+#: commands/cluster.c:384
 #, c-format
 msgid "\"%s\" is a system catalog"
 msgstr "»%s« ist ein Systemkatalog"
 
-#: commands/cluster.c:389
+#: commands/cluster.c:394
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht clustern"
 
-#: commands/comment.c:316 commands/sequence.c:800 tcop/utility.c:81
+#: commands/comment.c:334 commands/sequence.c:771 tcop/utility.c:83
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "»%s« ist keine Sequenz"
 
-#: commands/comment.c:323 commands/indexcmds.c:109 commands/indexcmds.c:639
-#: commands/lockcmds.c:68 commands/tablecmds.c:377 commands/tablecmds.c:1593
-#: commands/tablecmds.c:1884 commands/tablecmds.c:2028
-#: commands/tablecmds.c:2262 commands/tablecmds.c:2428
-#: commands/tablecmds.c:2554 commands/tablecmds.c:2735
-#: commands/tablecmds.c:3746 commands/tablecmds.c:4012 commands/trigger.c:144
-#: commands/trigger.c:546 tcop/utility.c:76
+#: commands/comment.c:341 commands/indexcmds.c:136 commands/indexcmds.c:937
+#: commands/lockcmds.c:68 commands/tablecmds.c:545 commands/tablecmds.c:2598
+#: commands/trigger.c:141 commands/trigger.c:546 tcop/utility.c:78
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "»%s« ist keine Tabelle"
 
-#: commands/comment.c:330 commands/view.c:113 tcop/utility.c:86
+#: commands/comment.c:348 commands/view.c:113 tcop/utility.c:88
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "»%s« ist keine Sicht"
 
-#: commands/comment.c:386 commands/tablecmds.c:1934 commands/tablecmds.c:2078
-#: commands/tablecmds.c:2206 commands/tablecmds.c:2370
-#: commands/tablecmds.c:2575 parser/parse_func.c:1270
-#: parser/parse_relation.c:1583 parser/parse_relation.c:1641
-#: parser/parse_relation.c:1820 parser/parse_type.c:94
+#: commands/comment.c:404 commands/tablecmds.c:3074 commands/tablecmds.c:3167
+#: commands/tablecmds.c:3219 commands/tablecmds.c:3315
+#: commands/tablecmds.c:3376 commands/tablecmds.c:3442
+#: commands/tablecmds.c:4582 commands/tablecmds.c:4719
+#: parser/parse_relation.c:1641 parser/parse_relation.c:1700
+#: parser/parse_relation.c:1913 parser/parse_type.c:94
+#: utils/adt/ruleutils.c:1305
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "Spalte »%s« von Relation »%s« existiert nicht"
 
-#: commands/comment.c:417
+#: commands/comment.c:435
 msgid "database name may not be qualified"
 msgstr "Datenbankname kann nicht qualifiziert werden"
 
-#: commands/comment.c:449
+#: commands/comment.c:468
 msgid "database comments may only be applied to the current database"
 msgstr ""
 "Datenbankkommentare können nur auf aktuelle Datenbank angewendet werden"
 
-#: commands/comment.c:481 commands/schemacmds.c:172
+#: commands/comment.c:500 commands/schemacmds.c:201
 msgid "schema name may not be qualified"
 msgstr "Schemaname kann nicht qualifiziert werden"
 
-#: commands/comment.c:564
+#: commands/comment.c:582
 #, c-format
 msgid "rule \"%s\" does not exist"
 msgstr "Regel »%s« existiert nicht"
 
-#: commands/comment.c:572
+#: commands/comment.c:590
 #, c-format
 msgid "there are multiple rules named \"%s\""
 msgstr "es gibt mehrere Regeln namens »%s«"
 
-#: commands/comment.c:573
+#: commands/comment.c:591
 msgid "Specify a relation name as well as a rule name."
 msgstr "Geben Sie einen Relationsnamen und einen Regelnamen an."
 
-#: commands/comment.c:815 commands/trigger.c:484 commands/trigger.c:697
+#: commands/comment.c:619 rewrite/rewriteDefine.c:582
+#: rewrite/rewriteRemove.c:59
+#, c-format
+msgid "rule \"%s\" for relation \"%s\" does not exist"
+msgstr "Regel »%s« für Relation »%s« existiert nicht"
+
+#: commands/comment.c:836 commands/trigger.c:483 commands/trigger.c:697
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "Trigger »%s« für Tabelle »%s« existiert nicht"
 
-#: commands/comment.c:894
+#: commands/comment.c:916
 #, c-format
 msgid "table \"%s\" has multiple constraints named \"%s\""
 msgstr "Tabelle »%s« hat mehrere Constraints namens »%s«"
 
-#: commands/comment.c:906
+#: commands/comment.c:928
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "Constraint »%s« für Tabelle »%s« existiert nicht"
 
+#: commands/comment.c:992
+msgid "language name may not be qualified"
+msgstr "Sprachname kann nicht qualifiziert werden"
+
+#: commands/comment.c:1007
+msgid "must be superuser to comment on procedural language"
+msgstr "nur Superuser können Kommentare für prozedurale Sprachen erzeugen"
+
+#: commands/comment.c:1048 commands/indexcmds.c:216 commands/opclasscmds.c:108
+#: commands/opclasscmds.c:648 commands/opclasscmds.c:800
+#: commands/opclasscmds.c:900
+#, c-format
+msgid "access method \"%s\" does not exist"
+msgstr "Zugriffsmethode »%s« existiert nicht"
+
+#: commands/comment.c:1077 commands/comment.c:1087 commands/indexcmds.c:600
+#: commands/indexcmds.c:610 commands/opclasscmds.c:677
+#: commands/opclasscmds.c:687 commands/opclasscmds.c:822
+#: commands/opclasscmds.c:833 commands/opclasscmds.c:922
+#: commands/opclasscmds.c:932
+#, c-format
+msgid "operator class \"%s\" does not exist for access method \"%s\""
+msgstr "Operatorklasse »%s« existiert nicht für Zugriffsmethode »%s«"
+
+#: commands/comment.c:1192 commands/functioncmds.c:908
+#: commands/functioncmds.c:1156
+#, c-format
+msgid "source data type %s does not exist"
+msgstr "Quelldatentyp %s existiert nicht"
+
+#: commands/comment.c:1199 commands/functioncmds.c:915
+#: commands/functioncmds.c:1163
+#, c-format
+msgid "target data type %s does not exist"
+msgstr "Zieldatentyp %s existiert nicht"
+
+#: commands/comment.c:1209 commands/functioncmds.c:1173
+#, c-format
+msgid "cast from type %s to type %s does not exist"
+msgstr "Typumwandlung von Typ %s in Typ %s existiert nicht"
+
+#: commands/comment.c:1221 commands/functioncmds.c:948
+#: commands/functioncmds.c:1182
+#, 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"
+
 #: commands/conversioncmds.c:66
 #, c-format
 msgid "source encoding \"%s\" does not exist"
@@ -1804,53 +2177,118 @@ msgstr "Zielkodierung 
 msgid "conversion \"%s\" already exists in schema \"%s\""
 msgstr "Konversion »%s« existiert bereits in Schema »%s«"
 
-#: commands/copy.c:192 commands/copy.c:204 commands/copy.c:237
-#: commands/copy.c:247
+#: commands/copy.c:204 commands/copy.c:216 commands/copy.c:249
+#: commands/copy.c:259
 msgid "COPY BINARY is not supported to stdout or from stdin"
 msgstr "COPY BINARY mit STDOUT oder STDIN wird nicht unterstützt"
 
-#: commands/copy.c:300
+#: commands/copy.c:312
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "konnte nicht in COPY-Datei schreiben: %m"
 
-#: commands/copy.c:308
+#: commands/copy.c:320
 msgid "connection lost during COPY to stdout"
 msgstr "Verbindung während COPY nach STDOUT verloren"
 
-#: commands/copy.c:391 commands/copy.c:409 commands/copy.c:413
-#: commands/copy.c:473 commands/copy.c:522 tcop/fastpath.c:292
-#: tcop/postgres.c:281 tcop/postgres.c:304
+#: commands/copy.c:403 commands/copy.c:421 commands/copy.c:425
+#: commands/copy.c:486 commands/copy.c:535 tcop/fastpath.c:291
+#: tcop/postgres.c:287 tcop/postgres.c:310
 msgid "unexpected EOF on client connection"
 msgstr "unerwartetes EOF auf Client-Verbindung"
 
-#: commands/copy.c:425
+#: commands/copy.c:437
 #, c-format
 msgid "COPY from stdin failed: %s"
 msgstr "COPY FROM STDIN fehlgeschlagen: %s"
 
-#: commands/copy.c:440
+#: commands/copy.c:453
 #, c-format
 msgid "unexpected message type 0x%02X during COPY from stdin"
 msgstr "unerwarteter Messagetyp 0x%02X während COPY FROM STDIN"
 
-#: commands/copy.c:734
+#: commands/copy.c:720 commands/copy.c:728 commands/copy.c:736
+#: commands/copy.c:744 commands/copy.c:752 commands/copy.c:760
+#: commands/copy.c:768 commands/copy.c:776 commands/copy.c:784
+#: commands/dbcommands.c:108 commands/dbcommands.c:116
+#: commands/dbcommands.c:124 commands/dbcommands.c:132
+#: commands/functioncmds.c:228 commands/functioncmds.c:236
+#: commands/functioncmds.c:244 commands/functioncmds.c:252
+#: commands/functioncmds.c:260 commands/sequence.c:903 commands/sequence.c:916
+#: commands/sequence.c:924 commands/sequence.c:932 commands/sequence.c:940
+#: commands/sequence.c:948 commands/user.c:576 commands/user.c:588
+#: commands/user.c:596 commands/user.c:604 commands/user.c:612
+#: commands/user.c:620 commands/user.c:826 commands/user.c:838
+#: commands/user.c:846 commands/user.c:854 commands/user.c:1356
+#: commands/user.c:1364
+msgid "conflicting or redundant options"
+msgstr "widersprüchliche oder überflüssige Optionen"
+
+#: commands/copy.c:795
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "DELIMITER kann nicht im BINARY-Modus angegeben werden"
 
-#: commands/copy.c:739
+#: commands/copy.c:800
+msgid "cannot specify CSV in BINARY mode"
+msgstr "CSV kann nicht im BINARY-Modus angegeben werden"
+
+#: commands/copy.c:805
 msgid "cannot specify NULL in BINARY mode"
 msgstr "NULL kann nicht im BINARY-Modus angegeben werden"
 
-#: commands/copy.c:757 executor/execMain.c:483 tcop/utility.c:260
+#: commands/copy.c:828
+msgid "COPY delimiter must be a single character"
+msgstr "DELIMITER für COPY muss ein einzelnes Zeichen sein"
+
+#: commands/copy.c:836
+msgid "COPY quote available only in CSV mode"
+msgstr "Quote-Zeichen für COPY ist nur im CSV-Modus verfügbar"
+
+#: commands/copy.c:841
+msgid "COPY quote must be a single character"
+msgstr "Quote-Zeichen für COPY muss ein einzelnes Zeichen sein"
+
+#: commands/copy.c:849
+msgid "COPY escape available only in CSV mode"
+msgstr "Escape-Zeichen für COPY ist nur im CSV-Modus verfügbar"
+
+#: commands/copy.c:854
+msgid "COPY escape must be a single character"
+msgstr "Escape-Zeichen für COPY muss ein einzelnes Zeichen sein"
+
+#: commands/copy.c:862
+msgid "COPY force quote available only in CSV mode"
+msgstr ""
+
+#: commands/copy.c:866
+msgid "COPY force quote only available using COPY TO"
+msgstr ""
+
+#: commands/copy.c:874
+msgid "COPY force not null available only in CSV mode"
+msgstr ""
+
+#: commands/copy.c:878
+msgid "COPY force not null only available using COPY FROM"
+msgstr ""
+
+#: commands/copy.c:886
+msgid "COPY delimiter must not appear in the NULL specification"
+msgstr "Trennzeichen für COPY darf nicht in der NULL-Darstellung erscheinen"
+
+#: commands/copy.c:894
+msgid "CSV quote character must not appear in the NULL specification"
+msgstr "CSV-Quote-Zeichen darf nicht in der NULL-Darstellung erscheinen"
+
+#: commands/copy.c:905 executor/execMain.c:443 tcop/utility.c:323
 msgid "transaction is read-only"
 msgstr "Transaktion ist Read-Only"
 
-#: commands/copy.c:768
+#: commands/copy.c:916
 msgid "must be superuser to COPY to or from a file"
 msgstr "nur Superuser können COPY mit Dateien verwenden"
 
-#: commands/copy.c:769
+#: commands/copy.c:917
 msgid ""
 "Anyone can COPY to stdout or from stdin. psql's \\copy command also works "
 "for anyone."
@@ -1858,445 +2296,564 @@ msgstr ""
 "Jeder kann COPY mit STDOUT oder STDIN verwenden. Der Befehl \\\\copy in psql "
 "funktioniert auch für jeden."
 
-#: commands/copy.c:778
-msgid "COPY delimiter must be a single character"
-msgstr "DELIMITER für COPY muss ein einzelnes Zeichen sein"
-
-#: commands/copy.c:786
+#: commands/copy.c:926
 #, c-format
 msgid "table \"%s\" does not have OIDs"
 msgstr "Tabelle »%s« hat keine OIDs"
 
-#: commands/copy.c:816
+#: commands/copy.c:952
+#, c-format
+msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
+msgstr ""
+
+#: commands/copy.c:975
+#, c-format
+msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
+msgstr "Spalte »%s« mit FORCE NOT NULL wird von COPY nicht verwendet"
+
+#: commands/copy.c:1002
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "kann nicht in Sicht »%s« kopieren"
 
-#: commands/copy.c:821
+#: commands/copy.c:1007
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "kann nicht in Sequenz »%s« kopieren"
 
-#: commands/copy.c:826
+#: commands/copy.c:1012
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "kann nicht in Relation »%s« kopieren, die keine Tabelle ist"
 
-#: commands/copy.c:845
+#: commands/copy.c:1031
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "konnte Datei »%s« nicht zum Lesen öffnen: %m"
 
-#: commands/copy.c:854 commands/copy.c:916
+#: commands/copy.c:1040 commands/copy.c:1103
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "»%s« ist ein Verzeichnis"
 
-#: commands/copy.c:866
+#: commands/copy.c:1053
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "kann nicht aus Sicht »%s« kopieren"
 
-#: commands/copy.c:871
+#: commands/copy.c:1058
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "kann nicht aus Sequenz »%s« kopieren"
 
-#: commands/copy.c:876
+#: commands/copy.c:1063
 #, c-format
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "kann nicht aus Relation »%s«, die keine Tabelle ist, kopieren"
 
-#: commands/copy.c:898
+#: commands/copy.c:1085
 msgid "relative path not allowed for COPY to file"
 msgstr "relativer Pfad bei COPY in Datei nicht erlaubt"
 
-#: commands/copy.c:907
+#: commands/copy.c:1094
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "konnte Datei »%s« nicht zum Schreiben öffnen: %m"
 
-#: commands/copy.c:1149
+#: commands/copy.c:1386
 #, c-format
 msgid "COPY %s, line %d, column %s"
 msgstr "COPY %s, Zeile %d, Spalte %s"
 
-#: commands/copy.c:1152
+#: commands/copy.c:1389 commands/copy.c:1422
 #, c-format
 msgid "COPY %s, line %d"
 msgstr "COPY %s, Zeile %d"
 
-#: commands/copy.c:1159
+#: commands/copy.c:1397
 #, c-format
-msgid "COPY %s, line %d, column %s: \"%.*s%s\""
-msgstr "COPY %s, Zeile %d, Spalte %s: »%.*s%s«"
+msgid "COPY %s, line %d, column %s: \"%s\""
+msgstr "COPY %s, Zeile %d, Spalte %s: »%s«"
 
-#: commands/copy.c:1186
+#: commands/copy.c:1408
 #, c-format
-msgid "COPY %s, line %d: \"%.*s%s\""
-msgstr "COPY %s, Zeile %d: »%.*s%s«"
+msgid "COPY %s, line %d: \"%s\""
+msgstr "COPY %s, Zeile %d: »%s«"
 
-#: commands/copy.c:1359
+#: commands/copy.c:1634
 msgid "COPY file signature not recognized"
 msgstr "COPY-Datei-Signatur nicht erkannt"
 
-#: commands/copy.c:1365
+#: commands/copy.c:1640
 msgid "invalid COPY file header (missing flags)"
 msgstr "ungültiger COPY-Dateikopf (Flags fehlen)"
 
-#: commands/copy.c:1371
+#: commands/copy.c:1646
 msgid "unrecognized critical flags in COPY file header"
 msgstr "unbekannte kritische Flags im COPY-Dateikopf"
 
-#: commands/copy.c:1377
+#: commands/copy.c:1652
 msgid "invalid COPY file header (missing length)"
 msgstr "ungültiger COPY-Dateikopf (Länge fehlt)"
 
-#: commands/copy.c:1385
+#: commands/copy.c:1660
 msgid "invalid COPY file header (wrong length)"
 msgstr "ungültiger COPY-Dateikopf (falsche Länge)"
 
-#: commands/copy.c:1462
+#: commands/copy.c:1739
 msgid "null OID in COPY data"
 msgstr "OID ist NULL in COPY-Daten"
 
-#: commands/copy.c:1471 commands/copy.c:1554
+#: commands/copy.c:1748 commands/copy.c:1845
 msgid "invalid OID in COPY data"
 msgstr "ungültige OID in COPY-Daten"
 
-#: commands/copy.c:1491
+#: commands/copy.c:1768
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "fehlende Daten für Spalte »%s«"
 
-#: commands/copy.c:1523
+#: commands/copy.c:1778
+msgid "unterminated CSV quoted field"
+msgstr "Quotes in CSV-Feld nicht abgeschlossen"
+
+#: commands/copy.c:1813
 msgid "extra data after last expected column"
 msgstr "zusätzliche Daten nach letzter erwarteter Spalte"
 
-#: commands/copy.c:1540
+#: commands/copy.c:1831
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "Feldanzahl in Zeile ist %d, erwartet wurden %d"
 
-#: commands/copy.c:1756 commands/copy.c:1774
+#: commands/copy.c:2053 commands/copy.c:2071
 msgid "literal carriage return found in data"
 msgstr "Carriage-Return-Zeichen in Daten gefunden"
 
-#: commands/copy.c:1757 commands/copy.c:1775
+#: commands/copy.c:2054 commands/copy.c:2072
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Verwenden Sie »\\r« um ein Carriage-Return-Zeichen darzustellen."
 
-#: commands/copy.c:1792
+#: commands/copy.c:2089
 msgid "literal newline found in data"
 msgstr "Newline-Zeichen in Daten gefunden"
 
-#: commands/copy.c:1793
+#: commands/copy.c:2090
 msgid "Use \"\\n\" to represent newline."
 msgstr "Verwenden Sie »\\n« um ein Newline-Zeichen darzustellen."
 
-#: commands/copy.c:1813 commands/copy.c:1829
+#: commands/copy.c:2110 commands/copy.c:2126
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "COPY-Ende-Markierung stimmt nicht mit vorherigem Newline-Stil überein"
 
-#: commands/copy.c:1817 commands/copy.c:1823
+#: commands/copy.c:2114 commands/copy.c:2120
 msgid "end-of-copy marker corrupt"
 msgstr "COPY-Ende-Markierung verfälscht"
 
-#: commands/copy.c:2034 commands/copy.c:2056
+#: commands/copy.c:2485 commands/copy.c:2507
 msgid "unexpected EOF in COPY data"
 msgstr "unerwartetes EOF in COPY-Daten"
 
-#: commands/copy.c:2043
+#: commands/copy.c:2494
 msgid "invalid field size"
 msgstr "ungültige Feldgröße"
 
-#: commands/copy.c:2070
+#: commands/copy.c:2521
 msgid "incorrect binary data format"
 msgstr "falsches Binärdatenformat"
 
-#: commands/copy.c:2189 parser/parse_target.c:500
+#: commands/copy.c:2707 parser/parse_target.c:650 parser/parse_target.c:660
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "Spalte »%s« mehrmals angegeben"
 
-#: commands/dbcommands.c:153
+#: commands/dbcommands.c:139
+msgid "LOCATION is not supported anymore"
+msgstr "LOCATION wird nicht mehr unterstützt"
+
+#: commands/dbcommands.c:140
+msgid "Consider using tablespaces instead."
+msgstr "Verwenden Sie stattdessen Tablespaces."
+
+#: commands/dbcommands.c:163
 #, c-format
 msgid "%d is not a valid encoding code"
 msgstr "%d ist kein gültiger Kodierungscode"
 
-#: commands/dbcommands.c:162
+#: commands/dbcommands.c:172
 #, c-format
 msgid "%s is not a valid encoding name"
 msgstr "%s ist kein gültiger Kodierungsname"
 
-#: commands/dbcommands.c:183
+#: commands/dbcommands.c:193
 msgid "permission denied to create database"
 msgstr "keine Berechtigung um Datenbank zu erzeugen"
 
-#: commands/dbcommands.c:192
+#: commands/dbcommands.c:202
 msgid "must be superuser to create database for another user"
 msgstr "nur Superuser können Datenbanken für einen anderen Benutzer erzeugen"
 
-#: commands/dbcommands.c:203
-msgid "cannot use an alternative location on this platform"
-msgstr ""
-"kann alternative Datenverzeichnisse auf dieser Plattform nicht verwenden"
-
-#: commands/dbcommands.c:217 commands/dbcommands.c:405
-#: commands/dbcommands.c:653
+#: commands/dbcommands.c:216 commands/dbcommands.c:458
+#: commands/dbcommands.c:715
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "Datenbank »%s« existiert bereits"
 
-#: commands/dbcommands.c:231
+#: commands/dbcommands.c:229
 #, c-format
 msgid "template database \"%s\" does not exist"
 msgstr "Template-Datenbank »%s« existiert nicht"
 
-#: commands/dbcommands.c:242
+#: commands/dbcommands.c:240
 #, c-format
 msgid "permission denied to copy database \"%s\""
 msgstr "keine Berechtigung um Datenbank »%s« zu kopieren"
 
-#: commands/dbcommands.c:263
+#: commands/dbcommands.c:253
 #, c-format
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "auf Quelldatenbank »%s« wird gerade von anderen Benutzern zugegriffen"
 
-#: commands/dbcommands.c:274
+#: commands/dbcommands.c:264
 #, c-format
 msgid "invalid server encoding %d"
 msgstr "ungültige Serverkodierung %d"
 
-#: commands/dbcommands.c:304 commands/dbcommands.c:308
-#: commands/dbcommands.c:312
-msgid "database path may not contain single quotes"
-msgstr "Datenbankpfad darf keine Apostrophe enthalten"
-
-#: commands/dbcommands.c:337
-#, c-format
-msgid "could not create database directory \"%s\": %m"
-msgstr "konnte Datenbankverzeichnis »%s« nicht erzeugen: %m"
-
-#: commands/dbcommands.c:342
+#: commands/dbcommands.c:310
 #, c-format
-msgid "could not remove temporary directory \"%s\": %m"
-msgstr "konnte temporäres Verzeichnis »%s« nicht löschen: %m"
+msgid "cannot assign new default tablespace \"%s\""
+msgstr "kann neuen Standard-Tablespace »%s« nicht setzen"
 
-#: commands/dbcommands.c:353
+#: commands/dbcommands.c:312
 #, c-format
-msgid "could not link file \"%s\" to \"%s\": %m"
-msgstr "konnte Datei »%s« nicht nach »%s« linken: %m"
+msgid ""
+"There is a conflict because database \"%s\" already has some tables in this "
+"tablespace."
+msgstr ""
+"Es gibt einen Konflikt, weil Datenbank »%s« schon einige Tabellen in diesem "
+"Tablespace hat."
 
-#: commands/dbcommands.c:370 commands/dbcommands.c:385
+#: commands/dbcommands.c:382 commands/dbcommands.c:404
+#: commands/dbcommands.c:414 commands/dbcommands.c:1198
+#: commands/dbcommands.c:1206
 msgid "could not initialize database directory"
 msgstr "konnte Datenbankverzeichnis nicht initialisieren"
 
-#: commands/dbcommands.c:371 commands/dbcommands.c:376
-#: commands/dbcommands.c:961
+#: commands/dbcommands.c:383
+#, c-format
+msgid "Directory \"%s\" already exists."
+msgstr "Verzeichnis »%s« existiert bereits."
+
+#: commands/dbcommands.c:405 commands/dbcommands.c:1199
 #, c-format
 msgid "Failing system command was: %s"
 msgstr "Fehlgeschlagener Systembefehl war: %s"
 
-#: commands/dbcommands.c:372 commands/dbcommands.c:377
-#: commands/dbcommands.c:962
+#: commands/dbcommands.c:406 commands/dbcommands.c:1200
 msgid "Look in the postmaster's stderr log for more information."
 msgstr "Einzelheiten finden Sie im stderr-Log des Postmaster."
 
-#: commands/dbcommands.c:375 commands/dbcommands.c:388
-msgid "could not initialize database directory; delete failed as well"
-msgstr ""
-"konnte Datenbankverzeichnis nicht initialisieren; Löschen schlug auch fehl"
-
-#: commands/dbcommands.c:483
+#: commands/dbcommands.c:533
 msgid "cannot drop the currently open database"
 msgstr "kann aktuell geöffnete Datenbank nicht löschen"
 
-#: commands/dbcommands.c:516
+#: commands/dbcommands.c:564
 msgid "cannot drop a template database"
 msgstr "Template-Datenbank kann nicht gelöscht werden"
 
-#: commands/dbcommands.c:527 commands/dbcommands.c:643
+#: commands/dbcommands.c:572 commands/dbcommands.c:702
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "auf Datenbank »%s« wird von anderen Benutzern zugegriffen"
 
-#: commands/dbcommands.c:634
+#: commands/dbcommands.c:693
 msgid "current database may not be renamed"
 msgstr "aktuelle Datenbank kann nicht umbenannt werden"
 
-#: commands/dbcommands.c:665
+#: commands/dbcommands.c:727
 msgid "permission denied to rename database"
 msgstr "keine Berechtigung um Datenbank umzubenennen"
 
-#: commands/dbcommands.c:884
-msgid "relative paths are not allowed as database locations"
-msgstr "relative Pfade sind nicht als Datenbankverzeichnis erlaubt"
-
-#: commands/dbcommands.c:888
-msgid "absolute paths are not allowed as database locations"
-msgstr "absolute Pfade sind nicht als Datenbankverzeichnis erlaubt"
-
-#: commands/dbcommands.c:900
-#, c-format
-msgid "postmaster environment variable \"%s\" not found"
-msgstr "postmaster-Umgebungsvariable »%s« nicht gefunden"
-
-#: commands/dbcommands.c:905
-#, c-format
-msgid "postmaster environment variable \"%s\" must be absolute path"
-msgstr "postmaster-Umgebungsvariable »%s« muss ein absoluter Pfad sein"
-
-#: commands/dbcommands.c:914
-msgid "alternative path is too long"
-msgstr "alternativer Pfad ist zu lang"
-
-#: commands/dbcommands.c:945
-#, c-format
-msgid "could not remove file \"%s\": %m"
-msgstr "konnte Datei »%s« nicht löschen: %m"
-
-#: commands/dbcommands.c:959
+#: commands/dbcommands.c:1035 commands/dbcommands.c:1172
+#: commands/dbcommands.c:1222
 #, c-format
 msgid "could not remove database directory \"%s\""
 msgstr "konnte Datenbankverzeichnis »%s« nicht löschen"
 
-#: commands/define.c:71 commands/define.c:169 commands/define.c:201
-#: commands/define.c:235
+#: commands/define.c:66 commands/define.c:183 commands/define.c:215
+#: commands/define.c:249
 #, c-format
 msgid "%s requires a parameter"
 msgstr "%s erfordert einen Parameter"
 
-#: commands/define.c:110 commands/define.c:121 commands/define.c:136
-#: commands/define.c:154
+#: commands/define.c:105 commands/define.c:116 commands/define.c:150
+#: commands/define.c:168
 #, c-format
 msgid "%s requires a numeric value"
 msgstr "%s erfordert einen numerischen Wert"
 
-#: commands/define.c:183
+#: commands/define.c:136
+#, c-format
+msgid "%s does not take a parameter"
+msgstr "%s hat keine Parameter"
+
+#: commands/define.c:197
 #, c-format
 msgid "argument of %s must be a name"
 msgstr "Argument von %s muss ein Name sein"
 
-#: commands/define.c:219
+#: commands/define.c:233
 #, c-format
 msgid "argument of %s must be a type name"
 msgstr "Argument von %s muss ein Typname sein"
 
-#: commands/define.c:244
+#: commands/define.c:258
 #, c-format
 msgid "%s requires an integer value"
 msgstr "%s erfordert einen ganzzahligen Wert"
 
-#: commands/define.c:265
+#: commands/define.c:279
 #, c-format
 msgid "invalid argument for %s: \"%s\""
 msgstr "ungültiges Argument für %s: »%s«"
 
-#: commands/proclang.c:63
-msgid "must be superuser to create procedural language"
-msgstr "nur Superuser können prozedurale Sprachen erzeugen"
+#: commands/functioncmds.c:84
+#, c-format
+msgid "SQL function cannot return shell type %s"
+msgstr "SQL-Funktion kann keinen Hüllen-Rückgabetyp %s haben"
 
-#: commands/proclang.c:76 commands/proclang.c:263
+#: commands/functioncmds.c:89
 #, c-format
-msgid "language \"%s\" already exists"
-msgstr "Sprache »%s« existiert bereits"
+msgid "return type %s is only a shell"
+msgstr "Rückgabetyp %s ist nur eine Hülle"
+
+#: commands/functioncmds.c:115
+#, c-format
+msgid "type \"%s\" is not yet defined"
+msgstr "Typ »%s« ist noch nicht definiert"
 
-#: commands/proclang.c:96
+#: commands/functioncmds.c:116
+msgid "Creating a shell type definition."
+msgstr "Erzeuge eine Hüllentypdefinition."
+
+#: commands/functioncmds.c:166
 #, c-format
-msgid ""
-"changing return type of function %s from \"opaque\" to \"language_handler\""
-msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in »language_handler«"
+msgid "SQL function cannot accept shell type %s"
+msgstr "SQL-Funktion kann keinen Hüllentyp %s annehmen"
 
-#: commands/proclang.c:103
+#: commands/functioncmds.c:171
 #, c-format
-msgid "function %s must return type \"language_handler\""
-msgstr "Funktion %s muss Typ »language_handler« zurückgeben"
+msgid "argument type %s is only a shell"
+msgstr "Argumenttyp %s ist nur eine Hülle"
 
-#: commands/proclang.c:186
-msgid "must be superuser to drop procedural language"
-msgstr "nur Superuser können prozedurale Sprachen löschen"
+#: commands/functioncmds.c:179 parser/parse_oper.c:113 parser/parse_oper.c:124
+#, c-format
+msgid "type %s does not exist"
+msgstr "Typ %s existiert bereits"
 
-#: commands/proclang.c:269
-msgid "must be superuser to rename procedural language"
-msgstr "nur Superuser können prozedurale Sprachen umbenennen"
+#: commands/functioncmds.c:186
+msgid "functions cannot accept set arguments"
+msgstr "Funktionen können keine SET Argumente haben"
+
+#: commands/functioncmds.c:273
+msgid "no function body specified"
+msgstr "kein Funktionskörper angegeben"
+
+#: commands/functioncmds.c:280
+msgid "no language specified"
+msgstr "keine Sprache angegeben"
+
+#: commands/functioncmds.c:342
+#, c-format
+msgid "unrecognized function attribute \"%s\" ignored"
+msgstr "unbekanntes Funktionsattribut »%s« ignoriert"
+
+#: commands/functioncmds.c:386
+#, c-format
+msgid "only one AS item needed for language \"%s\""
+msgstr "nur ein AS-Element benötigt für Sprache »%s«"
+
+#: commands/functioncmds.c:458
+msgid "You need to use \"createlang\" to load the language into the database."
+msgstr ""
+"Sie müssen »createlang« verwenden um die Sprache in die Datenbank zu laden."
+
+#: commands/functioncmds.c:578 commands/functioncmds.c:684
+#: commands/functioncmds.c:751
+#, c-format
+msgid "\"%s\" is an aggregate function"
+msgstr "»%s« ist eine Aggregatfunktion"
+
+#: commands/functioncmds.c:580
+msgid "Use DROP AGGREGATE to drop aggregate functions."
+msgstr "Verwenden Sie DROP AGGREGATE um Aggregatfunktionen zu löschen."
+
+#: commands/functioncmds.c:587
+#, c-format
+msgid "removing built-in function \"%s\""
+msgstr "eingebaute Funktion »%s« wird entfernt"
+
+#: commands/functioncmds.c:686
+msgid "Use ALTER AGGREGATE to rename aggregate functions."
+msgstr "Verwenden Sie ALTER AGGREGATE um Aggregatfunktionen umzubenennen."
+
+#: commands/functioncmds.c:753
+msgid "Use ALTER AGGREGATE to change owner of aggregate functions."
+msgstr ""
+"Verwenden Sie ALTER AGGREGATE um den Eigentümer einer Aggregatfunktion zu "
+"ändern."
 
-#: commands/indexcmds.c:92
+#: commands/functioncmds.c:922
+#, c-format
+msgid "source data type %s is only a shell"
+msgstr "Quelldatentyp %s ist nur eine Hülle"
+
+#: commands/functioncmds.c:928
+#, c-format
+msgid "target data type %s is only a shell"
+msgstr "Zieldatentyp %s ist nur eine Hülle"
+
+#: commands/functioncmds.c:934
+#, c-format
+msgid "source data type %s is a pseudo-type"
+msgstr "Quelldatentyp %s ist ein Pseudotyp."
+
+#: commands/functioncmds.c:940
+#, c-format
+msgid "target data type %s is a pseudo-type"
+msgstr "Zieldatentyp %s ist ein Pseudotyp"
+
+#: commands/functioncmds.c:971
+msgid "cast function must take one to three arguments"
+msgstr "Typumwandlungsfunktion muss ein bis drei Argumente haben"
+
+#: commands/functioncmds.c:975
+msgid "argument of cast function must match source data type"
+msgstr ""
+"Argument der Typumwandlungsfunktion muss mit Quelldatentyp übereinstimmen"
+
+#: commands/functioncmds.c:979
+msgid "second argument of cast function must be type integer"
+msgstr "zweites Argument der Typumwandlungsfunktion muss Typ integer haben"
+
+#: commands/functioncmds.c:983
+msgid "third argument of cast function must be type boolean"
+msgstr "drittes Argument der Typumwandlungsfunktion muss Typ boolean haben"
+
+#: commands/functioncmds.c:987
+msgid "return data type of cast function must match target data type"
+msgstr ""
+"Rückgabetyp der Typumwandlungsfunktion muss mit Zieldatentyp übereinstimmen"
+
+#: commands/functioncmds.c:998
+msgid "cast function must not be volatile"
+msgstr "Typumwandlungsfunktion darf nicht VOLATILE sein"
+
+#: commands/functioncmds.c:1003
+msgid "cast function must not be an aggregate function"
+msgstr "Typumwandlungsfunktion darf keine Aggregatfunktion sein"
+
+#: commands/functioncmds.c:1007
+msgid "cast function must not return a set"
+msgstr "Typumwandlungsfunktion darf keine Ergebnismenge zurückgeben"
+
+#: commands/functioncmds.c:1031
+msgid "must be superuser to create a cast WITHOUT FUNCTION"
+msgstr "nur Superuser können Typumwandlungen mit WITHOUT FUNCTION erzeugen"
+
+#: commands/functioncmds.c:1046
+msgid "source and target data types are not physically compatible"
+msgstr "Quelldatentyp und Zieldatentyp sind nicht physikalisch kompatibel"
+
+#: commands/functioncmds.c:1056
+msgid "source data type and target data type are the same"
+msgstr "Quelldatentyp und Zieldatentyp sind der selbe"
+
+#: commands/functioncmds.c:1090
+#, c-format
+msgid "cast from type %s to type %s already exists"
+msgstr "Typumwandlung von Typ %s in Typ %s existiert bereits"
+
+#: commands/indexcmds.c:119
 msgid "must specify at least one column"
 msgstr "mindestens eine Spalte muss angegeben werden"
 
-#: commands/indexcmds.c:96
+#: commands/indexcmds.c:123
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "Index kann nicht mehr als %d Spalten enthalten"
 
-#: commands/indexcmds.c:144 commands/opclasscmds.c:91
-#: commands/opclasscmds.c:497 commands/opclasscmds.c:647
-#, c-format
-msgid "access method \"%s\" does not exist"
-msgstr "Zugriffsmethode »%s« existiert nicht"
-
-#: commands/indexcmds.c:152
+#: commands/indexcmds.c:224
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "Zugriffsmethode »%s« unterstützt keine Unique Indexe"
 
-#: commands/indexcmds.c:157
+#: commands/indexcmds.c:229
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "Zugriffsmethode »%s« unterstützt keine mehrspaltigen Indexe"
 
-#: commands/indexcmds.c:171
+#: commands/indexcmds.c:243
 msgid ""
 "index expressions and predicates may refer only to the table being indexed"
 msgstr ""
 "Indexausdrücke und -prädikate können nur auf die zu indizierende Tabelle "
 "verweisen"
 
-#: commands/indexcmds.c:202
+#: commands/indexcmds.c:271 parser/analyze.c:1185
+#, c-format
+msgid "multiple primary keys for table \"%s\" are not allowed"
+msgstr "mehrere Primärschlüssel für Tabelle »%s« nicht erlaubt"
+
+#: commands/indexcmds.c:288
 msgid "primary keys cannot be expressions"
 msgstr "Primärschlüssel können keine Ausdrücke sein"
 
-#: commands/indexcmds.c:232 parser/analyze.c:1442
+#: commands/indexcmds.c:318 commands/indexcmds.c:456 parser/analyze.c:1299
 #, 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:291
+#: commands/indexcmds.c:363
+#, 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:406
 msgid "cannot use subquery in index predicate"
 msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden"
 
-#: commands/indexcmds.c:295
+#: commands/indexcmds.c:410
 msgid "cannot use aggregate in index predicate"
 msgstr "Aggregatfunktionen können nicht im Indexprädikat verwendet werden"
 
-#: commands/indexcmds.c:304
+#: commands/indexcmds.c:419
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "Funktionen im Indexprädikat müssen als IMMUTABLE markiert sein"
 
-#: commands/indexcmds.c:337 commands/tablecmds.c:1119 parser/parse_expr.c:1034
+#: commands/indexcmds.c:461 commands/tablecmds.c:1303 parser/parse_expr.c:1084
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "Spalte »%s« existiert nicht"
 
-#: commands/indexcmds.c:369
+#: commands/indexcmds.c:494
 msgid "cannot use subquery in index expression"
 msgstr "Unteranfragen können nicht in Indexausdrücken verwendet werden"
 
-#: commands/indexcmds.c:373
+#: commands/indexcmds.c:498
 msgid "cannot use aggregate function in index expression"
 msgstr "Aggregatfunktionen können nicht in Indexausdrücken verwendet werden"
 
-#: commands/indexcmds.c:384
+#: commands/indexcmds.c:509
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "Funktionen im Indexausdruck müssen als IMMUTABLE markiert sein"
 
-#: commands/indexcmds.c:439
+#: commands/indexcmds.c:568
 #, 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:441
+#: commands/indexcmds.c:570
 msgid ""
 "You must specify an operator class for the index or define a default "
 "operator class for the data type."
@@ -2304,95 +2861,112 @@ msgstr ""
 "Sie müssen für den Index eine Operatorklasse angeben oder eine "
 "Standardoperatorklasse für den Datentyp definieren."
 
-#: commands/indexcmds.c:471 commands/indexcmds.c:481
-#: commands/opclasscmds.c:526 commands/opclasscmds.c:536
-#: commands/opclasscmds.c:669 commands/opclasscmds.c:680
-#, 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:494
+#: commands/indexcmds.c:623
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "Operatorklasse »%s« akzeptiert Datentyp %s nicht"
 
-#: commands/indexcmds.c:551 utils/cache/typcache.c:286
+#: commands/indexcmds.c:680 utils/cache/typcache.c:369
 #, 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:651
+#: commands/indexcmds.c:949
 #, c-format
 msgid "shared table \"%s\" can only be reindexed in stand-alone mode"
 msgstr ""
 "Cluster-globale Tabelle »%s« kann nur im Einzelbenutzermodus reindiziert "
 "werden"
 
-#: commands/indexcmds.c:658
+#: commands/indexcmds.c:956
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "Tabelle »%s« hat keine Indexe"
 
-#: commands/indexcmds.c:685
+#: commands/indexcmds.c:984
 msgid "can only reindex the currently open database"
 msgstr "aktuell geöffnete Datenbank kann nicht reindiziert werden"
 
-#: commands/indexcmds.c:768
+#: commands/indexcmds.c:1067
 #, c-format
 msgid "table \"%s\" was reindexed"
 msgstr "Tabelle »%s« wurde neu indiziert"
 
-#: commands/opclasscmds.c:112
+#: commands/opclasscmds.c:129
 msgid "must be superuser to create an operator class"
 msgstr "nur Superuser können Operatorklassen erzeugen"
 
-#: commands/opclasscmds.c:154
+#: commands/opclasscmds.c:166
 #, c-format
 msgid "invalid operator number %d, must be between 1 and %d"
 msgstr "ungültige Operatornummer %d, muss zwischen 1 und %d sein"
 
-#: commands/opclasscmds.c:160
-#, c-format
-msgid "operator number %d appears more than once"
-msgstr "Operatornummer %d einscheint mehrmals"
-
-#: commands/opclasscmds.c:192
+#: commands/opclasscmds.c:204
 #, c-format
 msgid "invalid procedure number %d, must be between 1 and %d"
 msgstr "ungültige Prozedurnummer %d, muss zwischen 1 und %d sein"
 
-#: commands/opclasscmds.c:198
-#, c-format
-msgid "procedure number %d appears more than once"
-msgstr "Prozedurnummer %d einscheint mehrmals"
-
-#: commands/opclasscmds.c:214
+#: commands/opclasscmds.c:226
 msgid "storage type specified more than once"
 msgstr "Storage-Typ mehrmals angegeben"
 
-#: commands/opclasscmds.c:241
+#: commands/opclasscmds.c:253
 #, c-format
 msgid ""
 "storage type may not be different from data type for access method \"%s\""
 msgstr ""
 "Storage-Typ kann nicht vom Datentyp der Zugriffsmethode »%s« verschieden sein"
 
-#: commands/opclasscmds.c:259
+#: commands/opclasscmds.c:271
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists"
 msgstr "Operatorklasse »%s« für Zugriffsmethode »%s« existiert bereits"
 
-#: commands/opclasscmds.c:287
+#: commands/opclasscmds.c:300
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
 msgstr "konnte Operatorklasse »%s« nicht zum Standard für Typ %s machen"
 
-#: commands/opclasscmds.c:290
+#: commands/opclasscmds.c:303
 #, c-format
 msgid "Operator class \"%s\" already is the default."
 msgstr "Operatorklasse »%s« ist bereits der Standard."
 
-#: commands/opclasscmds.c:701
+#: commands/opclasscmds.c:430
+msgid "btree operators must be binary"
+msgstr "btree-Operatoren müssen binär sein"
+
+#: commands/opclasscmds.c:434
+msgid "btree operators must return boolean"
+msgstr "btree-Operatoren müssen Typ boolean zurückgeben"
+
+#: commands/opclasscmds.c:438
+msgid "btree operators must have index type as left input"
+msgstr "btree-Operatoren müssen Indextyp als linke Eingabe haben"
+
+#: commands/opclasscmds.c:484
+msgid "btree procedures must have two arguments"
+msgstr "btree-Prozeduren müssen zwei Argumente haben"
+
+#: commands/opclasscmds.c:488
+msgid "btree procedures must return integer"
+msgstr "btree-Prozeduren müssen Typ integer zurückgeben"
+
+#: commands/opclasscmds.c:492
+msgid "btree procedures must have index type as first input"
+msgstr "btree-Prozeduren müssen Indextyp als erste Eingabe haben"
+
+#: commands/opclasscmds.c:525
+#, c-format
+msgid "procedure number %d appears more than once"
+msgstr "Prozedurnummer %d einscheint mehrmals"
+
+#: commands/opclasscmds.c:530
+#, c-format
+msgid "operator number %d appears more than once"
+msgstr "Operatornummer %d einscheint mehrmals"
+
+#: commands/opclasscmds.c:854
 #, c-format
 msgid ""
 "operator class \"%s\" for access method \"%s\" already exists in schema \"%s"
@@ -2400,21 +2974,21 @@ msgid ""
 msgstr ""
 "Operatorklasse »%s« für Zugriffsmethode »%s« existiert bereits in Schema »%s«"
 
-#: commands/operatorcmds.c:106 commands/operatorcmds.c:114
+#: commands/operatorcmds.c:107 commands/operatorcmds.c:115
 msgid "setof type not allowed for operator argument"
 msgstr "SETOF-Typ nicht als Operatorargument erlaubt"
 
-#: commands/operatorcmds.c:141
+#: commands/operatorcmds.c:142
 #, c-format
 msgid "operator attribute \"%s\" not recognized"
 msgstr "Attribut »%s« für Operator unbekannt"
 
-#: commands/operatorcmds.c:151
+#: commands/operatorcmds.c:152
 msgid "operator procedure must be specified"
 msgstr "Operatorprozedur muss angegeben werden"
 
-#: commands/portalcmds.c:54 commands/portalcmds.c:164
-#: commands/portalcmds.c:209
+#: commands/portalcmds.c:54 commands/portalcmds.c:174
+#: commands/portalcmds.c:219
 msgid "invalid cursor name: must not be empty"
 msgstr "ungültiger Cursorname: darf nicht leer sein"
 
@@ -2430,409 +3004,412 @@ msgstr "DECLARE CURSOR ... FOR UPDATE wird nicht unterst
 msgid "Cursors must be READ ONLY."
 msgstr "Cursor müssen READ ONLY sein."
 
-#: commands/portalcmds.c:172 commands/portalcmds.c:219
+#: commands/portalcmds.c:182 commands/portalcmds.c:229
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "Cursor »%s« existiert nicht"
 
-#: commands/portalcmds.c:308 tcop/pquery.c:419 tcop/pquery.c:931
+#: commands/portalcmds.c:337 tcop/pquery.c:523 tcop/pquery.c:1096
 #, c-format
-msgid "portal \"%s\" already active"
-msgstr "Portal »%s« ist bereits aktiv"
+msgid "portal \"%s\" cannot be run"
+msgstr "Portal »%s« kann nicht ausgeführt werden"
 
-#: commands/portalcmds.c:364
+#: commands/portalcmds.c:395
 msgid "could not reposition held cursor"
 msgstr "konnte gehaltenen Cursor nicht umpositionieren"
 
-#: commands/trigger.c:137
-#, c-format
-msgid "could not determine referenced table for constraint \"%s\""
-msgstr "konnte nicht bestimmen, auf welche Tabelle Constraint »%s« verweist"
-
-#: commands/tablecmds.c:388 commands/tablecmds.c:1064
-#: commands/tablecmds.c:1271 commands/tablecmds.c:1609
-#: commands/tablecmds.c:1895 commands/tablecmds.c:2039
-#: commands/tablecmds.c:2167 commands/tablecmds.c:2276
-#: commands/tablecmds.c:2439 commands/tablecmds.c:2565
-#: commands/tablecmds.c:2746 commands/tablecmds.c:3045
-#: commands/tablecmds.c:3757 commands/trigger.c:150 commands/trigger.c:552
-#: tcop/utility.c:162 tcop/utility.c:197
-#, c-format
-msgid "permission denied: \"%s\" is a system catalog"
-msgstr "keine Berechtigung: »%s« ist ein Systemkatalog"
-
-#: commands/trigger.c:222
-msgid "multiple INSERT events specified"
-msgstr "mehrere INSERT-Ereignisse angegeben"
+#: commands/prepare.c:61
+msgid "invalid statement name: must not be empty"
+msgstr "ungültiger Anweisungsname: darf nicht leer sein"
 
-#: commands/trigger.c:229
-msgid "multiple DELETE events specified"
-msgstr "mehrere DELETE-Ereignisse angegeben"
+#: commands/prepare.c:80
+msgid "utility statements cannot be prepared"
+msgstr "Utility-Anweisungen können nicht vorbereitet werden"
 
-#: commands/trigger.c:236
-msgid "multiple UPDATE events specified"
-msgstr "mehrere UPDATE-Ereignisse angegeben"
+#: commands/prepare.c:168 commands/prepare.c:173 commands/prepare.c:535
+msgid "prepared statement is not a SELECT"
+msgstr "vorbereitete Anweisung ist kein SELECT"
 
-#: commands/trigger.c:269 commands/trigger.c:654
+#: commands/prepare.c:307
 #, c-format
-msgid "trigger \"%s\" for relation \"%s\" already exists"
-msgstr "Trigger »%s« für Relation »%s« existiert bereits"
+msgid "prepared statement \"%s\" already exists"
+msgstr "vorbereitete Anweisung »%s« existiert bereits"
 
-#: commands/trigger.c:290
+#: commands/prepare.c:387
 #, c-format
-msgid "changing return type of function %s from \"opaque\" to \"trigger\""
-msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in »trigger«"
+msgid "prepared statement \"%s\" does not exist"
+msgstr "vorbereitete Anweisung »%s« existiert nicht"
 
-#: commands/trigger.c:297
-#, c-format
-msgid "function %s must return type \"trigger\""
-msgstr "Funktion %s muss Typ »trigger« zurückgeben"
+#: commands/proclang.c:64
+msgid "must be superuser to create procedural language"
+msgstr "nur Superuser können prozedurale Sprachen erzeugen"
 
-#: commands/trigger.c:1161
+#: commands/proclang.c:77 commands/proclang.c:265
 #, c-format
-msgid "trigger function %u returned null value"
-msgstr "Triggerfunktion %u gab NULL-Wert zurück"
-
-#: commands/trigger.c:1213 commands/trigger.c:1326 commands/trigger.c:1455
-msgid "BEFORE STATEMENT trigger cannot return a value"
-msgstr "Trigger für BEFORE STATEMENT kann keinen Wert zurückgeben"
-
-#: commands/trigger.c:1582 executor/execMain.c:1145 executor/execMain.c:1446
-#: executor/execMain.c:1582
-msgid "could not serialize access due to concurrent update"
-msgstr "kann Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung"
-
-#: commands/trigger.c:2257
-msgid "unnamed constraints cannot be set explicitly"
-msgstr "unbenannte Constraints können nicht ausdrücklich eingestellt werden"
+msgid "language \"%s\" already exists"
+msgstr "Sprache »%s« existiert bereits"
 
-#: commands/trigger.c:2290
+#: commands/proclang.c:97
 #, c-format
-msgid "constraint \"%s\" is not deferrable"
-msgstr "Constraint »%s« ist nicht verschiebbar"
+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/tablecmds.c:3802 commands/trigger.c:2306
+#: commands/proclang.c:104
 #, c-format
-msgid "constraint \"%s\" does not exist"
-msgstr "Constraint »%s« existiert nicht"
+msgid "function %s must return type \"language_handler\""
+msgstr "Funktion %s muss Typ »language_handler« zurückgeben"
+
+#: commands/proclang.c:188
+msgid "must be superuser to drop procedural language"
+msgstr "nur Superuser können prozedurale Sprachen löschen"
 
-#: commands/schemacmds.c:84 commands/user.c:832 commands/user.c:967
+#: commands/proclang.c:271
+msgid "must be superuser to rename procedural language"
+msgstr "nur Superuser können prozedurale Sprachen umbenennen"
+
+#: commands/schemacmds.c:86 commands/user.c:883 commands/user.c:1018
 msgid "permission denied"
 msgstr "keine Berechtigung"
 
-#: commands/schemacmds.c:85
+#: commands/schemacmds.c:87
 #, c-format
 msgid "\"%s\" is not a superuser, so cannot create a schema for \"%s\""
 msgstr "»%s« ist kein Superuser, kann daher kein Schema für »%s« erzeugen"
 
-#: commands/schemacmds.c:100 commands/schemacmds.c:272
+#: commands/schemacmds.c:102 commands/schemacmds.c:297
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "inakzeptabler Schemaname »%s«"
 
-#: commands/schemacmds.c:101 commands/schemacmds.c:273
+#: commands/schemacmds.c:103 commands/schemacmds.c:298
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "Der Präfix »pg_« ist für Systemschemas reserviert."
 
-#: commands/sequence.c:421 commands/sequence.c:613 commands/sequence.c:656
+#: commands/sequence.c:403 commands/sequence.c:595 commands/sequence.c:638
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "keine Berechtigung für Sequenz %s"
 
-#: commands/sequence.c:498
+#: commands/sequence.c:480
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
 msgstr "nextval: Maximalwert von Sequenz »%s« erreicht (%s)"
 
-#: commands/sequence.c:521
+#: commands/sequence.c:503
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
 msgstr "nextval: Minimalwert von Sequenz »%s« erreicht (%s)"
 
-#: commands/sequence.c:619
+#: commands/sequence.c:601
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr "currval von Sequenz »%s« ist in dieser Sitzung noch nicht definiert"
 
-#: commands/sequence.c:673
+#: commands/sequence.c:655
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr ""
 "setval: Wert %s ist außerhalb des gültigen Bereiches von Sequenz »%s« (%s..%"
 "s)"
 
-#: commands/sequence.c:820 executor/execGrouping.c:328
-#: executor/execGrouping.c:388 executor/nodeIndexscan.c:1035 executor/spi.c:85
-#: executor/spi.c:167 guc-file.l:151 guc-file.l:277 guc-file.l:314
-#: lib/dllist.c:43 lib/dllist.c:88 libpq/auth.c:634 postmaster/pgstat.c:832
-#: postmaster/pgstat.c:849 postmaster/pgstat.c:2246 postmaster/pgstat.c:2309
-#: postmaster/pgstat.c:2354 postmaster/pgstat.c:2405
-#: postmaster/postmaster.c:1556 postmaster/postmaster.c:2153
-#: postmaster/postmaster.c:2916 storage/buffer/localbuf.c:129
-#: storage/file/fd.c:523 storage/file/fd.c:556 storage/file/fd.c:701
-#: storage/ipc/sinval.c:348 storage/smgr/mm.c:191 utils/adt/cash.c:297
-#: utils/adt/cash.c:312 utils/adt/regexp.c:189 utils/adt/ri_triggers.c:3431
-#: utils/cache/relcache.c:172 utils/cache/relcache.c:182
-#: utils/cache/relcache.c:196 utils/cache/relcache.c:1218
-#: utils/cache/typcache.c:121 utils/fmgr/dfmgr.c:119 utils/init/miscinit.c:177
-#: utils/init/miscinit.c:198 utils/init/miscinit.c:208 utils/misc/guc.c:1659
-#: utils/misc/guc.c:1856 utils/misc/guc.c:2829 utils/misc/guc.c:2876
-#: utils/misc/guc.c:3762 utils/misc/guc.c:3897 utils/misc/guc.c:3962
-#: utils/misc/guc.c:3970 utils/misc/guc.c:3979 utils/mmgr/aset.c:335
-#: utils/mmgr/aset.c:501 utils/mmgr/aset.c:698 utils/mmgr/aset.c:891
+#: commands/sequence.c:798 executor/execGrouping.c:384 lib/dllist.c:43
+#: lib/dllist.c:88 libpq/auth.c:637 postmaster/pgstat.c:2421
+#: postmaster/pgstat.c:2488 postmaster/postmaster.c:756
+#: postmaster/postmaster.c:1626 postmaster/postmaster.c:2345
+#: storage/buffer/localbuf.c:139 storage/file/fd.c:587 storage/file/fd.c:620
+#: storage/file/fd.c:766 storage/ipc/sinval.c:789 storage/lmgr/lock.c:494
+#: storage/smgr/md.c:844 storage/smgr/smgr.c:213 utils/adt/cash.c:297
+#: utils/adt/cash.c:312 utils/adt/oracle_compat.c:73
+#: utils/adt/oracle_compat.c:125 utils/adt/regexp.c:191
+#: utils/adt/ri_triggers.c:3472 utils/fmgr/dfmgr.c:127 utils/fmgr/fmgr.c:528
+#: utils/cache/relcache.c:164 utils/cache/relcache.c:178
+#: utils/cache/relcache.c:1130 utils/cache/typcache.c:165
+#: utils/cache/typcache.c:487 utils/hash/dynahash.c:178
+#: utils/hash/dynahash.c:248 utils/init/miscinit.c:213
+#: utils/init/miscinit.c:234 utils/init/miscinit.c:244 utils/misc/guc.c:1907
+#: utils/misc/guc.c:1920 utils/misc/guc.c:1933 utils/mmgr/aset.c:337
+#: utils/mmgr/aset.c:503 utils/mmgr/aset.c:700 utils/mmgr/aset.c:893
 #: utils/mmgr/portalmem.c:75
 msgid "out of memory"
 msgstr "Speicher aufgebraucht"
 
-#: commands/sequence.c:958
+#: commands/sequence.c:963
 msgid "INCREMENT must not be zero"
 msgstr "INCREMENT darf nicht null sein"
 
-#: commands/sequence.c:994
+#: commands/sequence.c:1009
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "MINVALUE (%s) muss kleiner als MAXVALUE (%s) sein"
 
-#: commands/sequence.c:1018
+#: commands/sequence.c:1040
 #, c-format
 msgid "START value (%s) can't be less than MINVALUE (%s)"
 msgstr "START-Wert (%s) kann nicht kleiner als MINVALUE (%s) sein"
 
-#: commands/sequence.c:1030
+#: commands/sequence.c:1052
 #, c-format
 msgid "START value (%s) can't be greater than MAXVALUE (%s)"
 msgstr "START-Wert (%s) kann nicht kleiner als MAXVALUE (%s) sein"
 
-#: commands/sequence.c:1044
+#: commands/sequence.c:1067
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "CACHE (%s) muss größer als null sein"
 
-#: commands/tablecmds.c:151
+#: commands/tablecmds.c:295
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT kann nur mit temporären Tabellen verwendet werden"
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:400
 #, c-format
 msgid "duplicate check constraint name \"%s\""
 msgstr "doppelter Check-Constraint-Name »%s«"
 
-#: commands/tablecmds.c:398
+#: commands/tablecmds.c:556 commands/tablecmds.c:1248
+#: commands/tablecmds.c:1454 commands/tablecmds.c:2610
+#: commands/tablecmds.c:3772 commands/tablecmds.c:5401 commands/trigger.c:147
+#: commands/trigger.c:552 tcop/utility.c:182 tcop/utility.c:217
+#, c-format
+msgid "permission denied: \"%s\" is a system catalog"
+msgstr "keine Berechtigung: »%s« ist ein Systemkatalog"
+
+#: commands/tablecmds.c:567
+#, c-format
+msgid "cannot truncate system relation \"%s\""
+msgstr "Systemrelation »%s« kann nicht abgeschnitten werden"
+
+#: commands/tablecmds.c:577
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht leeren"
 
-#: commands/tablecmds.c:510
+#: commands/tablecmds.c:703
 #, c-format
 msgid "column \"%s\" duplicated"
 msgstr "Spaltenname »%s« besteht mehrfach"
 
-#: commands/tablecmds.c:535 parser/analyze.c:1188 parser/analyze.c:1393
+#: commands/tablecmds.c:728 parser/analyze.c:1055 parser/analyze.c:1261
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "geerbte Relation »%s« ist keine Tabelle"
 
-#: commands/tablecmds.c:541
+#: commands/tablecmds.c:734
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "von temporärer Relation »%s« kann nicht geerbt werden"
 
-#: commands/tablecmds.c:558
+#: commands/tablecmds.c:751
 #, c-format
 msgid "inherited relation \"%s\" duplicated"
 msgstr "geerbte Relation »%s« ist doppelt angegeben"
 
-#: commands/tablecmds.c:611
+#: commands/tablecmds.c:805
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "geerbte Definitionen von Spalte »%s« werden verschmolzen"
 
-#: commands/tablecmds.c:618
+#: commands/tablecmds.c:812
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "geerbte Spalte »%s« hat Typkonflikt"
 
-#: commands/tablecmds.c:620 commands/tablecmds.c:775 parser/parse_coerce.c:255
-#: parser/parse_coerce.c:918 parser/parse_coerce.c:935
-#: parser/parse_coerce.c:981
+#: commands/tablecmds.c:814 commands/tablecmds.c:959 parser/parse_coerce.c:239
+#: parser/parse_coerce.c:1110 parser/parse_coerce.c:1127
+#: parser/parse_coerce.c:1173
 #, c-format
 msgid "%s versus %s"
 msgstr "%s gegen %s"
 
-#: commands/tablecmds.c:766
+#: commands/tablecmds.c:950
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "Spalte »%s« wird mit geerbter Definition verschmolzen"
 
-#: commands/tablecmds.c:773
+#: commands/tablecmds.c:957
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "für Spalte »%s« besteht ein Typkonflikt"
 
-#: commands/tablecmds.c:814
+#: commands/tablecmds.c:998
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "Spalte »%s« erbt widersprüchliche Vorgabewerte"
 
-#: commands/tablecmds.c:816
+#: commands/tablecmds.c:1000
 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:1109
+#: commands/tablecmds.c:1293
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "vererbte Spalte »%s« muss ebenso in den Kindtabellen umbenannt werden"
 
-#: commands/tablecmds.c:1127
+#: commands/tablecmds.c:1311
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht umbenannt werden"
 
-#: commands/tablecmds.c:1137
+#: commands/tablecmds.c:1321
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "kann vererbte Spalte »%s« nicht umbenennen"
 
-#: commands/tablecmds.c:1148 commands/tablecmds.c:1749
+#: commands/tablecmds.c:1332 commands/tablecmds.c:2893
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "Spalte »%s« von Relation »%s« existiert bereits"
 
-#: commands/tablecmds.c:1662
+#: commands/tablecmds.c:2193
+#, c-format
+msgid "cannot rewrite system relation \"%s\""
+msgstr "Systemrelation »%s« kann nicht neu geschrieben werden"
+
+#: commands/tablecmds.c:2203
+msgid "cannot rewrite temporary tables of other sessions"
+msgstr "kann temporäre Tabellen anderer Sitzungen nicht neu schreiben"
+
+#: commands/tablecmds.c:2494
+#, c-format
+msgid "check constraint \"%s\" is violated by some row"
+msgstr "Check-Constraint »%s« wird von irgendeiner Zeile verletzt"
+
+#: commands/tablecmds.c:2507
+#, c-format
+msgid "column \"%s\" contains null values"
+msgstr "Spalte »%s« enthält NULL-Werte"
+
+#: commands/tablecmds.c:2592
+#, c-format
+msgid "\"%s\" is not a table or view"
+msgstr "»%s« ist keine Tabelle oder Sicht"
+
+#: commands/tablecmds.c:2745
+#, c-format
+msgid "cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"
+msgstr ""
+"kann Tabelle »%s« nicht ändern, weil Spalte »%s.%s« ihren Zeilentyp verwendet"
+
+#: commands/tablecmds.c:2811
+msgid "column must be added to child tables too"
+msgstr "Spalte muss ebenso in den Kindtabellen hinzugefügt werden"
+
+#: commands/tablecmds.c:2854
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "Kindtabelle »%s« hat unterschiedlichen Typ für Spalte »%s«"
 
-#: commands/tablecmds.c:1670
+#: commands/tablecmds.c:2866
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "verschmelze Definition von Spalte »%s« für Kindtabelle »%s«"
 
-#: commands/tablecmds.c:1702
-msgid "column must be added to child tables too"
-msgstr "Spalte muss ebenso in den Kindtabellen hinzugefügt werden"
-
-#: commands/tablecmds.c:1721
-msgid "adding columns with defaults is not implemented"
-msgstr "Spalten mit Vorgabewerten hinzuzufügen ist nicht implementiert"
-
-#: commands/tablecmds.c:1722
-msgid "Add the column, then use ALTER TABLE SET DEFAULT."
-msgstr ""
-"Fügen Sie die Spalte hinzu und verwenden Sie dann ALTER TABLE SET DEFAULT."
-
-#: commands/tablecmds.c:1727
-msgid "adding NOT NULL columns is not implemented"
-msgstr "Spalten mit NOT NULL hinzuzufügen ist noch nicht implementiert"
-
-#: commands/tablecmds.c:1728
-msgid "Add the column, then use ALTER TABLE SET NOT NULL."
-msgstr ""
-"Fügen Sie die Spalte hinzu und verwenden Sie dann ALTER TABLE SET NOT NULL."
-
-#: commands/tablecmds.c:1941 commands/tablecmds.c:2085
-#: commands/tablecmds.c:2213 commands/tablecmds.c:2377
+#: commands/tablecmds.c:3083 commands/tablecmds.c:3176
+#: commands/tablecmds.c:3226 commands/tablecmds.c:3322
+#: commands/tablecmds.c:3383 commands/tablecmds.c:4591
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht geändert werden"
 
-#: commands/tablecmds.c:1977
+#: commands/tablecmds.c:3119
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "Spalte »%s« ist in einem Primärschlüssel"
 
-#: commands/tablecmds.c:2106
-#, c-format
-msgid "column \"%s\" contains null values"
-msgstr "Spalte »%s« enthält NULL-Werte"
-
-#: commands/tablecmds.c:2156
+#: commands/tablecmds.c:3269 commands/tablecmds.c:5390
 #, c-format
-msgid "\"%s\" is not a table or view"
-msgstr "»%s« ist keine Tabelle oder Sicht"
+msgid "\"%s\" is not a table or index"
+msgstr "»%s« ist keine Tabelle und kein Index"
 
-#: commands/tablecmds.c:2295
+#: commands/tablecmds.c:3296
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "Statistikziel %d ist zu niedrig"
 
-#: commands/tablecmds.c:2303
+#: commands/tablecmds.c:3304
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "setze Statistikziel auf %d herab"
 
-#: commands/tablecmds.c:2326
+#: commands/tablecmds.c:3364
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "ungültiger Storage-Typ »%s«"
 
-#: commands/tablecmds.c:2396
+#: commands/tablecmds.c:3395
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "Spaltendatentyp %s kann nur Storage-Typ PLAIN"
 
-#: commands/tablecmds.c:2502
-msgid "ALTER TABLE WITH OIDS is not yet implemented"
-msgstr "ALTER TABLE WITH OIDS ist noch nicht implementiert"
-
-#: commands/tablecmds.c:2583
+#: commands/tablecmds.c:3452
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "Systemspalte »%s« kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:2591
+#: commands/tablecmds.c:3459
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "geerbte Spalte »%s« kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:2918
-#, c-format
-msgid "check constraint may only reference relation \"%s\""
-msgstr "Check-Constraint kann nur auf Relation »%s« verweisen"
-
-#: commands/tablecmds.c:2982
-#, c-format
-msgid "check constraint \"%s\" is violated by some row"
-msgstr "Check-Constraint »%s« wird von irgendeiner Zeile verletzt"
-
-#: commands/tablecmds.c:3033
+#: commands/tablecmds.c:3760
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "Relation »%s«, auf die verwiesen wird, ist keine Tabelle"
 
-#: commands/tablecmds.c:3067
+#: commands/tablecmds.c:3794
 msgid "cannot reference temporary table from permanent table constraint"
 msgstr ""
 "temporäre Tabelle kann nicht in permanentem Tabellen-Constraint benutzt "
 "werden"
 
-#: commands/tablecmds.c:3074
+#: commands/tablecmds.c:3801
 msgid "cannot reference permanent table from temporary table constraint"
 msgstr ""
 "permanente Tabelle kann nicht in temporären Tabellen-Constraint benutzt "
 "werden"
 
-#: commands/tablecmds.c:3116 commands/tablecmds.c:3552
+#: commands/tablecmds.c:3846 commands/tablecmds.c:4336
 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:3198
+#: commands/tablecmds.c:3867
+#, c-format
+msgid "foreign key constraint \"%s\" cannot be implemented"
+msgstr "Fremdschlüssel-Constraint »%s« kann nicht implementiert werden"
+
+#: commands/tablecmds.c:3870
+#, 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:3884
+#, c-format
+msgid "foreign key constraint \"%s\" will require costly sequential scans"
+msgstr "Fremdschlüssel-Constraint »%s« wird teure sequenzielle Scans benötigen"
+
+#: commands/tablecmds.c:3887
+#, c-format
+msgid "Key columns \"%s\" and \"%s\" are of different types: %s and %s."
+msgstr "Schlüsselspalten »%s« und »%s« haben verschiedene Typen: %s und %s."
+
+#: commands/tablecmds.c:3972
 #, 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:3203
+#: commands/tablecmds.c:3977
 #, 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:3266
+#: commands/tablecmds.c:4046
 #, 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:3380
+#: commands/tablecmds.c:4164
 #, c-format
 msgid ""
 "there is no unique constraint matching given keys for referenced table \"%s\""
@@ -2840,175 +3417,382 @@ msgstr ""
 "in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Unique Constraint, "
 "der auf die angegebenen Schlüssel passt"
 
-#: commands/tablecmds.c:3807
+#: commands/tablecmds.c:4548 commands/trigger.c:2780
+#, c-format
+msgid "constraint \"%s\" does not exist"
+msgstr "Constraint »%s« existiert nicht"
+
+#: commands/tablecmds.c:4553
 #, c-format
 msgid "multiple constraints named \"%s\" were dropped"
 msgstr "mehrere Constraints namens »%s« wurde gelöscht"
 
-#: commands/tablecmds.c:3849
+#: commands/tablecmds.c:4598
+#, c-format
+msgid "cannot alter inherited column \"%s\""
+msgstr "kann vererbte Spalte »%s« nicht ändern"
+
+#: commands/tablecmds.c:4638
+msgid "transform expression must not return a set"
+msgstr "Umwandlungsausdruck kann keine Ergebnismenge zurückgeben"
+
+#: commands/tablecmds.c:4644
+msgid "cannot use subquery in transform expression"
+msgstr "Unteranfragen können in Umwandlungsausdrücken nicht verwendet werden"
+
+#: commands/tablecmds.c:4648
+msgid "cannot use aggregate function in transform expression"
+msgstr ""
+"Aggregatfunktionen können in Umwandlungsausdrücken nicht verwendet werden"
+
+#: commands/tablecmds.c:4665
+#, c-format
+msgid "column \"%s\" cannot be cast to type \"%s\""
+msgstr "Spalte »%s« kann nicht in Typ »%s« umgewandelt werden"
+
+#: commands/tablecmds.c:4691
+#, 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 Kindtabellen geändert werden"
+
+#: commands/tablecmds.c:4729
+#, c-format
+msgid "cannot alter type of column \"%s\" twice"
+msgstr "Typ der Spalte »%s« kann nicht zweimal geändert werden"
+
+#: commands/tablecmds.c:4763
+#, 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:4863
+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:4864
+#, c-format
+msgid "%s depends on column \"%s\""
+msgstr "%s hängt von Spalte »%s« ab"
+
+#: commands/tablecmds.c:5180
 #, c-format
 msgid "\"%s\" is not a table, TOAST table, index, view, or sequence"
 msgstr "»%s« ist weder Tabelle, TOAST-Tabelle, Index, Sicht noch Sequenz"
 
-#: commands/tablecmds.c:4033
+#: commands/tablecmds.c:5420
+msgid "cannot have multiple SET TABLESPACE subcommands"
+msgstr "mehrere SET TABLESPACE Unterbefehle sind ungültig"
+
+#: commands/tablecmds.c:5450
+#, c-format
+msgid "cannot move system relation \"%s\""
+msgstr "Systemrelation »%s« kann nicht verschoben werden"
+
+#: commands/tablecmds.c:5460
+msgid "cannot move temporary tables of other sessions"
+msgstr "temporäre Tabellen anderer Sitzungen können nicht verschoben werden"
+
+#: commands/tablecmds.c:5670
 msgid "shared tables cannot be toasted after initdb"
 msgstr ""
 "Cluster-globale Tabellen können nach initdb nicht mehr getoastet werden"
 
-#: commands/tablecmds.c:4048
+#: commands/tablecmds.c:5685
 #, c-format
 msgid "table \"%s\" already has a TOAST table"
 msgstr "Tabelle »%s« hat schon eine TOAST-Tabelle"
 
-#: commands/tablecmds.c:4065
+#: commands/tablecmds.c:5702
 #, c-format
 msgid "table \"%s\" does not need a TOAST table"
 msgstr "Tabelle »%s« benötigt keine TOAST-Tabelle"
 
-#: commands/prepare.c:61
-msgid "invalid statement name: must not be empty"
-msgstr "ungültiger Anweisungsname: darf nicht leer sein"
+#: commands/tablecmds.c:5923
+#, c-format
+msgid "The default tablespace for schema \"%s\" has been dropped."
+msgstr "Der Standard-Tablespace für Schema »%s« wurde gelöscht."
 
-#: commands/prepare.c:80
-msgid "utility statements cannot be prepared"
-msgstr "Utility-Anweisungen können nicht vorbereitet werden"
+#: commands/tablespace.c:153 commands/tablespace.c:161
+#: commands/tablespace.c:167
+#, c-format
+msgid "could not create directory \"%s\": %m"
+msgstr "konnte Verzeichnis »%s« nicht erzeugen: %m"
 
-#: commands/prepare.c:168 commands/prepare.c:173 commands/prepare.c:536
-msgid "prepared statement is not a SELECT"
-msgstr "vorbereitete Anweisung ist kein SELECT"
+#: commands/tablespace.c:180
+#, c-format
+msgid "could not stat directory \"%s\": %m"
+msgstr "konnte »stat« für Verzeichnis »%s« nicht ausführen: %m"
 
-#: commands/prepare.c:308
+#: commands/tablespace.c:189
 #, c-format
-msgid "prepared statement \"%s\" already exists"
-msgstr "vorbereitete Anweisung »%s« existiert bereits"
+msgid "\"%s\" exists but is not a directory"
+msgstr "»%s« existiert, ist aber kein Verzeichnis"
 
-#: commands/prepare.c:388
+#: commands/tablespace.c:226
 #, c-format
-msgid "prepared statement \"%s\" does not exist"
-msgstr "vorbereitete Anweisung »%s« existiert nicht"
+msgid "permission denied to create tablespace \"%s\""
+msgstr "keine Berechtigung um Tablespace »%s« zu erzeugen"
+
+#: commands/tablespace.c:228
+msgid "Must be superuser to create a tablespace."
+msgstr "Nur Superuser können Tablespaces anlegen."
+
+#: commands/tablespace.c:247
+msgid "tablespace location may not contain single quotes"
+msgstr "Tablespace-Pfad darf keine Apostrophe enthalten"
+
+#: commands/tablespace.c:257
+msgid "tablespace location must be an absolute path"
+msgstr "Tablespace-Pfad muss ein absoluter Pfad sein"
+
+#: commands/tablespace.c:267
+#, c-format
+msgid "tablespace location \"%s\" is too long"
+msgstr "Tablespace-Pfad »%s« ist zu lang"
+
+#: commands/tablespace.c:277 commands/tablespace.c:840
+#, c-format
+msgid "unacceptable tablespace name \"%s\""
+msgstr "inakzeptabler Tablespace-Name »%s«"
+
+#: commands/tablespace.c:279 commands/tablespace.c:841
+msgid "The prefix \"pg_\" is reserved for system tablespaces."
+msgstr "Der Präfix »pg_« ist für System-Tablespaces reserviert."
+
+#: commands/tablespace.c:289 commands/tablespace.c:853
+#, c-format
+msgid "tablespace \"%s\" already exists"
+msgstr "Tablespace »%s« existiert bereits"
+
+#: commands/tablespace.c:324 commands/tablespace.c:970
+#, c-format
+msgid "could not set permissions on directory \"%s\": %m"
+msgstr "konnte Zugriffsrechte für Verzeichnis »%s« nicht setzen: %m"
+
+#: commands/tablespace.c:333
+#, c-format
+msgid "directory \"%s\" is not empty"
+msgstr "Verzeichnis »%s« ist nicht leer"
+
+#: commands/tablespace.c:354 commands/tablespace.c:985
+#, c-format
+msgid "could not create symbolic link \"%s\": %m"
+msgstr "konnte symbolischen Link »%s« nicht erstellen: %m"
+
+#: commands/tablespace.c:385 commands/tablespace.c:482
+msgid "tablespaces are not supported on this platform"
+msgstr "Tablespaces werden auf dieser Plattform nicht unterstützt"
+
+#: commands/tablespace.c:459
+#, c-format
+msgid "tablespace \"%s\" is not empty"
+msgstr "Tablespace »%s« ist nicht leer"
+
+#: commands/tablespace.c:558
+#, c-format
+msgid "could not delete directory \"%s\": %m"
+msgstr "konnte Verzeichnis »%s« nicht löschen: %m"
+
+#: commands/tablespace.c:609
+#, c-format
+msgid "could not remove directory \"%s\": %m"
+msgstr "konnte Verzeichnis »%s« nicht löschen: %m"
+
+#: commands/tablespace.c:617
+#, c-format
+msgid "could not remove symbolic link \"%s\": %m"
+msgstr "konnte symbolischen Link »%s« nicht löschen: %m"
+
+#: commands/tablespace.c:998
+#, c-format
+msgid "tablespace %u is not empty"
+msgstr "Tablespace %u ist nicht leer"
+
+#: commands/trigger.c:134
+#, c-format
+msgid "could not determine referenced table for constraint \"%s\""
+msgstr "konnte nicht bestimmen, auf welche Tabelle Constraint »%s« verweist"
+
+#: commands/trigger.c:219
+msgid "multiple INSERT events specified"
+msgstr "mehrere INSERT-Ereignisse angegeben"
+
+#: commands/trigger.c:226
+msgid "multiple DELETE events specified"
+msgstr "mehrere DELETE-Ereignisse angegeben"
+
+#: commands/trigger.c:233
+msgid "multiple UPDATE events specified"
+msgstr "mehrere UPDATE-Ereignisse angegeben"
+
+#: commands/trigger.c:266 commands/trigger.c:654
+#, c-format
+msgid "trigger \"%s\" for relation \"%s\" already exists"
+msgstr "Trigger »%s« für Relation »%s« existiert bereits"
+
+#: commands/trigger.c:287
+#, 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:294
+#, c-format
+msgid "function %s must return type \"trigger\""
+msgstr "Funktion %s muss Typ »trigger« zurückgeben"
+
+#: commands/trigger.c:1160
+#, c-format
+msgid "trigger function %u returned null value"
+msgstr "Triggerfunktion %u gab NULL-Wert zurück"
+
+#: commands/trigger.c:1214 commands/trigger.c:1331 commands/trigger.c:1464
+msgid "BEFORE STATEMENT trigger cannot return a value"
+msgstr "Trigger für BEFORE STATEMENT kann keinen Wert zurückgeben"
+
+#: commands/trigger.c:1593 executor/execMain.c:1151 executor/execMain.c:1457
+#: executor/execMain.c:1598
+msgid "could not serialize access due to concurrent update"
+msgstr "kann Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung"
 
-#: commands/typecmds.c:135
+#: commands/trigger.c:2726
+msgid "unnamed constraints cannot be set explicitly"
+msgstr "unbenannte Constraints können nicht ausdrücklich eingestellt werden"
+
+#: commands/trigger.c:2765
+#, c-format
+msgid "constraint \"%s\" is not deferrable"
+msgstr "Constraint »%s« ist nicht verschiebbar"
+
+#: commands/typecmds.c:138
 #, c-format
 msgid "type names must be %d characters or less"
 msgstr "Typnamen müssen %d oder weniger Zeichen lang sein"
 
-#: commands/typecmds.c:167
+#: commands/typecmds.c:173
 #, c-format
 msgid "array element type cannot be %s"
 msgstr "Arrayelementtyp kann nicht %s sein"
 
-#: commands/typecmds.c:200
+#: commands/typecmds.c:206
 #, c-format
 msgid "alignment \"%s\" not recognized"
 msgstr "Ausrichtung »%s« nicht erkannt"
 
-#: commands/typecmds.c:217
+#: commands/typecmds.c:223
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "Storage-Typ »%s« nicht erkannt"
 
-#: commands/typecmds.c:222
+#: commands/typecmds.c:228
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "Typ-Attribut »%s« nicht erkannt"
 
-#: commands/typecmds.c:232
+#: commands/typecmds.c:238
 msgid "type input function must be specified"
 msgstr "Typeingabefunktion muss angegeben werden"
 
-#: commands/typecmds.c:236
+#: commands/typecmds.c:242
 msgid "type output function must be specified"
 msgstr "Typausgabefunktion muss angegeben werden"
 
-#: commands/typecmds.c:275
+#: commands/typecmds.c:281
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to %s"
 msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in %s"
 
-#: commands/typecmds.c:282
+#: commands/typecmds.c:288
 #, c-format
 msgid "type input function %s must return type %s"
 msgstr "Typeingabefunktion %s muss Typ %s zurückgeben"
 
-#: commands/typecmds.c:292
+#: commands/typecmds.c:298
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"cstring\""
 msgstr "ändere Rückgabetyp von Funktion %s von »opaque« in »cstring«"
 
-#: commands/typecmds.c:299
+#: commands/typecmds.c:305
 #, c-format
 msgid "type output function %s must return type \"cstring\""
 msgstr "Typeausgabefunktion %s muss Typ »cstring« zurückgeben"
 
-#: commands/typecmds.c:308
+#: commands/typecmds.c:314
 #, c-format
 msgid "type receive function %s must return type %s"
 msgstr "Typempfangsfunktion %s muss Typ %s zurückgeben"
 
-#: commands/typecmds.c:317
+#: commands/typecmds.c:323
 #, c-format
 msgid "type send function %s must return type \"bytea\""
 msgstr "Typsendefunktion %s muss Typ »bytea« zurückgeben"
 
-#: commands/typecmds.c:520
+#: commands/typecmds.c:536
 #, c-format
 msgid "domain names must be %d characters or less"
 msgstr "Domänennamen müssen %d oder weniger Zeichen lang sein"
 
-#: commands/typecmds.c:541
+#: commands/typecmds.c:557
 #, c-format
 msgid "\"%s\" is not a valid base type for a domain"
 msgstr "»%s« ist kein gültiger Basistyp für eine Domäne"
 
-#: commands/typecmds.c:598 commands/typecmds.c:1453
+#: commands/typecmds.c:617 commands/typecmds.c:1504
 msgid "foreign key constraints not possible for domains"
 msgstr "Fremdschlüssel-Constraints sind für Domänen nicht möglich"
 
-#: commands/typecmds.c:618
+#: commands/typecmds.c:637
 msgid "multiple default expressions"
 msgstr "mehrere Vorgabeausdrücke"
 
-#: commands/typecmds.c:648 commands/typecmds.c:657
+#: commands/typecmds.c:667 commands/typecmds.c:676
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "wiedersprüchliche NULL/NOT NULL-Constraints"
 
-#: commands/typecmds.c:676 commands/typecmds.c:1471
+#: commands/typecmds.c:695 commands/typecmds.c:1522
 msgid "unique constraints not possible for domains"
 msgstr "Unique Constraints sind für Domänen nicht möglich"
 
-#: commands/typecmds.c:682 commands/typecmds.c:1477
+#: commands/typecmds.c:701 commands/typecmds.c:1528
 msgid "primary key constraints not possible for domains"
 msgstr "Primärschlüssel-Constraints sind für Domänen nicht möglich"
 
-#: commands/typecmds.c:691 commands/typecmds.c:1486
+#: commands/typecmds.c:710 commands/typecmds.c:1537
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "Setzen des Constraint-Modus wird für Domänen nicht unterstützt"
 
-#: commands/typecmds.c:808 commands/typecmds.c:1720 commands/typecmds.c:2031
+#: commands/typecmds.c:831 commands/typecmds.c:1780
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "»%s« ist keine Domäne"
 
-#: commands/typecmds.c:878
+#: commands/typecmds.c:901
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
 msgstr "ändere Argumenttyp von Funktion %s von »opaque« in »cstring«"
 
-#: commands/typecmds.c:948
+#: commands/typecmds.c:971
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to %s"
 msgstr "ändere Argumenttyp von Funktion %s von »opaque« in %s"
 
-#: commands/typecmds.c:1059
+#: commands/typecmds.c:1083
+#, c-format
+msgid "type analyze function %s must return type \"boolean\""
+msgstr "Typanalysefunktion %s muss Typ »boolean« zurückgeben"
+
+#: commands/typecmds.c:1112
 msgid "composite type must have at least one attribute"
 msgstr "zusammengesetzter Typ muss mindestens ein Attribut haben"
 
-#: commands/typecmds.c:1290
+#: commands/typecmds.c:1341
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "Spalte »%s« von Tabelle »%s« enthält NULL-Werte"
 
-#: commands/typecmds.c:1557
+#: commands/typecmds.c:1608
 #, c-format
 msgid ""
 "column \"%s\" of table \"%s\" contains values that violate the new constraint"
@@ -3016,212 +3800,216 @@ msgstr ""
 "Spalte »%s« von Tabelle »%s« enthält Werte, die den neuen Constraint "
 "verletzen"
 
-#: commands/typecmds.c:1754
+#: commands/typecmds.c:1814
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "Constraint »%s« für Domäne »%s« existiert bereits"
 
-#: commands/typecmds.c:1794 commands/typecmds.c:1803
+#: commands/typecmds.c:1855 commands/typecmds.c:1864
 msgid "cannot use table references in domain check constraint"
 msgstr ""
 "Tabellenverweise können in Domänen-Check-Constraints nicht verwendet werden"
 
-#: commands/typecmds.c:1815
+#: commands/typecmds.c:1876
 msgid "cannot use aggregate in check constraint"
 msgstr "Aggregatfunktionen können in Check-Constraints nicht verwendet werden"
 
-#: commands/user.c:149 commands/user.c:248 commands/user.c:297
-#: commands/user.c:379
+#: commands/typecmds.c:2090
+#, c-format
+msgid "\"%s\" is a table's row type"
+msgstr "»%s« ist der Zeilentyp einer Tabelle"
+
+#: commands/user.c:174 commands/user.c:272 commands/user.c:321
+#: commands/user.c:402
 #, c-format
 msgid "could not write to temporary file \"%s\": %m"
 msgstr "konnte nicht in temporäre Datei »%s« schreiben: %m"
 
-#: commands/user.c:184
+#: commands/user.c:209
 #, c-format
 msgid "invalid group name \"%s\""
 msgstr "ungültiger Gruppenname »%s«"
 
-#: commands/user.c:215 commands/user.c:347
+#: commands/user.c:240 commands/user.c:371
 #, c-format
 msgid "invalid user name \"%s\""
 msgstr "ungültiger Benutzername »%s«"
 
-#: commands/user.c:258 commands/user.c:389
-#, c-format
-msgid "could not rename file \"%s\" to \"%s\": %m"
-msgstr "konnte Datei »%s« nicht in »%s« umbenennen: %m"
-
-#: commands/user.c:354
+#: commands/user.c:378
 #, c-format
 msgid "invalid user password \"%s\""
 msgstr "ungültiges Benutzerpasswort: %s"
 
-#: commands/user.c:587
+#: commands/user.c:638
 msgid "user ID must be positive"
 msgstr "Benutzer-ID muss positiv sein"
 
-#: commands/user.c:604
+#: commands/user.c:655
 msgid "must be superuser to create users"
 msgstr "nur Superuser können Benutzer anlegen"
 
-#: commands/user.c:609
+#: commands/user.c:660
 #, c-format
 msgid "user name \"%s\" is reserved"
 msgstr "Benutzername »%s« ist reserviert"
 
-#: commands/user.c:646 commands/user.c:1191
+#: commands/user.c:697 commands/user.c:1252
 #, c-format
 msgid "user \"%s\" already exists"
 msgstr "Benutzer »%s« existiert bereits"
 
-#: commands/user.c:651
+#: commands/user.c:702
 #, c-format
 msgid "user ID %d is already assigned"
 msgstr "Benutzer-ID %d ist bereits vergeben"
 
-#: commands/user.c:848 commands/user.c:961 commands/user.c:1053
-#: commands/user.c:1172 commands/variable.c:778 utils/cache/lsyscache.c:1958
-#: utils/init/miscinit.c:310
+#: commands/user.c:899 commands/user.c:1012 commands/user.c:1104
+#: commands/user.c:1233 commands/variable.c:664 utils/cache/lsyscache.c:2100
+#: utils/init/miscinit.c:335
 #, c-format
 msgid "user \"%s\" does not exist"
 msgstr "Benutzer »%s« existiert nicht"
 
-#: commands/user.c:1026
+#: commands/user.c:1077
 msgid "must be superuser to drop users"
 msgstr "nur Superuser können Benutzer löschen"
 
-#: commands/user.c:1060
+#: commands/user.c:1111
 msgid "current user cannot be dropped"
 msgstr "aktueller Benutzer kann nicht entfernt werden"
 
-#: commands/user.c:1064
+#: commands/user.c:1115
 msgid "session user cannot be dropped"
 msgstr "aktueller Sitzungsbenutzer kann nicht entfernt werden"
 
-#: commands/user.c:1090
+#: commands/user.c:1142
 #, c-format
 msgid "user \"%s\" cannot be dropped"
 msgstr "Benutzer »%s« kann nicht gelöscht werden"
 
-#: commands/user.c:1091
+#: commands/user.c:1143
 #, c-format
 msgid "The user owns database \"%s\"."
 msgstr "Der Benutzer ist der Eigentümer der Datenbank »%s«."
 
-#: commands/user.c:1183
+#: commands/user.c:1244
 msgid "session user may not be renamed"
 msgstr "aktueller Sitzungsbenutzer kann nicht umbenannt werden"
 
-#: commands/user.c:1197
+#: commands/user.c:1258
 msgid "must be superuser to rename users"
 msgstr "nur Superuser können Benutzer umbenennen"
 
-#: commands/user.c:1230
+#: commands/user.c:1277
+msgid "MD5 password cleared because of user rename"
+msgstr "MD5-Passwort wegen Benutzerumbenennung gelöscht"
+
+#: commands/user.c:1311
 #, c-format
 msgid "before using passwords you must revoke privileges on %s"
 msgstr ""
 "bevor Passwörter verwendet werden können, müssen die Privilegien für %s "
 "entzogen werden"
 
-#: commands/user.c:1232
+#: commands/user.c:1313
 msgid ""
 "This restriction is to prevent unprivileged users from reading the passwords."
 msgstr ""
 "Diese Beschränkung besteht, um zu verhindern, dass unprivilegierte Benutzer "
 "die Passwörter lesen können."
 
-#: commands/user.c:1233
+#: commands/user.c:1314
 #, c-format
 msgid "Try REVOKE ALL ON \"%s\" FROM PUBLIC."
 msgstr "Versuchen Sie REVOKE ALL ON \"%s\" FROM PUBLIC."
 
-#: commands/user.c:1297
+#: commands/user.c:1378
 msgid "group ID must be positive"
 msgstr "Gruppen-ID muss positiv sein."
 
-#: commands/user.c:1310
+#: commands/user.c:1391
 msgid "must be superuser to create groups"
 msgstr "nur Superuser können Gruppen anlegen"
 
-#: commands/user.c:1315
+#: commands/user.c:1396
 #, c-format
 msgid "group name \"%s\" is reserved"
 msgstr "Gruppenname »%s« ist reserviert"
 
-#: commands/user.c:1352 commands/user.c:1734
+#: commands/user.c:1433 commands/user.c:1815
 #, c-format
 msgid "group \"%s\" already exists"
 msgstr "Gruppe »%s« existiert bereits"
 
-#: commands/user.c:1357
+#: commands/user.c:1438
 #, c-format
 msgid "group ID %d is already assigned"
 msgstr "Gruppen-ID %d ist bereits vergeben"
 
-#: commands/user.c:1437
+#: commands/user.c:1518
 msgid "must be superuser to alter groups"
 msgstr "nur Superuser können Gruppen ändern"
 
-#: commands/user.c:1516
+#: commands/user.c:1597
 #, c-format
 msgid "group \"%s\" does not have any members"
 msgstr "Gruppe »%s« hat keine Mitglieder"
 
-#: commands/user.c:1544
+#: commands/user.c:1625
 #, c-format
 msgid "user \"%s\" is not in group \"%s\""
 msgstr "Benutzer »%s« ist nicht in Gruppe »%s«"
 
-#: commands/user.c:1676
+#: commands/user.c:1757
 msgid "must be superuser to drop groups"
 msgstr "nur Superuser können Gruppen löschen"
 
-#: commands/user.c:1740
+#: commands/user.c:1821
 msgid "must be superuser to rename groups"
 msgstr "nur Superuser können Gruppen umbenennen"
 
-#: commands/vacuum.c:466
+#: commands/vacuum.c:586
 msgid "oldest xmin is far in the past"
 msgstr "älteste xmin ist weit in der Vergangenheit"
 
-#: commands/vacuum.c:467
+#: commands/vacuum.c:587
 msgid "Close open transactions soon to avoid wraparound problems."
 msgstr ""
 "Schließen Sie bald alle offenen Transaktionen um Überlaufprobleme zu "
 "vermeiden."
 
-#: commands/vacuum.c:684
+#: commands/vacuum.c:804
 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:685
+#: commands/vacuum.c:805
 msgid "You may have already suffered transaction-wraparound data loss."
 msgstr ""
 "Sie haben möglicherweise bereits Daten wegen Transaktionsnummernüberlauf "
 "verloren."
 
-#: commands/vacuum.c:696
+#: commands/vacuum.c:816
 msgid "some databases have not been vacuumed in over 1 billion transactions"
 msgstr ""
 "einige Datenbanken sind seit über 1 Milliarden Transaktionen nicht gevacuumt "
 "worden"
 
-#: commands/vacuum.c:697
+#: commands/vacuum.c:817
 msgid "Better vacuum them soon, or you may have a wraparound failure."
 msgstr ""
 "Sie sollten Sie bald vacuumen um Fehler wegen Transaktionsnummernüberlauf zu "
 "vermeiden."
 
-#: commands/vacuum.c:704
+#: commands/vacuum.c:824
 #, c-format
 msgid "some databases have not been vacuumed in %d transactions"
 msgstr ""
 "einige Datenbanken sind seit %d Milliarden Transaktionen nicht gevacuumt "
 "worden"
 
-#: commands/vacuum.c:706
+#: commands/vacuum.c:826
 #, c-format
 msgid ""
 "Better vacuum them within %d transactions, or you may have a wraparound "
@@ -3230,14 +4018,14 @@ msgstr ""
 "Sie sollten Sie innerhalb der nächsten %d Transaktionen vacuumen um Fehler "
 "wegen Transaktionsnummernüberlauf zu vermeiden."
 
-#: commands/vacuum.c:795
+#: commands/vacuum.c:922
 #, 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:809
+#: commands/vacuum.c:937
 #, c-format
 msgid ""
 "skipping \"%s\" --- cannot vacuum indexes, views, or special system tables"
@@ -3245,18 +4033,18 @@ msgstr ""
 "<überspringe »%s« --- kann Indexe, Sichten oder spezielle Systemtabellen "
 "nicht vacuumen"
 
-#: commands/vacuum.c:1040 commands/vacuumlazy.c:205
+#: commands/vacuum.c:1160 commands/vacuumlazy.c:205
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "vacuume »%s.%s«"
 
-#: commands/vacuum.c:1075 commands/vacuumlazy.c:263
+#: commands/vacuum.c:1208 commands/vacuumlazy.c:263
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr ""
 "Seite %2$u in Relation »%1$s« ist nicht initialisiert --- wird repariert"
 
-#: commands/vacuum.c:1192
+#: commands/vacuum.c:1331
 #, c-format
 msgid ""
 "relation \"%s\" TID %u/%u: InsertTransactionInProgress %u --- can't shrink "
@@ -3265,7 +4053,7 @@ msgstr ""
 "Relation »%s« TID %u/%u: InsertTransactionInProgress %u --- kann Relation "
 "nicht verkleinern"
 
-#: commands/vacuum.c:1205
+#: commands/vacuum.c:1344
 #, c-format
 msgid ""
 "relation \"%s\" TID %u/%u: DeleteTransactionInProgress %u --- can't shrink "
@@ -3274,7 +4062,7 @@ msgstr ""
 "Relation »%s« TID %u/%u: DeleteTransactionInProgress %u --- kann Relation "
 "nicht verkleinern"
 
-#: commands/vacuum.c:1367 commands/vacuumlazy.c:428
+#: commands/vacuum.c:1498 commands/vacuumlazy.c:422
 #, c-format
 msgid ""
 "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
@@ -3282,7 +4070,7 @@ msgstr ""
 "»%s«: %.0f entfernbare, %.0f nicht entfernbare Zeilenversionen in %u Seiten "
 "gefunden"
 
-#: commands/vacuum.c:1370
+#: commands/vacuum.c:1501
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -3303,29 +4091,29 @@ msgstr ""
 "%u Seiten mit %.0f freien Bytes sind mögliche Ziele zum Verschieben.\n"
 "%s"
 
-#: commands/vacuum.c:2373
+#: commands/vacuum.c:2254
 #, c-format
 msgid "\"%s\": moved %u row versions, truncated %u to %u pages"
 msgstr "»%s«: %u Zeilenversionen verschoben, von %u auf %u Seiten verkürzt"
 
-#: commands/vacuum.c:2376 commands/vacuumlazy.c:489 commands/vacuumlazy.c:774
-#: nodes/print.c:87 storage/lmgr/deadlock.c:888 tcop/postgres.c:3199
+#: commands/vacuum.c:2257 commands/vacuumlazy.c:483 commands/vacuumlazy.c:774
+#: nodes/print.c:86 storage/lmgr/deadlock.c:888 tcop/postgres.c:3295
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: commands/vacuum.c:2560 commands/vacuumlazy.c:771
+#: commands/vacuum.c:2769 commands/vacuumlazy.c:771
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "»%s«: von %u auf %u Seiten verkürzt"
 
-#: commands/vacuum.c:2652 commands/vacuum.c:2719 commands/vacuumlazy.c:597
-#: commands/vacuumlazy.c:657
+#: commands/vacuum.c:2859 commands/vacuum.c:2926 commands/vacuumlazy.c:596
+#: commands/vacuumlazy.c:661
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "Index »%s« enthält %.0f Zeilenversionen in %u Seiten"
 
-#: commands/vacuum.c:2656 commands/vacuumlazy.c:601
+#: commands/vacuum.c:2863 commands/vacuumlazy.c:600
 #, c-format
 msgid ""
 "%u index pages have been deleted, %u are currently reusable.\n"
@@ -3334,7 +4122,7 @@ msgstr ""
 "%u Indexseiten wurden gelöscht, %u sind gegenwärtig wiederverwendbar.\n"
 "%s"
 
-#: commands/vacuum.c:2670 commands/vacuum.c:2739
+#: commands/vacuum.c:2877 commands/vacuum.c:2946
 #, c-format
 msgid ""
 "index \"%s\" contains %.0f row versions, but table contains %.0f row versions"
@@ -3342,11 +4130,11 @@ msgstr ""
 "Index »%s« enthält %.0f Zeilenversionen, aber Tabelle enthält %.0f "
 "Zeilenversionen"
 
-#: commands/vacuum.c:2673 commands/vacuum.c:2742
+#: commands/vacuum.c:2880 commands/vacuum.c:2949
 msgid "Rebuild the index with REINDEX."
 msgstr "Bauen Sie den Index mit REINDEX neu."
 
-#: commands/vacuum.c:2723 commands/vacuumlazy.c:661
+#: commands/vacuum.c:2930 commands/vacuumlazy.c:665
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -3357,7 +4145,7 @@ msgstr ""
 "%u Indexseiten wurden gelöscht, %u sind gegenwärtig wiederverwendbar.\n"
 "%s"
 
-#: commands/vacuumlazy.c:431
+#: commands/vacuumlazy.c:425
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -3370,48 +4158,54 @@ msgstr ""
 "%u Seiten sind vollkommen leer.\n"
 "%s"
 
-#: commands/vacuumlazy.c:486
+#: commands/vacuumlazy.c:480
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "»%s«: %d Zeilenversionen in %d Seiten entfernt"
 
-#: commands/variable.c:75
+#: commands/variable.c:65
 msgid "invalid list syntax for parameter \"datestyle\""
 msgstr "ungültige Listensyntax für Parameter »datestyle«"
 
-#: commands/variable.c:161
+#: commands/variable.c:151
 #, c-format
 msgid "unrecognized \"datestyle\" key word: \"%s\""
 msgstr "unbekanntes »datestyle«-Schlüsselwort: »%s«"
 
-#: commands/variable.c:179
+#: commands/variable.c:169
 msgid "conflicting \"datestyle\" specifications"
 msgstr "widersprüchliche »datestyle«-Angaben"
 
-#: commands/variable.c:450
+#: commands/variable.c:280
 msgid "invalid interval value for time zone: month not allowed"
 msgstr "ungültige Intervallangabe für Zeitzone: Monat nicht erlaubt"
 
-#: commands/variable.c:557
+#: commands/variable.c:403
 #, c-format
 msgid "unrecognized time zone name: \"%s\""
 msgstr "unbekannter Zeitzonenname: »%s«"
 
-#: commands/variable.c:565
+#: commands/variable.c:411
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "Zeitzone »%s« verwendet scheinbar Schaltsekunden"
 
-#: commands/variable.c:567
+#: commands/variable.c:413
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL unterstützt keine Schaltsekunden."
 
-#: commands/variable.c:636
+#: commands/variable.c:483
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr ""
 "SET TRANSACTION ISOLATION LEVEL muss vor allen Anfragen aufgerufen werden"
 
-#: commands/variable.c:713 utils/mb/mbutils.c:188
+#: commands/variable.c:493
+msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
+msgstr ""
+"SET TRANSACTION ISOLATION LEVEL kann nicht in einer Subtransaktion "
+"aufgerufen werden"
+
+#: commands/variable.c:593 utils/mb/mbutils.c:188
 #, c-format
 msgid "conversion between %s and %s is not supported"
 msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt"
@@ -3420,107 +4214,93 @@ msgstr "Umwandlung zwischen %s und %s wird nicht unterst
 msgid "view must have at least one column"
 msgstr "Sicht muss mindestens eine Spalte haben"
 
-#: commands/view.c:169 commands/view.c:181
+#: commands/view.c:170 commands/view.c:182
 msgid "cannot change number of columns in view"
 msgstr "kann Anzahl der Spalten in Sicht nicht ändern"
 
-#: commands/view.c:186
+#: commands/view.c:187
 #, c-format
 msgid "cannot change name of view column \"%s\""
 msgstr "kann Namen der Sichtspalte »%s« nicht ändern"
 
-#: commands/view.c:193
+#: commands/view.c:194
 #, c-format
 msgid "cannot change data type of view column \"%s\""
 msgstr "kann Datentyp der Sichtspalte »%s« nicht ändern"
 
-#: executor/execMain.c:865
+#: executor/execMain.c:814
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "kann Sequenz »%s« nicht ändern"
 
-#: executor/execMain.c:871
+#: executor/execMain.c:820
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "kann TOAST-Relation »%s« nicht ändern"
 
-#: executor/execMain.c:877
+#: executor/execMain.c:826
 #, c-format
 msgid "cannot change view \"%s\""
 msgstr "kann Sicht »%s« nicht ändern"
 
-#: executor/execMain.c:1714
+#: executor/execMain.c:1731
 #, 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:1726
+#: executor/execMain.c:1743
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "neue Zeile für Relation »%s« verletzt Check-Constraint »%s«"
 
-#: executor/execQual.c:180 executor/execQual.c:204 executor/execQual.c:1731
-#: utils/adt/array_userfuncs.c:362 utils/adt/arrayfuncs.c:212
-#: utils/adt/arrayfuncs.c:378 utils/adt/arrayfuncs.c:897
-#: utils/adt/arrayfuncs.c:2237
+#: executor/execQual.c:257 executor/execQual.c:285 executor/execQual.c:2065
+#: utils/adt/array_userfuncs.c:362 utils/adt/arrayfuncs.c:216
+#: utils/adt/arrayfuncs.c:472 utils/adt/arrayfuncs.c:1153
+#: utils/adt/arrayfuncs.c:2421
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
 
-#: executor/execQual.c:512
-#, c-format
-msgid "no value found for parameter \"%s\""
-msgstr "kein Wert für Parameter »%s« gefunden"
-
-#: executor/execQual.c:517
-#, c-format
-msgid "no value found for parameter %d"
-msgstr "kein Wert für Parameter %d gefunden"
-
-#: executor/execQual.c:677
+#: executor/execQual.c:811
 msgid "functions and operators can take at most one set argument"
 msgstr "Funktionen und Operatoren können höchstens ein Mengenargument haben"
 
-#: executor/execQual.c:729 executor/execQual.c:773 executor/execQual.c:960
-#: executor/execQual.c:2971 executor/functions.c:578 executor/functions.c:617
-#: utils/adt/pgstatfuncs.c:191 utils/adt/sets.c:207 utils/fmgr/funcapi.c:38
+#: executor/execQual.c:866 executor/execQual.c:910 executor/execQual.c:1086
+#: executor/execQual.c:1211 executor/execQual.c:3445 executor/functions.c:666
+#: executor/functions.c:705 utils/fmgr/funcapi.c:39
 msgid "set-valued function called in context that cannot accept a set"
 msgstr ""
 "Funktion mit Mengenergebnis in einem Zusammenhang aufgerufen, der keine "
 "Mengenergebnisse verarbeiten kann"
 
-#: executor/execQual.c:1071 executor/execQual.c:1112
-msgid "function returning row cannot return null value"
-msgstr "Funktion, die eine Zeile zurückgibt, kann keinen NULL-Wert zurückgeben"
-
-#: executor/execQual.c:1076
-msgid "function returning row did not return a valid tuple slot"
+#: executor/execQual.c:1293
+msgid "function returning set of rows cannot return null value"
 msgstr ""
-"Funktion, die eine Zeile zurückgibt, gab keinen gültigen Tupel-Slot zurück"
+"Funktion, die eine Zeilenmenge zurückgibt, kann keinen NULL-Wert zurückgeben"
 
-#: executor/execQual.c:1139
+#: executor/execQual.c:1377
 msgid "table-function protocol for materialize mode was not followed"
 msgstr ""
 "Tabellenfunktionsprotokoll für Materialisierungsmodus wurde nicht befolgt"
 
-#: executor/execQual.c:1146
+#: executor/execQual.c:1384
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "unbekannter returnMode von Tabellenfunktion: %d"
 
-#: executor/execQual.c:1259
+#: executor/execQual.c:1530
 msgid "IS DISTINCT FROM does not support set arguments"
 msgstr "IS DISTINCT FROM unterstützt keine Mengenargumente"
 
-#: executor/execQual.c:1327
+#: executor/execQual.c:1604
 msgid "op ANY/ALL (array) does not support set arguments"
 msgstr "op ANY/ALL (array) unterstützt keine Mengenargumente"
 
-#: executor/execQual.c:1717
+#: executor/execQual.c:2051
 msgid "cannot merge incompatible arrays"
 msgstr "kann inkompatible Arrays nicht verschmelzen"
 
-#: executor/execQual.c:1718
+#: executor/execQual.c:2052
 #, c-format
 msgid ""
 "Array with element type %s cannot be included in ARRAY construct with "
@@ -3529,32 +4309,49 @@ msgstr ""
 "Arrayelement mit Typ %s kann nicht in ARRAY-Konstrukt mit Elementtyp %s "
 "verwendet werden."
 
-#: executor/execQual.c:1751
+#: executor/execQual.c:2085 utils/adt/arrayfuncs.c:507
 msgid ""
 "multidimensional arrays must have array expressions with matching dimensions"
 msgstr ""
 "mehrdimensionale Arrays müssen Arraysausdrücke mit gleicher Anzahl "
 "Dimensionen haben"
 
-#: executor/execQual.c:1861
+#: executor/execQual.c:2251
 msgid "NULLIF does not support set arguments"
 msgstr "NULLIF unterstützt keine Mengenargumente"
 
-#: executor/execQual.c:2042
+#: executor/execQual.c:2432
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "Domäne %s erlaubt keine NULL-Werte"
 
-#: executor/execQual.c:2072
+#: executor/execQual.c:2462
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "Wert für Domäne %s verletzt Check-Constraint »%s«"
 
-#: executor/execQual.c:2429 optimizer/util/clauses.c:411 parser/parse_agg.c:74
+#: executor/execQual.c:2804 optimizer/util/clauses.c:427 parser/parse_agg.c:74
 msgid "aggregate function calls may not be nested"
 msgstr "Aufrufe von Aggregatfunktionen können nicht geschachtelt werden"
 
-#: executor/functions.c:183
+#: executor/execQual.c:3066
+#, c-format
+msgid "ROW() column has type %s instead of type %s"
+msgstr "ROW()-Spalte hat Typ %s statt Typ %s"
+
+#. translator: %s is a SQL statement name
+#: executor/functions.c:117
+#, c-format
+msgid "%s is not allowed in a SQL function"
+msgstr "%s ist in SQL-Funktionen nicht erlaubt"
+
+#. translator: %s is a SQL statement name
+#: executor/functions.c:124 executor/spi.c:1396
+#, c-format
+msgid "%s is not allowed in a non-volatile function"
+msgstr "%s ist in als nicht »volatile« markierten Funktionen nicht erlaubt"
+
+#: executor/functions.c:190
 #, c-format
 msgid ""
 "could not determine actual result type for function declared to return type %"
@@ -3563,191 +4360,135 @@ msgstr ""
 "konnte tatsächlichen Ergebnistyp von Funktion mit deklarierten Rückgabetyp %"
 "s nicht bestimmen"
 
-#: executor/functions.c:254
+#: executor/functions.c:244
 #, c-format
 msgid "could not determine actual type of argument declared %s"
 msgstr ""
 "konnte tatsächlichen Typ von Argument mit deklarierten Typ %s nicht bestimmen"
 
-#: executor/functions.c:673
+#: executor/functions.c:790
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "SQL-Funktion »%s« Anweisung %d"
 
-#: executor/functions.c:686
-#, c-format
-msgid "SQL function \"%s\""
-msgstr "SQL-Funktion »%s«"
-
-#: executor/functions.c:692
+#: executor/functions.c:809
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "SQL-Funktion »%s« beim Start"
 
-#: executor/nodeAgg.c:1314
+#: executor/functions.c:889 executor/functions.c:910 executor/functions.c:920
+#: executor/functions.c:944 executor/functions.c:952 executor/functions.c:1004
+#: executor/functions.c:1016 executor/functions.c:1036
 #, c-format
-msgid "aggregate %u needs to have compatible input type and transition type"
-msgstr "Aggregatfunktion %u muss kompatiblen Eingabe- und Übergangstyp haben"
+msgid "return type mismatch in function declared to return %s"
+msgstr "Rückgabetyp von Funktion stimmt nicht überein; deklariert als %s"
 
-#: executor/nodeFunctionscan.c:92
-msgid "query-specified return row and actual function return row do not match"
-msgstr ""
-"von Anfrage angegebene Zeile und tatsächlich von Funktion zurückgegebene "
-"Zeile stimmen nicht überein"
+#: executor/functions.c:891 executor/functions.c:922
+msgid "Function's final statement must be a SELECT."
+msgstr "Die letzte Anweisung der Funktion muss ein SELECT sein."
 
-#: executor/nodeHashjoin.c:561 executor/nodeHashjoin.c:571
-#, 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"
+#: executor/functions.c:912
+msgid "Function's final statement must not be a SELECT."
+msgstr "Die letzte Anweisung der Funktion darf kein SELECT sein."
 
-#: executor/nodeHashjoin.c:629 executor/nodeHashjoin.c:636
-#, 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/functions.c:946
+msgid "Final SELECT must return exactly one column."
+msgstr "Das letzte SELECT muss genau eine Spalte zurückgeben."
 
-#: executor/nodeHashjoin.c:687 executor/nodeHashjoin.c:692
+#: executor/functions.c:954
 #, 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/nodeMergejoin.c:1479
-msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
-msgstr ""
-"RIGHT JOIN wird nur für Merge-Verbund-fähige Verbundbedingungen unterstützt"
-
-#: executor/nodeMergejoin.c:1496 optimizer/path/joinpath.c:821
-msgid "FULL JOIN is only supported with merge-joinable join conditions"
-msgstr ""
-"FULL JOIN wird nur für Merge-Verbund-fähige Verbundbedingungen unterstützt"
-
-#: executor/nodeSubplan.c:290 executor/nodeSubplan.c:332
-#: executor/nodeSubplan.c:967
-msgid "more than one row returned by a subquery used as an expression"
-msgstr "als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile"
-
-#: executor/spi.c:756
-msgid "cannot open multi-query plan as cursor"
-msgstr "kann Plan mit mehreren Anfragen nicht als Cursor öffnen"
-
-#: executor/spi.c:763
-msgid "cannot open non-SELECT query as cursor"
-msgstr "kann Nicht-SELECT-Anfrage nicht als Cursor öffnen"
-
-#: executor/spi.c:767
-msgid "cannot open SELECT INTO query as cursor"
-msgstr "kann SELECT-INTO-Anfrage nicht als Cursor öffnen"
+msgid "Actual return type is %s."
+msgstr "Eigentlicher Rückgabetyp ist %s."
 
-#: libpq/pqcomm.c:248
-#, c-format
-msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
-msgstr "konnte Hostname »%s«, Dienst »%s« nicht in Adresse übersetzen: %s"
+#: executor/functions.c:1006
+msgid "Final SELECT returns too many columns."
+msgstr "Das letzte SELECT gibt zu viele Spalten zurück."
 
-#: libpq/pqcomm.c:252
+#: executor/functions.c:1018
 #, c-format
-msgid "could not translate service \"%s\" to address: %s"
-msgstr "konnte Dienst »%s« nicht in Adresse übersetzen: %s"
-
-#: libpq/pqcomm.c:285
-msgid "IPv4"
-msgstr "IPv4"
-
-#: libpq/pqcomm.c:289
-msgid "IPv6"
-msgstr "IPv6"
-
-#: libpq/pqcomm.c:294
-msgid "Unix"
-msgstr "Unix"
+msgid "Final SELECT returns %s instead of %s at column %d."
+msgstr "Das letzte SELECT ergibt %s statt %s in Spalte %d."
 
-#: libpq/pqcomm.c:299
-#, c-format
-msgid "unrecognized address family %d"
-msgstr "unbekannte Adressfamilie %d"
+#: executor/functions.c:1038
+msgid "Final SELECT returns too few columns."
+msgstr "Das letzte SELECT gibt zu wenige Spalten zurück."
 
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:310
+#: executor/functions.c:1088
 #, c-format
-msgid "could not create %s socket: %m"
-msgstr "konnte %s-Socket nicht erstellen: %m"
+msgid "return type %s is not supported for SQL functions"
+msgstr "Rückgabetyp %s wird nicht von SQL-Funktionen unterstützt"
 
-#: libpq/pqcomm.c:322
+#: executor/nodeAgg.c:1330
 #, c-format
-msgid "setsockopt(SO_REUSEADDR) failed: %m"
-msgstr "setsockopt(SO_REUSEADDR) fehlgeschlagen: %m"
+msgid "aggregate %u needs to have compatible input type and transition type"
+msgstr "Aggregatfunktion %u muss kompatiblen Eingabe- und Übergangstyp haben"
 
-#: libpq/pqcomm.c:336
-#, c-format
-msgid "setsockopt(IPV6_V6ONLY) failed: %m"
-msgstr "setsockopt(IPV6_V6ONLY) fehlgeschlagen: %m"
+#: executor/nodeFunctionscan.c:93
+msgid "query-specified return row and actual function return row do not match"
+msgstr ""
+"von Anfrage angegebene Zeile und tatsächlich von Funktion zurückgegebene "
+"Zeile stimmen nicht überein"
 
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:355
+#: executor/nodeHashjoin.c:571 executor/nodeHashjoin.c:581
 #, c-format
-msgid "could not bind %s socket: %m"
-msgstr "konnte %s-Socket nicht binden: %m"
+msgid "could not read from hash-join temporary file: %m"
+msgstr "konnte nicht aus temporärer Datei für Hash-Verbund lesen: %m"
 
-#: libpq/pqcomm.c:358
+#: executor/nodeHashjoin.c:641 executor/nodeHashjoin.c:648
 #, c-format
-msgid ""
-"Is another postmaster already running on port %d? If not, remove socket file "
-"\"%s\" and retry."
+msgid "could not rewind hash-join temporary file: %m"
 msgstr ""
-"Läuft bereits ein anderer Postmaster auf Port %d? Wenn nicht, entfernen Sie "
-"die Socketdatei »%s« und versuchen Sie erneut."
+"konnte Position in temporärer Datei für Hash-Verbund nicht auf Anfang "
+"setzen: %m"
 
-#: libpq/pqcomm.c:361
+#: executor/nodeHashjoin.c:699 executor/nodeHashjoin.c:704
 #, c-format
-msgid ""
-"Is another postmaster already running on port %d? If not, wait a few seconds "
-"and retry."
+msgid "could not write to hash-join temporary file: %m"
+msgstr "konnte nicht in temporäre Datei für Hash-Verbund schreiben: %m"
+
+#: executor/nodeMergejoin.c:1474
+msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
 msgstr ""
-"Läuft bereits ein anderer Postmaster auf Port %d? Wenn nicht, warten Sie "
-"einige Sekunden und versuchen Sie erneut."
+"RIGHT JOIN wird nur für Merge-Verbund-fähige Verbundbedingungen unterstützt"
 
-#. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:395
-#, c-format
-msgid "could not listen on %s socket: %m"
-msgstr "konnte nicht auf %s-Socket hören: %m"
+#: executor/nodeMergejoin.c:1491 optimizer/path/joinpath.c:839
+msgid "FULL JOIN is only supported with merge-joinable join conditions"
+msgstr ""
+"FULL JOIN wird nur für Merge-Verbund-fähige Verbundbedingungen unterstützt"
 
-#: libpq/pqcomm.c:485
-#, c-format
-msgid "could not set group of file \"%s\": %m"
-msgstr "konnte Gruppe von Datei »%s« nicht setzen: %m"
+#: executor/nodeSubplan.c:294 executor/nodeSubplan.c:336
+#: executor/nodeSubplan.c:972
+msgid "more than one row returned by a subquery used as an expression"
+msgstr "als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile"
 
-#: libpq/pqcomm.c:496
-#, c-format
-msgid "could not set permissions of file \"%s\": %m"
-msgstr "konnte Zugriffsrechte von Datei »%s« nicht setzen: %m"
+#: executor/spi.c:190
+msgid "transaction left non-empty SPI stack"
+msgstr "Transaktion ließ nicht-leeren SPI-Stack zurück"
 
-#: libpq/pqcomm.c:526
-#, c-format
-msgid "could not accept new connection: %m"
-msgstr "konnte neue Verbindung nicht akzeptieren: %m"
+#: executor/spi.c:191 executor/spi.c:255
+msgid "Check for missing \"SPI_finish\" calls."
+msgstr "Prüfen Sie, ob Aufrufe von »SPI_finish« fehlen."
 
-#: libpq/pqcomm.c:678
-#, c-format
-msgid "could not receive data from client: %m"
-msgstr "konnte Daten vom Client nicht empfangen: %m"
+#: executor/spi.c:254
+msgid "subtransaction left non-empty SPI stack"
+msgstr "Subtransaktion ließ nicht-leeren SPI-Stack zurück"
 
-#: libpq/pqcomm.c:841
-msgid "unexpected EOF within message length word"
-msgstr "unerwartetes EOF im Message-Längenwort"
+#: executor/spi.c:831
+msgid "cannot open multi-query plan as cursor"
+msgstr "kann Plan mit mehreren Anfragen nicht als Cursor öffnen"
 
-#: libpq/pqcomm.c:853
-msgid "invalid message length"
-msgstr "ungültige Message-Länge"
+#: executor/spi.c:838
+msgid "cannot open non-SELECT query as cursor"
+msgstr "kann Nicht-SELECT-Anfrage nicht als Cursor öffnen"
 
-#: libpq/pqcomm.c:867
-msgid "incomplete message from client"
-msgstr "unvollständige Message vom Client"
+#: executor/spi.c:842
+msgid "cannot open SELECT INTO query as cursor"
+msgstr "kann SELECT-INTO-Anfrage nicht als Cursor öffnen"
 
-#: libpq/pqcomm.c:946
+#: executor/spi.c:1574
 #, c-format
-msgid "could not send data to client: %m"
-msgstr "konnte Daten nicht an den Client senden: %m"
+msgid "SQL statement \"%s\""
+msgstr "SQL-Anweisung »%s«"
 
 #: libpq/auth.c:113
 #, c-format
@@ -3805,194 +4546,231 @@ msgstr "Kerberos unparse_name ergab Fehler %d"
 msgid "Kerberos 5 not implemented on this server"
 msgstr "Kerberos 5 ist auf diesem Server nicht implementiert"
 
-#: libpq/auth.c:394
+#: libpq/auth.c:366
+#, c-format
+msgid "authentication failed for user \"%s\": host rejected"
+msgstr "Authentifizierung für Benutzer »%s« fehlgeschlagen: Host abgelehnt"
+
+#: libpq/auth.c:369
+#, c-format
+msgid "Kerberos 4 authentication failed for user \"%s\""
+msgstr "Kerberos-4-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+
+#: libpq/auth.c:372
 #, c-format
-msgid "%s authentication failed for user \"%s\""
-msgstr "»%s«-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+msgid "Kerberos 5 authentication failed for user \"%s\""
+msgstr "Kerberos-5-Authentifizierung für Benutzer »%s« fehlgeschlagen"
 
-#: libpq/auth.c:418
+#: libpq/auth.c:375
+#, c-format
+msgid "\"trust\" authentication failed for user \"%s\""
+msgstr "»trust«-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+
+#: libpq/auth.c:378
+#, c-format
+msgid "Ident authentication failed for user \"%s\""
+msgstr "Ident-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+
+#: libpq/auth.c:383
+#, c-format
+msgid "password authentication failed for user \"%s\""
+msgstr "Passwort-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+
+#: libpq/auth.c:387
+#, c-format
+msgid "PAM authentication failed for user \"%s\""
+msgstr "PAM-Authentifizierung für Benutzer »%s« fehlgeschlagen"
+
+#: libpq/auth.c:391
+#, c-format
+msgid "authentication failed for user \"%s\": invalid authentication method"
+msgstr ""
+"Authentifizierung für Benutzer »%s« fehlgeschlagen: ungültige "
+"Authentifizierungsmethode"
+
+#: libpq/auth.c:420
 msgid "missing or erroneous pg_hba.conf file"
 msgstr "fehlende oder fehlerhafter pg_hba.conf-Datei"
 
-#: libpq/auth.c:419
+#: libpq/auth.c:421
 msgid "See server log for details."
 msgstr "Einzelheiten finden Sie im Serverlog."
 
-#: libpq/auth.c:445
+#: libpq/auth.c:447
 #, 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:447
+#: libpq/auth.c:449
 msgid "SSL on"
 msgstr "SSL an"
 
-#: libpq/auth.c:447
+#: libpq/auth.c:449
 msgid "SSL off"
 msgstr "SSL aus"
 
-#: libpq/auth.c:451
+#: libpq/auth.c:453
 #, 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:463
+#: libpq/auth.c:465
 msgid "Kerberos 4 only supports IPv4 connections"
 msgstr "Kerberos 4 unterstützt nur IPv4-Verbindungen"
 
-#: libpq/auth.c:495
+#: libpq/auth.c:498
 #, c-format
 msgid "could not enable credential reception: %m"
 msgstr "konnte Empfang von Credentials nicht einschalten: %m"
 
-#: libpq/auth.c:582
+#: libpq/auth.c:585
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "Fehler von der unteren PAM-Ebene: %s"
 
-#: libpq/auth.c:587
+#: libpq/auth.c:590
 #, c-format
 msgid "unsupported PAM conversation %d/%s"
 msgstr "nicht unterstütze PAM-Konversation %d/%s"
 
-#: libpq/auth.c:619
+#: libpq/auth.c:622
 msgid "empty password returned by client"
 msgstr "Client gab leeres Passwort zurück"
 
-#: libpq/auth.c:679
+#: libpq/auth.c:682
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "konnte PAM-Authenticator nicht erzeugen: %s"
 
-#: libpq/auth.c:690
+#: libpq/auth.c:693
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) fehlgeschlagen: %s"
 
-#: libpq/auth.c:701
+#: libpq/auth.c:704
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) fehlgeschlagen: %s"
 
-#: libpq/auth.c:712
+#: libpq/auth.c:715
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate fehlgeschlagen: %s"
 
-#: libpq/auth.c:723
+#: libpq/auth.c:726
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt fehlgeschlagen: %s"
 
-#: libpq/auth.c:734
+#: libpq/auth.c:737
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "konnte PAM-Authenticator nicht freigeben: %s"
 
-#: libpq/auth.c:772
+#: libpq/auth.c:775
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "Passwort-Antwort erwartet, Message-Typ %d erhalten"
 
-#: libpq/auth.c:800
+#: libpq/auth.c:803
 msgid "invalid password packet size"
 msgstr "ungültige Größe des Passwortpakets"
 
-#: libpq/auth.c:804
+#: libpq/auth.c:807
 msgid "received password packet"
 msgstr "Passwortpaket erhalten"
 
-#: libpq/be-fsstubs.c:124 libpq/be-fsstubs.c:162 libpq/be-fsstubs.c:186
-#: libpq/be-fsstubs.c:214 libpq/be-fsstubs.c:271
+#: libpq/be-fsstubs.c:132 libpq/be-fsstubs.c:170 libpq/be-fsstubs.c:194
+#: libpq/be-fsstubs.c:222 libpq/be-fsstubs.c:274
 #, c-format
 msgid "invalid large-object descriptor: %d"
 msgstr "ungültiger Large-Object-Deskriptor: %d"
 
-#: libpq/be-fsstubs.c:375
+#: libpq/be-fsstubs.c:378
 msgid "must be superuser to use server-side lo_import()"
 msgstr "nur Superuser können das serverseitige lo_import() verwenden"
 
-#: libpq/be-fsstubs.c:376
+#: libpq/be-fsstubs.c:379
 msgid "Anyone can use the client-side lo_import() provided by libpq."
 msgstr "Jeder kann das clientseitige lo_import() von libpq verwenden."
 
-#: libpq/be-fsstubs.c:391
+#: libpq/be-fsstubs.c:400
 #, c-format
 msgid "could not open server file \"%s\": %m"
 msgstr "konnte Serverdatei »%s« nicht öffnen: %m"
 
-#: libpq/be-fsstubs.c:412
+#: libpq/be-fsstubs.c:421
 #, c-format
 msgid "could not read server file \"%s\": %m"
 msgstr "konnte Serverdatei »%s« nicht lesen: %m"
 
-#: libpq/be-fsstubs.c:442
+#: libpq/be-fsstubs.c:451
 msgid "must be superuser to use server-side lo_export()"
 msgstr "nur Superuser können das serverseitige lo_export() verwenden"
 
-#: libpq/be-fsstubs.c:443
+#: libpq/be-fsstubs.c:452
 msgid "Anyone can use the client-side lo_export() provided by libpq."
 msgstr "Jeder kann das clientseitige lo_export() von libpq verwenden."
 
-#: libpq/be-fsstubs.c:469
+#: libpq/be-fsstubs.c:484
 #, c-format
 msgid "could not create server file \"%s\": %m"
 msgstr "konnte Serverdatei »%s« nicht erstellen: %m"
 
-#: libpq/be-fsstubs.c:481
+#: libpq/be-fsstubs.c:496
 #, c-format
 msgid "could not write server file \"%s\": %m"
 msgstr "konnte Serverdatei »%s« nicht schreiben: %m"
 
-#: libpq/be-secure.c:274 libpq/be-secure.c:359
+#: libpq/be-secure.c:281 libpq/be-secure.c:374
 #, c-format
 msgid "SSL SYSCALL error: %m"
 msgstr "SSL-SYSCALL-Fehler: %m"
 
-#: libpq/be-secure.c:279 libpq/be-secure.c:364
+#: libpq/be-secure.c:286 libpq/be-secure.c:379
 msgid "SSL SYSCALL error: EOF detected"
 msgstr "SSL-SYSCALL-Fehler: EOF entdeckt"
 
-#: libpq/be-secure.c:287 libpq/be-secure.c:372
+#: libpq/be-secure.c:294 libpq/be-secure.c:387
 #, c-format
 msgid "SSL error: %s"
 msgstr "SSL-Fehler: %s"
 
-#: libpq/be-secure.c:296 libpq/be-secure.c:381
+#: libpq/be-secure.c:303 libpq/be-secure.c:396
 #, c-format
-msgid "unrecognized SSL error code %d"
-msgstr "unbekannter SSL-Fehlercode %d"
+msgid "unrecognized SSL error code: %d"
+msgstr "unbekannter SSL-Fehlercode: %d"
 
-#: libpq/be-secure.c:327 libpq/be-secure.c:331 libpq/be-secure.c:341
+#: libpq/be-secure.c:336 libpq/be-secure.c:340 libpq/be-secure.c:350
 msgid "SSL renegotiation failure"
 msgstr "Fehler bei SSL-Neuverhandlung"
 
-#: libpq/be-secure.c:335
+#: libpq/be-secure.c:344
 msgid "SSL failed to send renegotiation request"
 msgstr "SSL konnte keine neue Verhandlungsanfrage senden"
 
-#: libpq/be-secure.c:634
+#: libpq/be-secure.c:649
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "konnte SSL-Kontext nicht erstellen: %s"
 
-#: libpq/be-secure.c:644
+#: libpq/be-secure.c:659
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "konnte Serverzertifikatsdatei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:651
+#: libpq/be-secure.c:666
 #, 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:657
+#: libpq/be-secure.c:682
 #, c-format
 msgid "unsafe permissions on private key file \"%s\""
 msgstr "unsichere Berechtigungen für private Schlüsseldatei »%s«"
 
-#: libpq/be-secure.c:659
+#: libpq/be-secure.c:684
 msgid ""
 "File must be owned by the database user and must have no permissions for "
 "\"group\" or \"other\"."
@@ -4000,31 +4778,41 @@ msgstr ""
 "Die Datei muss dem Datenbankbenutzer gehören und keine Berechtigungen für "
 "»Gruppe« oder »Andere« haben."
 
-#: libpq/be-secure.c:663
+#: libpq/be-secure.c:689
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "konnte private Schlüsseldatei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:668
+#: libpq/be-secure.c:694
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "Überprüfung des privaten Schlüssels fehlgeschlagen: %s"
 
-#: libpq/be-secure.c:686
+#: libpq/be-secure.c:714
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "konnte Root-Zertifikat-Datei »%s« nicht laden: %s"
 
-#: libpq/be-secure.c:688
+#: libpq/be-secure.c:716
 msgid "Will not verify client certificates."
 msgstr "Client-Zertifikate werden nicht überprüft werden."
 
-#: libpq/be-secure.c:723
+#: libpq/be-secure.c:789
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "konnte SSL-Verbindung nicht initialisieren: %s"
 
-#: libpq/be-secure.c:747
+#: libpq/be-secure.c:798
+#, c-format
+msgid "could not set SSL socket: %s"
+msgstr "konnte SSL-Socket nicht setzen: %s"
+
+#: libpq/be-secure.c:807
+#, c-format
+msgid "could not accept SSL connection: %i"
+msgstr "konnte SSL-Verbindung nicht annehmen: %i"
+
+#: libpq/be-secure.c:832
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "SSL-Verbindung von »%s«"
@@ -4036,107 +4824,232 @@ msgstr ""
 "kann Authentifizierungemethode »crypt« nicht verweden, weil Passwort mit MD5 "
 "verschlüsselt ist"
 
-#: libpq/hba.c:129
+#: libpq/hba.c:156
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
 msgstr "Token in Authentifizierungsdatei zu lang, wird übersprungen: »%s«"
 
-#: libpq/hba.c:265
+#: libpq/hba.c:325
 #, c-format
 msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
 msgstr ""
 "konnte sekundäre Authentifizierungsdatei »@%s« nicht als »%s« öffnen: %m"
 
-#: libpq/hba.c:666
+#: libpq/hba.c:740
 #, c-format
-msgid "invalid IP address \"%s\" in pg_hba.conf file: %s"
-msgstr "ungültige IP-Adresse »%s« in Datei pg_hba.conf: %s"
+msgid "invalid IP address \"%s\" in file \"%s\" line %d: %s"
+msgstr "ungültige IP-Adresse »%s« in Datei »%s« Zeile %d: %s"
 
-#: libpq/hba.c:760
+#: libpq/hba.c:775
 #, c-format
-msgid "invalid entry in pg_hba.conf file at line %d, token \"%s\""
-msgstr "ungültiger Eintrag in Datei pg_hba.conf auf Zeile %d, Token »%s«"
+msgid "invalid IP mask \"%s\" in file \"%s\" line %d: %s"
+msgstr "ungültige IP-Maske »%s« in Datei »%s« Zeile %d: %s"
 
-#: libpq/hba.c:765
+#: libpq/hba.c:790
 #, c-format
-msgid "missing field in pg_hba.conf file at end of line %d"
-msgstr "fehlendes Feld in Datei pg_hba.conf am Ende von Zeile %d"
+msgid "IP address and mask do not match in file \"%s\" line %d"
+msgstr "IP-Adresse und -Maske passen nicht zusammen in Datei »%s« Zeile %d"
 
-#: guc-file.l:164 libpq/hba.c:961
+#: libpq/hba.c:848 libpq/hba.c:1104
 #, c-format
-msgid "could not open configuration file \"%s\": %m"
-msgstr "konnte Konfigurationsdatei »%s« nicht öffnen: %m"
+msgid "invalid entry in file \"%s\" at line %d, token \"%s\""
+msgstr "ungültiger Eintrag in Datei »%s« auf Zeile %d, Token »%s«"
+
+#: libpq/hba.c:854
+#, c-format
+msgid "missing field in file \"%s\" at end of line %d"
+msgstr "fehlendes Feld in Datei »%s« am Ende von Zeile %d"
 
-#: libpq/hba.c:1023
+#: libpq/hba.c:1044 guc-file.l:152
 #, c-format
-msgid "invalid entry in pg_ident.conf file at line %d, token \"%s\""
-msgstr "ungültiger Eintrag in Datei pg_ident.conf auf Zeile %d, Token »%s«"
+msgid "could not open configuration file \"%s\": %m"
+msgstr "konnte Konfigurationsdatei »%s« nicht öffnen: %m"
 
-#: libpq/hba.c:1028
+#: libpq/hba.c:1110
 #, c-format
-msgid "missing entry in pg_ident.conf file at end of line %d"
-msgstr "fehlender Eintrag in Datei pg_hba.conf am Ende von Zeile %d"
+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:1060
+#: libpq/hba.c:1141
 msgid "cannot use Ident authentication without usermap field"
 msgstr "kann Ident-Authentifizierung nicht ohne Usermap-Feld verwenden"
 
-#: libpq/hba.c:1108
+#: libpq/hba.c:1186
 #, c-format
 msgid "could not open Ident usermap file \"%s\": %m"
 msgstr "konnte Ident-Usermap-Datei »%s« nicht öffnen: %m"
 
-#: libpq/hba.c:1279
+#: libpq/hba.c:1364
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "konnte Socket für Ident-Verbindung nicht erzeugen: %m"
 
-#: libpq/hba.c:1295
+#: libpq/hba.c:1380
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "konnte nicht mit lokaler Adresse »%s« verbinden: %m"
 
-#: libpq/hba.c:1307
+#: libpq/hba.c:1392
 #, 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/hba.c:1327
+#: libpq/hba.c:1412
 #, 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/hba.c:1342
+#: libpq/hba.c:1427
 #, 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/hba.c:1383 libpq/hba.c:1414 libpq/hba.c:1482
+#: libpq/hba.c:1437
+#, c-format
+msgid "invalidly formatted response from Ident server: \"%s\""
+msgstr "ungültig formatierte Antwort vom Ident-Server: »%s«"
+
+#: libpq/hba.c:1472 libpq/hba.c:1503 libpq/hba.c:1571
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "konnte Credentials von Gegenstelle nicht ermitteln: %m"
 
-#: libpq/hba.c:1392 libpq/hba.c:1423 libpq/hba.c:1493
+#: libpq/hba.c:1481 libpq/hba.c:1512 libpq/hba.c:1582
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "lokaler Benutzer mit ID %d existiert nicht"
 
-#: libpq/hba.c:1505
+#: libpq/hba.c:1594
 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/hba.c:1637
+#, c-format
+msgid "Ident protocol identifies remote user as \"%s\""
+msgstr "Ident-Protokoll identifiziert entfernten Benutzer als »%s«"
+
+#: libpq/pqcomm.c:271
+#, c-format
+msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
+msgstr "konnte Hostname »%s«, Dienst »%s« nicht in Adresse übersetzen: %s"
+
+#: libpq/pqcomm.c:275
+#, c-format
+msgid "could not translate service \"%s\" to address: %s"
+msgstr "konnte Dienst »%s« nicht in Adresse übersetzen: %s"
+
+#: libpq/pqcomm.c:309
+msgid "IPv4"
+msgstr "IPv4"
+
+#: libpq/pqcomm.c:313
+msgid "IPv6"
+msgstr "IPv6"
+
+#: libpq/pqcomm.c:318
+msgid "Unix"
+msgstr "Unix"
+
+#: libpq/pqcomm.c:323
+#, c-format
+msgid "unrecognized address family %d"
+msgstr "unbekannte Adressfamilie %d"
+
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:334
+#, c-format
+msgid "could not create %s socket: %m"
+msgstr "konnte %s-Socket nicht erstellen: %m"
+
+#: libpq/pqcomm.c:346
+#, c-format
+msgid "setsockopt(SO_REUSEADDR) failed: %m"
+msgstr "setsockopt(SO_REUSEADDR) fehlgeschlagen: %m"
+
+#: libpq/pqcomm.c:360
+#, c-format
+msgid "setsockopt(IPV6_V6ONLY) failed: %m"
+msgstr "setsockopt(IPV6_V6ONLY) fehlgeschlagen: %m"
+
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:379
+#, c-format
+msgid "could not bind %s socket: %m"
+msgstr "konnte %s-Socket nicht binden: %m"
+
+#: libpq/pqcomm.c:382
+#, c-format
+msgid ""
+"Is another postmaster already running on port %d? If not, remove socket file "
+"\"%s\" and retry."
+msgstr ""
+"Läuft bereits ein anderer Postmaster auf Port %d? Wenn nicht, entfernen Sie "
+"die Socketdatei »%s« und versuchen Sie erneut."
+
+#: libpq/pqcomm.c:385
+#, c-format
+msgid ""
+"Is another postmaster already running on port %d? If not, wait a few seconds "
+"and retry."
+msgstr ""
+"Läuft bereits ein anderer Postmaster auf Port %d? Wenn nicht, warten Sie "
+"einige Sekunden und versuchen Sie erneut."
+
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:419
+#, c-format
+msgid "could not listen on %s socket: %m"
+msgstr "konnte nicht auf %s-Socket hören: %m"
+
+#: libpq/pqcomm.c:509
+#, c-format
+msgid "could not set group of file \"%s\": %m"
+msgstr "konnte Gruppe von Datei »%s« nicht setzen: %m"
+
+#: libpq/pqcomm.c:520
+#, c-format
+msgid "could not set permissions of file \"%s\": %m"
+msgstr "konnte Zugriffsrechte von Datei »%s« nicht setzen: %m"
+
+#: libpq/pqcomm.c:550
+#, c-format
+msgid "could not accept new connection: %m"
+msgstr "konnte neue Verbindung nicht akzeptieren: %m"
+
+#: libpq/pqcomm.c:702
+#, c-format
+msgid "could not receive data from client: %m"
+msgstr "konnte Daten vom Client nicht empfangen: %m"
+
+#: libpq/pqcomm.c:895
+msgid "unexpected EOF within message length word"
+msgstr "unerwartetes EOF im Message-Längenwort"
+
+#: libpq/pqcomm.c:906
+msgid "invalid message length"
+msgstr "ungültige Message-Länge"
+
+#: libpq/pqcomm.c:928 libpq/pqcomm.c:938
+msgid "incomplete message from client"
+msgstr "unvollständige Message vom Client"
+
+#: libpq/pqcomm.c:1048
+#, c-format
+msgid "could not send data to client: %m"
+msgstr "konnte Daten nicht an den Client senden: %m"
+
 #: libpq/pqformat.c:443
 msgid "no data left in message"
 msgstr "keine Daten in Message übrig"
 
 #: libpq/pqformat.c:591 libpq/pqformat.c:609 libpq/pqformat.c:630
-#: utils/adt/arrayfuncs.c:1023
+#: utils/adt/arrayfuncs.c:1277 utils/adt/rowtypes.c:523
 msgid "insufficient data left in message"
 msgstr "nicht genug Daten in Message übrig"
 
@@ -4148,12 +5061,17 @@ msgstr "ung
 msgid "invalid message format"
 msgstr "ungültiges Message-Format"
 
-#: main/main.c:84
+#: main/main.c:99
 #, c-format
 msgid "%s: setsysinfo failed: %s\n"
 msgstr "%s: setsysinfo fehlgeschlagen: %s\n"
 
-#: main/main.c:175
+#: main/main.c:117
+#, c-format
+msgid "%s: WSAStartup failed: %d\n"
+msgstr "%s: WSAStartup fehlgeschlagen: %d\n"
+
+#: main/main.c:220
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
 "The server must be started under an unprivileged user ID to prevent\n"
@@ -4166,26 +5084,50 @@ msgstr ""
 "Dokumentation finden Sie weitere Informationen darüber, wie der\n"
 "Server richtig gestartet wird.\n"
 
-#: main/main.c:196
+#: main/main.c:239
 #, 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:240
+#: main/main.c:246
+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:307
 #, c-format
 msgid "%s: invalid effective UID: %d\n"
 msgstr "%s: ungültige effektive UID: %d\n"
 
-#: main/main.c:253
+#: main/main.c:320
 #, c-format
 msgid "%s: could not determine user name (GetUserName failed)\n"
 msgstr "%s: konnte Benutzername nicht ermitteln (GetUserName fehlgeschlagen)\n"
 
-#: optimizer/path/allpaths.c:214
+#: nodes/params.c:114
+#, c-format
+msgid "no value found for parameter \"%s\""
+msgstr "kein Wert für Parameter »%s« gefunden"
+
+#: nodes/params.c:119
+#, c-format
+msgid "no value found for parameter %d"
+msgstr "kein Wert für Parameter %d gefunden"
+
+#: optimizer/path/allpaths.c:223
 msgid "SELECT FOR UPDATE is not supported for inheritance queries"
 msgstr "SELECT FOR UPDATE wird in Anfragen mit Vererbung nicht unterstützt"
 
-#: optimizer/plan/initsplan.c:282 optimizer/prep/prepjointree.c:337
+#: optimizer/plan/initsplan.c:282 optimizer/prep/prepjointree.c:366
 msgid "UNION JOIN is not implemented"
 msgstr "UNION JOIN ist nicht implementiert"
 
@@ -4196,12 +5138,12 @@ msgstr ""
 "SELECT FOR UPDATE kann nicht auf die nullbare Seite eines äußeren Verbundes "
 "angewendet werden"
 
-#: optimizer/plan/initsplan.c:755
+#: optimizer/plan/initsplan.c:743
 #, c-format
 msgid "could not identify an equality operator for types %s and %s"
 msgstr "konnte keinen Ist-Gleich-Operator für Typen %s und %s identifizieren"
 
-#: optimizer/plan/initsplan.c:768
+#: optimizer/plan/initsplan.c:756
 #, c-format
 msgid ""
 "equality operator for types %s and %s should be merge-joinable, but isn't"
@@ -4209,94 +5151,78 @@ msgstr ""
 "Ist-Gleich-Operator für Typen %s und %s sollte Merge-Verbund-fähig sein, ist "
 "es aber nicht"
 
-#: optimizer/plan/planner.c:591 parser/analyze.c:2090 parser/analyze.c:2254
-#: parser/analyze.c:2809
+#: optimizer/plan/planner.c:641 parser/analyze.c:1933 parser/analyze.c:2099
+#: parser/analyze.c:2706
 msgid "SELECT FOR UPDATE is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "SELECT FOR UPDATE ist nicht in UNION/INTERSECT/EXCEPT erlaubt"
 
-#: optimizer/plan/planner.c:657
+#: optimizer/plan/planner.c:698
 msgid "SELECT FOR UPDATE is not allowed in subqueries"
 msgstr "SELECT FOR UPDATE ist in Unteranfragen nicht erlaubt"
 
-#: optimizer/util/clauses.c:2037
+#: optimizer/util/clauses.c:2331
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "SQL-Funktion »%s« beim Inlining"
 
-#: optimizer/util/clauses.c:2422 optimizer/util/clauses.c:2899
-#: parser/parse_expr.c:1323
-#, c-format
-msgid "relation reference \"%s\" cannot be used in an expression"
-msgstr "Relationsverweis »%s« kann nicht in Ausdruck verwendet werden"
-
-#: parser/analyze.c:364
+#: parser/analyze.c:446
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW gibt mehr Spaltennamen als Spalten an"
 
-#: parser/analyze.c:574
+#: parser/analyze.c:583
 msgid "INSERT ... SELECT may not specify INTO"
 msgstr "INSERT ... SELECT kann INTO nicht verwenden"
 
-#: parser/analyze.c:666
+#: parser/analyze.c:671
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT hat mehr Ausdrücke als Zielspalten"
 
-#: parser/analyze.c:687
+#: parser/analyze.c:692
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT hat mehr Zielspalten als Ausdrücke"
 
-#: parser/analyze.c:973
+#: parser/analyze.c:865
 #, c-format
-msgid "%s will create implicit sequence \"%s\" for \"serial\" column \"%s.%s\""
+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/analyze.c:1057 parser/analyze.c:1067
+#: parser/analyze.c:948 parser/analyze.c:958
 #, 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/analyze.c:1077
+#: parser/analyze.c:968
 #, 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/analyze.c:1322
-#, c-format
-msgid "multiple primary keys for table \"%s\" are not allowed"
-msgstr "mehrere Primärschlüssel für Tabelle »%s« nicht erlaubt"
-
-#: parser/analyze.c:1454
+#: parser/analyze.c:1311
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "Spalte »%s« erscheint zweimal im Primärschlüssel-Constraint"
 
-#: parser/analyze.c:1459
+#: parser/analyze.c:1316
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
 msgstr "Spalte »%s« erscheint zweimal im Unique Constraint"
 
-#: parser/analyze.c:1553
-#, c-format
-msgid "%s / %s%s will create implicit index \"%s\" for table \"%s\""
-msgstr "%s / %s%s erstellt implizit einen Index »%s« für Tabelle »%s«"
-
-#: parser/analyze.c:1658
+#: parser/analyze.c:1499
 msgid "index expression may not return a set"
 msgstr "Indexausdrücke können keine Ergebnismengen zurückgeben"
 
-#: parser/analyze.c:1750
+#: parser/analyze.c:1591
 msgid "rule WHERE condition may not contain references to other relations"
 msgstr ""
 "WHERE-Bedingung einer Regel kann keine Verweise auf andere Relationen "
 "enthalten"
 
-#: parser/analyze.c:1756
+#: parser/analyze.c:1597
 msgid "rule WHERE condition may not contain aggregate functions"
 msgstr "WHERE-Bedingung einer Regel kann keine Aggregatfunktionen enthalten"
 
-#: parser/analyze.c:1827
+#: parser/analyze.c:1668
 msgid ""
 "rules with WHERE conditions may only have SELECT, INSERT, UPDATE, or DELETE "
 "actions"
@@ -4304,28 +5230,28 @@ msgstr ""
 "Regeln mit WHERE-Bedingungen können als Aktion nur SELECT, INSERT, UPDATE "
 "oder DELETE haben"
 
-#: parser/analyze.c:1846 parser/analyze.c:1918 rewrite/rewriteHandler.c:176
-#: rewrite/rewriteManip.c:746 rewrite/rewriteManip.c:802
+#: parser/analyze.c:1687 parser/analyze.c:1759 rewrite/rewriteHandler.c:177
+#: rewrite/rewriteManip.c:749 rewrite/rewriteManip.c:805
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr "UNION/INTERSECTION/EXCEPT mit Bedingung sind nicht implementiert"
 
-#: parser/analyze.c:1864
+#: parser/analyze.c:1705
 msgid "ON SELECT rule may not use OLD"
 msgstr "ON-SELECT-Regel kann nicht OLD verwenden"
 
-#: parser/analyze.c:1868
+#: parser/analyze.c:1709
 msgid "ON SELECT rule may not use NEW"
 msgstr "ON-SELECT-Regel kann nicht NEW verwenden"
 
-#: parser/analyze.c:1877
+#: parser/analyze.c:1718
 msgid "ON INSERT rule may not use OLD"
 msgstr "ON-INSERT-Regel kann nicht OLD verwenden"
 
-#: parser/analyze.c:1883
+#: parser/analyze.c:1724
 msgid "ON DELETE rule may not use NEW"
 msgstr "ON-DELETE-Regel kann nicht NEW verwenden"
 
-#: parser/analyze.c:2211
+#: parser/analyze.c:2056
 msgid ""
 "ORDER BY on a UNION/INTERSECT/EXCEPT result must be on one of the result "
 "columns"
@@ -4333,11 +5259,11 @@ msgstr ""
 "ORDER BY mit dem Ergebnis von UNION/INTERSECT/EXCEPT muss sich auf eine der "
 "Ergebnisspalten beziehen"
 
-#: parser/analyze.c:2249
+#: parser/analyze.c:2094
 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:2310
+#: parser/analyze.c:2155
 msgid ""
 "UNION/INTERSECT/EXCEPT member statement may not refer to other relations of "
 "same query level"
@@ -4345,189 +5271,119 @@ msgstr ""
 "Teilanweisung von UNION/INTERSECT/EXCEPT kann nicht auf andere Relationen "
 "auf der selben Anfrageebene verweisen"
 
-#: parser/analyze.c:2363
+#: parser/analyze.c:2210
 #, 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:2433
+#: parser/analyze.c:2282
 msgid "CREATE TABLE AS specifies too many column names"
 msgstr "CREATE TABLE AS gibt zu viele Spaltennamen an"
 
-#: parser/analyze.c:2666
+#: parser/analyze.c:2565
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "SCROLL und NO SCROLL können nicht beide angegeben werden"
 
-#: parser/analyze.c:2752
+#: parser/analyze.c:2652
 #, c-format
 msgid "wrong number of parameters for prepared statement \"%s\""
 msgstr "falsche Anzahl Parameter für vorbereitete Anweisung »%s«"
 
-#: parser/analyze.c:2754
+#: parser/analyze.c:2654
 #, c-format
 msgid "Expected %d parameters but got %d."
 msgstr "%d Parameter erwartet aber %d erhalten."
 
-#: parser/analyze.c:2769
+#: parser/analyze.c:2669
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "Unteranfragen können nicht in EXECUTE-Parameter verwendet werden"
 
-#: parser/analyze.c:2773
+#: parser/analyze.c:2673
 msgid "cannot use aggregate function in EXECUTE parameter"
 msgstr "Aggregatfunktionen können nicht in EXECUTE-Parameter verwendet werden"
 
-#: parser/analyze.c:2786
+#: parser/analyze.c:2685
 #, c-format
 msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
 msgstr ""
 "Parameter $%d mit Typ %s kann nicht in erwarteten Typ %s umgewandelt werden"
 
-#: parser/analyze.c:2813
+#: parser/analyze.c:2710
 msgid "SELECT FOR UPDATE is not allowed with DISTINCT clause"
 msgstr "SELECT FOR UPDATE ist nicht erlaubt mit DISTINCT-Klausel"
 
-#: parser/analyze.c:2817
+#: parser/analyze.c:2714
 msgid "SELECT FOR UPDATE is not allowed with GROUP BY clause"
 msgstr "SELECT FOR UPDATE ist nicht erlaubt mit GROUP-BY-Klausel"
 
-#: parser/analyze.c:2821
+#: parser/analyze.c:2718
 msgid "SELECT FOR UPDATE is not allowed with aggregate functions"
 msgstr "SELECT FOR UPDATE ist nicht erlaubt mit Aggregatfunktionen"
 
-#: parser/analyze.c:2901
+#: parser/analyze.c:2800
 msgid "SELECT FOR UPDATE cannot be applied to a join"
 msgstr "SELECT FOR UPDATE kann nicht auf einen Verbund angewendet werden"
 
-#: parser/analyze.c:2906
+#: parser/analyze.c:2805
 msgid "SELECT FOR UPDATE cannot be applied to NEW or OLD"
 msgstr "SELECT FOR UPDATE kann nicht auf NEW oder OLD angewendet werden"
 
-#: parser/analyze.c:2911
+#: parser/analyze.c:2810
 msgid "SELECT FOR UPDATE cannot be applied to a function"
 msgstr "SELECT FOR UPDATE kann nicht auf eine Funktion angewendet werden"
 
-#: parser/analyze.c:2924
+#: parser/analyze.c:2823
 #, c-format
 msgid "relation \"%s\" in FOR UPDATE clause not found in FROM clause"
 msgstr "Relation »%s« in FOR UPDATE nicht in der FROM-Klausel gefunden"
 
-#: parser/analyze.c:3016
+#: parser/analyze.c:2870
 msgid "misplaced DEFERRABLE clause"
 msgstr "falsch platzierte DEFERRABLE-Klausel"
 
-#: parser/analyze.c:3020 parser/analyze.c:3033
+#: parser/analyze.c:2874 parser/analyze.c:2887
 msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
 msgstr "mehrere DEFERRABLE/NOT DEFERRABLE-Klauseln sind nicht erlaubt"
 
-#: parser/analyze.c:3029
+#: parser/analyze.c:2883
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "falsch platzierte NOT DEFERRABLE-Klausel"
 
-#: gram.y:2193 gram.y:2208 parser/analyze.c:3040 parser/analyze.c:3064
+#: parser/analyze.c:2894 parser/analyze.c:2918 gram.y:2369 gram.y:2384
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr ""
 "Constraint, der als INITIALLY DEFERRED deklariert wurde, muss DEFERRABLE sein"
 
-#: parser/analyze.c:3047
+#: parser/analyze.c:2901
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "falsch platzierte INITIALLY DEFERRED-Klausel"
 
-#: parser/analyze.c:3051 parser/analyze.c:3075
+#: parser/analyze.c:2905 parser/analyze.c:2929
 msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
 msgstr "mehrere INITIALLY IMMEDIATE/DEFERRED-Klauseln sind nicht erlaubt"
 
-#: parser/analyze.c:3071
+#: parser/analyze.c:2925
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "falsch platzierte INITIALLY IMMEDIATE-Klausel"
 
-#: parser/analyze.c:3184 parser/analyze.c:3205
-#, c-format
-msgid ""
-"CREATE specifies a schema (%s) different from the one being created (%s)"
-msgstr ""
-"CREATE gibt ein Schema an (%s) welches nicht gleich dem zu erzeugenden "
-"Schema ist (%s)"
-
-#: parser/analyze.c:3259 parser/parse_coerce.c:237 parser/parse_expr.c:137
-#: parser/parse_expr.c:143
-#, c-format
-msgid "there is no parameter $%d"
-msgstr "es gibt keine Parameter $%d"
-
-#: parser/analyze.c:3264 tcop/postgres.c:1142
-#, c-format
-msgid "could not determine data type of parameter $%d"
-msgstr "konnte Datentyp von Parameter $%d nicht ermitteln"
-
-#: parser/parse_expr.c:105
-msgid "expression too complex"
-msgstr "Ausdruck zu komplex"
-
-#: parser/parse_expr.c:106
-#, c-format
-msgid "Nesting depth exceeds maximum expression depth %d."
-msgstr "Verschachtelungstiefe überschreitet maximale Ausdruckstiefe %d."
-
-#: parser/parse_expr.c:108
-msgid "Increase the configuration parameter \"max_expr_depth\"."
-msgstr "Erhöhen Sie den Konfigurationsparameter »max_expr_depth«."
-
-#: parser/parse_expr.c:352
-msgid "IS DISTINCT FROM requires = operator to yield boolean"
-msgstr "IS DISTINCT FROM erfordert, dass Operator = boolean ergibt"
-
-#: parser/parse_expr.c:375
-msgid "NULLIF requires = operator to yield boolean"
-msgstr "NULLIF erfordert, dass Operator = boolean ergibt"
-
-#: parser/parse_expr.c:497
-msgid "subquery must return a column"
-msgstr "Unteranfrage muss eine Spalte zurückgeben"
-
-#: parser/parse_expr.c:503
-msgid "subquery must return only one column"
-msgstr "Unteranfrage darf nur eine Spalte zurückgeben"
-
-#: parser/parse_expr.c:559
-#, c-format
-msgid "row comparison cannot use operator %s"
-msgstr "Zeilenvergleich kann Operator %s nicht verwenden"
-
-#: parser/parse_expr.c:586
-msgid "subquery has too many columns"
-msgstr "Unteranfrage hat zu viele Spalten"
-
-#: parser/parse_expr.c:604
-#, c-format
-msgid "operator %s must return type boolean, not type %s"
-msgstr "Operator %s muss Typ boolean zurückgeben, nicht Typ %s"
-
-#: parser/parse_expr.c:607 parser/parse_expr.c:614
-msgid ""
-"The operator of a quantified predicate subquery must return type boolean."
-msgstr ""
-"Der Operator einer quantifizierten Unteranfrage muss Typ boolean zurückgeben."
-
-#: parser/parse_expr.c:612
+#: parser/analyze.c:2978
 #, c-format
-msgid "operator %s must not return a set"
-msgstr "Operator %s darf keine Ergebnismenge zurückgeben"
-
-#: parser/parse_expr.c:624
-msgid "subquery has too few columns"
-msgstr "Unteranfrage hat zu wenige Spalten"
+msgid ""
+"CREATE specifies a schema (%s) different from the one being created (%s)"
+msgstr ""
+"CREATE gibt ein Schema an (%s) welches nicht gleich dem zu erzeugenden "
+"Schema ist (%s)"
 
-#: parser/parse_coerce.c:1016 parser/parse_coerce.c:1033
-#: parser/parse_coerce.c:1087 parser/parse_expr.c:796 parser/parse_expr.c:1228
-#: parser/parse_expr.c:1267 parser/parse_oper.c:920
+#: parser/analyze.c:3132 parser/parse_coerce.c:221 parser/parse_expr.c:116
+#: parser/parse_expr.c:122
 #, c-format
-msgid "could not find array type for data type %s"
-msgstr "konnte Arraytyp für Datentyp %s nicht finden"
+msgid "there is no parameter $%d"
+msgstr "es gibt keine Parameter $%d"
 
-#: parser/parse_expr.c:1531
+#: parser/analyze.c:3137 tcop/postgres.c:1204
 #, c-format
-msgid "cannot cast type %s to %s"
-msgstr "kann Typ %s nicht in Typ %s umwandeln"
+msgid "could not determine data type of parameter $%d"
+msgstr "konnte Datentyp von Parameter $%d nicht ermitteln"
 
 #: parser/parse_agg.c:120
 msgid "aggregates not allowed in WHERE clause"
@@ -4537,11 +5393,11 @@ msgstr "Aggregatfunktion sind nicht in der WHERE-Klausel erlaubt"
 msgid "aggregates not allowed in JOIN conditions"
 msgstr "Aggregatfunktionen sind nicht JOIN-Bedingungen erlaubt"
 
-#: parser/parse_agg.c:145
+#: parser/parse_agg.c:143
 msgid "aggregates not allowed in GROUP BY clause"
 msgstr "Aggregatfunktionen sind nicht der der GROUP-BY-Klausel erlaubt"
 
-#: parser/parse_agg.c:305
+#: parser/parse_agg.c:316
 #, c-format
 msgid ""
 "column \"%s.%s\" must appear in the GROUP BY clause or be used in an "
@@ -4550,32 +5406,32 @@ msgstr ""
 "Spalte »%s.%s« muss in der GROUP-BY-Klausel erscheinen oder in einer "
 "Aggregatfunktion verwendent werden"
 
-#: parser/parse_agg.c:310
+#: parser/parse_agg.c:321
 #, c-format
 msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr ""
 "Unteranfrage verwendet nicht gruppierte Spalte »%s.%s« aus äußerer Anfrage"
 
-#: parser/parse_clause.c:336
+#: parser/parse_clause.c:363
 #, c-format
 msgid "JOIN/ON clause refers to \"%s\", which is not part of JOIN"
 msgstr "JOIN/ON-Klausel verweist auf »%s«, was nicht Teil des JOIN ist"
 
-#: gram.y:4765 parser/parse_clause.c:396
+#: parser/parse_clause.c:423 gram.y:5166
 msgid "subquery in FROM must have an alias"
 msgstr "Unteranfrage in FROM muss Aliasnamen erhalten"
 
-#: parser/parse_clause.c:419
+#: parser/parse_clause.c:446
 msgid "subquery in FROM may not have SELECT INTO"
 msgstr "Unteranfrage in FROM kann kein SELECT INTO enthalten"
 
-#: parser/parse_clause.c:441
+#: parser/parse_clause.c:468
 msgid "subquery in FROM may not refer to other relations of same query level"
 msgstr ""
 "Unteranfrage in FROM kann nicht auf andere Relationen auf der selben Ebene "
 "verweisen"
 
-#: parser/parse_clause.c:496
+#: parser/parse_clause.c:527
 msgid ""
 "function expression in FROM may not refer to other relations of same query "
 "level"
@@ -4583,140 +5439,160 @@ msgstr ""
 "Funktionsausdruck in FROM kann nicht auf andere Relationen auf der selben "
 "Ebene verweisen"
 
-#: parser/parse_clause.c:508
+#: parser/parse_clause.c:539
 msgid "cannot use aggregate function in function expression in FROM"
 msgstr ""
 "Aggregatfunktionen können nicht in Funktionsausdrücken in FROM verwendet "
 "werden"
 
-#: parser/parse_clause.c:728
+#: parser/parse_clause.c:759
 #, c-format
 msgid "column name \"%s\" appears more than once in USING clause"
 msgstr "Spaltenname »%s« erscheint mehrmals in der USING-Klausel"
 
-#: parser/parse_clause.c:743
+#: parser/parse_clause.c:774
 #, c-format
 msgid "common column name \"%s\" appears more than once in left table"
 msgstr "gemeinsamer Spaltenname »%s« erscheint mehrmals in der linken Tabelle"
 
-#: parser/parse_clause.c:752
+#: parser/parse_clause.c:783
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in left table"
 msgstr ""
 "Spalte »%s« aus der USING-Klausel existiert nicht in der linken Tabelle"
 
-#: parser/parse_clause.c:766
+#: parser/parse_clause.c:797
 #, c-format
 msgid "common column name \"%s\" appears more than once in right table"
 msgstr "gemeinsamer Spaltenname »%s« erscheint mehrmals in der rechten Tabelle"
 
-#: parser/parse_clause.c:775
+#: parser/parse_clause.c:806
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in right table"
 msgstr ""
 "Spalte »%s« aus der USING-Klausel existiert nicht in der rechten Tabelle"
 
-#: parser/parse_clause.c:827
+#: parser/parse_clause.c:858
 #, c-format
 msgid "column alias list for \"%s\" has too many entries"
 msgstr "Spaltenaliasliste für »%s« hat zu viele Einträge"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1020
+#: parser/parse_clause.c:1051
 #, c-format
 msgid "argument of %s must not contain variables"
 msgstr "Argument von %s darf keine Variablen enthalten"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1028
+#: parser/parse_clause.c:1059
 #, c-format
 msgid "argument of %s must not contain aggregates"
 msgstr "Argument von %s darf keine Aggregatfunktionen enthalten"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1036
+#: parser/parse_clause.c:1067
 #, c-format
 msgid "argument of %s must not contain subqueries"
 msgstr "Argument von %s darf keine Unteranfragen enthalten"
 
-#. translator: first %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1138
+#: parser/parse_clause.c:1179
 #, c-format
 msgid "%s \"%s\" is ambiguous"
 msgstr "%s »%s« ist nicht eindeutig"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1160
+#: parser/parse_clause.c:1201
 #, c-format
 msgid "non-integer constant in %s"
 msgstr "Konstante in %s ist keine ganze Zahl"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1177
+#: parser/parse_clause.c:1218
 #, c-format
 msgid "%s position %d is not in select list"
 msgstr "%s Position %d ist nicht in der Select-Liste"
 
-#: parser/parse_clause.c:1362
+#: parser/parse_clause.c:1411
 msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr ""
 "bei SELECT DISTINCT müssen ORDER-BY-Ausdrücke in der Select-Liste erscheinen"
 
-#: parser/parse_clause.c:1402
+#: parser/parse_clause.c:1451
 msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr ""
 "Ausdrücke in SELECT DISTINCT ON müssen mit den ersten Ausdrücken in ORDER BY "
 "übereinstimmen"
 
-#: parser/parse_coerce.c:253
+#: parser/parse_coerce.c:237
 #, c-format
 msgid "inconsistent types deduced for parameter $%d"
 msgstr "inkonsistente Typen für Parameter $%d ermittelt"
 
+#: parser/parse_coerce.c:676 parser/parse_coerce.c:703
+#: parser/parse_coerce.c:719 parser/parse_coerce.c:733
+#: parser/parse_expr.c:1654
+#, c-format
+msgid "cannot cast type %s to %s"
+msgstr "kann Typ %s nicht in Typ %s umwandeln"
+
+#: parser/parse_coerce.c:706
+msgid "Input has too few columns."
+msgstr "Eingabe hat zu wenige Spalten."
+
+#: parser/parse_coerce.c:722
+#, 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:736
+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:579
+#: parser/parse_coerce.c:770
 #, 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
-#: parser/parse_coerce.c:587 parser/parse_coerce.c:626
+#. translator: %s is name of a SQL construct, eg LIMIT
+#: parser/parse_coerce.c:778 parser/parse_coerce.c:817
 #, 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:618
+#: parser/parse_coerce.c:809
 #, c-format
 msgid "argument of %s must be type integer, not type %s"
 msgstr "Argument von %s muss Typ integer haben, nicht Typ %s"
 
-#: parser/parse_coerce.c:679
+#: parser/parse_coerce.c:871
 #, 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:741
+#: parser/parse_coerce.c:933
 #, c-format
 msgid "%s could not convert type %s to %s"
 msgstr "%s konnte Typ %s nicht in %s umwandeln"
 
-#: parser/parse_coerce.c:917
+#: parser/parse_coerce.c:1109
 msgid "arguments declared \"anyelement\" are not all alike"
 msgstr "als »anyelement« deklariert Argumente sind nicht alle gleich"
 
-#: parser/parse_coerce.c:934
+#: parser/parse_coerce.c:1126
 msgid "arguments declared \"anyarray\" are not all alike"
 msgstr "als »anyarray« deklarierte Argumente sind nicht alle gleich"
 
-#: parser/parse_coerce.c:963 parser/parse_coerce.c:1075
-#: parser/parse_coerce.c:1102
+#: parser/parse_coerce.c:1155 parser/parse_coerce.c:1267
+#: parser/parse_coerce.c:1294
 #, 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:980
+#: parser/parse_coerce.c:1172
 msgid ""
 "argument declared \"anyarray\" is not consistent with argument declared "
 "\"anyelement\""
@@ -4724,7 +5600,7 @@ msgstr ""
 "als »anyarray« deklariertes Argument ist nicht mit als »anyelement« "
 "deklariertem Argument konsistent"
 
-#: parser/parse_coerce.c:991
+#: parser/parse_coerce.c:1183
 msgid ""
 "could not determine anyarray/anyelement type because input has type \"unknown"
 "\""
@@ -4732,45 +5608,88 @@ msgstr ""
 "konnte Typ für anyarray/anyelement nicht bestimmen, weil Eingabe Typ "
 "»unknown« hat"
 
-#: parser/parse_func.c:89
+#: parser/parse_coerce.c:1208 parser/parse_coerce.c:1225
+#: parser/parse_coerce.c:1279 parser/parse_expr.c:794 parser/parse_expr.c:1350
+#: parser/parse_expr.c:1389 parser/parse_oper.c:920
 #, c-format
-msgid "cannot pass more than %d arguments to a function"
-msgstr "kann nicht mehr als %d Argumente an Funktion übergeben"
+msgid "could not find array type for data type %s"
+msgstr "konnte Arraytyp für Datentyp %s nicht finden"
+
+#: parser/parse_expr.c:361
+msgid "NULLIF requires = operator to yield boolean"
+msgstr "NULLIF erfordert, dass Operator = boolean ergibt"
+
+#: parser/parse_expr.c:486
+msgid "subquery must return a column"
+msgstr "Unteranfrage muss eine Spalte zurückgeben"
+
+#: parser/parse_expr.c:492
+msgid "subquery must return only one column"
+msgstr "Unteranfrage darf nur eine Spalte zurückgeben"
 
-#: parser/parse_func.c:224
+#: parser/parse_expr.c:549
 #, c-format
-msgid "cannot pass result of subquery or join \"%s\" to a function"
+msgid "row comparison cannot use operator %s"
+msgstr "Zeilenvergleich kann Operator %s nicht verwenden"
+
+#: parser/parse_expr.c:576
+msgid "subquery has too many columns"
+msgstr "Unteranfrage hat zu viele Spalten"
+
+#: parser/parse_expr.c:594
+#, c-format
+msgid "operator %s must return type boolean, not type %s"
+msgstr "Operator %s muss Typ boolean zurückgeben, nicht Typ %s"
+
+#: parser/parse_expr.c:597 parser/parse_expr.c:604
+msgid ""
+"The operator of a quantified predicate subquery must return type boolean."
 msgstr ""
-"kann Ergebnis von Unteranfrage oder Verbund »%s« nicht an Funktion übergeben"
+"Der Operator einer quantifizierten Unteranfrage muss Typ boolean zurückgeben."
 
-#: parser/parse_func.c:265
+#: parser/parse_expr.c:602
 #, c-format
-msgid "%s(*) specified, but %s is not an aggregate function"
-msgstr "%s(*) angegeben, aber %s ist keine Aggregatfunktion"
+msgid "operator %s must not return a set"
+msgstr "Operator %s darf keine Ergebnismenge zurückgeben"
+
+#: parser/parse_expr.c:614
+msgid "subquery has too few columns"
+msgstr "Unteranfrage hat zu wenige Spalten"
 
-#: parser/parse_func.c:271
+#: parser/parse_expr.c:1688 parser/parse_expr.c:1767
+msgid "unequal number of entries in row expression"
+msgstr "ungleiche Anzahl Einträge in Zeilenausdruck"
+
+#: parser/parse_expr.c:1709
 #, c-format
-msgid "DISTINCT specified, but %s is not an aggregate function"
-msgstr "DISTINCT wurde angegeben, aber %s ist keine Aggregatfunktion"
+msgid "operator %s is not supported for row expressions"
+msgstr "Operator %s wird nicht für Zeilenausdrücke unterstützt"
+
+#: parser/parse_expr.c:1804
+msgid "IS DISTINCT FROM requires = operator to yield boolean"
+msgstr "IS DISTINCT FROM erfordert, dass Operator = boolean ergibt"
 
-#: parser/parse_func.c:296
+#: parser/parse_func.c:88
 #, c-format
-msgid "attribute notation .%s applied to type %s, which is not a complex type"
-msgstr ""
-"Attributschreibweise .%s mit Typ %s verwendet, der kein zusammengesetzter "
-"Typ ist"
+msgid "cannot pass more than %d arguments to a function"
+msgstr "kann nicht mehr als %d Argumente an Funktion übergeben"
+
+#: parser/parse_func.c:165
+#, c-format
+msgid "%s(*) specified, but %s is not an aggregate function"
+msgstr "%s(*) angegeben, aber %s ist keine Aggregatfunktion"
 
-#: parser/parse_func.c:301
+#: parser/parse_func.c:171
 #, c-format
-msgid "attribute \"%s\" not found in data type %s"
-msgstr "Attribut »%s« nicht gefunden im Datentyp %s"
+msgid "DISTINCT specified, but %s is not an aggregate function"
+msgstr "DISTINCT wurde angegeben, aber %s ist keine Aggregatfunktion"
 
-#: parser/parse_func.c:311
+#: parser/parse_func.c:195
 #, c-format
 msgid "function %s is not unique"
 msgstr "Funktion %s ist nicht eindeutig"
 
-#: parser/parse_func.c:314
+#: parser/parse_func.c:198
 msgid ""
 "Could not choose a best candidate function. You may need to add explicit "
 "type casts."
@@ -4778,7 +5697,7 @@ msgstr ""
 "Konnte keine beste Kandidatfunktion auswählen. Sie müssen möglicherweise "
 "ausdrückliche Typumwandlungen hinzufügen."
 
-#: parser/parse_func.c:322
+#: parser/parse_func.c:206
 msgid ""
 "No function matches the given name and argument types. You may need to add "
 "explicit type casts."
@@ -4786,43 +5705,69 @@ msgstr ""
 "Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen "
 "überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen."
 
-#: parser/parse_func.c:371
+#: parser/parse_func.c:255
 msgid "aggregates may not return sets"
 msgstr "Aggregatfunktionen können keine Ergebnismengen zurückgeben"
 
-#: parser/parse_func.c:1353
-#, c-format
-msgid "column %s.%s.%s does not exist"
-msgstr "Spalte %s.%s.%s existiert nicht"
-
-#: parser/parse_func.c:1358
+#: parser/parse_func.c:1208
 #, c-format
 msgid "column %s.%s does not exist"
 msgstr "Spalte %s.%s existiert nicht"
 
-#: parser/parse_func.c:1428
+#: parser/parse_func.c:1219
+#, c-format
+msgid "column \"%s\" not found in data type %s"
+msgstr "Spalte »%s« nicht gefunden im Datentyp %s"
+
+#: parser/parse_func.c:1224
+#, c-format
+msgid "could not identify column \"%s\" in record data type"
+msgstr "konnte Spalte »%s« im Record-Datentyp nicht identifizieren"
+
+#: parser/parse_func.c:1229
+#, c-format
+msgid "column notation .%s applied to type %s, which is not a composite type"
+msgstr ""
+"Spaltenschreibweise .%s mit Typ %s verwendet, der kein zusammengesetzter Typ "
+"ist"
+
+#: parser/parse_func.c:1301
 #, c-format
 msgid "aggregate %s(*) does not exist"
 msgstr "Aggregatfunktion %s(*) existiert nicht"
 
-#: parser/parse_func.c:1433
+#: parser/parse_func.c:1306
 #, c-format
 msgid "aggregate %s(%s) does not exist"
 msgstr "Aggregatfunktion %s(%s) existiert nicht"
 
-#: parser/parse_func.c:1454
+#: parser/parse_func.c:1327
 #, c-format
 msgid "function %s(%s) is not an aggregate"
 msgstr "Funktion %s(%s) ist keine Aggregatfunktion"
 
+#: parser/parse_node.c:95
+#, c-format
+msgid "cannot subscript type %s because it is not an array"
+msgstr "kann aus Typ %s kein Element auswählen, weil er kein Array ist"
+
+#: parser/parse_node.c:198 parser/parse_node.c:221
+msgid "array subscript must have type integer"
+msgstr "Arrayindex muss Typ integer haben"
+
+#: parser/parse_node.c:243
+#, c-format
+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:84 parser/parse_oper.c:785 utils/adt/regproc.c:467
 #: utils/adt/regproc.c:487 utils/adt/regproc.c:665
 #, c-format
 msgid "operator does not exist: %s"
 msgstr "Operator existiert nicht: %s"
 
-#: parser/parse_oper.c:185 utils/adt/arrayfuncs.c:2397
-#: utils/adt/ri_triggers.c:3601
+#: parser/parse_oper.c:185 utils/adt/arrayfuncs.c:2581
+#: utils/adt/ri_triggers.c:3642
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "konnte keinen Ist-Gleich-Operator für Typ %s ermitteln"
@@ -4877,20 +5822,6 @@ msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr ""
 "op ANY/ALL (array) erfordert, dass Operator keine Ergebnismenge zurückgibt"
 
-#: parser/parse_node.c:124
-#, c-format
-msgid "cannot subscript type %s because it is not an array"
-msgstr "kann aus Typ %s kein Element auswählen, weil er kein Array ist"
-
-#: parser/parse_node.c:183 parser/parse_node.c:206
-msgid "array subscript must have type integer"
-msgstr "Arrayindex muss Typ integer haben"
-
-#: parser/parse_node.c:228
-#, c-format
-msgid "array assignment requires type %s but expression is of type %s"
-msgstr "Arrayzuweisung erfordert Typ %s, aber Ausdruck hat Typ %s"
-
 #: parser/parse_relation.c:174 parser/parse_relation.c:189
 #, c-format
 msgid "table reference \"%s\" is ambiguous"
@@ -4906,93 +5837,106 @@ msgstr "Tabellenbezug %u ist nicht eindeutig"
 msgid "table name \"%s\" specified more than once"
 msgstr "Tabellenname »%s« mehrmals angegeben"
 
-#: parser/parse_relation.c:477 parser/parse_relation.c:573
+#: parser/parse_relation.c:510 parser/parse_relation.c:609
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "Spaltenverweis »%s« ist nicht eindeutig"
 
-#: parser/parse_relation.c:668 parser/parse_relation.c:763
-#: parser/parse_relation.c:858 parser/parse_relation.c:978
+#: parser/parse_relation.c:726 parser/parse_relation.c:925
 #, c-format
 msgid "table \"%s\" has %d columns available but %d columns specified"
 msgstr "Tabelle »%s« hat %d Spalten, aber %d Spalten wurden angegeben"
 
-#: parser/parse_relation.c:935
+#: parser/parse_relation.c:997
 msgid ""
 "a column definition list is only allowed for functions returning \"record\""
 msgstr ""
 "eine Spaltendefinitionsliste ist nur erlaubt bei Funktionen, die »record« "
 "zurückgeben"
 
-#: parser/parse_relation.c:946
+#: parser/parse_relation.c:1008
 msgid "a column definition list is required for functions returning \"record\""
 msgstr ""
 "eine Spaltendefinitionsliste ist erforderlich bei Funktionen, die »record« "
 "zurückgeben"
 
-#: parser/parse_relation.c:1007
+#: parser/parse_relation.c:1047
 #, c-format
 msgid "too many column aliases specified for function %s"
 msgstr "zu viele Spaltenaliasnamen für Funktion %s angegeben"
 
-#: parser/parse_relation.c:1030
+#: parser/parse_relation.c:1071
 #, c-format
-msgid "function \"%s\" in FROM has unsupported return type"
-msgstr "Funktion »%s« in FROM hat nicht unterstützten Rückgabetyp"
+msgid "function \"%s\" in FROM has unsupported return type %s"
+msgstr "Funktion »%s« in FROM hat nicht unterstützten Rückgabetyp %s"
 
-#: parser/parse_relation.c:1422 parser/parse_relation.c:1666
-msgid "function in FROM has unsupported return type"
-msgstr "Funktion in FROM hat nicht unterstützten Rückgabetyp"
-
-#: parser/parse_relation.c:1910
+#: parser/parse_relation.c:2003
 #, c-format
 msgid "missing FROM-clause entry in subquery for table \"%s\""
 msgstr "fehlender Eintrag in FROM-Klausel für Tabelle »%s« in Unteranfrage"
 
-#: parser/parse_relation.c:1915
+#: parser/parse_relation.c:2008
 #, c-format
 msgid "missing FROM-clause entry for table \"%s\""
 msgstr "fehlender Eintrag in FROM-Klausel für Tabelle »%s«"
 
-#: parser/parse_relation.c:1934
+#: parser/parse_relation.c:2027
 #, c-format
 msgid "adding missing FROM-clause entry in subquery for table \"%s\""
 msgstr ""
 "fehlender Eintrag in FROM-Klausel für Tabelle »%s« in Unteranfrage wird "
 "hinzugefügt"
 
-#: parser/parse_relation.c:1939
+#: parser/parse_relation.c:2032
 #, c-format
 msgid "adding missing FROM-clause entry for table \"%s\""
 msgstr "fehlender Eintrag in FROM-Klausel für Tabelle »%s« wird hinzugefügt"
 
-#: parser/parse_target.c:66
-#, c-format
-msgid "relation reference \"%s\" cannot be used as a select-list entry"
-msgstr ""
-"Verweis auf Relation »%s« kann nicht als Select-Listen-Eintrag verwendet "
-"werden"
-
-#: parser/parse_target.c:68
-#, c-format
-msgid "Write \"%s\".* to denote all the columns of the relation."
-msgstr "Schreiben Sie »%s« um alle Spalten der Relation auszuwählen."
-
-#: parser/parse_target.c:331
+#: parser/parse_target.c:268 parser/parse_target.c:503
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "kann Systemspalte »%s« keinen Wert zuweisen"
 
-#: parser/parse_target.c:353
+#: parser/parse_target.c:292
 msgid "cannot set an array element to DEFAULT"
 msgstr "kann Arrayelement nicht auf DEFAULT setzten"
 
-#: parser/parse_target.c:420
+#: parser/parse_target.c:296
+#, fuzzy
+msgid "cannot set a subfield to DEFAULT"
+msgstr "kann Arrayelement nicht auf DEFAULT setzten"
+
+#: parser/parse_target.c:357
 #, c-format
 msgid "column \"%s\" is of type %s but expression is of type %s"
 msgstr "Spalte »%s« hat Typ %s, aber der Ausdruck hat Typ %s"
 
-#: parser/parse_target.c:555
+#: parser/parse_target.c:489
+#, c-format
+msgid ""
+"cannot assign to field \"%s\" of column \"%s\" because its type %s is not a "
+"composite type"
+msgstr ""
+
+#: parser/parse_target.c:497
+#, c-format
+msgid ""
+"cannot assign to field \"%s\" of column \"%s\" because there is no such "
+"column in data type %s"
+msgstr ""
+
+#: parser/parse_target.c:567
+#, fuzzy, c-format
+msgid ""
+"array assignment to \"%s\" requires type %s but expression is of type %s"
+msgstr "Arrayzuweisung erfordert Typ %s, aber Ausdruck hat Typ %s"
+
+#: parser/parse_target.c:576
+#, fuzzy, c-format
+msgid "subfield \"%s\" is of type %s but expression is of type %s"
+msgstr "Spalte »%s« hat Typ %s, aber der Ausdruck hat Typ %s"
+
+#: parser/parse_target.c:805
 msgid "SELECT * with no tables specified is not valid"
 msgstr "SELECT * ist nicht gültig, wenn keine Tabellen angegeben sind"
 
@@ -5011,298 +5955,294 @@ 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:206 parser/parse_type.c:237
+#: parser/parse_type.c:206 parser/parse_type.c:237 utils/cache/typcache.c:155
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "Typ %s ist nur eine Hülle"
 
-#: parser/parse_type.c:441 parser/parse_type.c:529
+#: parser/parse_type.c:372 parser/parse_type.c:467
 #, c-format
 msgid "invalid type name \"%s\""
 msgstr "ungültiger Typname: »%s«"
 
-#: scan.l:295
-msgid "unterminated /* comment"
-msgstr "/*-Kommentar nicht abgechlossen"
-
-#: scan.l:323
-msgid "unterminated bit string literal"
-msgstr "Bitkettenkonstante nicht abgeschlossen"
-
-#: scan.l:342
-msgid "unterminated hexadecimal string literal"
-msgstr "hexadezimale Zeichenkette nicht abgeschlossen"
-
-#: scan.l:388
-msgid "unterminated quoted string"
-msgstr "Zeichenkette nicht abgeschlossen"
-
-#: scan.l:399
-msgid "zero-length delimited identifier"
-msgstr "Bezeichner in Anführungszeichen hat Länge null"
-
-#: scan.l:408 scan.l:566
+#: parser/scansup.c:182
 #, c-format
 msgid "identifier \"%s\" will be truncated to \"%.*s\""
 msgstr "Bezeichner »%s« wird auf »%.*s« gekürzt"
 
-#: scan.l:422
-msgid "unterminated quoted identifier"
-msgstr "Bezeichner in Anführungszeichen nicht abgeschlossen"
-
-#. translator: %s is typically "syntax error"
-#: scan.l:592
-#, c-format
-msgid "%s at end of input"
-msgstr "Fehler »%s« am Ende der Eingabe"
-
-#. translator: first %s is typically "syntax error"
-#: scan.l:600
-#, c-format
-msgid "%s at or near \"%s\""
-msgstr "Fehler »%s« bei »%s«"
-
-#: y.tab.c:9086
+#: y.tab.c:9593
 msgid "syntax error: cannot back up"
 msgstr "Syntaxfehler: kann nicht zurück"
 
-#: gram.y:961 gram.y:987
+#: gram.y:990 gram.y:1016
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "Zeitzonenintervall muss HOUR oder HOUR TO MINUTE sein"
 
-#: gram.y:972 gram.y:5090 gram.y:7188
+#: gram.y:1001 gram.y:5474 gram.y:7537
 #, c-format
 msgid "INTERVAL(%d) precision must not be negative"
 msgstr "INTERVAL(%d)-Präzision darf nicht negativ sein"
 
-#: gram.y:978 gram.y:5096 gram.y:7194
+#: gram.y:1007 gram.y:5480 gram.y:7543
 #, c-format
 msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
 msgstr "INTERVAL(%d)-Präzision auf erlaubtes Maximum %d reduziert"
 
-#: gram.y:1770 utils/adt/ri_triggers.c:300 utils/adt/ri_triggers.c:362
-#: utils/adt/ri_triggers.c:541 utils/adt/ri_triggers.c:780
-#: utils/adt/ri_triggers.c:971 utils/adt/ri_triggers.c:1132
-#: utils/adt/ri_triggers.c:1316 utils/adt/ri_triggers.c:1485
-#: utils/adt/ri_triggers.c:1666 utils/adt/ri_triggers.c:1836
-#: utils/adt/ri_triggers.c:2054 utils/adt/ri_triggers.c:2234
-#: utils/adt/ri_triggers.c:2439 utils/adt/ri_triggers.c:2535
-#: utils/adt/ri_triggers.c:2657
+#: gram.y:1887 utils/adt/ri_triggers.c:302 utils/adt/ri_triggers.c:364
+#: utils/adt/ri_triggers.c:543 utils/adt/ri_triggers.c:782
+#: utils/adt/ri_triggers.c:973 utils/adt/ri_triggers.c:1134
+#: utils/adt/ri_triggers.c:1318 utils/adt/ri_triggers.c:1487
+#: utils/adt/ri_triggers.c:1668 utils/adt/ri_triggers.c:1838
+#: utils/adt/ri_triggers.c:2056 utils/adt/ri_triggers.c:2236
+#: utils/adt/ri_triggers.c:2441 utils/adt/ri_triggers.c:2537
+#: utils/adt/ri_triggers.c:2660
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL ist noch nicht implementiert"
 
-#: gram.y:1852
+#: gram.y:1977
 msgid "CREATE TABLE AS may not specify INTO"
 msgstr "CREATE TABLE AS kann INTO nicht verwenden"
 
-#: gram.y:2260
+#: gram.y:2436
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION ist noch nicht implementiert"
 
-#: gram.y:2276
+#: gram.y:2452
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION ist noch nicht implementiert"
 
-#: gram.y:3086
+#: gram.y:3328
 msgid "CREATE FUNCTION / OUT parameters are not implemented"
 msgstr "CREATE FUNCTION / OUT-Parameter sind noch nicht implementiert"
 
-#: gram.y:3093
+#: gram.y:3335
 msgid "CREATE FUNCTION / INOUT parameters are not implemented"
 msgstr "CREATE FUNCTION / INOUT-Parameter sind noch nicht implementiert"
 
-#: gram.y:3247 utils/adt/regproc.c:639
+#: gram.y:3496 utils/adt/regproc.c:639
 msgid "missing argument"
 msgstr "Argument fehlt"
 
-#: gram.y:3248 utils/adt/regproc.c:640
+#: gram.y:3497 utils/adt/regproc.c:640
 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:4150
+#: gram.y:4545
 msgid "column name list not allowed in CREATE TABLE / AS EXECUTE"
 msgstr "Spaltennamenliste nicht erlaubt in CREATE TABLE / EXECUTE"
 
-#: gram.y:4615
+#: gram.y:5016
 msgid "LIMIT #,# syntax is not supported"
 msgstr "Syntax LIMIT x,y wird nicht unterstützt"
 
-#: gram.y:4616
+#: gram.y:5017
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Verwenden Sie die getrennten Klauseln LIMIT und OFFSET."
 
-#: gram.y:4766
+#: gram.y:5167
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Zum Beispiel FROM (SELECT ...) [AS] xyz."
 
-#: gram.y:5193
+#: gram.y:5577
 msgid "precision for type float must be at least 1 bit"
 msgstr "Präzision von Typ float muss mindestens 1 Bit sein"
 
-#: gram.y:5201
+#: gram.y:5585
 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:5215 gram.y:5230
+#: gram.y:5599 gram.y:5614
 #, c-format
 msgid "NUMERIC precision %d must be between 1 and %d"
 msgstr "Präzision von NUMERIC (%d) muss zwischen 1 und %d liegen"
 
-#: gram.y:5220
+#: gram.y:5604
 #, c-format
 msgid "NUMERIC scale %d must be between 0 and precision %d"
 msgstr "Skala von NUMERIC (%d) muss zwischen 0 und %d liegen"
 
-#: gram.y:5248 gram.y:5263
+#: gram.y:5632 gram.y:5647
 #, c-format
 msgid "DECIMAL precision %d must be between 1 and %d"
 msgstr "Präzision von DECIMAL (%d) muss zwischen 1 und %d liegen"
 
-#: gram.y:5253
+#: gram.y:5637
 #, c-format
 msgid "DECIMAL scale %d must be between 0 and precision %d"
 msgstr "Skala von DECIMAL (%d) muss zwischen 0 und %d liegen"
 
-#: gram.y:5313 gram.y:5391
+#: gram.y:5697 gram.y:5775
 #, c-format
 msgid "length for type %s must be at least 1"
 msgstr "Länge von Typ %s muss mindestens 1 sein"
 
-#: gram.y:5318 gram.y:5396
+#: gram.y:5702 gram.y:5780
 #, c-format
 msgid "length for type %s cannot exceed %d"
 msgstr "Länge von Typ %s kann %d nicht überschreiten"
 
-#: gram.y:5469
+#: gram.y:5853
 #, c-format
 msgid "TIMESTAMP(%d)%s precision must not be negative"
 msgstr "Präzision von TIMESTAMP(%d)%s darf nicht negativ sein"
 
-#: gram.y:5475
+#: gram.y:5859
 #, c-format
 msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
 msgstr "Präzision von TIMESTAMP(%d)%s auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:5510
+#: gram.y:5894
 #, c-format
 msgid "TIME(%d)%s precision must not be negative"
 msgstr "Präzision von TIME(%d)%s darf nicht negativ sein"
 
-#: gram.y:5516
+#: gram.y:5900
 #, c-format
 msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr "Präzision von TIME(%d)%s auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:5662 gram.y:7766 gram.y:7822
-msgid "unequal number of entries in row expression"
-msgstr "ungleiche Anzahl Einträge in Zeilenausdruck"
-
-#: gram.y:6075
+#: gram.y:6354
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "UNIQUE-Prädikat ist noch nicht implementiert"
 
-#: gram.y:6317
+#: gram.y:6637
 #, c-format
 msgid "CURRENT_TIME(%d) precision must not be negative"
 msgstr "Präzision von CURRENT_TIME(%d) darf nicht negativ sein"
 
-#: gram.y:6323
+#: gram.y:6643
 #, c-format
 msgid "CURRENT_TIME(%d) precision reduced to maximum allowed, %d"
 msgstr "Präzision von CURRENT_TIME(%d) auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:6371
+#: gram.y:6691
 #, c-format
 msgid "CURRENT_TIMESTAMP(%d) precision must not be negative"
 msgstr "Präzision von CURRENT_TIMESTAMP(%d) darf nicht negativ sein"
 
-#: gram.y:6377
+#: gram.y:6697
 #, c-format
 msgid "CURRENT_TIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 "Präzision von CURRENT_TIMESTAMP(%d) auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:6424
+#: gram.y:6744
 #, c-format
 msgid "LOCALTIME(%d) precision must not be negative"
 msgstr "Präzision von LOCALTIME(%d) darf nicht negativ sein"
 
-#: gram.y:6430
+#: gram.y:6750
 #, c-format
 msgid "LOCALTIME(%d) precision reduced to maximum allowed, %d"
 msgstr "Präzision von LOCALTIME(%d) auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:6478
+#: gram.y:6798
 #, c-format
 msgid "LOCALTIMESTAMP(%d) precision must not be negative"
 msgstr "Präzision von LOCALTIMESTAMP(%d) darf nicht negativ sein"
 
-#: gram.y:6484
+#: gram.y:6804
 #, c-format
 msgid "LOCALTIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr "Präzision von LOCALTIMESTAMP(%d) auf erlaubten Höchstwert %d reduziert"
 
-#: gram.y:7635
+#: gram.y:7984
 msgid "OLD used in query that is not in a rule"
 msgstr "OLD in einer Anfrage verwendet, die nicht Teil einer Regel ist"
 
-#: gram.y:7644
+#: gram.y:7993
 msgid "NEW used in query that is not in a rule"
 msgstr "NEW in einer Anfrage verwendet, die nicht Teil einer Regel ist"
 
-#: y.tab.c:18246
+#: y.tab.c:19173
 msgid "syntax error; also virtual memory exhausted"
 msgstr "Syntaxfehler; außerdem virtuellen Speicher aufgebraucht"
 
-#: y.tab.c:18250
+#: y.tab.c:19177 gram.y:8218 gram.y:8220
 msgid "syntax error"
 msgstr "Syntaxfehler"
 
-#: y.tab.c:18364
+#: y.tab.c:19276
 msgid "parser stack overflow"
 msgstr "Parserstack-Überlauf"
 
-#: gram.y:7802
-#, c-format
-msgid "operator %s is not supported for row expressions"
-msgstr "Operator %s wird nicht für Zeilenausdrücke unterstützt"
-
-#: gram.y:7879
+#: gram.y:8192
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf linker Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:7885
+#: gram.y:8198
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf rechter Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:7923
+#: gram.y:8277
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "mehrere ORDER-BY-Klauseln sind nicht erlaubt"
 
-#: gram.y:7931
+#: gram.y:8285
 msgid "multiple FOR UPDATE clauses not allowed"
 msgstr "mehrere FOR-UPDATE-Klauseln sind nicht erlaubt"
 
-#: gram.y:7939
+#: gram.y:8293
 msgid "multiple OFFSET clauses not allowed"
 msgstr "mehrere OFFSET-Klauseln sind nicht erlaubt"
 
-#: gram.y:7947
+#: gram.y:8301
 msgid "multiple LIMIT clauses not allowed"
 msgstr "mehrere LIMIT-Klauseln sind nicht erlaubt"
 
-#: port/pg_sema.c:117 port/sysv_sema.c:117
+#: scan.l:312
+msgid "unterminated /* comment"
+msgstr "/*-Kommentar nicht abgechlossen"
+
+#: scan.l:339
+msgid "unterminated bit string literal"
+msgstr "Bitkettenkonstante nicht abgeschlossen"
+
+#: scan.l:358
+msgid "unterminated hexadecimal string literal"
+msgstr "hexadezimale Zeichenkette nicht abgeschlossen"
+
+#: scan.l:407
+msgid "unterminated quoted string"
+msgstr "Zeichenkette nicht abgeschlossen"
+
+#: scan.l:441
+#, fuzzy
+msgid "unterminated dollar-quoted string"
+msgstr "Zeichenkette nicht abgeschlossen"
+
+#: scan.l:453
+msgid "zero-length delimited identifier"
+msgstr "Bezeichner in Anführungszeichen hat Länge null"
+
+#: scan.l:466
+msgid "unterminated quoted identifier"
+msgstr "Bezeichner in Anführungszeichen nicht abgeschlossen"
+
+#. translator: %s is typically "syntax error"
+#: scan.l:622
+#, c-format
+msgid "%s at end of input"
+msgstr "Fehler »%s« am Ende der Eingabe"
+
+#. translator: first %s is typically "syntax error"
+#: scan.l:630
+#, c-format
+msgid "%s at or near \"%s\""
+msgstr "Fehler »%s« bei »%s«"
+
+#: port/sysv_sema.c:117 port/pg_sema.c:117
 #, c-format
 msgid "could not create semaphores: %m"
 msgstr "konnte Semaphore nicht erzeugen: %m"
 
-#: port/pg_sema.c:118 port/sysv_sema.c:118
-#, c-format
-msgid "Failed system call was semget(%d, %d, 0%o)."
+#: port/sysv_sema.c:118 port/pg_sema.c:118
+#, fuzzy, c-format
+msgid "Failed system call was semget(%lu, %d, 0%o)."
 msgstr "Fehlgeschlagener Systemaufruf war semget(%d, %d, 0%o)."
 
-#: port/pg_sema.c:122 port/sysv_sema.c:122
+#: port/sysv_sema.c:122 port/pg_sema.c:122
 #, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space.\n"
@@ -5325,7 +6265,7 @@ msgstr ""
 "Die PostgreSQL-Dokumentation enthält weitere Informationen, wie Sie Ihr "
 "System für PostgreSQL konfigurieren können."
 
-#: port/pg_sema.c:151 port/sysv_sema.c:151
+#: port/sysv_sema.c:151 port/pg_sema.c:151
 #, c-format
 msgid ""
 "You possibly need to raise your kernel's SEMVMX value to be at least %d.  "
@@ -5334,17 +6274,17 @@ msgstr ""
 "Sie müssen möglicherweise den Kernelparameter SEMVMX auf mindestens %d "
 "erhöhen.  Weitere Informationen finden Sie in der PostgreSQL-Dokumentation."
 
-#: port/pg_shmem.c:92 port/sysv_shmem.c:92
+#: port/sysv_shmem.c:94 port/pg_shmem.c:94
 #, c-format
 msgid "could not create shared memory segment: %m"
 msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
 
-#: port/pg_shmem.c:93 port/sysv_shmem.c:93
-#, c-format
-msgid "Failed system call was shmget(key=%d, size=%u, 0%o)."
+#: port/sysv_shmem.c:95 port/pg_shmem.c:95
+#, fuzzy, c-format
+msgid "Failed system call was shmget(key=%lu, size=%u, 0%o)."
 msgstr "Fehlgeschlagener Systemaufruf war shmget(key=%d, größe=%u, 0%o)."
 
-#: port/pg_shmem.c:97 port/sysv_shmem.c:97
+#: port/sysv_shmem.c:99 port/pg_shmem.c:99
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory "
@@ -5371,7 +6311,7 @@ msgstr ""
 "Die PostgreSQL-Dokumentation enthält weitere Informationen über die\n"
 "Konfiguration von Shared Memory."
 
-#: port/pg_shmem.c:110 port/sysv_shmem.c:110
+#: port/sysv_shmem.c:112 port/pg_shmem.c:112
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory "
@@ -5389,272 +6329,399 @@ msgstr ""
 "Die PostgreSQL-Dokumentation enthält weitere Informationen über die "
 "Konfiguration von Shared Memory."
 
-#: port/pg_shmem.c:119 port/sysv_shmem.c:119
+#: port/sysv_shmem.c:121 port/pg_shmem.c:121
+#, 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 "
+"need to raise the SHMMNI parameter in your kernel, or because the system's "
+"overall limit for shared memory has been reached.  If you cannot increase "
+"the shared memory limit, reduce PostgreSQL's shared memory request "
+"(currently %u bytes), by reducing its shared_buffers parameter (currently %"
+"d) and/or its max_connections parameter (currently %d).\n"
+"The PostgreSQL documentation contains more information about shared memory "
+"configuration."
+msgstr ""
+"Dieser Fehler bedeutet *nicht*, dass kein Platz mehr auf der Festplatte "
+"ist.  Er tritt auf, wenn entweder alle verfügbaren Shared-Memory-IDs "
+"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 %u Bytes), indem Sie den "
+"PostgreSQL-Parameter »shared_buffers« (aktuell %d) und/oder "
+"»max_connections« (aktuell %d) reduzieren.\\n\"\n"
+"Die PostgreSQL-Dokumentation enthält weitere Informationen über die "
+"Konfiguration von Shared Memory."
+
+#: port/win32/security.c:39
+#, fuzzy, c-format
+msgid "could not open process token: %d\n"
+msgstr "konnte Prozess nicht starten (fork-Fehler): %m"
+
+#: port/win32/security.c:46
+msgid "could not get token information: got zero size\n"
+msgstr ""
+
+#: port/win32/security.c:52 port/win32/security.c:69
+#, fuzzy, c-format
+msgid "could not get token information: %d\n"
+msgstr "konnte Relation »%s« nicht erweitern: %m"
+
+#: port/win32/security.c:60
+#, fuzzy, c-format
+msgid "could not allocate %i bytes for token information\n"
+msgstr "kann Wochennummer nicht berechnen ohne Jahrinformationen"
+
+#: port/win32/security.c:80
+#, c-format
+msgid "could not get SID for Administrators group: %d\n"
+msgstr ""
+
+#: port/win32/security.c:89
+#, fuzzy, c-format
+msgid "could not get SID for PowerUsers group: %d\n"
+msgstr "konnte Prozess nicht starten (fork-Fehler): %m"
+
+#: port/win32/signal.c:227
+#, fuzzy, c-format
+msgid "could not create signal listener pipe: %d; retrying\n"
+msgstr "konnte Serverdatei »%s« nicht erstellen: %m"
+
+#: port/win32/signal.c:239
+#, fuzzy, c-format
+msgid "could not create signal dispatch thread: %d\n"
+msgstr "konnte Semaphore nicht erzeugen: %m"
+
+#: postmaster/bgwriter.c:336
+#, c-format
+msgid "checkpoints are occurring too frequently (%d seconds apart)"
+msgstr "Checkpoints passieren zu oft (alle %d Sekunden)"
+
+#: postmaster/bgwriter.c:338
+msgid ""
+"Consider increasing the configuration parameter \"checkpoint_segments\"."
+msgstr ""
+"Erhöhen Sie eventuell den Konfigurationsparameter »checkpoint_segments«."
+
+#: postmaster/bgwriter.c:490
+msgid "not enough shared memory for background writer"
+msgstr ""
+
+#: postmaster/bgwriter.c:555
+#, fuzzy
+msgid "checkpoint request failed"
+msgstr "Checkpoint-Prozess"
+
+#: postmaster/bgwriter.c:556
+#, fuzzy
+msgid "Consult the postmaster log for details."
+msgstr "Einzelheiten finden Sie im Serverlog."
+
+#: postmaster/pgarch.c:164
+#, fuzzy, c-format
+msgid "could not fork archiver: %m"
+msgstr "konnte Prozess nicht starten (fork-Fehler): %m"
+
+#: postmaster/pgarch.c:392
+#, fuzzy, c-format
+msgid "transaction log file \"%s\" could not be archived"
+msgstr "entferne Transaktionslogdatei »%s«"
+
+#: postmaster/pgarch.c:475
 #, 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 "
-"need to raise the SHMMNI parameter in your kernel, or because the system's "
-"overall limit for shared memory has been reached.  If you cannot increase "
-"the shared memory limit, reduce PostgreSQL's shared memory request "
-"(currently %u bytes), by reducing its shared_buffers parameter (currently %"
-"d) and/or its max_connections parameter (currently %d).\n"
-"The PostgreSQL documentation contains more information about shared memory "
-"configuration."
+msgid "archive command \"%s\" failed: return code %d"
 msgstr ""
-"Dieser Fehler bedeutet *nicht*, dass kein Platz mehr auf der Festplatte "
-"ist.  Er tritt auf, wenn entweder alle verfügbaren Shared-Memory-IDs "
-"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 %u Bytes), indem Sie den "
-"PostgreSQL-Parameter »shared_buffers« (aktuell %d) und/oder "
-"»max_connections« (aktuell %d) reduzieren.\\n\"\n"
-"Die PostgreSQL-Dokumentation enthält weitere Informationen über die "
-"Konfiguration von Shared Memory."
 
-#: postmaster/pgstat.c:201
+#: postmaster/pgarch.c:480
+#, c-format
+msgid "archived transaction log file \"%s\""
+msgstr "archivierte Transaktionslogdatei »%s«"
+
+#: postmaster/pgarch.c:526
+#, fuzzy, c-format
+msgid "could not open archive status directory \"%s\": %m"
+msgstr "konnte nicht auf Verzeichnis »%s« zugreifen: %m"
+
+#: postmaster/pgarch.c:565
+#, fuzzy, c-format
+msgid "could not read archive status directory \"%s\": %m"
+msgstr "konnte nicht auf Verzeichnis »%s« zugreifen: %m"
+
+#: postmaster/pgstat.c:258
 #, c-format
 msgid "could not resolve \"localhost\": %s"
 msgstr "konnte »localhost« nicht auflösen: %s"
 
-#: postmaster/pgstat.c:221
+#: postmaster/pgstat.c:286
 #, c-format
 msgid "could not create socket for statistics collector: %m"
 msgstr "konnte Socket für Statistiksammelprozess nicht erzeugen: %m"
 
-#: postmaster/pgstat.c:233
+#: postmaster/pgstat.c:298
 #, c-format
 msgid "could not bind socket for statistics collector: %m"
 msgstr "konnte Socket für Statistiksammelprozess nicht binden: %m"
 
-#: postmaster/pgstat.c:245
+#: postmaster/pgstat.c:309
 #, c-format
 msgid "could not get address of socket for statistics collector: %m"
 msgstr ""
 "konnte Adresse für Socket für Statistiksammelprozess nicht ermitteln: %m"
 
-#: postmaster/pgstat.c:259
+#: postmaster/pgstat.c:325
 #, c-format
 msgid "could not connect socket for statistics collector: %m"
 msgstr "konnte nicht mit Socket für Statistiksammelprozess verbinden: %m"
 
-#: postmaster/pgstat.c:273
+#: postmaster/pgstat.c:342
+#, fuzzy, c-format
+msgid "could not send test message on socket for statistics collector: %m"
+msgstr ""
+"konnte Adresse für Socket für Statistiksammelprozess nicht ermitteln: %m"
+
+#: postmaster/pgstat.c:367 postmaster/pgstat.c:1566
 #, c-format
-msgid "could not set statistics collector socket to nonblocking mode: %m"
+msgid "select() failed in statistics collector: %m"
+msgstr "select() im Statistiksammelprozess fehlgeschlagen: %m"
+
+#: postmaster/pgstat.c:382
+#, fuzzy
+msgid "test message did not get through on socket for statistics collector"
+msgstr ""
+"konnte Adresse für Socket für Statistiksammelprozess nicht ermitteln: %m"
+
+#: postmaster/pgstat.c:394
+#, fuzzy, c-format
+msgid "could not receive test message on socket for statistics collector: %m"
+msgstr ""
+"konnte Adresse für Socket für Statistiksammelprozess nicht ermitteln: %m"
+
+#: postmaster/pgstat.c:404
+#, fuzzy
+msgid "incorrect test message transmission on socket for statistics collector"
+msgstr ""
+"konnte Adresse für Socket für Statistiksammelprozess nicht ermitteln: %m"
+
+#: postmaster/pgstat.c:419
+#, fuzzy
+msgid "disabling statistics collector for lack of working socket"
 msgstr ""
 "konnte Socket von Statistiksammelprozess nicht auf nicht blockierenden Modus "
 "setzen: %m"
 
-#: postmaster/pgstat.c:284
+#: postmaster/pgstat.c:433
 #, c-format
-msgid "could not create pipe for statistics collector: %m"
-msgstr "konnte Pipe für Statistiksammelprozess nicht erzeugen: %m"
+msgid "could not set statistics collector socket to nonblocking mode: %m"
+msgstr ""
+"konnte Socket von Statistiksammelprozess nicht auf nicht blockierenden Modus "
+"setzen: %m"
 
-#: postmaster/pgstat.c:345
+#: postmaster/pgstat.c:572
 msgid "statistics collector startup skipped"
 msgstr "Start des Statistiksammelprozesses übersprungen"
 
-#: postmaster/pgstat.c:376
+#: postmaster/pgstat.c:606
 #, c-format
 msgid "could not fork statistics buffer: %m"
 msgstr "konnte Statistikpuffer nicht starten (fork-Fehler): %m"
 
-#: postmaster/pgstat.c:789
+#: postmaster/pgstat.c:964
 msgid "must be superuser to reset statistics counters"
 msgstr "nur Superuser können Statistikzähler zurücksetzen"
 
-#: postmaster/pgstat.c:1270
+#: postmaster/pgstat.c:1386
 #, c-format
 msgid "could not create pipe for statistics buffer: %m"
 msgstr "konnte Pipe für Statistikpuffer nicht erzeugen: %m"
 
-#: postmaster/pgstat.c:1278
+#: postmaster/pgstat.c:1397
 #, c-format
 msgid "could not fork statistics collector: %m"
 msgstr "konnte Statistiksammelprozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/pgstat.c:1335 postmaster/pgstat.c:1348 postmaster/pgstat.c:1637
-#: postmaster/pgstat.c:1893 postmaster/pgstat.c:1925 postmaster/pgstat.c:1979
-#: postmaster/pgstat.c:2240 postmaster/pgstat.c:2301 postmaster/pgstat.c:2347
-#: postmaster/pgstat.c:2398 postmaster/pgstat.c:2627 postmaster/pgstat.c:2809
-msgid "out of memory in statistics collector --- abort"
-msgstr "Speicher im Statistiksammmelprozess aufgebraucht --- Abbruch"
-
-#: postmaster/pgstat.c:1414
-#, c-format
-msgid "select() failed in statistics collector: %m"
-msgstr "select() im Statistiksammelprozess fehlgeschlagen: %m"
-
-#: postmaster/pgstat.c:1456
+#: postmaster/pgstat.c:1607
 #, c-format
 msgid "could not read from statistics collector pipe: %m"
 msgstr "konnte nicht aus Pipe des Statistiksammelprozesses lesen: %m"
 
-#: postmaster/pgstat.c:1475
+#: postmaster/pgstat.c:1628
 msgid "invalid statistics message length"
 msgstr "ungültige Länge von Statistiknachricht"
 
-#: postmaster/pgstat.c:1625
+#: postmaster/pgstat.c:1773
 #, c-format
 msgid "could not set statistics collector pipe to nonblocking mode: %m"
 msgstr ""
 "konnte Pipe von Statistiksammelprozess nicht auf nicht blockierenden Modus "
 "setzen: %m"
 
-#: postmaster/pgstat.c:1665
+#: postmaster/pgstat.c:1804
 msgid "statistics buffer is full"
 msgstr "Statistikpuffer ist voll"
 
-#: postmaster/pgstat.c:1698
+#: postmaster/pgstat.c:1835
 #, c-format
 msgid "select() failed in statistics buffer: %m"
 msgstr "select() im Statistikpufferprozess fehlgeschlagen: %m"
 
-#: postmaster/pgstat.c:1714
+#: postmaster/pgstat.c:1849
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "konnte Statistiknachricht nicht lesen: %m"
 
-#: postmaster/pgstat.c:1779
+#: postmaster/pgstat.c:1912
 #, c-format
 msgid "could not write to statistics collector pipe: %m"
 msgstr "konnte nicht in Pipe des Statistiksammelprozesses schreiben: %m"
 
-#: postmaster/pgstat.c:1833
+#: postmaster/pgstat.c:1977
 #, c-format
 msgid "invalid server process ID %d"
 msgstr "ungültige Serverprozess-ID %d"
 
-#: postmaster/pgstat.c:2028
+#: postmaster/pgstat.c:2036 postmaster/pgstat.c:2111 postmaster/pgstat.c:2709
+msgid "out of memory in statistics collector --- abort"
+msgstr "Speicher im Statistiksammmelprozess aufgebraucht --- Abbruch"
+
+#: postmaster/pgstat.c:2159
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht öffnen: %m"
 
-#: postmaster/pgstat.c:2055
+#: postmaster/pgstat.c:2185
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr "Datenbank-Hash-Tabelle beim Aufräumen verfälscht --- Abbruch"
 
-#: postmaster/pgstat.c:2092
+#: postmaster/pgstat.c:2220
 #, c-format
 msgid "tables hash table for database %u corrupted during cleanup --- abort"
 msgstr ""
 "Tabellen-Hash-Tabelle für Datenbank %u beim Aufräumen verfälscht --- Abbruch"
 
-#: postmaster/pgstat.c:2141
+#: postmaster/pgstat.c:2268
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "konnte temporäre Statistikdatei »%s« nicht schließen: %m"
 
-#: postmaster/pgstat.c:2150
+#: postmaster/pgstat.c:2277
 #, 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:2172
+#: postmaster/pgstat.c:2299
 msgid "dead-server-process hash table corrupted during cleanup --- abort"
 msgstr ""
 "Hash-Tabelle über tote Serverprozesse beim Aufräumen verfälscht --- Abbruch"
 
-#: postmaster/pgstat.c:2283 postmaster/pgstat.c:2315 postmaster/pgstat.c:2378
-#: postmaster/pgstat.c:2411 postmaster/pgstat.c:2432 postmaster/pgstat.c:2478
-#: postmaster/pgstat.c:2511
+#: postmaster/pgstat.c:2406 postmaster/pgstat.c:2426 postmaster/pgstat.c:2472
+#: postmaster/pgstat.c:2493 postmaster/pgstat.c:2510 postmaster/pgstat.c:2544
+#: postmaster/pgstat.c:2573
 msgid "corrupted pgstat.stat file"
 msgstr "verfälschte Datei pgstat.stat"
 
-#: postmaster/postmaster.c:327
-#, c-format
-msgid "data directory \"%s\" does not exist"
-msgstr "Datenverzeichnis »%s« existiert nicht"
-
-#: postmaster/postmaster.c:332
-#, c-format
-msgid "could not read permissions of directory \"%s\": %m"
-msgstr "konnte Zugriffsrechte von Verzeichnis »%s« nicht lesen: %m"
-
-#: postmaster/postmaster.c:347
-#, c-format
-msgid "data directory \"%s\" has group or world access"
-msgstr "Datenverzeichnis »%s« erlaubt Zugriff von Gruppe oder Welt"
-
-#: postmaster/postmaster.c:349
-msgid "Permissions should be u=rwx (0700)."
-msgstr "Rechte sollten u=rwx (0700) sein."
-
-#: postmaster/postmaster.c:361
-#, c-format
-msgid ""
-"%s: could not find the database system\n"
-"Expected to find it in the directory \"%s\",\n"
-"but could not open file \"%s\": %s\n"
-msgstr ""
-"%s: konnte das Datenbanksystem nicht finden\n"
-"Es wurde im Verzeichnis »%s« erwartet,\n"
-"aber die Datei »%s« konnte nicht geöffnet werden: %s\n"
-
-#: postmaster/postmaster.c:459 tcop/postgres.c:2113
-msgid "assert checking is not compiled in"
+#: postmaster/postmaster.c:388
+#, fuzzy, c-format
+msgid "%s: assert checking is not compiled in\n"
 msgstr "Assert-Prüfungen sind bei der Übersetzung nicht konfiguriert worden."
 
-#: postmaster/postmaster.c:585 postmaster/postmaster.c:598
+#: postmaster/postmaster.c:513 postmaster/postmaster.c:526
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Versuchen Sie »%s --help« für weitere Informationen.\n"
 
-#: postmaster/postmaster.c:596
-#, c-format
-msgid "invalid argument: \"%s\""
+#: postmaster/postmaster.c:524
+#, fuzzy, c-format
+msgid "%s: invalid argument: \"%s\"\n"
 msgstr "ungültiges Argument: »%s«"
 
-#: postmaster/postmaster.c:624
+#: postmaster/postmaster.c:551
+#, fuzzy, c-format
 msgid ""
-"the number of buffers (-B) must be at least twice the number of allowed "
-"connections (-N) and at least 16"
+"%s: the number of buffers (-B) must be at least twice the number of allowed "
+"connections (-N) and at least 16\n"
 msgstr ""
 "die Zahl der Puffer (-B) muss mindestens doppelt so hoch wie die Anzahl der "
 "erlaubten Verbindungen (-N) und mindestens 16 sein"
 
-#: postmaster/postmaster.c:630
-msgid "superuser_reserved_connections must be less than max_connections"
+#: postmaster/postmaster.c:557
+#, fuzzy, c-format
+msgid "%s: superuser_reserved_connections must be less than max_connections\n"
 msgstr "superuser_reserved_connections muss kleiner als max_connections sein"
 
-#: postmaster/postmaster.c:639
-msgid "invalid datetoken tables, please fix"
+#: postmaster/postmaster.c:566
+#, fuzzy, c-format
+msgid "%s: invalid datetoken tables, please fix\n"
 msgstr "ungültige datentoken-Tabellen, bitte reparieren"
 
-#: postmaster/postmaster.c:674 tcop/postgres.c:2599
-#, c-format
-msgid "%s: could not locate postgres executable"
+#: postmaster/postmaster.c:600
+#, fuzzy, c-format
+msgid "%s: could not locate matching postgres executable"
 msgstr "%s: konnte Programm »postgres« nicht finden"
 
-#: postmaster/postmaster.c:683
-msgid "TCP/IP connections must be enabled for SSL"
-msgstr "TCP/IP-Verbindungen müssen für SSL aktiviert sein"
+#: postmaster/postmaster.c:667
+#, fuzzy
+msgid "invalid list syntax for \"listen_addresses\""
+msgstr "ungültige Listensyntax für Parameter »datestyle«"
 
-#: postmaster/postmaster.c:757
+#: postmaster/postmaster.c:686
 #, c-format
 msgid "could not create listen socket for \"%s\""
 msgstr "konnte Listen-Socket für »%s« nicht erzeugen"
 
-#: postmaster/postmaster.c:776
-msgid "could not create TCP/IP listen socket"
-msgstr "konnte TCP/IP-Socket nicht erstellen"
-
-#: postmaster/postmaster.c:800
+#: postmaster/postmaster.c:715
 msgid "could not create Unix-domain socket"
 msgstr "konnte Unix-Domain-Socket nicht erstellen"
 
-#: postmaster/postmaster.c:920
+#: postmaster/postmaster.c:723
+msgid "no socket created for listening"
+msgstr ""
+
+#: postmaster/postmaster.c:800
+#, fuzzy, c-format
+msgid "%s: could not write external PID file \"%s\": %s\n"
+msgstr "konnte Serverdatei »%s« nicht schreiben: %m"
+
+#: postmaster/postmaster.c:893
 #, c-format
-msgid "could not fork background process: %s"
-msgstr "konnte Hintergrundprozess nicht starten (fork-Fehler): %s"
+msgid "data directory \"%s\" does not exist"
+msgstr "Datenverzeichnis »%s« existiert nicht"
+
+#: postmaster/postmaster.c:898
+#, c-format
+msgid "could not read permissions of directory \"%s\": %m"
+msgstr "konnte Zugriffsrechte von Verzeichnis »%s« nicht lesen: %m"
+
+#: postmaster/postmaster.c:913
+#, c-format
+msgid "data directory \"%s\" has group or world access"
+msgstr "Datenverzeichnis »%s« erlaubt Zugriff von Gruppe oder Welt"
+
+#: postmaster/postmaster.c:915
+msgid "Permissions should be u=rwx (0700)."
+msgstr "Rechte sollten u=rwx (0700) sein."
 
-#: postmaster/postmaster.c:942
+#: postmaster/postmaster.c:926
 #, c-format
-msgid "could not dissociate from controlling TTY: %s"
+msgid ""
+"%s: could not find the database system\n"
+"Expected to find it in the directory \"%s\",\n"
+"but could not open file \"%s\": %s\n"
+msgstr ""
+"%s: konnte das Datenbanksystem nicht finden\n"
+"Es wurde im Verzeichnis »%s« erwartet,\n"
+"aber die Datei »%s« konnte nicht geöffnet werden: %s\n"
+
+#: postmaster/postmaster.c:971
+#, fuzzy, c-format
+msgid "%s: could not fork background process: %s\n"
+msgstr "konnte Hintergrundprozess nicht starten (fork-Fehler): %s"
+
+#: postmaster/postmaster.c:993
+#, fuzzy, c-format
+msgid "%s: could not dissociate from controlling TTY: %s\n"
 msgstr "konnte nicht vom kontrollierenden TTY abtrennen: %s"
 
-#: postmaster/postmaster.c:962
+#: postmaster/postmaster.c:1016
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -5663,7 +6730,7 @@ msgstr ""
 "%s ist der PostgreSQL-Server.\n"
 "\n"
 
-#: postmaster/postmaster.c:963
+#: postmaster/postmaster.c:1017
 #, c-format
 msgid ""
 "Usage:\n"
@@ -5674,77 +6741,95 @@ msgstr ""
 "  %s [OPTION]...\n"
 "\n"
 
-#: postmaster/postmaster.c:964 tcop/postgres.c:1976
+#: postmaster/postmaster.c:1018 tcop/postgres.c:2125
+#, c-format
 msgid "Options:\n"
 msgstr "Optionen:\n"
 
-#: postmaster/postmaster.c:966 tcop/postgres.c:1978
+#: postmaster/postmaster.c:1020 tcop/postgres.c:2127
+#, c-format
 msgid "  -A 1|0          enable/disable run-time assert checking\n"
 msgstr "  -A 1|0          Assert-Prüfungen ein-/ausschalten\n"
 
-#: postmaster/postmaster.c:968 tcop/postgres.c:1980
+#: postmaster/postmaster.c:1022 tcop/postgres.c:2129
+#, c-format
 msgid "  -B NBUFFERS     number of shared buffers\n"
 msgstr "  -B ZAHL         Anzahl der geteilten Puffer\n"
 
-#: postmaster/postmaster.c:969 tcop/postgres.c:1981
+#: postmaster/postmaster.c:1023 tcop/postgres.c:2130
+#, c-format
 msgid "  -c NAME=VALUE   set run-time parameter\n"
 msgstr "  -c NAME=WERT    s